pub struct RiskPolicy {
pub take_profit: MessageField<TakeProfitPolicy>,
pub oco: bool,
pub stop_leg: Option<StopLeg>,
/* private fields */
}Expand description
RiskPolicy defines optional risk controls (TP/SL/TrailingStop) attached to an order. These arm after the parent order fills and fire when conditions are met. If the parent order is canceled before any fill, attached risk controls are discarded.
Fields§
§take_profit: MessageField<TakeProfitPolicy>Optional take-profit configuration.
Field 1: take_profit
oco: boolIf true, take-profit and the configured stop leg (stop-loss or trailing-stop) form an OCO pair: when one fires, the other is canceled. Default is false (no mutual cancellation).
Field 4: oco
stop_leg: Option<StopLeg>Implementations§
Trait Implementations§
Source§impl Clone for RiskPolicy
impl Clone for RiskPolicy
Source§fn clone(&self) -> RiskPolicy
fn clone(&self) -> RiskPolicy
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for RiskPolicy
impl Debug for RiskPolicy
Source§impl Default for RiskPolicy
impl Default for RiskPolicy
Source§fn default() -> RiskPolicy
fn default() -> RiskPolicy
Returns the “default value” for a type. Read more
Source§impl DefaultInstance for RiskPolicy
impl DefaultInstance for RiskPolicy
Source§fn default_instance() -> &'static Self
fn default_instance() -> &'static Self
Return a reference to the single default instance of this type.
Source§impl<'de> Deserialize<'de> for RiskPolicy
impl<'de> Deserialize<'de> for RiskPolicy
Source§fn deserialize<D: Deserializer<'de>>(d: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(d: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read more
Source§impl ExtensionSet for RiskPolicy
impl ExtensionSet for RiskPolicy
Source§const PROTO_FQN: &'static str = "orders.v1.RiskPolicy"
const PROTO_FQN: &'static str = "orders.v1.RiskPolicy"
Fully-qualified proto type name of this message (no leading dot),
e.g.
"google.protobuf.FieldOptions". Read moreSource§fn unknown_fields(&self) -> &UnknownFields
fn unknown_fields(&self) -> &UnknownFields
Immutable access to the extendee’s unknown-field storage.
Source§fn unknown_fields_mut(&mut self) -> &mut UnknownFields
fn unknown_fields_mut(&mut self) -> &mut UnknownFields
Mutable access to the extendee’s unknown-field storage.
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,
Read an extension value. Read more
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,
Write an extension value, replacing any prior occurrences. Read more
Source§fn has_extension<C>(&self, ext: &Extension<C>) -> boolwhere
C: ExtensionCodec,
fn has_extension<C>(&self, ext: &Extension<C>) -> boolwhere
C: ExtensionCodec,
Returns
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,
Remove all records at the extension’s field number. Read more
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,
Read a singular extension value, returning the proto2
[default = ...]
value if absent, or the type’s Default if no proto default was declared. Read moreSource§impl HasMessageView for RiskPolicy
impl HasMessageView for RiskPolicy
Source§type View<'a> = RiskPolicyView<'a>
type View<'a> = RiskPolicyView<'a>
The zero-copy view of
Self, borrowing from a buffer with lifetime
'a.Source§type ViewHandle = RiskPolicyOwnedView
type ViewHandle = RiskPolicyOwnedView
The generated
'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>
Decode a borrowed
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 RiskPolicy
impl Message for RiskPolicy
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)
Write this message’s encoded bytes to a buffer, consuming
nested-message sizes from
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>
Processes a single already-decoded tag and its associated field data
from
buf. Read moreSource§fn encode(&self, buf: &mut impl BufMut)
fn encode(&self, buf: &mut impl BufMut)
Compute size, then write. This is the primary encoding API.
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)
Encode using a caller-supplied
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
Compute the encoded byte size of this message. Read more
Source§fn encode_length_delimited(&self, buf: &mut impl BufMut)
fn encode_length_delimited(&self, buf: &mut impl BufMut)
Encode this message as a length-delimited byte sequence.
Source§fn encode_to_bytes(&self) -> Bytes
fn encode_to_bytes(&self) -> Bytes
Encode this message to a new
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,
Decode a message from a buffer.
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,
Decode a message from a byte slice. Read more
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,
Decode a length-delimited message from a buffer. Read more
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>
Merges a group-encoded message from
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>
Merge fields from a buffer into this message. Read more
Source§fn merge_from_slice(&mut self, data: &[u8]) -> Result<(), DecodeError>
fn merge_from_slice(&mut self, data: &[u8]) -> Result<(), DecodeError>
Merge fields from a byte slice into this message. Read more
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>
Merge fields from a length-delimited sub-message payload into this message. Read more
Source§impl MessageName for RiskPolicy
impl MessageName for RiskPolicy
Source§const PACKAGE: &'static str = "orders.v1"
const PACKAGE: &'static str = "orders.v1"
The protobuf package the message is declared in. Read more
Source§const NAME: &'static str = "RiskPolicy"
const NAME: &'static str = "RiskPolicy"
The unqualified message name, with
. between nesting levels. Read moreSource§impl PartialEq for RiskPolicy
impl PartialEq for RiskPolicy
Source§impl ProtoElemJson for RiskPolicy
impl ProtoElemJson for RiskPolicy
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>
Serialize this value with proto3 JSON semantics.
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>
Deserialize a value with proto3 JSON semantics.
Source§impl Serialize for RiskPolicy
impl Serialize for RiskPolicy
impl StructuralPartialEq for RiskPolicy
Auto Trait Implementations§
impl Freeze for RiskPolicy
impl RefUnwindSafe for RiskPolicy
impl Send for RiskPolicy
impl Sync for RiskPolicy
impl Unpin for RiskPolicy
impl UnsafeUnpin for RiskPolicy
impl UnwindSafe for RiskPolicy
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)
Mutably borrow the message as
dyn Any for downcasting.Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert the boxed message into a
Box<dyn Any> for owned downcasting. Read moreSource§fn encode(&self, format: CodecFormat) -> Result<Bytes, ConnectError>
fn encode(&self, format: CodecFormat) -> Result<Bytes, ConnectError>
Serialize the message to wire bytes in the given format. Read more
Source§fn type_name(&self) -> &'static str
fn type_name(&self) -> &'static str
The concrete type’s name, for diagnostics. The default uses
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
Mutably borrows from an owned value. Read more
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>
Encode
self as wire bytes for M in the requested format.