Automated NNFX Strategy Discovery & Backtesting System
A systematic approach to discovering and validating profitable trading strategies using the No Nonsense Forex (NNFX) methodology. Automates the full pipeline from indicator screening to portfolio backtesting.
π Strategy Discovery - Screen 40+ indicators for edge across multiple timeframes
π§ͺ Backtesting - Full position engine with money management rules
π Portfolio Optimization - Combine strategies with correlation analysis
π€ AI Analysis - Claude-powered strategy interpretation and reporting
``` βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β Discovery Pipeline β β ββββββββββββ ββββββββββββ ββββββββββββ ββββββββββββ β β β Stage 1 β β β Stage 2 β β β Stage 3 β β β Stage 4 β β β βIndicator β βBaseline β βConfirm β βPortfolio β β β βScreening β β Entry β β Exit β β Building β β β ββββββββββββ ββββββββββββ ββββββββββββ ββββββββββββ β β β β β β β β [40+ indicators] [Entry signals] [Exit rules] [Correlation]β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β Backtesting Engine β β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββββββ β β βPosition Engineβ βRisk Manager β β Performance Statsβ β β ββ’ Entry/Exit β ββ’ Position β ββ’ Win rate β β β ββ’ Stop Loss β β sizing β ββ’ Profit factor β β β ββ’ Take Profit β ββ’ Exposure β ββ’ Drawdown β β β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββββββ β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β AI Analysis Layer β β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β β β Claude API β Strategy interpretation & reporting β β β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ ```
| Layer | Technology |
|---|---|
| Language | Python 3.10+ |
| Trading Platform | MetaTrader 5 (MT5) |
| Data | MT5 API, Pandas, NumPy |
| Indicators | 42 Python-native implementations |
| Backtesting | Custom position engine |
| AI | Anthropic Claude API |
| Visualization | Streamlit dashboard |
```bash
git clone https://github.com/13otKmdr/MT5-AlgoLab.git cd MT5-AlgoLab
pip install -r requirements.txt
python DiscoveryEngine/health_check.py
python execution/run_discovery.py --category crypto --timeframe H1 ```
Full implementation of the No Nonsense Forex approach:
- Indicator screening with robustness testing
- Baseline entry signal validation
- Confirmation indicator pairing
- Exit strategy optimization
Python implementations of popular indicators:
- Trend: EMA, SMA, Hull MA, Ichimoku
- Momentum: RSI, CCI, MACD, Stochastic
- Volatility: ATR, Bollinger, Keltner
- Volume: OBV, VWAP
- Position-level simulation
- Stop loss and take profit
- Money management rules
- Currency exposure limits
- Performance metrics (Sharpe, drawdown, win rate)
Claude interprets backtest results and generates:
- Strategy summaries
- Trade rationale explanations
- Risk assessments
- Portfolio recommendations
- Real-time discovery progress
- Backtest visualizations
- Equity curves
- Trade statistics
``` MT5-AlgoLab/ βββ DiscoveryEngine/ # NNFX discovery pipeline β βββ bridge/ # MT5 terminal communication β βββ logic/ # NNFX validation rules β βββ config/ # Discovery configurations βββ StrategyFactory/ # Deep backtesting β βββ backtesting/ # Position engine β βββ strategies/ # Strategy implementations β βββ risk/ # Exposure management βββ execution/ # Orchestration scripts β βββ indicators_library.py # 42 indicators β βββ run_discovery.py # Main pipeline βββ dashboard/ # Streamlit UI βββ database/ # Results storage βββ output/ # Generated reports ```
Systematic Trading Research: Implementing a rigorous, repeatable process for strategy discovery rather than discretionary trading.
Python + MT5 Integration: Building a bridge between Python's data science ecosystem and MetaTrader's trading capabilities.
Position-Level Backtesting: Creating a realistic backtesting engine that accounts for position sizing, exposure limits, and money management rules.
AI-Assisted Analysis: Using LLMs to interpret quantitative results and generate human-readable strategy reports.
Large-Scale Parameter Optimization: Running thousands of indicator combinations efficiently with proper statistical validation.
- Python 3.10+
- MetaTrader 5 terminal (running)
- Anthropic API key (for AI analysis)
- Windows (for MT5 integration) or Wine on Linux
MIT
Automated NNFX strategy discovery and backtesting