pub struct TrailingStopLossOrderRequest {
    pub distance: Option<f32>,
    pub trigger_condition: Option<String>,
    pub trade_id: Option<String>,
    pub time_in_force: Option<String>,
    pub client_extensions: Option<ClientExtensions>,
    pub client_trade_id: Option<String>,
    pub gtd_time: Option<DateTime<Utc>>,
    pub otype: Option<String>,
}

Fields§

§distance: Option<f32>

The price distance (in price units) specified for the TrailingStopLoss Order. format: A decimal number encoded as a string. The amount of precision provided depends on what the number represents.

§trigger_condition: Option<String>

Specification of which price component should be used when determining if an Order should be triggered and filled. This allows Orders to be triggered based on the bid, ask, mid, default (ask for buy, bid for sell) or inverse (ask for sell, bid for buy) price depending on the desired behaviour. Orders are always filled using their default price component. This feature is only provided through the REST API. Clients who choose to specify a non-default trigger condition will not see it reflected in any of OANDA’s proprietary or partner trading platforms, their transaction history or their account statements. OANDA platforms always assume that an Order’s trigger condition is set to the default value when indicating the distance from an Order’s trigger price, and will always provide the default trigger condition when creating or modifying an Order. A special restriction applies when creating a guaranteed Stop Loss Order. In this case the TriggerCondition value must either be “DEFAULT”, or the “natural” trigger side “DEFAULT” results in. So for a Stop Loss Order for a long trade valid values are “DEFAULT” and “BID”, and for short trades “DEFAULT” and “ASK” are valid.

§trade_id: Option<String>

The ID of the Trade to close when the price threshold is breached. format: The string representation of the OANDA-assigned TradeID. OANDA- assigned TradeIDs are positive integers, and are derived from the TransactionID of the Transaction that opened the Trade.

§time_in_force: Option<String>

The time-in-force requested for the TrailingStopLoss Order. Restricted to “GTC”, “GFD” and “GTD” for TrailingStopLoss Orders.

§client_extensions: Option<ClientExtensions>

A ClientExtensions object allows a client to attach a clientID, tag and comment to Orders and Trades in their Account. Do not set, modify, or delete this field if your account is associated with MT4.

§client_trade_id: Option<String>

The client ID of the Trade to be closed when the price threshold is breached.

§gtd_time: Option<DateTime<Utc>>

The date/time when the StopLoss Order will be cancelled if its timeInForce is “GTD”. format: The RFC 3339 representation is a string conforming to https://tools.ietf.org/rfc/rfc3339.txt. The Unix representation is a string representing the number of seconds since the Unix Epoch (January 1st, 1970 at UTC). The value is a fractional number, where the fractional part represents a fraction of a second (up to nine decimal places).

§otype: Option<String>

The type of the Order to Create. Must be set to “TRAILING_STOP_LOSS” when creating a Trailng Stop Loss Order.

Implementations§

source§

impl TrailingStopLossOrderRequest

source

pub fn new() -> TrailingStopLossOrderRequest

source

pub fn with_distance(self, x: f32) -> TrailingStopLossOrderRequest

The price distance (in price units) specified for the TrailingStopLoss Order. format: A decimal number encoded as a string. The amount of precision provided depends on what the number represents.

  • param f32
  • return TrailingStopLossOrderRequest
source

pub fn with_trigger_condition(self, x: String) -> TrailingStopLossOrderRequest

Specification of which price component should be used when determining if an Order should be triggered and filled. This allows Orders to be triggered based on the bid, ask, mid, default (ask for buy, bid for sell) or inverse (ask for sell, bid for buy) price depending on the desired behaviour. Orders are always filled using their default price component. This feature is only provided through the REST API. Clients who choose to specify a non-default trigger condition will not see it reflected in any of OANDA’s proprietary or partner trading platforms, their transaction history or their account statements. OANDA platforms always assume that an Order’s trigger condition is set to the default value when indicating the distance from an Order’s trigger price, and will always provide the default trigger condition when creating or modifying an Order. A special restriction applies when creating a guaranteed Stop Loss Order. In this case the TriggerCondition value must either be “DEFAULT”, or the “natural” trigger side “DEFAULT” results in. So for a Stop Loss Order for a long trade valid values are “DEFAULT” and “BID”, and for short trades “DEFAULT” and “ASK” are valid.

  • param String
  • return TrailingStopLossOrderRequest
source

pub fn with_trade_id(self, x: String) -> TrailingStopLossOrderRequest

The ID of the Trade to close when the price threshold is breached. format: The string representation of the OANDA-assigned TradeID. OANDA- assigned TradeIDs are positive integers, and are derived from the TransactionID of the Transaction that opened the Trade.

  • param String
  • return TrailingStopLossOrderRequest
source

pub fn with_time_in_force(self, x: String) -> TrailingStopLossOrderRequest

The time-in-force requested for the TrailingStopLoss Order. Restricted to “GTC”, “GFD” and “GTD” for TrailingStopLoss Orders.

  • param String
  • return TrailingStopLossOrderRequest
source

pub fn with_client_extensions( self, x: ClientExtensions ) -> TrailingStopLossOrderRequest

A ClientExtensions object allows a client to attach a clientID, tag and comment to Orders and Trades in their Account. Do not set, modify, or delete this field if your account is associated with MT4.

  • param ClientExtensions
  • return TrailingStopLossOrderRequest
source

pub fn with_client_trade_id(self, x: String) -> TrailingStopLossOrderRequest

The client ID of the Trade to be closed when the price threshold is breached.

  • param String
  • return TrailingStopLossOrderRequest
source

pub fn with_gtd_time(self, x: DateTime<Utc>) -> TrailingStopLossOrderRequest

The date/time when the StopLoss Order will be cancelled if its timeInForce is “GTD”. format: The RFC 3339 representation is a string conforming to https://tools.ietf.org/rfc/rfc3339.txt. The Unix representation is a string representing the number of seconds since the Unix Epoch (January 1st, 1970 at UTC). The value is a fractional number, where the fractional part represents a fraction of a second (up to nine decimal places).

  • param DateTime
  • return TrailingStopLossOrderRequest
source

pub fn with_otype(self, x: String) -> TrailingStopLossOrderRequest

The type of the Order to Create. Must be set to “TRAILING_STOP_LOSS” when creating a Trailng Stop Loss Order.

  • param String
  • return TrailingStopLossOrderRequest

Trait Implementations§

source§

impl Debug for TrailingStopLossOrderRequest

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for TrailingStopLossOrderRequest

source§

fn deserialize<__D>( __deserializer: __D ) -> Result<TrailingStopLossOrderRequest, <__D as Deserializer<'de>>::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for TrailingStopLossOrderRequest

source§

fn serialize<__S>( &self, __serializer: __S ) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,