How caramelizeed/xgboost_quant works
XGBoost Quant is a full-stack quantitative trading system: users select a market and run a simulation that fetches and prepares price data, builds features, trains and evaluates a model, converts probabilities into trades, and returns backtest results for dashboard visualization. The API also exposes model explanations and parameter-sensitivity heatmaps. The README documents the end-to-end pipeline; sampled source confirms data-provider/cache behavior, walk-forward training, backtesting, API dispatch, and frontend requests. Simulation orchestration and several feature/model modules were not sampled, so those documented links are shown at subsystem level.
Main entry points: simulation.py Pipeline orchestration · useSimulation.js Simulation hook · api.js API client · main.py API endpoints
Components 26
Trading dashboard
- App navigation
frontend/src/App.jsx - Asset search
frontend/src/pages/AssetSearch.jsx - Simulation terminal
frontend/src/pages/Terminal.jsx - Simulation hook
frontend/src/hooks/useSimulation.js - API client
frontend/src/services/api.js - Result dashboard
frontend/src/pages/Dashboard.jsx - Result visualizations
frontend/src/components/EquityCurve.jsx - Sensitivity heatmap
frontend/src/components/HeatmapChart.jsx
API orchestration
- API endpoints
src/api/main.py - Request and response schemas
src/api/schemas.py - Pipeline orchestration
src/api/simulation.py
Market data
- OHLCV ingestion
src/data/ingestion.py - Crypto OHLCV
src/data/ccxt_ingestion.py - Parquet cache
src/data/ingestion.py - Cleaning and labeling
src/data/cleaning.py
Model pipeline
- Feature engineering
src/features/pipeline.py - Walk-forward training
src/models/train.py - Signal probabilities
src/models/predict.py - SHAP explanation
src/models/explain.py
Backtest analysis
- Strategy backtest
src/backtest/engine.py - Performance metrics
src/backtest/metrics.py - Parameter sensitivity
src/api/simulation.py
Other components
- Researcher
- yfinance
- CCXT exchanges
- CLI runner
main.py
Connections 29
- Researcher → App navigation: opens
- App navigation → Asset search: selects asset
- App navigation → Simulation terminal: opens
- Simulation terminal → Simulation hook: runs simulation
- Simulation hook → API client: requests results
- Simulation hook → API client: requests explanation
- API client → API endpoints: HTTP requests
- API endpoints → Request and response schemas: validates payloads
- API endpoints → Pipeline orchestration: dispatches pipeline
- Pipeline orchestration → OHLCV ingestion: fetches prices
- OHLCV ingestion → Parquet cache: reads and writes
- OHLCV ingestion → yfinance: fetches prices
- OHLCV ingestion → Crypto OHLCV: fetches crypto
- Crypto OHLCV → CCXT exchanges: fetches OHLCV
- Pipeline orchestration → Cleaning and labeling: prepares data
- Pipeline orchestration → Feature engineering: builds features
- Pipeline orchestration → Walk-forward training: trains model
- Walk-forward training → Feature engineering: transforms features
- Pipeline orchestration → Signal probabilities: generates probabilities
- Pipeline orchestration → Strategy backtest: runs strategy
- Strategy backtest → Performance metrics: calculates performance
- Pipeline orchestration → SHAP explanation: explains model
- Pipeline orchestration → Parameter sensitivity: generates sensitivity
- API endpoints → API client: returns results
- API client → Simulation hook: returns payload
- Simulation hook → Result dashboard: supplies results
- Result dashboard → Result visualizations: renders metrics
- Result dashboard → Sensitivity heatmap: renders sensitivity
- CLI runner → Pipeline orchestration: runs pipeline