pub struct MarketIfTouchedOrderTransaction {
Show 23 fields pub time_in_force: Option<String>, pub request_id: Option<String>, pub id: Option<String>, pub position_fill: Option<String>, pub price_bound: Option<f32>, pub user_id: Option<i32>, pub instrument: Option<String>, pub units: Option<f32>, pub otype: Option<String>, pub account_id: Option<String>, pub price: Option<f32>, pub stop_loss_on_fill: Option<StopLossDetails>, pub batch_id: Option<String>, pub reason: Option<String>, pub trailing_stop_loss_on_fill: Option<TrailingStopLossDetails>, pub client_extensions: Option<ClientExtensions>, pub trigger_condition: Option<String>, pub replaces_order_id: Option<String>, pub take_profit_on_fill: Option<TakeProfitDetails>, pub trade_client_extensions: Option<ClientExtensions>, pub time: Option<DateTime<Utc>>, pub cancelling_transaction_id: Option<String>, pub gtd_time: Option<DateTime<Utc>>,
}

Fields§

§time_in_force: Option<String>

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

§request_id: Option<String>

The Request ID of the request which generated the transaction.

§id: Option<String>

The Transaction’s Identifier. format: String representation of the numerical OANDA-assigned TransactionID

§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 MarketIfTouched Order. format: A decimal number encodes as a string. The amount of precision provided depends on the Instrument.

§user_id: Option<i32>

The ID of the user that initiated the creation of the Transaction.

§instrument: Option<String>

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

§units: Option<f32>

The quantity requested to be filled by the MarketIfTouched 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 Transaction. Always set to “MARKET_IF_TOUCHED_ORDER” in a MarketIfTouchedOrderTransaction.

§account_id: Option<String>

The ID of the Account the Transaction was created for. format: “-”-delimited string with format “{siteID}-{divisionID}-{userID}-{accountNumber}”

§price: Option<f32>

The price threshold specified for the MarketIfTouched Order. The MarketIfTouched Order will only be filled by a market price that crosses this price from the direction of the market price at the time when the Order was created (the initialMarketPrice). Depending on the value of the Order’s price and initialMarketPrice, the MarketIfTouchedOrder will behave like a Limit or a Stop Order. format: A decimal number encodes as a string. The amount of precision provided depends on the Instrument.

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

§batch_id: Option<String>

The ID of the “batch” that the Transaction belongs to. Transactions in the same batch are applied to the Account simultaneously. format: String representation of the numerical OANDA-assigned TransactionID

§reason: Option<String>

The reason that the Market-if-touched Order was initiated

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

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

§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 this Order replaces (only provided if this Order replaces an existing Order). 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.

§time: Option<DateTime<Utc>>

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

§cancelling_transaction_id: Option<String>

The ID of the Transaction that cancels the replaced Order (only provided if this Order replaces an existing Order). format: String representation of the numerical OANDA-assigned TransactionID

§gtd_time: Option<DateTime<Utc>>

The date/time when the MarketIfTouched 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 MarketIfTouchedOrderTransaction

source

pub fn new() -> MarketIfTouchedOrderTransaction

source

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

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

  • param String
  • return MarketIfTouchedOrderTransaction
source

pub fn with_request_id(self, x: String) -> Self

The Request ID of the request which generated the transaction.

  • param String
  • return MarketIfTouchedOrderTransaction
source

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

The Transaction’s Identifier. format: String representation of the numerical OANDA-assigned TransactionID

  • param String
  • return MarketIfTouchedOrderTransaction
source

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

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

  • param String
  • return MarketIfTouchedOrderTransaction
source

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

The worst market price that may be used to fill this MarketIfTouched Order. format: A decimal number encodes as a string. The amount of precision provided depends on the Instrument.

  • param f32
  • return MarketIfTouchedOrderTransaction
source

pub fn with_user_id(self, x: i32) -> Self

The ID of the user that initiated the creation of the Transaction.

  • param i32
  • return MarketIfTouchedOrderTransaction
source

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

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

  • param String
  • return MarketIfTouchedOrderTransaction
source

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

The quantity requested to be filled by the MarketIfTouched 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 MarketIfTouchedOrderTransaction
source

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

The Type of the Transaction. Always set to “MARKET_IF_TOUCHED_ORDER” in a MarketIfTouchedOrderTransaction.

  • param String
  • return MarketIfTouchedOrderTransaction
source

pub fn with_account_id(self, x: String) -> Self

The ID of the Account the Transaction was created for. format: “-”-delimited string with format “{siteID}-{divisionID}-{userID}-{accountNumber}”

  • param String
  • return MarketIfTouchedOrderTransaction
source

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

The price threshold specified for the MarketIfTouched Order. The MarketIfTouched Order will only be filled by a market price that crosses this price from the direction of the market price at the time when the Order was created (the initialMarketPrice). Depending on the value of the Order’s price and initialMarketPrice, the MarketIfTouchedOrder will behave like a Limit or a Stop Order. format: A decimal number encodes as a string. The amount of precision provided depends on the Instrument.

  • param f32
  • return MarketIfTouchedOrderTransaction
source

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

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

pub fn with_batch_id(self, x: String) -> Self

The ID of the “batch” that the Transaction belongs to. Transactions in the same batch are applied to the Account simultaneously. format: String representation of the numerical OANDA-assigned TransactionID

  • param String
  • return MarketIfTouchedOrderTransaction
source

pub fn with_reason(self, x: String) -> Self

The reason that the Market-if-touched Order was initiated

  • param String
  • return MarketIfTouchedOrderTransaction
source

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

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

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

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

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

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

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

The ID of the Order that this Order replaces (only provided if this Order replaces an existing Order). 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 MarketIfTouchedOrderTransaction
source

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

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

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

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

pub fn with_time(self, x: DateTime<Utc>) -> Self

The date/time when the Transaction 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 MarketIfTouchedOrderTransaction
source

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

The ID of the Transaction that cancels the replaced Order (only provided if this Order replaces an existing Order). format: String representation of the numerical OANDA-assigned TransactionID

  • param String
  • return MarketIfTouchedOrderTransaction
source

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

The date/time when the MarketIfTouched 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 MarketIfTouchedOrderTransaction

Trait Implementations§

source§

impl Debug for MarketIfTouchedOrderTransaction

source§

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

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

impl<'de> Deserialize<'de> for MarketIfTouchedOrderTransaction

source§

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

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

impl Serialize for MarketIfTouchedOrderTransaction

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::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, 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> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,