//! `aura-backtest` — the backtest layer (C28): simulated execution without //! money (the `SimBroker` pip yardstick, position management), measured in R, //! plus the backtest metric reductions over the recorded streams //! (`metrics`, moved from `aura-analysis` by #291) and the Monte-Carlo //! assembly (`mc`, moved from `aura-engine` by #291/#292, C28 phase 2). The //! outer rung of the metric-generic engine (C28): `RunReport` here is the //! concrete `M = RunMetrics` instantiation of `aura_engine::RunReport`. mod mc; mod metrics; mod position_management; mod sim_broker; // `assemble_mc` stays module-private (it was never `pub` in the pre-#291 engine // lib.rs re-export either — only its two callers, `monte_carlo` and the // `#[cfg(test)]` thread-count wrapper, are public/test surface). pub use mc::{monte_carlo, r_bootstrap, McAggregate, McDraw, McFamily, RBootstrap}; pub use metrics::{ derive_position_events, r_metrics_from_rs, summarize, summarize_r, PositionAction, PositionEvent, RMetrics, RunMetrics, }; pub use position_management::{ ExitReason, FIELD_NAMES as PM_FIELD_NAMES, PositionManagement, RECORD_KINDS as PM_RECORD_KINDS, WIDTH as PM_WIDTH, }; pub use sim_broker::SimBroker; /// The trading instantiation of the engine's metric-generic run record (C28 /// phase 2, #292): source-compatible concrete names for every consumer that /// deals in backtest metrics. pub type RunReport = aura_engine::RunReport; pub type SweepPoint = aura_engine::SweepPoint; pub type SweepFamily = aura_engine::SweepFamily; pub type WindowRun = aura_engine::WindowRun; pub type WalkForwardResult = aura_engine::WalkForwardResult;