Files
foxhunt/adaptive-strategy
jgrusewski 1c940567ca refactor(adaptive-strategy): remove noisy hardcoded config eprintln warnings
Remove 8 warning prints (tracing::warn! and eprintln!) from Default impls
in config.rs. These fired on every test run and default construction,
creating noise. The migration notice in the module-level comment remains
as documentation.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-22 23:39:26 +01:00
..

adaptive-strategy

Adaptive trading strategy framework combining ensemble ML models, execution algorithms, market microstructure analysis, and risk management.

Overview

AdaptiveStrategy is the top-level type. It wraps an EnsembleCoordinator in Arc<RwLock> and coordinates predictions from four model types -- DQN, PPO, TFT, and Mamba2 -- loaded via InferenceAdapterBridge from the ml crate.

EnsembleConfig is re-exported from ml (not defined in this crate).

Modules

  • config -- Strategy configuration, seeded IDs (default-production, development, aggressive)
  • ensemble -- EnsembleCoordinator, model weighting, signal aggregation
  • execution -- TWAP, VWAP, Implementation Shortfall, POV, Arrival Price algorithms
  • microstructure -- Order book analysis, trade flow classification, price impact modeling
  • regime -- Market regime detection (HMM, threshold, ML-based)
  • risk -- Position sizing (Kelly, risk parity, vol targeting), portfolio limits, drawdown monitoring

Features

Cargo feature Description
postgres Hot-reload strategy config from PostgreSQL

Usage

use adaptive_strategy::{AdaptiveStrategy, StrategyConfig};

let config = StrategyConfig::default();
let strategy = AdaptiveStrategy::new(config).await?;

Testing

SQLX_OFFLINE=true cargo test -p adaptive-strategy --lib

Dependencies

Core: tokio, candle-core, serde, tracing, chrono ML models provided by the ml crate.