Skip to main content

BookImbalanceActor

Struct BookImbalanceActor 

Source
pub struct BookImbalanceActor { /* private fields */ }
Expand description

Actor that tracks bid/ask quoted volume imbalance from order book deltas.

On start, subscribes to [OrderBookDeltas] for each configured instrument. On each update, sums the resting size at each updated level per side and accumulates running totals. Logs the cumulative imbalance at a configurable interval. On stop, prints a per-instrument summary.

Implementations§

Source§

impl BookImbalanceActor

Source

pub fn from_config(config: BookImbalanceActorConfig) -> Self

Creates a new BookImbalanceActor from config.

Source

pub fn new( instrument_ids: Vec<InstrumentId>, log_interval: u64, actor_id: Option<ActorId>, ) -> Self

Creates a new BookImbalanceActor.

actor_id sets the actor identifier. Pass None for the default "BOOK_IMBALANCE-001".

log_interval controls how often (in update count) a progress line is printed. Set to 0 to disable periodic logging.

Source

pub fn states(&self) -> &AHashMap<InstrumentId, ImbalanceState>

Returns the per-instrument imbalance states.

Source

pub fn print_summary(&self)

Prints a summary of all tracked instruments to stdout.

Trait Implementations§

Source§

impl DataActor for BookImbalanceActor

Source§

fn on_start(&mut self) -> Result<()>

Actions to be performed on start. Read more
Source§

fn on_stop(&mut self) -> Result<()>

Actions to be performed on stop. Read more
Source§

fn on_book_deltas(&mut self, deltas: &OrderBookDeltas) -> Result<()>

Actions to be performed when receiving order book deltas. Read more
§

fn actor_id(&self) -> ActorId
where Self: DataActorNative,

Returns the actor ID.
§

fn trader_id(&self) -> Option<TraderId>
where Self: DataActorNative,

Returns the trader ID this actor is registered to.
§

fn is_registered(&self) -> bool
where Self: DataActorNative,

Returns whether the actor is registered with a trader.
§

fn config(&self) -> &DataActorConfig
where Self: DataActorNative,

Returns the actor configuration.
§

fn on_save(&self) -> Result<IndexMap<String, Vec<u8>>, Error>

Actions to be performed when the actor state is saved. Read more
§

fn on_load(&mut self, state: IndexMap<String, Vec<u8>>) -> Result<(), Error>

Actions to be performed when the actor state is loaded. Read more
§

fn on_resume(&mut self) -> Result<(), Error>

Actions to be performed on resume. Read more
§

fn on_reset(&mut self) -> Result<(), Error>

Actions to be performed on reset. Read more
§

fn on_dispose(&mut self) -> Result<(), Error>

Actions to be performed on dispose. Read more
§

fn on_degrade(&mut self) -> Result<(), Error>

Actions to be performed on degrade. Read more
§

fn on_fault(&mut self) -> Result<(), Error>

Actions to be performed on fault. Read more
§

fn on_time_event(&mut self, event: &TimeEvent) -> Result<(), Error>

Actions to be performed when receiving a time event. Read more
§

fn on_data(&mut self, data: &CustomData) -> Result<(), Error>

Actions to be performed when receiving custom data. Read more
§

fn on_signal(&mut self, signal: &Signal) -> Result<(), Error>

Actions to be performed when receiving a signal. Read more
§

fn on_instrument(&mut self, instrument: &InstrumentAny) -> Result<(), Error>

Actions to be performed when receiving an instrument. Read more
§

fn on_book(&mut self, order_book: &OrderBook) -> Result<(), Error>

Actions to be performed when receiving an order book. Read more
§

fn on_quote(&mut self, quote: &QuoteTick) -> Result<(), Error>

Actions to be performed when receiving a quote. Read more
§

fn on_trade(&mut self, tick: &TradeTick) -> Result<(), Error>

Actions to be performed when receiving a trade. Read more
§

fn on_bar(&mut self, bar: &Bar) -> Result<(), Error>

Actions to be performed when receiving a bar. Read more
§

fn on_mark_price(&mut self, mark_price: &MarkPriceUpdate) -> Result<(), Error>

Actions to be performed when receiving a mark price update. Read more
§

fn on_index_price( &mut self, index_price: &IndexPriceUpdate, ) -> Result<(), Error>

Actions to be performed when receiving an index price update. Read more
§

fn on_funding_rate( &mut self, funding_rate: &FundingRateUpdate, ) -> Result<(), Error>

Actions to be performed when receiving a funding rate update. Read more
§

fn on_option_greeks(&mut self, greeks: &OptionGreeks) -> Result<(), Error>

Actions to be performed when receiving exchange-provided option greeks. Read more
§

fn on_option_chain(&mut self, slice: &OptionChainSlice) -> Result<(), Error>

Actions to be performed when receiving an option chain slice snapshot. Read more
§

fn on_instrument_status(&mut self, data: &InstrumentStatus) -> Result<(), Error>

Actions to be performed when receiving an instrument status update. Read more
§

fn on_instrument_close(&mut self, update: &InstrumentClose) -> Result<(), Error>

Actions to be performed when receiving an instrument close update. Read more
§

fn on_order_filled(&mut self, event: &OrderFilled) -> Result<(), Error>

Actions to be performed when receiving an order filled event. Read more
§

fn on_order_canceled(&mut self, event: &OrderCanceled) -> Result<(), Error>

Actions to be performed when receiving an order canceled event. Read more
§

fn on_block(&mut self, block: &Block) -> Result<(), Error>

Actions to be performed when receiving a block. Read more
§

fn on_pool(&mut self, pool: &Pool) -> Result<(), Error>

Actions to be performed when receiving a pool. Read more
§

fn on_pool_swap(&mut self, swap: &PoolSwap) -> Result<(), Error>

Actions to be performed when receiving a pool swap. Read more
§

fn on_pool_liquidity_update( &mut self, update: &PoolLiquidityUpdate, ) -> Result<(), Error>

Actions to be performed when receiving a pool liquidity update. Read more
§

fn on_pool_fee_collect(&mut self, collect: &PoolFeeCollect) -> Result<(), Error>

Actions to be performed when receiving a pool fee collect event. Read more
§

fn on_pool_flash(&mut self, flash: &PoolFlash) -> Result<(), Error>

Actions to be performed when receiving a pool flash event. Read more
§

fn on_historical_data( &mut self, data: &(dyn Any + 'static), ) -> Result<(), Error>

Actions to be performed when receiving historical data. Read more
§

fn on_historical_book_deltas( &mut self, deltas: &[OrderBookDelta], ) -> Result<(), Error>

Actions to be performed when receiving historical book deltas. Read more
§

fn on_historical_book_depth( &mut self, depths: &[OrderBookDepth10], ) -> Result<(), Error>

Actions to be performed when receiving historical book depth. Read more
§

fn on_historical_quotes(&mut self, quotes: &[QuoteTick]) -> Result<(), Error>

Actions to be performed when receiving historical quotes. Read more
§

fn on_historical_trades(&mut self, trades: &[TradeTick]) -> Result<(), Error>

Actions to be performed when receiving historical trades. Read more
§

fn on_historical_bars(&mut self, bars: &[Bar]) -> Result<(), Error>

Actions to be performed when receiving historical bars. Read more
§

fn on_historical_mark_prices( &mut self, mark_prices: &[MarkPriceUpdate], ) -> Result<(), Error>

Actions to be performed when receiving historical mark prices. Read more
§

fn on_historical_index_prices( &mut self, index_prices: &[IndexPriceUpdate], ) -> Result<(), Error>

Actions to be performed when receiving historical index prices. Read more
§

fn on_historical_funding_rates( &mut self, funding_rates: &[FundingRateUpdate], ) -> Result<(), Error>

Actions to be performed when receiving historical funding rates. Read more
§

fn clock(&self) -> ClockApi<'_>
where Self: DataActorNative,

Returns the user-facing clock API.
§

fn cache(&self) -> CacheApi<'_>
where Self: DataActorNative,

Returns the user-facing cache API.
§

fn shutdown_system(&self, reason: Option<String>)
where Self: DataActorNative,

Sends a shutdown command to the system with an optional reason. Read more
§

fn publish_data(&self, data_type: &DataType, data: &CustomData)
where Self: DataActorNative,

Publishes data on the message bus under the topic derived from data_type. Read more
§

fn publish_signal(&self, name: &str, value: String, ts_event: UnixNanos)
where Self: DataActorNative,

Publishes a [Signal] constructed from name and value. Read more
§

fn add_synthetic(&self, synthetic: SyntheticInstrument) -> Result<(), Error>
where Self: DataActorNative,

Adds the synthetic instrument to the cache. Read more
§

fn update_synthetic(&self, synthetic: SyntheticInstrument) -> Result<(), Error>
where Self: DataActorNative,

Updates the synthetic instrument in the cache, replacing the existing entry. Read more
§

fn handle_time_event(&mut self, event: &TimeEvent)

Handles a received time event.
§

fn handle_data(&mut self, data: &CustomData)

Handles a received custom data point.
§

fn handle_signal(&mut self, signal: &Signal)

Handles a received signal.
§

fn handle_instrument(&mut self, instrument: &InstrumentAny)

Handles a received instrument.
§

fn handle_book_deltas(&mut self, deltas: &OrderBookDeltas)

Handles received order book deltas.
§

fn handle_book(&mut self, book: &OrderBook)

Handles a received order book reference.
§

fn handle_quote(&mut self, quote: &QuoteTick)
where Self: DataActorNative,

Handles a received quote.
§

fn handle_trade(&mut self, trade: &TradeTick)
where Self: DataActorNative,

Handles a received trade.
§

fn handle_bar(&mut self, bar: &Bar)
where Self: DataActorNative,

Handles a receiving bar.
§

fn handle_mark_price(&mut self, mark_price: &MarkPriceUpdate)

Handles a received mark price update.
§

fn handle_index_price(&mut self, index_price: &IndexPriceUpdate)

Handles a received index price update.
§

fn handle_funding_rate(&mut self, funding_rate: &FundingRateUpdate)

Handles a received funding rate update.
§

fn handle_option_greeks(&mut self, greeks: &OptionGreeks)

Handles a received option greeks update.
§

fn handle_option_chain(&mut self, slice: &OptionChainSlice)

Handles a received option chain slice snapshot.
§

fn handle_instrument_status(&mut self, status: &InstrumentStatus)

Handles a received instrument status.
§

fn handle_instrument_close(&mut self, close: &InstrumentClose)

Handles a received instrument close.
§

fn handle_order_filled(&mut self, event: &OrderFilled)
where Self: DataActorNative,

Handles a received order filled event.
§

fn handle_order_canceled(&mut self, event: &OrderCanceled)
where Self: DataActorNative,

Handles a received order canceled event.
§

fn handle_block(&mut self, block: &Block)

Handles a received block.
§

fn handle_pool(&mut self, pool: &Pool)

Handles a received pool definition update.
§

fn handle_pool_swap(&mut self, swap: &PoolSwap)

Handles a received pool swap.
§

fn handle_pool_liquidity_update(&mut self, update: &PoolLiquidityUpdate)

Handles a received pool liquidity update.
§

fn handle_pool_fee_collect(&mut self, collect: &PoolFeeCollect)

Handles a received pool fee collect.
§

fn handle_pool_flash(&mut self, flash: &PoolFlash)

Handles a received pool flash event.
§

fn handle_historical_data(&mut self, data: &(dyn Any + 'static))

Handles received historical data.
§

fn handle_data_response(&mut self, resp: &CustomDataResponse)

Handles a data response.
§

fn handle_instrument_response(&mut self, resp: &InstrumentResponse)

Handles an instrument response.
§

fn handle_instruments_response(&mut self, resp: &InstrumentsResponse)

Handles an instruments response.
§

fn handle_book_response(&mut self, resp: &BookResponse)

Handles a book response.
§

fn handle_book_deltas_response(&mut self, resp: &BookDeltasResponse)

Handles a book deltas response.
§

fn handle_book_depth_response(&mut self, resp: &BookDepthResponse)

Handles a book depth response.
§

fn handle_quotes_response(&mut self, resp: &QuotesResponse)
where Self: DataActorNative,

Handles a quotes response.
§

fn handle_trades_response(&mut self, resp: &TradesResponse)
where Self: DataActorNative,

Handles a trades response.
§

fn handle_bars_response(&mut self, resp: &BarsResponse)
where Self: DataActorNative,

Handles a bars response.
§

fn handle_funding_rates_response(&mut self, resp: &FundingRatesResponse)

Handles a funding rates response.
§

fn subscribe_data( &mut self, data_type: DataType, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to streaming data_type data.
§

fn subscribe_signal(&mut self, name: &str, priority: Option<u32>)
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to [Signal] data by name. Read more
§

fn subscribe_quotes( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to streaming [QuoteTick] data for the instrument_id.
§

fn subscribe_instruments( &mut self, venue: Venue, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to streaming [InstrumentAny] data for the venue.
§

fn subscribe_instrument( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to streaming [InstrumentAny] data for the instrument_id.
§

fn subscribe_book_deltas( &mut self, instrument_id: InstrumentId, book_type: BookType, depth: Option<NonZero<usize>>, client_id: Option<ClientId>, managed: bool, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to streaming [OrderBookDeltas] data for the instrument_id.
§

fn subscribe_book_at_interval( &mut self, instrument_id: InstrumentId, book_type: BookType, depth: Option<NonZero<usize>>, interval_ms: NonZero<usize>, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to [OrderBook] snapshots at a specified interval for the instrument_id.
§

fn subscribe_trades( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to streaming [TradeTick] data for the instrument_id.
§

fn subscribe_bars( &mut self, bar_type: BarType, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to streaming [Bar] data for the bar_type.
§

fn subscribe_mark_prices( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to streaming [MarkPriceUpdate] data for the instrument_id.
§

fn subscribe_index_prices( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to streaming [IndexPriceUpdate] data for the instrument_id.
§

fn subscribe_funding_rates( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to streaming [FundingRateUpdate] data for the instrument_id.
§

fn subscribe_option_greeks( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to streaming [OptionGreeks] data for the instrument_id.
§

fn subscribe_instrument_status( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to streaming [InstrumentStatus] data for the instrument_id.
§

fn subscribe_instrument_close( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to streaming [InstrumentClose] data for the instrument_id.
§

fn subscribe_option_chain( &mut self, series_id: OptionSeriesId, strike_range: StrikeRange, snapshot_interval_ms: Option<u64>, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to streaming [OptionChainSlice] snapshots for the option series_id. Read more
§

fn subscribe_order_fills(&mut self, instrument_id: InstrumentId)
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to [OrderFilled] events for the instrument_id.
§

fn subscribe_order_cancels(&mut self, instrument_id: InstrumentId)
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to [OrderCanceled] events for the instrument_id.
§

fn subscribe_blocks( &mut self, chain: Blockchain, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to streaming [Block] data for the chain.
§

fn subscribe_pool( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to streaming [Pool] definition updates for the AMM pool at the instrument_id.
§

fn subscribe_pool_swaps( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to streaming [PoolSwap] data for the instrument_id.
§

fn subscribe_pool_liquidity_updates( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to streaming [PoolLiquidityUpdate] data for the instrument_id.
§

fn subscribe_pool_fee_collects( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to streaming [PoolFeeCollect] data for the instrument_id.
§

fn subscribe_pool_flash_events( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Subscribe to streaming [PoolFlash] events for the given instrument_id.
§

fn unsubscribe_data( &mut self, data_type: DataType, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from streaming data_type data.
§

fn unsubscribe_signal(&mut self, name: &str)
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from [Signal] data by name.
§

fn unsubscribe_instruments( &mut self, venue: Venue, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from streaming [InstrumentAny] data for the venue.
§

fn unsubscribe_instrument( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from streaming [InstrumentAny] data for the instrument_id.
§

fn unsubscribe_book_deltas( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from streaming [OrderBookDeltas] data for the instrument_id.
§

fn unsubscribe_book_at_interval( &mut self, instrument_id: InstrumentId, interval_ms: NonZero<usize>, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from [OrderBook] snapshots at a specified interval for the instrument_id.
§

fn unsubscribe_quotes( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from streaming [QuoteTick] data for the instrument_id.
§

fn unsubscribe_trades( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from streaming [TradeTick] data for the instrument_id.
§

fn unsubscribe_bars( &mut self, bar_type: BarType, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from streaming [Bar] data for the bar_type.
§

fn unsubscribe_mark_prices( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from streaming [MarkPriceUpdate] data for the instrument_id.
§

fn unsubscribe_index_prices( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from streaming [IndexPriceUpdate] data for the instrument_id.
§

fn unsubscribe_funding_rates( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from streaming [FundingRateUpdate] data for the instrument_id.
§

fn unsubscribe_option_greeks( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from streaming [OptionGreeks] data for the instrument_id.
§

fn unsubscribe_instrument_status( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from streaming [InstrumentStatus] data for the instrument_id.
§

fn unsubscribe_instrument_close( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from streaming [InstrumentClose] data for the instrument_id.
§

fn unsubscribe_option_chain( &mut self, series_id: OptionSeriesId, client_id: Option<ClientId>, )
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from streaming [OptionChainSlice] snapshots for the option series_id.
§

fn unsubscribe_order_fills(&mut self, instrument_id: InstrumentId)
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from [OrderFilled] events for the instrument_id.
§

fn unsubscribe_order_cancels(&mut self, instrument_id: InstrumentId)
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from [OrderCanceled] events for the instrument_id.
§

fn unsubscribe_blocks( &mut self, chain: Blockchain, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from streaming [Block] data for the chain.
§

fn unsubscribe_pool( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from streaming [Pool] definition updates for the AMM pool at the instrument_id.
§

fn unsubscribe_pool_swaps( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from streaming [PoolSwap] data for the instrument_id.
§

fn unsubscribe_pool_liquidity_updates( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from streaming [PoolLiquidityUpdate] data for the instrument_id.
§

fn unsubscribe_pool_fee_collects( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from streaming [PoolFeeCollect] data for the instrument_id.
§

fn unsubscribe_pool_flash_events( &mut self, instrument_id: InstrumentId, client_id: Option<ClientId>, params: Option<Params>, )
where Self: DataActorNative + Sized + 'static + Debug,

Unsubscribe from streaming [PoolFlash] events for the given instrument_id.
§

fn request_data( &mut self, data_type: DataType, client_id: ClientId, start: Option<DateTime<Utc>>, end: Option<DateTime<Utc>>, limit: Option<NonZero<usize>>, params: Option<Params>, ) -> Result<UUID4, Error>
where Self: DataActorNative + Sized + 'static + Debug,

Request historical custom data of the given data_type. Read more
§

fn request_instrument( &mut self, instrument_id: InstrumentId, start: Option<DateTime<Utc>>, end: Option<DateTime<Utc>>, client_id: Option<ClientId>, params: Option<Params>, ) -> Result<UUID4, Error>
where Self: DataActorNative + Sized + 'static + Debug,

Request historical [InstrumentResponse] data for the given instrument_id. Read more
§

fn request_instruments( &mut self, venue: Option<Venue>, start: Option<DateTime<Utc>>, end: Option<DateTime<Utc>>, client_id: Option<ClientId>, params: Option<Params>, ) -> Result<UUID4, Error>
where Self: DataActorNative + Sized + 'static + Debug,

Request historical [InstrumentsResponse] definitions for the optional venue. Read more
§

fn request_book_snapshot( &mut self, instrument_id: InstrumentId, depth: Option<NonZero<usize>>, client_id: Option<ClientId>, params: Option<Params>, ) -> Result<UUID4, Error>
where Self: DataActorNative + Sized + 'static + Debug,

Request an [OrderBook] snapshot for the given instrument_id. Read more
§

fn request_book_deltas( &mut self, instrument_id: InstrumentId, start: Option<DateTime<Utc>>, end: Option<DateTime<Utc>>, limit: Option<NonZero<usize>>, client_id: Option<ClientId>, params: Option<Params>, ) -> Result<UUID4, Error>
where Self: DataActorNative + Sized + 'static + Debug,

Request historical [OrderBookDelta] data for the given instrument_id. Read more
§

fn request_book_depth( &mut self, instrument_id: InstrumentId, start: Option<DateTime<Utc>>, end: Option<DateTime<Utc>>, limit: Option<NonZero<usize>>, depth: Option<NonZero<usize>>, client_id: Option<ClientId>, params: Option<Params>, ) -> Result<UUID4, Error>
where Self: DataActorNative + Sized + 'static + Debug,

Request historical [OrderBookDepth10] data for the given instrument_id. Read more
§

fn request_quotes( &mut self, instrument_id: InstrumentId, start: Option<DateTime<Utc>>, end: Option<DateTime<Utc>>, limit: Option<NonZero<usize>>, client_id: Option<ClientId>, params: Option<Params>, ) -> Result<UUID4, Error>
where Self: DataActorNative + Sized + 'static + Debug,

Request historical [QuoteTick] data for the given instrument_id. Read more
§

fn request_trades( &mut self, instrument_id: InstrumentId, start: Option<DateTime<Utc>>, end: Option<DateTime<Utc>>, limit: Option<NonZero<usize>>, client_id: Option<ClientId>, params: Option<Params>, ) -> Result<UUID4, Error>
where Self: DataActorNative + Sized + 'static + Debug,

Request historical [TradeTick] data for the given instrument_id. Read more
§

fn request_bars( &mut self, bar_type: BarType, start: Option<DateTime<Utc>>, end: Option<DateTime<Utc>>, limit: Option<NonZero<usize>>, client_id: Option<ClientId>, params: Option<Params>, ) -> Result<UUID4, Error>
where Self: DataActorNative + Sized + 'static + Debug,

Request historical [Bar] data for the given bar_type. Read more
§

fn request_funding_rates( &mut self, instrument_id: InstrumentId, start: Option<DateTime<Utc>>, end: Option<DateTime<Utc>>, limit: Option<NonZero<usize>>, client_id: Option<ClientId>, params: Option<Params>, ) -> Result<UUID4, Error>
where Self: DataActorNative + Sized + 'static + Debug,

Request historical [FundingRateUpdate] data for the given instrument_id. Read more
Source§

impl DataActorNative for BookImbalanceActor

Source§

fn core(&self) -> &DataActorCore

Returns the actor core.
Source§

fn core_mut(&mut self) -> &mut DataActorCore

Returns the mutable actor core.
§

fn clock_mut(&mut self) -> RefMut<'_, dyn Clock + 'static>

Returns the mutable clock borrow for the actor. Read more
§

fn clock_rc(&self) -> Rc<RefCell<dyn Clock>>

Returns a clone of the reference-counted clock. Read more
§

fn cache_ref(&self) -> Ref<'_, Cache>

Returns a read-only cache borrow. Read more
§

fn cache_rc(&self) -> Rc<RefCell<Cache>>

Returns a clone of the reference-counted cache. Read more
Source§

impl Debug for BookImbalanceActor

Source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

§

impl<T> Actor for T
where T: DataActor + DataActorNative + Debug + 'static,

§

fn id(&self) -> Ustr

The unique identifier for the actor.
§

fn handle(&mut self, msg: &(dyn Any + 'static))

Handles the msg.
§

fn as_any(&self) -> &(dyn Any + 'static)

Returns a reference to self as Any, for downcasting support.
§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
where Self: Sized,

Returns a mutable reference to self as Any, for downcasting support. Read more
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
§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<T> Component for T
where T: DataActor + DataActorNative + Debug + 'static,

§

fn component_id(&self) -> ComponentId

Returns the unique identifier for this component.
§

fn state(&self) -> ComponentState

Returns the current state of the component.
§

fn transition_state(&mut self, trigger: ComponentTrigger) -> Result<(), Error>

Transition the component with the state trigger. Read more
§

fn register( &mut self, trader_id: TraderId, clock: Rc<RefCell<dyn Clock>>, cache: Rc<RefCell<Cache>>, ) -> Result<(), Error>

Registers the component with a system. Read more
§

fn on_start(&mut self) -> Result<(), Error>

Actions to be performed on start. Read more
§

fn on_stop(&mut self) -> Result<(), Error>

Actions to be performed on stop. Read more
§

fn on_resume(&mut self) -> Result<(), Error>

Actions to be performed on resume. Read more
§

fn on_degrade(&mut self) -> Result<(), Error>

Actions to be performed on degrade. Read more
§

fn on_fault(&mut self) -> Result<(), Error>

Actions to be performed on fault. Read more
§

fn on_reset(&mut self) -> Result<(), Error>

Actions to be performed on reset. Read more
§

fn on_dispose(&mut self) -> Result<(), Error>

Actions to be performed on dispose. Read more
§

fn is_ready(&self) -> bool

Returns whether the component is ready.
§

fn not_running(&self) -> bool

Returns whether the component is not running.
§

fn is_running(&self) -> bool

Returns whether the component is running.
§

fn is_stopped(&self) -> bool

Returns whether the component is stopped.
§

fn is_degraded(&self) -> bool

Returns whether the component has been degraded.
§

fn is_faulted(&self) -> bool

Returns whether the component has been faulted.
§

fn is_disposed(&self) -> bool

Returns whether the component has been disposed.
§

fn initialize(&mut self) -> Result<(), Error>

Initializes the component. Read more
§

fn start(&mut self) -> Result<(), Error>

Starts the component. Read more
§

fn stop(&mut self) -> Result<(), Error>

Stops the component. Read more
§

fn resume(&mut self) -> Result<(), Error>

Resumes the component. Read more
§

fn degrade(&mut self) -> Result<(), Error>

Degrades the component. Read more
§

fn fault(&mut self) -> Result<(), Error>

Faults the component. Read more
§

fn reset(&mut self) -> Result<(), Error>

Resets the component to its initial state. Read more
§

fn dispose(&mut self) -> Result<(), Error>

Disposes of the component, releasing any resources. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. 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> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
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<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more