Skip to main content

MarketIfTouchedOrder

Struct MarketIfTouchedOrder 

Source
pub struct MarketIfTouchedOrder {
Show 28 fields pub id: Option<OrderID>, pub create_time: Option<Timestamp>, pub state: Option<OrderState>, pub client_extensions: Option<ClientExtensions>, pub type: Option<OrderType>, pub instrument: InstrumentName, pub units: Decimal, pub price: Decimal, pub price_bound: Option<Decimal>, pub time_in_force: TimeInForce, pub gtd_time: Option<Timestamp>, pub position_fill: OrderPositionFill, pub trigger_condition: OrderTriggerCondition, pub initial_market_price: Option<Decimal>, pub take_profit_on_fill: Option<TakeProfitDetails>, pub stop_loss_on_fill: Option<StopLossDetails>, pub guaranteed_stop_loss_on_fill: Option<GuaranteedStopLossDetails>, pub trailing_stop_loss_on_fill: Option<TrailingStopLossDetails>, pub trade_client_extensions: Option<ClientExtensions>, pub filling_transaction_id: Option<TransactionID>, pub filled_time: Option<Timestamp>, pub trade_opened_id: Option<TradeID>, pub trade_reduced_id: Option<TradeID>, pub trade_closed_ids: Option<Vec<TradeID>>, pub cancelling_transaction_id: Option<TransactionID>, pub cancelled_time: Option<Timestamp>, pub replaces_order_id: Option<OrderID>, pub replaced_by_order_id: Option<OrderID>,
}
Expand description

A MarketIfTouchedOrder is an order that is created with a price threshold, and will only be filled by a market price that touches or crosses the threshold.

Fields§

§id: Option<OrderID>

The Order’s identifier, unique within the Order’s Account.

§create_time: Option<Timestamp>

The time when the Order was created.

§state: Option<OrderState>

The current state of the Order.

§client_extensions: Option<ClientExtensions>

The client extensions of the Order. Do not set, modify, or delete clientExtensions if your account is associated with MT4.

§type: Option<OrderType>

The type of the Order. Always set to “MARKET_IF_TOUCHED” for Market If Touched Orders.

§instrument: InstrumentName

The MarketIfTouched Order’s Instrument.

§units: Decimal

The quantity requested to be filled by the MarketIfTouched Order. A positive number of units results in a long Order, and a negative number of units results in a short Order.

§price: Decimal

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.

§price_bound: Option<Decimal>

The worst market price that may be used to fill this MarketIfTouched Order.

§time_in_force: TimeInForce

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

§gtd_time: Option<Timestamp>

The date/time when the MarketIfTouched Order will be cancelled if its timeInForce is “GTD”.

§position_fill: OrderPositionFill

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

§trigger_condition: OrderTriggerCondition

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 Guaranteed Stop Loss Order for a long trade valid values are “DEFAULT” and “BID”, and for short trades “DEFAULT” and “ASK” are valid.

§initial_market_price: Option<Decimal>

The Market price at the time when the MarketIfTouched Order was created.

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

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

§guaranteed_stop_loss_on_fill: Option<GuaranteedStopLossDetails>

GuaranteedStopLossDetails specifies the details of a Guaranteed 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 Guaranteed Stop Loss, or when a Trade’s dependent Guaranteed Stop Loss Order is modified directly through the Trade.

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

§trade_client_extensions: Option<ClientExtensions>

Client Extensions to add to the Trade created when the Order is filled (if such a Trade is created). Do not set, modify, or delete tradeClientExtensions if your account is associated with MT4.

§filling_transaction_id: Option<TransactionID>

ID of the Transaction that filled this Order (only provided when the Order’s state is FILLED)

§filled_time: Option<Timestamp>

Date/time when the Order was filled (only provided when the Order’s state is FILLED)

§trade_opened_id: Option<TradeID>

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)

§trade_reduced_id: Option<TradeID>

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)

§trade_closed_ids: Option<Vec<TradeID>>

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)

§cancelling_transaction_id: Option<TransactionID>

ID of the Transaction that cancelled the Order (only provided when the Order’s state is CANCELLED)

§cancelled_time: Option<Timestamp>

Date/time when the Order was cancelled (only provided when the state of the Order is CANCELLED)

§replaces_order_id: Option<OrderID>

The ID of the Order that was replaced by this Order (only provided if this Order was created as part of a cancel/replace).

§replaced_by_order_id: Option<OrderID>

The ID of the Order that replaced this Order (only provided if this Order was cancelled as part of a cancel/replace).

Trait Implementations§

Source§

impl Clone for MarketIfTouchedOrder

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for MarketIfTouchedOrder

Source§

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

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

impl<'de> Deserialize<'de> for MarketIfTouchedOrder

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 PartialEq for MarketIfTouchedOrder

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl Serialize for MarketIfTouchedOrder

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

impl StructuralPartialEq for MarketIfTouchedOrder

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

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

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> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

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

Source§

type Error = !

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

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

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

Source§

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