Files
foxhunt/crates/ml
jgrusewski 9729395073 fix(ml): wire spread_cost_bps into all training examples, remove dead code
- Add tx_cost_bps/tick_size/spread_ticks CLI args to tggn, xlstm, diffusion
- Subtract spread + commission from target returns during data prep
- Delete unused validate_model_parameters from train_mamba2_dbn
- Wire validate_training_batch into mamba2 pre-training validation

All 16 training examples now compile with zero warnings.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-25 22:30:24 +01:00
..

ml

Machine learning models for Foxhunt.

Models

  • DQN (Rainbow) -- Deep Q-Network with prioritized experience replay, dueling heads, noisy nets, double Q-learning
  • PPO -- Proximal Policy Optimization with GAE, LSTM policies, clip-higher option
  • TFT -- Temporal Fusion Transformer for multi-horizon time series forecasting
  • Mamba2 -- State space model for efficient sequence prediction
  • Liquid Networks -- Biologically inspired neural networks for non-stationary data
  • TLOB -- Transformer-based Limit Order Book analysis
  • Flash Attention -- Optimized attention implementation

Training

Two paths per model:

  1. Standalone trainer -- direct training loop (e.g., DQN::train, PpoTrainer)
  2. UnifiedTrainable adapter -- wraps models for the hyperopt pipeline (e.g., DQNTrainableAdapter, UnifiedTrainablePPO)

Inference

InferenceAdapterBridge connects models to the ensemble coordinator in adaptive-strategy. Each model exposes an InferenceAdapter trait for prediction.

Backend

  • Candle v0.9.1 -- VarMap, AdamW, loss.backward(), GradStore, opt.step(&grads)
  • CUDA required for training -- tested on RTX 3050 Ti 4GB, max batch size 230
  • CPU inference supported

Hyperopt

ArgminOptimizer (Particle Swarm Optimization) with per-model adapters: DQN, PPO, ContinuousPPO, TFT, Mamba2. Uses ParameterSpace trait for continuous parameter mapping.

ModelType Enum

15 variants: CompactDQN, DistilledMicroNet, DQN, RainbowDQN, MAMBA, TFT, TGGN, LNN, TLOB, PPO, Transformer, Mamba, LiquidNet, TGNN, Ensemble.

Key Modules

dqn, ppo, tft, mamba, liquid, tlob, flash_attention, ensemble, evaluation, inference, trainers, hyperopt, checkpoint, preprocessing, data_loaders, features, model_factory, training_pipeline, regime_detection, stress_testing, validation, bridge, common, metrics.

Testing

SQLX_OFFLINE=true cargo test -p ml --lib  # ~2009 tests