pub trait DataBackend<'instrument_data, 'aggregated_data, IS: InstrumentSpec, OB: OrdersBackend<IS>, OrdersCS: OrdersCapacitySpec, S: Strategy<IS, OB, OrdersCS>>: MarketDataDecoderProvider<IS> {
// Required methods
fn new(
data_key: Option<&str>,
frontend: Frontend<'instrument_data, 'aggregated_data, IS, OB, OrdersCS, S>,
orders_backend_update_receiver: Receiver<OrdersBackendUpdate<IS>, OrdersBackendUpdateRecycle>,
) -> Self;
fn file_name_postpend() -> &'static str;
fn backtest(
&mut self,
walk_range: TimestampRangeExclusive,
) -> impl Future<Output = ()>;
fn decode_market_data(
buf_readers: impl ExactSizeIterator<Item = BufReader<File>>,
) -> impl Future<Output = Self::MarketDataDecoder>;
fn historical_mut(
&mut self,
) -> Option<Result<&mut impl HistoricalDataBackend<IS>, ()>>;
}Required Methods§
fn new( data_key: Option<&str>, frontend: Frontend<'instrument_data, 'aggregated_data, IS, OB, OrdersCS, S>, orders_backend_update_receiver: Receiver<OrdersBackendUpdate<IS>, OrdersBackendUpdateRecycle>, ) -> Self
fn file_name_postpend() -> &'static str
fn backtest( &mut self, walk_range: TimestampRangeExclusive, ) -> impl Future<Output = ()>
fn decode_market_data( buf_readers: impl ExactSizeIterator<Item = BufReader<File>>, ) -> impl Future<Output = Self::MarketDataDecoder>
fn historical_mut( &mut self, ) -> Option<Result<&mut impl HistoricalDataBackend<IS>, ()>>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".