pub struct DepthDiffStreamEvent {
pub event_time_us: i64,
pub first_book_update_id: i64,
pub last_book_update_id: i64,
pub price_exponent: i8,
pub qty_exponent: i8,
pub bids: Vec<PriceLevel>,
pub asks: Vec<PriceLevel>,
pub symbol: String,
}Expand description
Depth diff stream event (incremental order book updates).
Fields§
§event_time_us: i64Event timestamp in microseconds.
first_book_update_id: i64First book update ID in this diff.
last_book_update_id: i64Last book update ID in this diff.
price_exponent: i8Price exponent (prices = mantissa * 10^exponent).
qty_exponent: i8Quantity exponent (quantities = mantissa * 10^exponent).
bids: Vec<PriceLevel>Bid level updates (qty=0 means remove level).
asks: Vec<PriceLevel>Ask level updates (qty=0 means remove level).
symbol: StringTrading symbol.
Implementations§
Source§impl DepthDiffStreamEvent
impl DepthDiffStreamEvent
Sourcepub const BLOCK_LENGTH: usize = 26usize
pub const BLOCK_LENGTH: usize = 26usize
Fixed block length (excluding header, groups, and variable-length data).
Sourcepub fn decode(buf: &[u8]) -> Result<Self, StreamDecodeError>
pub fn decode(buf: &[u8]) -> Result<Self, StreamDecodeError>
Decode from SBE buffer (including 8-byte header).
§Errors
Returns error if buffer is too short, group size exceeds limits, or data is otherwise invalid.
Sourcepub fn level_price(&self, level: &PriceLevel) -> f64
pub fn level_price(&self, level: &PriceLevel) -> f64
Get price as f64 for a level.
Sourcepub fn level_qty(&self, level: &PriceLevel) -> f64
pub fn level_qty(&self, level: &PriceLevel) -> f64
Get quantity as f64 for a level.
Trait Implementations§
Source§impl Clone for DepthDiffStreamEvent
impl Clone for DepthDiffStreamEvent
Source§fn clone(&self) -> DepthDiffStreamEvent
fn clone(&self) -> DepthDiffStreamEvent
Returns a duplicate of the value. Read more
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for DepthDiffStreamEvent
impl RefUnwindSafe for DepthDiffStreamEvent
impl Send for DepthDiffStreamEvent
impl Sync for DepthDiffStreamEvent
impl Unpin for DepthDiffStreamEvent
impl UnwindSafe for DepthDiffStreamEvent
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more