#[repr(C)]pub struct MboMsg {
pub hd: RecordHeader,
pub order_id: u64,
pub price: i64,
pub size: u32,
pub flags: FlagSet,
pub channel_id: u8,
pub action: c_char,
pub side: c_char,
pub ts_recv: u64,
pub ts_in_delta: i32,
pub sequence: u32,
}Expand description
A market-by-order (MBO) tick message. The record of the Mbo
schema.
Fields§
§hd: RecordHeaderThe common header.
order_id: u64The order ID assigned at the venue.
price: i64The order 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.
flags: FlagSetA bit field indicating event end, message characteristics, and data quality.
See flags for possible values.
channel_id: u8The channel ID assigned by Databento as an incrementing integer starting at zero.
action: c_charThe event action. Can be Add, Cancel, Modify, cleaR book, Trade, Fill, or None.
See Action.
side: c_charThe side that initiates the event. Can be Ask for a sell order (or sell aggressor in a trade), Bid for a buy order (or buy aggressor in a trade), or None where no side is specified.
See Side.
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 MboMsg
impl MboMsg
Sourcepub fn price_f64(&self) -> f64
pub fn price_f64(&self) -> f64
Converts the order 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 MboMsg
impl<'de> Deserialize<'de> for MboMsg
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 MboMsg> for RecordRefEnum<'a>
impl<'a> From<&'a MboMsg> for RecordRefEnum<'a>
Source§impl From<MboMsg> for RecordEnum
impl From<MboMsg> for RecordEnum
Source§impl<'py> IntoPyObject<'py> for MboMsg
impl<'py> IntoPyObject<'py> for MboMsg
Source§type Output = Bound<'py, <MboMsg as IntoPyObject<'py>>::Target>
type Output = Bound<'py, <MboMsg 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 MboMsg
impl PartialOrd for MboMsg
Source§impl PyClassImpl for MboMsg
impl PyClassImpl for MboMsg
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 = /// A market-by-order (MBO) tick message. The record of the [`Mbo`](crate::Schema::Mbo)
/// schema.
const RAW_DOC: &'static CStr = /// A market-by-order (MBO) tick message. The record of the [`Mbo`](crate::Schema::Mbo) /// schema.
Source§const DOC: &'static CStr
const DOC: &'static CStr
text_signature if a constructor is defined. Read moreSource§type ThreadChecker = SendablePyClass<MboMsg>
type ThreadChecker = SendablePyClass<MboMsg>
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 MboMsg
Available on crate feature python only.
impl PyClassNewTextSignature for MboMsg
python only.const TEXT_SIGNATURE: &'static str = "(publisher_id, instrument_id, ts_event, order_id, price, size, action, side, ts_recv, flags=None, channel_id=None, ts_in_delta=0, sequence=0)"
Source§impl PyMethods<MboMsg> for PyClassImplCollector<MboMsg>
Available on crate feature python only.
impl PyMethods<MboMsg> for PyClassImplCollector<MboMsg>
python only.fn py_methods(self) -> &'static PyClassItems
Source§impl PyTypeInfo for MboMsg
impl PyTypeInfo for MboMsg
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 MboMsg
impl Record for MboMsg
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 MboMsg
impl RecordMut for MboMsg
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 MboMsg
Available on crate feature python only.
impl WritePyRepr for MboMsg
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 MboMsg
impl DerefToPyAny for MboMsg
impl Eq for MboMsg
impl ExtractPyClassWithClone for MboMsg
impl StructuralPartialEq for MboMsg
Auto Trait Implementations§
impl Freeze for MboMsg
impl RefUnwindSafe for MboMsg
impl Send for MboMsg
impl Sync for MboMsg
impl Unpin for MboMsg
impl UnwindSafe for MboMsg
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.