pub struct BacktestEngineConfig {Show 21 fields
pub environment: Environment,
pub trader_id: TraderId,
pub load_state: bool,
pub save_state: bool,
pub logging: LoggerConfig,
pub instance_id: Option<UUID4>,
pub timeout_connection: Duration,
pub timeout_reconciliation: Duration,
pub timeout_portfolio: Duration,
pub timeout_disconnection: Duration,
pub delay_post_stop: Duration,
pub timeout_shutdown: Duration,
pub cache: Option<CacheConfig>,
pub msgbus: Option<MessageBusConfig>,
pub data_engine: Option<DataEngineConfig>,
pub risk_engine: Option<RiskEngineConfig>,
pub exec_engine: Option<ExecutionEngineConfig>,
pub portfolio: Option<PortfolioConfig>,
pub streaming: Option<StreamingConfig>,
pub bypass_logging: bool,
pub run_analysis: bool,
}Expand description
Configuration for BacktestEngine instances.
Fields§
§environment: EnvironmentThe kernel environment context.
trader_id: TraderIdThe trader ID for the node.
load_state: boolIf trading strategy state should be loaded from the database on start.
save_state: boolIf trading strategy state should be saved to the database on stop.
logging: LoggerConfigThe logging configuration for the kernel.
instance_id: Option<UUID4>The unique instance identifier for the kernel.
timeout_connection: DurationThe timeout for all clients to connect and initialize.
timeout_reconciliation: DurationThe timeout for execution state to reconcile.
timeout_portfolio: DurationThe timeout for portfolio to initialize margins and unrealized pnls.
timeout_disconnection: DurationThe timeout for all engine clients to disconnect.
delay_post_stop: DurationThe delay after stopping the node to await residual events before final shutdown.
timeout_shutdown: DurationThe timeout to await pending tasks cancellation during shutdown.
cache: Option<CacheConfig>The cache configuration.
msgbus: Option<MessageBusConfig>The message bus configuration.
data_engine: Option<DataEngineConfig>The data engine configuration.
risk_engine: Option<RiskEngineConfig>The risk engine configuration.
exec_engine: Option<ExecutionEngineConfig>The execution engine configuration.
portfolio: Option<PortfolioConfig>The portfolio configuration.
streaming: Option<StreamingConfig>The configuration for streaming to feather files.
bypass_logging: boolIf logging should be bypassed.
run_analysis: boolIf post backtest performance analysis should be run.
Implementations§
Source§impl BacktestEngineConfig
impl BacktestEngineConfig
pub fn new( environment: Environment, trader_id: TraderId, load_state: Option<bool>, save_state: Option<bool>, bypass_logging: Option<bool>, run_analysis: Option<bool>, timeout_connection: Option<u64>, timeout_reconciliation: Option<u64>, timeout_portfolio: Option<u64>, timeout_disconnection: Option<u64>, delay_post_stop: Option<u64>, timeout_shutdown: Option<u64>, logging: Option<LoggerConfig>, instance_id: Option<UUID4>, cache: Option<CacheConfig>, msgbus: Option<MessageBusConfig>, data_engine: Option<DataEngineConfig>, risk_engine: Option<RiskEngineConfig>, exec_engine: Option<ExecutionEngineConfig>, portfolio: Option<PortfolioConfig>, streaming: Option<StreamingConfig>, ) -> Self
Trait Implementations§
Source§impl Clone for BacktestEngineConfig
impl Clone for BacktestEngineConfig
Source§fn clone(&self) -> BacktestEngineConfig
fn clone(&self) -> BacktestEngineConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for BacktestEngineConfig
impl Debug for BacktestEngineConfig
Source§impl Default for BacktestEngineConfig
impl Default for BacktestEngineConfig
Source§impl NautilusKernelConfig for BacktestEngineConfig
impl NautilusKernelConfig for BacktestEngineConfig
Source§fn environment(&self) -> Environment
fn environment(&self) -> Environment
Source§fn load_state(&self) -> bool
fn load_state(&self) -> bool
Source§fn save_state(&self) -> bool
fn save_state(&self) -> bool
Source§fn instance_id(&self) -> Option<UUID4>
fn instance_id(&self) -> Option<UUID4>
Source§fn timeout_connection(&self) -> Duration
fn timeout_connection(&self) -> Duration
Source§fn timeout_reconciliation(&self) -> Duration
fn timeout_reconciliation(&self) -> Duration
Source§fn timeout_portfolio(&self) -> Duration
fn timeout_portfolio(&self) -> Duration
Source§fn timeout_disconnection(&self) -> Duration
fn timeout_disconnection(&self) -> Duration
Source§fn delay_post_stop(&self) -> Duration
fn delay_post_stop(&self) -> Duration
Source§fn timeout_shutdown(&self) -> Duration
fn timeout_shutdown(&self) -> Duration
Source§fn data_engine(&self) -> Option<DataEngineConfig>
fn data_engine(&self) -> Option<DataEngineConfig>
Source§fn risk_engine(&self) -> Option<RiskEngineConfig>
fn risk_engine(&self) -> Option<RiskEngineConfig>
Source§fn exec_engine(&self) -> Option<ExecutionEngineConfig>
fn exec_engine(&self) -> Option<ExecutionEngineConfig>
Auto Trait Implementations§
impl Freeze for BacktestEngineConfig
impl RefUnwindSafe for BacktestEngineConfig
impl Send for BacktestEngineConfig
impl Sync for BacktestEngineConfig
impl Unpin for BacktestEngineConfig
impl UnsafeUnpin for BacktestEngineConfig
impl UnwindSafe for BacktestEngineConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more