nautilus_model::events::order::initialized

Struct OrderInitialized

Source
#[repr(C)]
pub struct OrderInitialized {
Show 33 fields pub trader_id: TraderId, pub strategy_id: StrategyId, pub instrument_id: InstrumentId, pub client_order_id: ClientOrderId, pub order_side: OrderSide, pub order_type: OrderType, pub quantity: Quantity, pub time_in_force: TimeInForce, pub post_only: bool, pub reduce_only: bool, pub quote_quantity: bool, pub reconciliation: bool, pub event_id: UUID4, pub ts_event: UnixNanos, pub ts_init: UnixNanos, pub price: Option<Price>, pub trigger_price: Option<Price>, pub trigger_type: Option<TriggerType>, pub limit_offset: Option<Decimal>, pub trailing_offset: Option<Decimal>, pub trailing_offset_type: Option<TrailingOffsetType>, pub expire_time: Option<UnixNanos>, pub display_qty: Option<Quantity>, pub emulation_trigger: Option<TriggerType>, pub trigger_instrument_id: Option<InstrumentId>, pub contingency_type: Option<ContingencyType>, pub order_list_id: Option<OrderListId>, pub linked_order_ids: Option<Vec<ClientOrderId>>, pub parent_order_id: Option<ClientOrderId>, pub exec_algorithm_id: Option<ExecAlgorithmId>, pub exec_algorithm_params: Option<IndexMap<Ustr, Ustr>>, pub exec_spawn_id: Option<ClientOrderId>, pub tags: Option<Vec<Ustr>>,
}
Expand description

Represents an event where an order has been initialized.

This is a seed event which can instantiate any order through a creation method. This event should contain enough information to be able to send it ‘over the wire’ and have a valid order created with exactly the same properties as if it had been instantiated locally.

Fields§

§trader_id: TraderId

The trader ID associated with the event.

§strategy_id: StrategyId

The strategy ID associated with the event.

§instrument_id: InstrumentId

The instrument ID associated with the event.

§client_order_id: ClientOrderId

The client order ID associated with the event.

§order_side: OrderSide

The order side.

§order_type: OrderType

The order type.

§quantity: Quantity

The order quantity.

§time_in_force: TimeInForce

The order time in force.

§post_only: bool

If the order will only provide liquidity (make a market).

§reduce_only: bool

If the order carries the ‘reduce-only’ execution instruction.

§quote_quantity: bool

If the order quantity is denominated in the quote currency.

§reconciliation: bool

If the event was generated during reconciliation.

§event_id: UUID4

The unique identifier for the event.

§ts_event: UnixNanos

UNIX timestamp (nanoseconds) when the event occurred.

§ts_init: UnixNanos

UNIX timestamp (nanoseconds) when the event was initialized.

§price: Option<Price>

The order price (LIMIT).

§trigger_price: Option<Price>

The order trigger price (STOP).

§trigger_type: Option<TriggerType>

The trigger type for the order.

§limit_offset: Option<Decimal>

The trailing offset for the orders limit price.

§trailing_offset: Option<Decimal>

The trailing offset for the orders trigger price (STOP).

§trailing_offset_type: Option<TrailingOffsetType>

The trailing offset type.

§expire_time: Option<UnixNanos>

The order expiration, None for no expiration.

§display_qty: Option<Quantity>

The quantity of the LIMIT order to display on the public book (iceberg).

§emulation_trigger: Option<TriggerType>

The emulation trigger type for the order.

§trigger_instrument_id: Option<InstrumentId>

The emulation trigger instrument ID for the order (if None then will be the instrument_id).

§contingency_type: Option<ContingencyType>

The order contingency type.

§order_list_id: Option<OrderListId>

The order list ID associated with the order.

§linked_order_ids: Option<Vec<ClientOrderId>>

The order linked client order ID(s).

§parent_order_id: Option<ClientOrderId>

The orders parent client order ID.

§exec_algorithm_id: Option<ExecAlgorithmId>

The execution algorithm ID for the order.

§exec_algorithm_params: Option<IndexMap<Ustr, Ustr>>

The execution algorithm parameters for the order.

§exec_spawn_id: Option<ClientOrderId>

The execution algorithm spawning primary client order ID.

§tags: Option<Vec<Ustr>>

The custom user tags for the order.

Implementations§

Source§

impl OrderInitialized

Source

pub fn new( trader_id: TraderId, strategy_id: StrategyId, instrument_id: InstrumentId, client_order_id: ClientOrderId, order_side: OrderSide, order_type: OrderType, quantity: Quantity, time_in_force: TimeInForce, post_only: bool, reduce_only: bool, quote_quantity: bool, reconciliation: bool, event_id: UUID4, ts_event: UnixNanos, ts_init: UnixNanos, price: Option<Price>, trigger_price: Option<Price>, trigger_type: Option<TriggerType>, limit_offset: Option<Decimal>, trailing_offset: Option<Decimal>, trailing_offset_type: Option<TrailingOffsetType>, expire_time: Option<UnixNanos>, display_qty: Option<Quantity>, emulation_trigger: Option<TriggerType>, trigger_instrument_id: Option<InstrumentId>, contingency_type: Option<ContingencyType>, order_list_id: Option<OrderListId>, linked_order_ids: Option<Vec<ClientOrderId>>, parent_order_id: Option<ClientOrderId>, exec_algorithm_id: Option<ExecAlgorithmId>, exec_algorithm_params: Option<IndexMap<Ustr, Ustr>>, exec_spawn_id: Option<ClientOrderId>, tags: Option<Vec<Ustr>>, ) -> Self

Creates a new OrderInitialized instance.

Trait Implementations§

Source§

impl Clone for OrderInitialized

Source§

fn clone(&self) -> OrderInitialized

Returns a copy of the value. Read more
1.0.0 · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for OrderInitialized

Source§

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

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

impl Default for OrderInitialized

Source§

fn default() -> Self

Creates a new default OrderInitialized instance for testing.

Source§

impl<'de> Deserialize<'de> for OrderInitialized

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 Display for OrderInitialized

Source§

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

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

impl<T> From<&T> for OrderInitialized
where T: Order,

Source§

fn from(order: &T) -> Self

Converts to this type from the input type.
Source§

impl From<OrderInitialized> for LimitIfTouchedOrder

Source§

fn from(event: OrderInitialized) -> Self

Converts to this type from the input type.
Source§

impl From<OrderInitialized> for LimitOrder

Source§

fn from(event: OrderInitialized) -> Self

Converts to this type from the input type.
Source§

impl From<OrderInitialized> for MarketIfTouchedOrder

Source§

fn from(event: OrderInitialized) -> Self

Converts to this type from the input type.
Source§

impl From<OrderInitialized> for MarketOrder

Source§

fn from(event: OrderInitialized) -> Self

Converts to this type from the input type.
Source§

impl From<OrderInitialized> for MarketToLimitOrder

Source§

fn from(event: OrderInitialized) -> Self

Converts to this type from the input type.
Source§

impl From<OrderInitialized> for OrderAny

Source§

fn from(order: OrderInitialized) -> Self

Converts to this type from the input type.
Source§

impl From<OrderInitialized> for StopLimitOrder

Source§

fn from(event: OrderInitialized) -> Self

Converts to this type from the input type.
Source§

impl From<OrderInitialized> for StopMarketOrder

Source§

fn from(event: OrderInitialized) -> Self

Converts to this type from the input type.
Source§

impl From<OrderInitialized> for TrailingStopLimitOrder

Source§

fn from(event: OrderInitialized) -> Self

Converts to this type from the input type.
Source§

impl From<OrderInitialized> for TrailingStopMarketOrder

Source§

fn from(event: OrderInitialized) -> Self

Converts to this type from the input type.
Source§

impl IntoPy<Py<PyAny>> for OrderInitialized

Source§

fn into_py(self, py: Python<'_>) -> PyObject

Performs the conversion.
Source§

impl OrderEvent for OrderInitialized

Source§

fn id(&self) -> UUID4

Source§

fn kind(&self) -> &str

Source§

fn order_type(&self) -> Option<OrderType>

Source§

fn order_side(&self) -> Option<OrderSide>

Source§

fn trader_id(&self) -> TraderId

Source§

fn strategy_id(&self) -> StrategyId

Source§

fn instrument_id(&self) -> InstrumentId

Source§

fn trade_id(&self) -> Option<TradeId>

Source§

fn currency(&self) -> Option<Currency>

Source§

fn client_order_id(&self) -> ClientOrderId

Source§

fn reason(&self) -> Option<Ustr>

Source§

fn quantity(&self) -> Option<Quantity>

Source§

fn time_in_force(&self) -> Option<TimeInForce>

Source§

fn liquidity_side(&self) -> Option<LiquiditySide>

Source§

fn post_only(&self) -> Option<bool>

Source§

fn reduce_only(&self) -> Option<bool>

Source§

fn quote_quantity(&self) -> Option<bool>

Source§

fn reconciliation(&self) -> bool

Source§

fn price(&self) -> Option<Price>

Source§

fn last_px(&self) -> Option<Price>

Source§

fn last_qty(&self) -> Option<Quantity>

Source§

fn trigger_price(&self) -> Option<Price>

Source§

fn trigger_type(&self) -> Option<TriggerType>

Source§

fn limit_offset(&self) -> Option<Decimal>

Source§

fn trailing_offset(&self) -> Option<Decimal>

Source§

fn trailing_offset_type(&self) -> Option<TrailingOffsetType>

Source§

fn expire_time(&self) -> Option<UnixNanos>

Source§

fn display_qty(&self) -> Option<Quantity>

Source§

fn emulation_trigger(&self) -> Option<TriggerType>

Source§

fn trigger_instrument_id(&self) -> Option<InstrumentId>

Source§

fn contingency_type(&self) -> Option<ContingencyType>

Source§

fn order_list_id(&self) -> Option<OrderListId>

Source§

fn linked_order_ids(&self) -> Option<Vec<ClientOrderId>>

Source§

fn parent_order_id(&self) -> Option<ClientOrderId>

Source§

fn exec_algorithm_id(&self) -> Option<ExecAlgorithmId>

Source§

fn exec_spawn_id(&self) -> Option<ClientOrderId>

Source§

fn venue_order_id(&self) -> Option<VenueOrderId>

Source§

fn account_id(&self) -> Option<AccountId>

Source§

fn position_id(&self) -> Option<PositionId>

Source§

fn commission(&self) -> Option<Money>

Source§

fn ts_event(&self) -> UnixNanos

Source§

fn ts_init(&self) -> UnixNanos

Source§

impl PartialEq for OrderInitialized

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PyClass for OrderInitialized

Source§

type Frozen = False

Whether the pyclass is frozen. Read more
Source§

impl PyClassImpl for OrderInitialized

Source§

const IS_BASETYPE: bool = false

#[pyclass(subclass)]
Source§

const IS_SUBCLASS: bool = false

#[pyclass(extends=…)]
Source§

const IS_MAPPING: bool = false

#[pyclass(mapping)]
Source§

const IS_SEQUENCE: bool = false

#[pyclass(sequence)]
Source§

type BaseType = PyAny

Base class
Source§

type ThreadChecker = SendablePyClass<OrderInitialized>

This handles following two situations: Read more
Source§

type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild

Immutable or mutable
Source§

type Dict = PyClassDummySlot

Specify this class has #[pyclass(dict)] or not.
Source§

type WeakRef = PyClassDummySlot

Specify this class has #[pyclass(weakref)] or not.
Source§

type BaseNativeType = PyAny

The closest native ancestor. This is PyAny by default, and when you declare #[pyclass(extends=PyDict)], it’s PyDict.
Source§

fn items_iter() -> PyClassItemsIter

Source§

fn doc(py: Python<'_>) -> PyResult<&'static CStr>

Rendered class doc
Source§

fn lazy_type_object() -> &'static LazyTypeObject<Self>

§

fn dict_offset() -> Option<isize>

§

fn weaklist_offset() -> Option<isize>

Source§

impl PyClassNewTextSignature<OrderInitialized> for PyClassImplCollector<OrderInitialized>

Source§

fn new_text_signature(self) -> Option<&'static str>

Source§

impl<'a, 'py> PyFunctionArgument<'a, 'py> for &'a OrderInitialized

Source§

type Holder = Option<PyRef<'py, OrderInitialized>>

Source§

fn extract( obj: &'a Bound<'py, PyAny>, holder: &'a mut Self::Holder, ) -> PyResult<Self>

Source§

impl<'a, 'py> PyFunctionArgument<'a, 'py> for &'a mut OrderInitialized

Source§

type Holder = Option<PyRefMut<'py, OrderInitialized>>

Source§

fn extract( obj: &'a Bound<'py, PyAny>, holder: &'a mut Self::Holder, ) -> PyResult<Self>

Source§

impl PyMethods<OrderInitialized> for PyClassImplCollector<OrderInitialized>

Source§

fn py_methods(self) -> &'static PyClassItems

Source§

impl PyTypeInfo for OrderInitialized

Source§

const NAME: &'static str = "OrderInitialized"

Class name.
Source§

const MODULE: Option<&'static str>

Module name, if any.
Source§

fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject

Returns the PyTypeObject instance for this type.
§

fn type_object_bound(py: Python<'_>) -> Bound<'_, PyType>

Returns the safe abstraction over the type object.
§

fn is_type_of_bound(object: &Bound<'_, PyAny>) -> bool

Checks if object is an instance of this type or a subclass of this type.
§

fn is_exact_type_of_bound(object: &Bound<'_, PyAny>) -> bool

Checks if object is an instance of this type.
Source§

impl Serialize for OrderInitialized

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 DerefToPyAny for OrderInitialized

Source§

impl Eq for OrderInitialized

Source§

impl StructuralPartialEq for OrderInitialized

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, dst: *mut u8)

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

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> FromPyObject<'_> for T
where T: PyClass + Clone,

§

fn extract_bound(obj: &Bound<'_, PyAny>) -> Result<T, PyErr>

Extracts Self from the bound smart pointer obj. Read more
§

impl<'py, T> FromPyObjectBound<'_, 'py> for T
where T: FromPyObject<'py>,

§

fn from_py_object_bound(ob: Borrowed<'_, 'py, PyAny>) -> Result<T, PyErr>

Extracts Self from the bound smart pointer obj. 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.

§

impl<T> PyErrArguments for T
where T: IntoPy<Py<PyAny>> + Send + Sync,

§

fn arguments(self, py: Python<'_>) -> Py<PyAny>

Arguments for exception
§

impl<T> PyTypeCheck for T
where T: PyTypeInfo,

§

const NAME: &'static str = <T as PyTypeInfo>::NAME

Name of self. This is used in error messages, for example.
§

fn type_check(object: &Bound<'_, PyAny>) -> bool

Checks if object is an instance of Self, which may include a subtype. Read more
Source§

impl<T> Separable for T
where T: Display,

Source§

fn separate_by_policy(&self, policy: SeparatorPolicy<'_>) -> String

Adds separators according to the given SeparatorPolicy. Read more
Source§

fn separate_with_commas(&self) -> String

Inserts a comma every three digits from the right. Read more
Source§

fn separate_with_spaces(&self) -> String

Inserts a space every three digits from the right. Read more
Source§

fn separate_with_dots(&self) -> String

Inserts a period every three digits from the right. Read more
Source§

fn separate_with_underscores(&self) -> String

Inserts an underscore every three digits from the right. 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> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. 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.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

Source§

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

§

impl<T> Ungil for T
where T: Send,