#[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 expressed as a signed integer where every 1 unit corresponds to 1e-9, i.e. 1/1,000,000,000 or 0.000000001.
size: u32The order quantity.
flags: FlagSetA bit field indicating event end, message characteristics, and data quality. See
enums::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, Trade, Fill, or None.
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 by the original source.
ts_recv: u64The capture-server-received timestamp expressed as the number of nanoseconds since the UNIX epoch.
ts_in_delta: i32The delta of ts_recv - ts_exchange_send, max 2 seconds.
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
Returns the price as 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 raw interval 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 raw ts_in_delta—the delta of ts_recv - ts_exchange_send—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§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<MboMsg> for PyClassImplCollector<MboMsg>
Available on crate feature python only.
impl PyClassNewTextSignature<MboMsg> for PyClassImplCollector<MboMsg>
python only.fn new_text_signature(self) -> Option<&'static str>
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§fn type_object_bound(py: Python<'_>) -> Bound<'_, PyType>
fn type_object_bound(py: Python<'_>) -> Bound<'_, PyType>
PyTypeInfo::type_objectPyTypeInfo::type_object.Source§fn is_type_of(object: &Bound<'_, PyAny>) -> bool
fn is_type_of(object: &Bound<'_, PyAny>) -> bool
object is an instance of this type or a subclass of this type.Source§fn is_type_of_bound(object: &Bound<'_, PyAny>) -> bool
fn is_type_of_bound(object: &Bound<'_, PyAny>) -> bool
PyTypeInfo::is_type_ofPyTypeInfo::is_type_of.Source§fn is_exact_type_of(object: &Bound<'_, PyAny>) -> bool
fn is_exact_type_of(object: &Bound<'_, PyAny>) -> bool
object is an instance of this type.Source§fn is_exact_type_of_bound(object: &Bound<'_, PyAny>) -> bool
fn is_exact_type_of_bound(object: &Bound<'_, PyAny>) -> bool
PyTypeInfo::is_exact_type_ofPyTypeInfo::is_exact_type_of.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.impl Copy for MboMsg
impl DerefToPyAny for MboMsg
impl Eq 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<T> FromPyObject<'_> for T
impl<T> FromPyObject<'_> for T
Source§impl<'py, T> FromPyObjectBound<'_, 'py> for Twhere
T: FromPyObject<'py>,
impl<'py, T> FromPyObjectBound<'_, 'py> for Twhere
T: FromPyObject<'py>,
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.