pub struct TrailingDetails {
pub trailing_distance_ticks: i64,
pub activation_price_ticks: i64,
pub peak_price_ticks: i64,
pub trough_price_ticks: i64,
pub trailing_distance_bps: i32,
pub max_slippage_ticks: i32,
pub max_slippage_bps: i32,
pub trigger_price_source: EnumValue<TriggerPriceSource>,
pub trigger_direction: EnumValue<TriggerDirection>,
/* private fields */
}Expand description
TrailingDetails contains configuration and runtime state for TRAILING_STOP triggers.
Fields§
§trailing_distance_ticks: i64Trailing distance as a price delta in 1e-6 quote-unit ticks.
Field 1: trailing_distance_ticks
activation_price_ticks: i64Optional activation price: trailing only starts after this price is reached. Expressed in quote units scaled by 1e6.
Field 2: activation_price_ticks
peak_price_ticks: i64Current peak price in quote units scaled by 1e6 for sell trailing stops.
Field 3: peak_price_ticks
trough_price_ticks: i64Current trough price in quote units scaled by 1e6 for buy trailing stops.
Field 4: trough_price_ticks
trailing_distance_bps: i32Trailing distance in basis points (1 bp = 0.01%).
Field 5: trailing_distance_bps
max_slippage_ticks: i32Optional maximum allowed slippage as a price delta in 1e-6 quote-unit ticks.
Field 6: max_slippage_ticks
max_slippage_bps: i32Optional maximum allowed slippage in basis points (1 bp = 0.01%).
Field 7: max_slippage_bps
trigger_price_source: EnumValue<TriggerPriceSource>Price source used for trigger evaluation. Fixed for the lifetime of the trigger and exposed for completeness.
Field 8: trigger_price_source
trigger_direction: EnumValue<TriggerDirection>Direction the price must cross to fire the trigger. Fixed for the lifetime of the trigger and exposed for completeness.
Field 9: trigger_direction
Implementations§
Trait Implementations§
Source§impl Clone for TrailingDetails
impl Clone for TrailingDetails
Source§fn clone(&self) -> TrailingDetails
fn clone(&self) -> TrailingDetails
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for TrailingDetails
impl Debug for TrailingDetails
Source§impl Default for TrailingDetails
impl Default for TrailingDetails
Source§fn default() -> TrailingDetails
fn default() -> TrailingDetails
Source§impl DefaultInstance for TrailingDetails
impl DefaultInstance for TrailingDetails
Source§fn default_instance() -> &'static Self
fn default_instance() -> &'static Self
Source§impl<'de> Deserialize<'de> for TrailingDetailswhere
TrailingDetails: Default,
impl<'de> Deserialize<'de> for TrailingDetailswhere
TrailingDetails: Default,
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl ExtensionSet for TrailingDetails
impl ExtensionSet for TrailingDetails
Source§const PROTO_FQN: &'static str = "triggers.v1.TrailingDetails"
const PROTO_FQN: &'static str = "triggers.v1.TrailingDetails"
"google.protobuf.FieldOptions". Read moreSource§fn unknown_fields(&self) -> &UnknownFields
fn unknown_fields(&self) -> &UnknownFields
Source§fn unknown_fields_mut(&mut self) -> &mut UnknownFields
fn unknown_fields_mut(&mut self) -> &mut UnknownFields
Source§fn extension<C>(&self, ext: &Extension<C>) -> <C as ExtensionCodec>::Outputwhere
C: ExtensionCodec,
fn extension<C>(&self, ext: &Extension<C>) -> <C as ExtensionCodec>::Outputwhere
C: ExtensionCodec,
Source§fn set_extension<C>(
&mut self,
ext: &Extension<C>,
value: <C as ExtensionCodec>::Value,
)where
C: ExtensionCodec,
fn set_extension<C>(
&mut self,
ext: &Extension<C>,
value: <C as ExtensionCodec>::Value,
)where
C: ExtensionCodec,
Source§fn has_extension<C>(&self, ext: &Extension<C>) -> boolwhere
C: ExtensionCodec,
fn has_extension<C>(&self, ext: &Extension<C>) -> boolwhere
C: ExtensionCodec,
true if any record at the extension’s field number is present. Read moreSource§fn clear_extension<C>(&mut self, ext: &Extension<C>)where
C: ExtensionCodec,
fn clear_extension<C>(&mut self, ext: &Extension<C>)where
C: ExtensionCodec,
Source§fn extension_or_default<C>(
&self,
ext: &Extension<C>,
) -> <C as ExtensionCodec>::Valuewhere
C: ExtensionCodec<Output = Option<<C as ExtensionCodec>::Value>>,
<C as ExtensionCodec>::Value: Default,
fn extension_or_default<C>(
&self,
ext: &Extension<C>,
) -> <C as ExtensionCodec>::Valuewhere
C: ExtensionCodec<Output = Option<<C as ExtensionCodec>::Value>>,
<C as ExtensionCodec>::Value: Default,
[default = ...]
value if absent, or the type’s Default if no proto default was declared. Read moreSource§impl From<TrailingDetails> for RuntimeDetails
impl From<TrailingDetails> for RuntimeDetails
Source§fn from(v: TrailingDetails) -> Self
fn from(v: TrailingDetails) -> Self
Source§impl From<TrailingDetails> for Option<RuntimeDetails>
impl From<TrailingDetails> for Option<RuntimeDetails>
Source§fn from(v: TrailingDetails) -> Self
fn from(v: TrailingDetails) -> Self
Source§impl HasMessageView for TrailingDetails
impl HasMessageView for TrailingDetails
Source§type View<'a> = TrailingDetailsView<'a>
type View<'a> = TrailingDetailsView<'a>
Self, borrowing from a buffer with lifetime
'a.Source§type ViewHandle = TrailingDetailsOwnedView
type ViewHandle = TrailingDetailsOwnedView
'static owned-view handle for Self
(FooOwnedView).Source§fn decode_view(buf: &[u8]) -> Result<Self::View<'_>, DecodeError>
fn decode_view(buf: &[u8]) -> Result<Self::View<'_>, DecodeError>
Source§fn decode_view_with_options<'a>(
buf: &'a [u8],
opts: &DecodeOptions,
) -> Result<Self::View<'a>, DecodeError>
fn decode_view_with_options<'a>( buf: &'a [u8], opts: &DecodeOptions, ) -> Result<Self::View<'a>, DecodeError>
View under custom
DecodeOptions (recursion limit, max message
size, unknown-field limit). Read moreSource§fn decode_view_handle(bytes: Bytes) -> Result<Self::ViewHandle, DecodeError>
fn decode_view_handle(bytes: Bytes) -> Result<Self::ViewHandle, DecodeError>
Source§fn decode_view_handle_with_options(
bytes: Bytes,
opts: &DecodeOptions,
) -> Result<Self::ViewHandle, DecodeError>
fn decode_view_handle_with_options( bytes: Bytes, opts: &DecodeOptions, ) -> Result<Self::ViewHandle, DecodeError>
Source§impl Message for TrailingDetails
impl Message for TrailingDetails
Source§fn compute_size(&self, _cache: &mut SizeCache) -> u32
fn compute_size(&self, _cache: &mut SizeCache) -> u32
Returns the total encoded size in bytes.
The result is a u32; the protobuf specification requires all
messages to fit within 2 GiB (2,147,483,647 bytes), so a
compliant message will never overflow this type.
Source§fn write_to(&self, _cache: &mut SizeCache, buf: &mut impl BufMut)
fn write_to(&self, _cache: &mut SizeCache, buf: &mut impl BufMut)
cache (populated by a prior
compute_size call on the same cache). Read moreSource§fn merge_field(
&mut self,
tag: Tag,
buf: &mut impl Buf,
ctx: DecodeContext<'_>,
) -> Result<(), DecodeError>
fn merge_field( &mut self, tag: Tag, buf: &mut impl Buf, ctx: DecodeContext<'_>, ) -> Result<(), DecodeError>
buf. Read moreSource§fn encode(&self, buf: &mut impl BufMut)
fn encode(&self, buf: &mut impl BufMut)
Source§fn encode_with_cache(&self, cache: &mut SizeCache, buf: &mut impl BufMut)
fn encode_with_cache(&self, cache: &mut SizeCache, buf: &mut impl BufMut)
SizeCache, for
reuse across many encodes in a hot loop. Clears the cache first.Source§fn encoded_len(&self) -> u32
fn encoded_len(&self) -> u32
Source§fn encode_length_delimited(&self, buf: &mut impl BufMut)
fn encode_length_delimited(&self, buf: &mut impl BufMut)
Source§fn encode_to_bytes(&self) -> Bytes
fn encode_to_bytes(&self) -> Bytes
bytes::Bytes. Read moreSource§fn decode(buf: &mut impl Buf) -> Result<Self, DecodeError>where
Self: Sized,
fn decode(buf: &mut impl Buf) -> Result<Self, DecodeError>where
Self: Sized,
Source§fn decode_from_slice(data: &[u8]) -> Result<Self, DecodeError>where
Self: Sized,
fn decode_from_slice(data: &[u8]) -> Result<Self, DecodeError>where
Self: Sized,
Source§fn decode_length_delimited(buf: &mut impl Buf) -> Result<Self, DecodeError>where
Self: Sized,
fn decode_length_delimited(buf: &mut impl Buf) -> Result<Self, DecodeError>where
Self: Sized,
Source§fn merge_to_limit(
&mut self,
buf: &mut impl Buf,
ctx: DecodeContext<'_>,
limit: usize,
) -> Result<(), DecodeError>
fn merge_to_limit( &mut self, buf: &mut impl Buf, ctx: DecodeContext<'_>, limit: usize, ) -> Result<(), DecodeError>
Source§fn merge_group(
&mut self,
buf: &mut impl Buf,
ctx: DecodeContext<'_>,
field_number: u32,
) -> Result<(), DecodeError>
fn merge_group( &mut self, buf: &mut impl Buf, ctx: DecodeContext<'_>, field_number: u32, ) -> Result<(), DecodeError>
buf, reading fields until an
EndGroup tag with the given field_number is encountered. Read moreSource§fn merge(
&mut self,
buf: &mut impl Buf,
ctx: DecodeContext<'_>,
) -> Result<(), DecodeError>
fn merge( &mut self, buf: &mut impl Buf, ctx: DecodeContext<'_>, ) -> Result<(), DecodeError>
Source§fn merge_from_slice(&mut self, data: &[u8]) -> Result<(), DecodeError>
fn merge_from_slice(&mut self, data: &[u8]) -> Result<(), DecodeError>
Source§fn merge_length_delimited(
&mut self,
buf: &mut impl Buf,
ctx: DecodeContext<'_>,
) -> Result<(), DecodeError>
fn merge_length_delimited( &mut self, buf: &mut impl Buf, ctx: DecodeContext<'_>, ) -> Result<(), DecodeError>
Source§impl MessageName for TrailingDetails
impl MessageName for TrailingDetails
Source§const PACKAGE: &'static str = "triggers.v1"
const PACKAGE: &'static str = "triggers.v1"
Source§const NAME: &'static str = "TrailingDetails"
const NAME: &'static str = "TrailingDetails"
. between nesting levels. Read moreSource§impl PartialEq for TrailingDetails
impl PartialEq for TrailingDetails
Source§impl ProtoElemJson for TrailingDetails
impl ProtoElemJson for TrailingDetails
Source§fn serialize_proto_json<S: Serializer>(
v: &Self,
s: S,
) -> Result<S::Ok, S::Error>
fn serialize_proto_json<S: Serializer>( v: &Self, s: S, ) -> Result<S::Ok, S::Error>
Source§fn deserialize_proto_json<'de, D: Deserializer<'de>>(
d: D,
) -> Result<Self, D::Error>
fn deserialize_proto_json<'de, D: Deserializer<'de>>( d: D, ) -> Result<Self, D::Error>
Source§impl Serialize for TrailingDetails
impl Serialize for TrailingDetails
impl StructuralPartialEq for TrailingDetails
Auto Trait Implementations§
impl Freeze for TrailingDetails
impl RefUnwindSafe for TrailingDetails
impl Send for TrailingDetails
impl Sync for TrailingDetails
impl Unpin for TrailingDetails
impl UnsafeUnpin for TrailingDetails
impl UnwindSafe for TrailingDetails
Blanket Implementations§
Source§impl<T> AnyMessage for Twhere
T: Message + JsonSerialize + 'static,
impl<T> AnyMessage for Twhere
T: Message + JsonSerialize + 'static,
Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
dyn Any for downcasting.Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Any> for owned downcasting. Read moreSource§fn encode(&self, format: CodecFormat) -> Result<Bytes, ConnectError>
fn encode(&self, format: CodecFormat) -> Result<Bytes, ConnectError>
Source§fn type_name(&self) -> &'static str
fn type_name(&self) -> &'static str
std::any::type_name.Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<M> Encodable<M> for Mwhere
M: Message + JsonSerialize,
impl<M> Encodable<M> for Mwhere
M: Message + JsonSerialize,
Source§fn encode(&self, codec: CodecFormat) -> Result<Bytes, ConnectError>
fn encode(&self, codec: CodecFormat) -> Result<Bytes, ConnectError>
self as wire bytes for M in the requested format.