Skip to main content

TradeReduce

Struct TradeReduce 

Source
#[non_exhaustive]
pub struct TradeReduce {
Show 14 fields pub trade_id: Option<TradeId>, pub units: Option<DecimalNumber>, pub price: Option<PriceValue>, pub realized_pl: Option<AccountUnits>, pub financing: Option<AccountUnits>, pub guaranteed_execution_fee: Option<AccountUnits>, pub half_spread_cost: Option<AccountUnits>, pub base_financing: Option<DecimalNumber>, pub quote_guaranteed_execution_fee: Option<DecimalNumber>, pub financing_rate: Option<DecimalNumber>, pub home_conversion_cost: Option<DecimalNumber>, pub pl_home_conversion_cost: Option<DecimalNumber>, pub base_financing_home_conversion_cost: Option<DecimalNumber>, pub guaranteed_execution_fee_home_conversion_cost: Option<DecimalNumber>,
}
Expand description

A TradeReduce object represents a Trade for an instrument that was reduced (either partially or fully) in an Account. It is found embedded in Transactions that affect the position of an instrument in the account, specifically the OrderFill Transaction.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§trade_id: Option<TradeId>

The ID of the Trade that was reduced or closed

§units: Option<DecimalNumber>

The number of units that the Trade was reduced by

§price: Option<PriceValue>

The average price that the units were closed at. This price may be clamped for guaranteed Stop Loss Orders.

§realized_pl: Option<AccountUnits>

The PL realized when reducing the Trade

§financing: Option<AccountUnits>

The financing paid/collected when reducing the Trade

§guaranteed_execution_fee: Option<AccountUnits>

This is the fee that is charged for closing the Trade if it has a guaranteed Stop Loss Order attached to it.

§half_spread_cost: Option<AccountUnits>

The half spread cost for the trade reduce/close. This can be a positive or negative value and is represented in the home currency of the Account.

§base_financing: Option<DecimalNumber>

The financing paid or collected in the Instrument’s base currency. This field is returned by the live v20 API but is not present in OANDA’s official documentation.

§quote_guaranteed_execution_fee: Option<DecimalNumber>

The guaranteed execution fee expressed in the Instrument’s quote currency. This field is returned by the live v20 API but is not present in OANDA’s official documentation.

§financing_rate: Option<DecimalNumber>

The financing rate in effect for the reduced Trade. This field is returned by the live v20 API but is not present in OANDA’s official documentation.

§home_conversion_cost: Option<DecimalNumber>

The total cost of currency conversions, in the Account’s home currency. This field is returned by the live v20 API but is not present in OANDA’s official documentation.

§pl_home_conversion_cost: Option<DecimalNumber>

The cost of converting the realized profit/loss to the Account’s home currency. This field is returned by the live v20 API but is not present in OANDA’s official documentation.

§base_financing_home_conversion_cost: Option<DecimalNumber>

The cost of converting the base financing to the Account’s home currency. This field is returned by the live v20 API but is not present in OANDA’s official documentation.

§guaranteed_execution_fee_home_conversion_cost: Option<DecimalNumber>

The cost of converting the guaranteed execution fee to the Account’s home currency. This field is returned by the live v20 API but is not present in OANDA’s official documentation.

Trait Implementations§

Source§

impl Clone for TradeReduce

Source§

fn clone(&self) -> TradeReduce

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 TradeReduce

Source§

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

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

impl<'de> Deserialize<'de> for TradeReduce

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 TradeReduce

Source§

fn eq(&self, other: &TradeReduce) -> 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 TradeReduce

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 TradeReduce

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

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