#[repr(C)]pub struct TradeMsg {
pub hd: RecordHeader,
pub price: i64,
pub size: u32,
pub action: c_char,
pub side: c_char,
pub flags: FlagSet,
pub depth: u8,
pub ts_recv: u64,
pub ts_in_delta: i32,
pub sequence: u32,
}Expand description
Market-by-price implementation with a book depth of 0. Equivalent to MBP-0. The record of the Trades schema.
Fields§
§hd: RecordHeaderThe common header.
price: i64The trade price where every 1 unit corresponds to 1e-9, i.e. 1/1,000,000,000 or 0.000000001.
See Prices.
size: u32The order quantity.
action: c_charThe event action. Always Trade in the trades schema.
See Action.
side: c_charThe side that initiates the trade. Can be Ask for a sell aggressor in a trade, Bid for a buy aggressor in a trade, or None where no side is specified.
See Side.
flags: FlagSetA bit field indicating event end, message characteristics, and data quality.
See flags for possible values.
depth: u8The book level where the update event occurred.
ts_recv: u64The capture-server-received timestamp expressed as the number of nanoseconds since the UNIX epoch.
See ts_recv.
ts_in_delta: i32The matching-engine-sending timestamp expressed as the number of nanoseconds before
ts_recv.
See ts_in_delta.
sequence: u32The message sequence number assigned at the venue.
Implementations§
Source§impl TradeMsg
impl TradeMsg
Sourcepub fn price_f64(&self) -> f64
pub fn price_f64(&self) -> f64
Converts the price to a floating point.
UNDEF_PRICE will be converted to NaN.
Sourcepub fn ts_recv(&self) -> Option<OffsetDateTime>
pub fn ts_recv(&self) -> Option<OffsetDateTime>
Parses the capture-server-received timestamp into a datetime.
Returns None if ts_recv contains the sentinel for a null timestamp.
Sourcepub fn ts_in_delta(&self) -> Duration
pub fn ts_in_delta(&self) -> Duration
Parses the difference between ts_recv and the matching-engine-sending timestamp into a duration.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for TradeMsg
impl<'de> Deserialize<'de> for TradeMsg
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl<'a> From<&'a TradeMsg> for RecordRefEnum<'a>
impl<'a> From<&'a TradeMsg> for RecordRefEnum<'a>
Source§impl From<TradeMsg> for RecordEnum
impl From<TradeMsg> for RecordEnum
Source§impl<'py> IntoPyObject<'py> for TradeMsg
impl<'py> IntoPyObject<'py> for TradeMsg
Source§type Output = Bound<'py, <TradeMsg as IntoPyObject<'py>>::Target>
type Output = Bound<'py, <TradeMsg as IntoPyObject<'py>>::Target>
Source§fn into_pyobject(
self,
py: Python<'py>,
) -> Result<<Self as IntoPyObject<'_>>::Output, <Self as IntoPyObject<'_>>::Error>
fn into_pyobject( self, py: Python<'py>, ) -> Result<<Self as IntoPyObject<'_>>::Output, <Self as IntoPyObject<'_>>::Error>
Source§impl PartialOrd for TradeMsg
impl PartialOrd for TradeMsg
Source§impl PyClassImpl for TradeMsg
impl PyClassImpl for TradeMsg
Source§const IS_BASETYPE: bool = false
const IS_BASETYPE: bool = false
Source§const IS_SUBCLASS: bool = false
const IS_SUBCLASS: bool = false
Source§const IS_MAPPING: bool = false
const IS_MAPPING: bool = false
Source§const IS_SEQUENCE: bool = false
const IS_SEQUENCE: bool = false
Source§const IS_IMMUTABLE_TYPE: bool = false
const IS_IMMUTABLE_TYPE: bool = false
Source§const RAW_DOC: &'static CStr = /// Market-by-price implementation with a book depth of 0. Equivalent to MBP-0. The record of the [`Trades`](crate::Schema::Trades) schema.
const RAW_DOC: &'static CStr = /// Market-by-price implementation with a book depth of 0. Equivalent to MBP-0. The record of the [`Trades`](crate::Schema::Trades) schema.
Source§const DOC: &'static CStr
const DOC: &'static CStr
text_signature if a constructor is defined. Read moreSource§type ThreadChecker = SendablePyClass<TradeMsg>
type ThreadChecker = SendablePyClass<TradeMsg>
Source§type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild
type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild
Source§type BaseNativeType = PyAny
type BaseNativeType = PyAny
PyAny by default, and when you declare
#[pyclass(extends=PyDict)], it’s PyDict.fn items_iter() -> PyClassItemsIter
fn dict_offset() -> Option<Py_ssize_t>
fn lazy_type_object() -> &'static LazyTypeObject<Self>
fn weaklist_offset() -> Option<isize>
Source§impl PyClassNewTextSignature for TradeMsg
Available on crate feature python only.
impl PyClassNewTextSignature for TradeMsg
python only.const TEXT_SIGNATURE: &'static str = "(publisher_id, instrument_id, ts_event, price, size, action, side, depth, ts_recv, flags=None, ts_in_delta=0, sequence=0)"
Source§impl PyMethods<TradeMsg> for PyClassImplCollector<TradeMsg>
Available on crate feature python only.
impl PyMethods<TradeMsg> for PyClassImplCollector<TradeMsg>
python only.fn py_methods(self) -> &'static PyClassItems
Source§impl PyTypeInfo for TradeMsg
impl PyTypeInfo for TradeMsg
Source§fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
Source§fn type_object(py: Python<'_>) -> Bound<'_, PyType>
fn type_object(py: Python<'_>) -> Bound<'_, PyType>
Source§impl Record for TradeMsg
impl Record for TradeMsg
Source§fn header(&self) -> &RecordHeader
fn header(&self) -> &RecordHeader
RecordHeader that comes at the beginning of all
record types.Source§fn raw_index_ts(&self) -> u64
fn raw_index_ts(&self) -> u64
Source§fn record_size(&self) -> usize
fn record_size(&self) -> usize
Source§fn rtype(&self) -> Result<RType>
fn rtype(&self) -> Result<RType>
Source§fn publisher(&self) -> Result<Publisher>
fn publisher(&self) -> Result<Publisher>
publisher_id into an enum which is useful for
exhaustive pattern matching. Read moreSource§fn index_ts(&self) -> Option<OffsetDateTime>
fn index_ts(&self) -> Option<OffsetDateTime>
None if the primary
timestamp contains the sentinel value for a null timestamp. Read moreSource§fn index_date(&self) -> Option<Date>
fn index_date(&self) -> Option<Date>
index_ts()). Returns None if the primary timestamp contains the
sentinel value for a null timestamp.Source§impl RecordMut for TradeMsg
impl RecordMut for TradeMsg
Source§fn header_mut(&mut self) -> &mut RecordHeader
fn header_mut(&mut self) -> &mut RecordHeader
RecordHeader that comes at the beginning of
all record types.Source§impl WritePyRepr for TradeMsg
Available on crate feature python only.
impl WritePyRepr for TradeMsg
python only.Source§fn write_py_repr(&self, s: &mut String) -> Result
fn write_py_repr(&self, s: &mut String) -> Result
s. Read moreSource§const SHOULD_FLATTEN: bool = false
const SHOULD_FLATTEN: bool = false
impl Copy for TradeMsg
impl DerefToPyAny for TradeMsg
impl Eq for TradeMsg
impl ExtractPyClassWithClone for TradeMsg
impl StructuralPartialEq for TradeMsg
Auto Trait Implementations§
impl Freeze for TradeMsg
impl RefUnwindSafe for TradeMsg
impl Send for TradeMsg
impl Sync for TradeMsg
impl Unpin for TradeMsg
impl UnwindSafe for TradeMsg
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<'a, 'py, T> FromPyObject<'a, 'py> for T
impl<'a, 'py, T> FromPyObject<'a, 'py> for T
Source§impl<'py, T> IntoPyObjectExt<'py> for Twhere
T: IntoPyObject<'py>,
impl<'py, T> IntoPyObjectExt<'py> for Twhere
T: IntoPyObject<'py>,
Source§fn into_bound_py_any(self, py: Python<'py>) -> Result<Bound<'py, PyAny>, PyErr>
fn into_bound_py_any(self, py: Python<'py>) -> Result<Bound<'py, PyAny>, PyErr>
self into an owned Python object, dropping type information.