apple_quant_algorithmic/backend/data.rs
1use tokio::{fs::File, io::BufReader};
2
3use crate::{aggregation::TradeTradeTimestamp, instrument::InstrumentSpec};
4
5pub trait DataBackend<IS: InstrumentSpec> {
6 fn new(key: Option<&str>) -> Self;
7
8 fn file_name_postpend() -> &'static str;
9
10 fn stream_in(
11 &mut self,
12 buf_reader: BufReader<File>,
13 ) -> impl Future<Output = impl ExactSizeIterator<Item = TradeTradeTimestamp<IS>>> + Send;
14}