nautilus_common::cache::database

Trait CacheDatabaseAdapter

source
pub trait CacheDatabaseAdapter {
Show 45 methods // Required methods fn close(&mut self) -> Result<()>; fn flush(&mut self) -> Result<()>; fn load(&mut self) -> Result<HashMap<String, Bytes>>; fn load_currencies(&mut self) -> Result<HashMap<Ustr, Currency>>; fn load_instruments( &mut self, ) -> Result<HashMap<InstrumentId, InstrumentAny>>; fn load_synthetics( &mut self, ) -> Result<HashMap<InstrumentId, SyntheticInstrument>>; fn load_accounts(&mut self) -> Result<HashMap<AccountId, AccountAny>>; fn load_orders(&mut self) -> Result<HashMap<ClientOrderId, OrderAny>>; fn load_positions(&mut self) -> Result<HashMap<PositionId, Position>>; fn load_index_order_position( &mut self, ) -> Result<HashMap<ClientOrderId, Position>>; fn load_index_order_client( &mut self, ) -> Result<HashMap<ClientOrderId, ClientId>>; fn load_currency(&mut self, code: &Ustr) -> Result<Option<Currency>>; fn load_instrument( &mut self, instrument_id: &InstrumentId, ) -> Result<Option<InstrumentAny>>; fn load_synthetic( &mut self, instrument_id: &InstrumentId, ) -> Result<SyntheticInstrument>; fn load_account( &mut self, account_id: &AccountId, ) -> Result<Option<AccountAny>>; fn load_order( &mut self, client_order_id: &ClientOrderId, ) -> Result<Option<OrderAny>>; fn load_position(&mut self, position_id: &PositionId) -> Result<Position>; fn load_actor( &mut self, component_id: &ComponentId, ) -> Result<HashMap<String, Bytes>>; fn delete_actor(&mut self, component_id: &ComponentId) -> Result<()>; fn load_strategy( &mut self, strategy_id: &StrategyId, ) -> Result<HashMap<String, Bytes>>; fn delete_strategy(&mut self, component_id: &StrategyId) -> Result<()>; fn add(&mut self, key: String, value: Bytes) -> Result<()>; fn add_currency(&mut self, currency: &Currency) -> Result<()>; fn add_instrument(&mut self, instrument: &InstrumentAny) -> Result<()>; fn add_synthetic(&mut self, synthetic: &SyntheticInstrument) -> Result<()>; fn add_account(&mut self, account: &AccountAny) -> Result<()>; fn add_order( &mut self, order: &OrderAny, client_id: Option<ClientId>, ) -> Result<()>; fn add_position(&mut self, position: &Position) -> Result<()>; fn add_order_book(&mut self, order_book: &OrderBook) -> Result<()>; fn add_quote(&mut self, quote: &QuoteTick) -> Result<()>; fn load_quotes( &mut self, instrument_id: &InstrumentId, ) -> Result<Vec<QuoteTick>>; fn add_trade(&mut self, trade: &TradeTick) -> Result<()>; fn load_trades( &mut self, instrument_id: &InstrumentId, ) -> Result<Vec<TradeTick>>; fn add_bar(&mut self, bar: &Bar) -> Result<()>; fn load_bars(&mut self, instrument_id: &InstrumentId) -> Result<Vec<Bar>>; fn index_venue_order_id( &mut self, client_order_id: ClientOrderId, venue_order_id: VenueOrderId, ) -> Result<()>; fn index_order_position( &mut self, client_order_id: ClientOrderId, position_id: PositionId, ) -> Result<()>; fn update_actor(&mut self) -> Result<()>; fn update_strategy(&mut self) -> Result<()>; fn update_account(&mut self, account: &AccountAny) -> Result<()>; fn update_order(&mut self, order: &OrderAny) -> Result<()>; fn update_position(&mut self, position: &Position) -> Result<()>; fn snapshot_order_state(&mut self, order: &OrderAny) -> Result<()>; fn snapshot_position_state(&mut self, position: &Position) -> Result<()>; fn heartbeat(&mut self, timestamp: UnixNanos) -> Result<()>;
}

Required Methods§

source

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

source

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

source

fn load(&mut self) -> Result<HashMap<String, Bytes>>

source

fn load_currencies(&mut self) -> Result<HashMap<Ustr, Currency>>

source

fn load_instruments(&mut self) -> Result<HashMap<InstrumentId, InstrumentAny>>

source

fn load_synthetics( &mut self, ) -> Result<HashMap<InstrumentId, SyntheticInstrument>>

source

fn load_accounts(&mut self) -> Result<HashMap<AccountId, AccountAny>>

source

fn load_orders(&mut self) -> Result<HashMap<ClientOrderId, OrderAny>>

source

fn load_positions(&mut self) -> Result<HashMap<PositionId, Position>>

source

fn load_index_order_position( &mut self, ) -> Result<HashMap<ClientOrderId, Position>>

source

fn load_index_order_client( &mut self, ) -> Result<HashMap<ClientOrderId, ClientId>>

source

fn load_currency(&mut self, code: &Ustr) -> Result<Option<Currency>>

source

fn load_instrument( &mut self, instrument_id: &InstrumentId, ) -> Result<Option<InstrumentAny>>

source

fn load_synthetic( &mut self, instrument_id: &InstrumentId, ) -> Result<SyntheticInstrument>

source

fn load_account(&mut self, account_id: &AccountId) -> Result<Option<AccountAny>>

source

fn load_order( &mut self, client_order_id: &ClientOrderId, ) -> Result<Option<OrderAny>>

source

fn load_position(&mut self, position_id: &PositionId) -> Result<Position>

source

fn load_actor( &mut self, component_id: &ComponentId, ) -> Result<HashMap<String, Bytes>>

source

fn delete_actor(&mut self, component_id: &ComponentId) -> Result<()>

source

fn load_strategy( &mut self, strategy_id: &StrategyId, ) -> Result<HashMap<String, Bytes>>

source

fn delete_strategy(&mut self, component_id: &StrategyId) -> Result<()>

source

fn add(&mut self, key: String, value: Bytes) -> Result<()>

source

fn add_currency(&mut self, currency: &Currency) -> Result<()>

source

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

source

fn add_synthetic(&mut self, synthetic: &SyntheticInstrument) -> Result<()>

source

fn add_account(&mut self, account: &AccountAny) -> Result<()>

source

fn add_order( &mut self, order: &OrderAny, client_id: Option<ClientId>, ) -> Result<()>

source

fn add_position(&mut self, position: &Position) -> Result<()>

source

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

source

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

source

fn load_quotes( &mut self, instrument_id: &InstrumentId, ) -> Result<Vec<QuoteTick>>

source

fn add_trade(&mut self, trade: &TradeTick) -> Result<()>

source

fn load_trades( &mut self, instrument_id: &InstrumentId, ) -> Result<Vec<TradeTick>>

source

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

source

fn load_bars(&mut self, instrument_id: &InstrumentId) -> Result<Vec<Bar>>

source

fn index_venue_order_id( &mut self, client_order_id: ClientOrderId, venue_order_id: VenueOrderId, ) -> Result<()>

source

fn index_order_position( &mut self, client_order_id: ClientOrderId, position_id: PositionId, ) -> Result<()>

source

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

source

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

source

fn update_account(&mut self, account: &AccountAny) -> Result<()>

source

fn update_order(&mut self, order: &OrderAny) -> Result<()>

source

fn update_position(&mut self, position: &Position) -> Result<()>

source

fn snapshot_order_state(&mut self, order: &OrderAny) -> Result<()>

source

fn snapshot_position_state(&mut self, position: &Position) -> Result<()>

source

fn heartbeat(&mut self, timestamp: UnixNanos) -> Result<()>

Implementors§