Struct fxoanda::StopOrder

source ·
pub struct StopOrder {
Show 26 fields pub filled_time: Option<DateTime<Utc>>, pub time_in_force: Option<String>, pub id: Option<String>, pub position_fill: Option<String>, pub price_bound: Option<f32>, pub instrument: Option<String>, pub state: Option<String>, pub units: Option<f32>, pub otype: Option<String>, pub stop_loss_on_fill: Option<StopLossDetails>, pub price: Option<f32>, pub trade_opened_id: Option<String>, pub trade_reduced_id: Option<String>, pub cancelled_time: Option<DateTime<Utc>>, pub trailing_stop_loss_on_fill: Option<TrailingStopLossDetails>, pub filling_transaction_id: Option<String>, pub client_extensions: Option<ClientExtensions>, pub create_time: Option<DateTime<Utc>>, pub trigger_condition: Option<String>, pub replaces_order_id: Option<String>, pub trade_closed_i_ds: Option<Vec<String>>, pub replaced_by_order_id: Option<String>, pub take_profit_on_fill: Option<TakeProfitDetails>, pub trade_client_extensions: Option<ClientExtensions>, pub cancelling_transaction_id: Option<String>, pub gtd_time: Option<DateTime<Utc>>,
}

Fields§

§filled_time: Option<DateTime<Utc>>

Date/time when the Order was filled (only provided when the Order’s state is FILLED) 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).

§time_in_force: Option<String>

The time-in-force requested for the Stop Order.

§id: Option<String>

The Order’s identifier, unique within the Order’s Account. format: The string representation of the OANDA-assigned OrderID. OANDA- assigned OrderIDs are positive integers, and are derived from the TransactionID of the Transaction that created the Order.

§position_fill: Option<String>

Specification of how Positions in the Account are modified when the Order is filled.

§price_bound: Option<f32>

The worst market price that may be used to fill this Stop Order. If the market gaps and crosses through both the price and the priceBound, the Stop Order will be cancelled instead of being filled. format: A decimal number encodes as a string. The amount of precision provided depends on the Instrument.

§instrument: Option<String>

The Stop Order’s Instrument. format: A string containing the base currency and quote currency delimited by a “_”.

§state: Option<String>

The current state of the Order.

§units: Option<f32>

The quantity requested to be filled by the Stop Order. A posititive number of units results in a long Order, and a negative number of units results in a short Order. format: A decimal number encoded as a string. The amount of precision provided depends on what the number represents.

§otype: Option<String>

The type of the Order. Always set to “STOP” for Stop Orders.

§stop_loss_on_fill: Option<StopLossDetails>

StopLossDetails specifies the details of a Stop Loss Order to be created on behalf of a client. This may happen when an Order is filled that opens a Trade requiring a Stop Loss, or when a Trade’s dependent Stop Loss Order is modified directly through the Trade.

§price: Option<f32>

The price threshold specified for the Stop Order. The Stop Order will only be filled by a market price that is equal to or worse than this price. format: A decimal number encodes as a string. The amount of precision provided depends on the Instrument.

§trade_opened_id: Option<String>

Trade ID of Trade opened when the Order was filled (only provided when the Order’s state is FILLED and a Trade was opened as a result of the fill) 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.

§trade_reduced_id: Option<String>

Trade ID of Trade reduced when the Order was filled (only provided when the Order’s state is FILLED and a Trade was reduced as a result of the fill) 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.

§cancelled_time: Option<DateTime<Utc>>

Date/time when the Order was cancelled (only provided when the state of the Order is CANCELLED) 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).

§trailing_stop_loss_on_fill: Option<TrailingStopLossDetails>

TrailingStopLossDetails specifies the details of a Trailing Stop Loss Order to be created on behalf of a client. This may happen when an Order is filled that opens a Trade requiring a Trailing Stop Loss, or when a Trade’s dependent Trailing Stop Loss Order is modified directly through the Trade.

§filling_transaction_id: Option<String>

ID of the Transaction that filled this Order (only provided when the Order’s state is FILLED) format: String representation of the numerical OANDA-assigned TransactionID

§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.

§create_time: Option<DateTime<Utc>>

The time when the Order was created. 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).

§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.

§replaces_order_id: Option<String>

The ID of the Order that was replaced by this Order (only provided if this Order was created as part of a cancel/replace). format: The string representation of the OANDA-assigned OrderID. OANDA- assigned OrderIDs are positive integers, and are derived from the TransactionID of the Transaction that created the Order.

§trade_closed_i_ds: Option<Vec<String>>

Trade IDs of Trades closed when the Order was filled (only provided when the Order’s state is FILLED and one or more Trades were closed as a result of the fill)

§replaced_by_order_id: Option<String>

The ID of the Order that replaced this Order (only provided if this Order was cancelled as part of a cancel/replace). format: The string representation of the OANDA-assigned OrderID. OANDA- assigned OrderIDs are positive integers, and are derived from the TransactionID of the Transaction that created the Order.

§take_profit_on_fill: Option<TakeProfitDetails>

TakeProfitDetails specifies the details of a Take Profit Order to be created on behalf of a client. This may happen when an Order is filled that opens a Trade requiring a Take Profit, or when a Trade’s dependent Take Profit Order is modified directly through the Trade.

§trade_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.

§cancelling_transaction_id: Option<String>

ID of the Transaction that cancelled the Order (only provided when the Order’s state is CANCELLED) format: String representation of the numerical OANDA-assigned TransactionID

§gtd_time: Option<DateTime<Utc>>

The date/time when the Stop 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).

Implementations§

source§

impl StopOrder

source

pub fn new() -> StopOrder

source

pub fn with_filled_time(self, x: DateTime<Utc>) -> StopOrder

Date/time when the Order was filled (only provided when the Order’s state is FILLED) 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 StopOrder
source

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

The time-in-force requested for the Stop Order.

  • param String
  • return StopOrder
source

pub fn with_id(self, x: String) -> StopOrder

The Order’s identifier, unique within the Order’s Account. format: The string representation of the OANDA-assigned OrderID. OANDA- assigned OrderIDs are positive integers, and are derived from the TransactionID of the Transaction that created the Order.

  • param String
  • return StopOrder
source

pub fn with_position_fill(self, x: String) -> StopOrder

Specification of how Positions in the Account are modified when the Order is filled.

  • param String
  • return StopOrder
source

pub fn with_price_bound(self, x: f32) -> StopOrder

The worst market price that may be used to fill this Stop Order. If the market gaps and crosses through both the price and the priceBound, the Stop Order will be cancelled instead of being filled. format: A decimal number encodes as a string. The amount of precision provided depends on the Instrument.

  • param f32
  • return StopOrder
source

pub fn with_instrument(self, x: String) -> StopOrder

The Stop Order’s Instrument. format: A string containing the base currency and quote currency delimited by a “_”.

  • param String
  • return StopOrder
source

pub fn with_state(self, x: String) -> StopOrder

The current state of the Order.

  • param String
  • return StopOrder
source

pub fn with_units(self, x: f32) -> StopOrder

The quantity requested to be filled by the Stop Order. A posititive number of units results in a long Order, and a negative number of units results in a short Order. format: A decimal number encoded as a string. The amount of precision provided depends on what the number represents.

  • param f32
  • return StopOrder
source

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

The type of the Order. Always set to “STOP” for Stop Orders.

  • param String
  • return StopOrder
source

pub fn with_stop_loss_on_fill(self, x: StopLossDetails) -> StopOrder

StopLossDetails specifies the details of a Stop Loss Order to be created on behalf of a client. This may happen when an Order is filled that opens a Trade requiring a Stop Loss, or when a Trade’s dependent Stop Loss Order is modified directly through the Trade.

  • param StopLossDetails
  • return StopOrder
source

pub fn with_price(self, x: f32) -> StopOrder

The price threshold specified for the Stop Order. The Stop Order will only be filled by a market price that is equal to or worse than this price. format: A decimal number encodes as a string. The amount of precision provided depends on the Instrument.

  • param f32
  • return StopOrder
source

pub fn with_trade_opened_id(self, x: String) -> StopOrder

Trade ID of Trade opened when the Order was filled (only provided when the Order’s state is FILLED and a Trade was opened as a result of the fill) 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 StopOrder
source

pub fn with_trade_reduced_id(self, x: String) -> StopOrder

Trade ID of Trade reduced when the Order was filled (only provided when the Order’s state is FILLED and a Trade was reduced as a result of the fill) 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 StopOrder
source

pub fn with_cancelled_time(self, x: DateTime<Utc>) -> StopOrder

Date/time when the Order was cancelled (only provided when the state of the Order is CANCELLED) 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 StopOrder
source

pub fn with_trailing_stop_loss_on_fill( self, x: TrailingStopLossDetails ) -> StopOrder

TrailingStopLossDetails specifies the details of a Trailing Stop Loss Order to be created on behalf of a client. This may happen when an Order is filled that opens a Trade requiring a Trailing Stop Loss, or when a Trade’s dependent Trailing Stop Loss Order is modified directly through the Trade.

  • param TrailingStopLossDetails
  • return StopOrder
source

pub fn with_filling_transaction_id(self, x: String) -> StopOrder

ID of the Transaction that filled this Order (only provided when the Order’s state is FILLED) format: String representation of the numerical OANDA-assigned TransactionID

  • param String
  • return StopOrder
source

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

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 StopOrder
source

pub fn with_create_time(self, x: DateTime<Utc>) -> StopOrder

The time when the Order was created. 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 StopOrder
source

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

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 StopOrder
source

pub fn with_replaces_order_id(self, x: String) -> StopOrder

The ID of the Order that was replaced by this Order (only provided if this Order was created as part of a cancel/replace). format: The string representation of the OANDA-assigned OrderID. OANDA- assigned OrderIDs are positive integers, and are derived from the TransactionID of the Transaction that created the Order.

  • param String
  • return StopOrder
source

pub fn with_trade_closed_i_ds(self, x: Vec<String>) -> StopOrder

Trade IDs of Trades closed when the Order was filled (only provided when the Order’s state is FILLED and one or more Trades were closed as a result of the fill)

  • param Vec
  • return StopOrder
source

pub fn with_replaced_by_order_id(self, x: String) -> StopOrder

The ID of the Order that replaced this Order (only provided if this Order was cancelled as part of a cancel/replace). format: The string representation of the OANDA-assigned OrderID. OANDA- assigned OrderIDs are positive integers, and are derived from the TransactionID of the Transaction that created the Order.

  • param String
  • return StopOrder
source

pub fn with_take_profit_on_fill(self, x: TakeProfitDetails) -> StopOrder

TakeProfitDetails specifies the details of a Take Profit Order to be created on behalf of a client. This may happen when an Order is filled that opens a Trade requiring a Take Profit, or when a Trade’s dependent Take Profit Order is modified directly through the Trade.

  • param TakeProfitDetails
  • return StopOrder
source

pub fn with_trade_client_extensions(self, x: ClientExtensions) -> StopOrder

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 StopOrder
source

pub fn with_cancelling_transaction_id(self, x: String) -> StopOrder

ID of the Transaction that cancelled the Order (only provided when the Order’s state is CANCELLED) format: String representation of the numerical OANDA-assigned TransactionID

  • param String
  • return StopOrder
source

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

The date/time when the Stop 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 StopOrder

Trait Implementations§

source§

impl Debug for StopOrder

source§

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

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

impl<'de> Deserialize<'de> for StopOrder

source§

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

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

impl Serialize for StopOrder

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>,