- ml-universe (1.7K lines): correlation, liquidity, momentum, volatility modules. Only depends on ml-core (MLError, PRECISION_FACTOR). 6 tests passing. - ml-backtesting (1.1K lines): action_loader, barrier_backtest, report modules. Only depends on ml-core (MLError). Discovered and included previously undeclared report.rs module. 10 tests passing. - ml-asset-selection (1.2K lines): scorer, selector modules with AssetClass, AssetUniverse, PredictabilityScorer, ActiveSetSelector. Only depends on ml-core (MLError). 33 tests passing. All three replaced with thin facade re-exports in ml — existing `use ml::universe::*` / `use ml::backtesting::*` / `use ml::asset_selection::*` paths continue to work. Total: 15 sub-crates extracted from ml monolith. Workspace: 0 errors, ml tests 902 passed + 49 in sub-crates. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
18 lines
667 B
Rust
18 lines
667 B
Rust
//! ML Backtesting Framework
|
|
//!
|
|
//! Provides barrier parameter optimization, DQN action loading from CSV,
|
|
//! and comprehensive report generation for model evaluation.
|
|
|
|
// Workspace lints deny unwrap/expect/indexing at warn level; override to allow in tests only.
|
|
#![cfg_attr(test, allow(clippy::unwrap_used, clippy::expect_used, clippy::indexing_slicing))]
|
|
|
|
pub use ml_core::MLError;
|
|
|
|
pub mod action_loader;
|
|
pub mod barrier_backtest;
|
|
pub mod report;
|
|
|
|
pub use action_loader::{load_actions_from_csv, DQNActionRecord};
|
|
pub use barrier_backtest::{BacktestResults, BarrierBacktester, BarrierParams};
|
|
pub use report::{BacktestReport, PerformanceMetrics, Recommendation};
|