Wave D regime detection fully integrated into systematic performance validation. Changes: - Added Wave D (225 features) to wave comparison framework - Extended ImprovementMatrix with 10 new A→D and C→D comparison fields - Updated CSV export: includes Wave D columns and improvement percentages - Enhanced console output: Wave D summary with regime-adaptive metrics - Test coverage: Wave D test helpers and validation scenarios Performance Targets (Wave D): - Win Rate: 60% (vs. Wave C 55%, +9.1%) - Sharpe Ratio: 2.0 (vs. Wave C 1.5, +0.50) - Max Drawdown: 15% (vs. Wave C 18%, -16.7%) - Total PnL improvement: +50% over Wave C Integration Points: - 225 features: 201 Wave C + 24 regime detection (CUSUM, ADX, Transitions) - DBN data source: Ready for ml/src/loaders/dbn_sequence_loader.rs - SharedMLStrategy: Wiring pending to common/src/ml_strategy.rs Status: ✅ Compilation: CLEAN (0 errors, 0 warnings) ✅ Test coverage: 100% existing tests passing ⏳ Next: Wire DBN data + validate +25-50% Sharpe hypothesis 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Backtesting Service
Overview
The backtesting_service offers an independent and isolated environment for rigorously testing and validating trading strategies against historical market data. It provides a robust platform for simulating trading performance, analyzing strategy efficacy, and generating comprehensive performance reports before live deployment.
Features
- Independent Backtesting Service: Operates autonomously, allowing for parallel and isolated strategy evaluations.
- gRPC API for Backtest Execution: Exposes a clear API for submitting and managing backtesting jobs.
- Strategy Testing and Validation: Enables comprehensive testing of various trading strategies under different market conditions.
- Performance Reporting: Generates detailed reports including metrics like P&L, Sharpe ratio, drawdown, and win rate.
- Data Replay Engine: Accurately replays historical market data, simulating real-world order book dynamics and trade execution.
- Results Persistence: Stores backtesting results and reports for historical analysis and comparison.
gRPC API
The backtesting_service exposes a gRPC API for initiating and retrieving backtest results. Key endpoints include:
RunBacktest- Submit backtest configuration and strategyGetBacktestResults- Retrieve results for completed backtestsListAvailableStrategies- List registered strategiesGetBacktestReport- Get detailed performance report
Running the service
To run the backtesting_service binary:
cargo run --bin backtesting_service
Data Requirements
The service requires historical market data in Parquet format:
- Data should be stored in the configured data directory
- Supports tick data, order book snapshots, and OHLCV candles
- Data must include instrument, timestamp, and price/quantity fields
Testing
To run the tests for the backtesting_service crate:
cargo test --package backtesting_service
Documentation
Comprehensive API documentation is available at docs.rs/backtesting_service.