v0.2.0
ICT ML Trading System
A production-grade machine learning trading system for DAX Futures based on ICT (Inner Circle Trader) concepts.
Overview
This system detects ICT patterns (Fair Value Gaps, Order Blocks, Liquidity Sweeps) during the London session (3:00-4:00 AM EST) and uses machine learning to grade pattern quality and predict trade outcomes.
Features
- Pattern Detection: Automated detection of FVG, Order Blocks, and Liquidity patterns
- Machine Learning: ML models for pattern grading and setup classification
- Labeling System: Integrated labeling workflow for training data
- Backtesting: Comprehensive backtesting framework
- Alert System: Real-time alerts via Telegram/Slack
- Production Ready: Comprehensive logging, error handling, and monitoring
Project Structure
ict-ml-trading/
├── src/ # Source code
├── config/ # Configuration files
├── data/ # Data storage
├── models/ # Trained ML models
├── logs/ # Application logs
├── tests/ # Test suite
├── scripts/ # Utility scripts
└── docs/ # Documentation
Quick Start
Prerequisites
- Python 3.10+
- PostgreSQL (optional, for production)
Installation
- Clone the repository:
git clone <repository-url>
cd ict-ml-trading
- Create virtual environment:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
- Install dependencies:
make install-dev
- Set up environment variables:
cp .env.example .env
# Edit .env with your configuration
- Initialize database (optional):
make setup-db
Development
Running Tests
make test
Code Formatting
make format
Linting
make lint
Type Checking
make type-check
Configuration
Configuration files are located in config/:
config.yaml- Main application configurationlogging.yaml- Logging setupdetectors.yaml- Pattern detector parametersmodels.yaml- ML model hyperparameterstrading.yaml- Trading strategy parametersalerts.yaml- Alert system configurationdatabase.yaml- Database connection settings
Version History
See CHANGELOG.md for detailed version history.
License
MIT License
Contributing
See docs/contributing.md for contribution guidelines.
Description
Languages
HTML
56.3%
Python
42.8%
Makefile
0.9%