use nautilus_model::{data::DataBatch, defi::DefiData, identifiers::ClientId};
use crate::engine::BacktestEngine;
impl BacktestEngine {
pub fn add_defi_data(
&mut self,
data: Vec<DefiData>,
client_id: Option<ClientId>,
sort: bool,
) -> anyhow::Result<()> {
self.add_defi_data_iterator(data, client_id, sort)
}
pub fn add_defi_data_iterator<I>(
&mut self,
data: I,
client_id: Option<ClientId>,
sort: bool,
) -> anyhow::Result<()>
where
I: IntoIterator<Item = DefiData>,
{
let data: Vec<DefiData> = data.into_iter().collect();
self.add_data_batch(DataBatch::from(data), client_id, false, sort)
}
pub(crate) fn add_defi_data_client_if_not_exists(&mut self, client_id: Option<ClientId>) {
let client_id = client_id.unwrap_or_else(|| ClientId::from("BACKTEST"));
self.add_data_client_if_not_exists(client_id);
}
}