MultiStrategyEA_v1.2
This EA combines multiple trading strategies across different timeframes to generate entry and exit signals. It integrates trend-following, momentum, and breakout components to adapt to varying market conditions. The system manages positions with configurable risk parameters and strategy weighting.
Open the interactive view (equity curve, symbol switch)Key facts
Backtest results (H1, about 1 year)
| Symbol | P&L | Annual | Max DD | Trades | Win rate | Sharpe | Recovery | Losing streak | Per trade | Status |
|---|---|---|---|---|---|---|---|---|---|---|
| EURUSD | -0.27% | -0.24% | 3.79% | 110 | 48.60% | -0.05 | -0.07 | 4 | +$0.06 | Reliable |
| GBPUSD | +7.82% | +6.76% | 3.84% | 108 | 52.80% | 1.38 | 2.04 | 8 | +$7.24 | Reliable |
| USDJPY | +2.43% | +2.11% | 4.46% | 101 | 50.50% | 0.52 | 0.55 | 6 | +$2.41 | Reliable |
| XAUUSD | +1.98% | +1.63% | 52.23% | 105 | 50.00% | 0.38 | 0.04 | 7 | +$4.28 | Reliable |
Profitable on 3 of 4 markets with reliable results.
Converted from MQL5 to Python and run with the same rules for every EA. Positions use MT5 lot sizes (100,000 units per FX lot, 100 oz per gold lot) with 1:100 leverage, one order at a time, and a stop-out below 10% of the starting balance. Sharpe is computed from the equity curve. Results marked as unreliable are shown for completeness only.
Against the other Multi-Timeframe EAs with a reliable result on the same market: EURUSD: better than 36% of 11 · GBPUSD: better than 100% of 12 · USDJPY: better than 58% of 12 · XAUUSD: better than 50% of 12
Month by month
| Market | Months with a gain | Best month | Worst month |
|---|---|---|---|
| EURUSD | 54% | +2.68% 2026-04 | -1.11% 2026-01 |
| GBPUSD | 69% | +2.65% 2026-04 | -2.53% 2026-10 |
| USDJPY | 46% | +2.93% 2026-04 | -1.90% 2026-03 |
| XAUUSD | 62% | +29.82% 2026-02 | -29.62% 2026-08 |
From the backtest equity curve, sampled about every two days; only reliable results.
Blow-up risk: No blow-up pattern found
None of the usual blow-up patterns were found in the code, and the account was not stopped out in our backtests. That is not a guarantee: any EA can lose money.
High: stopped out in our backtest, or martingale/grid sizing without a stop loss. Elevated: martingale or grid sizing with a stop loss, or several positions at once without a stop loss. What the label means and what we found →
Strategy analysis
This EA employs a multi-strategy combination approach, integrating trend-following, momentum, and breakout strategies into a unified trading system. Entry conditions are based on confluence confirmation from multiple technical indicators, including moving average crossovers, RSI overbought/oversold levels, and MACD signal line crossovers. Exit conditions combine fixed take-profit and stop-loss levels, trailing stops, and indicator reversal signals, providing multiple exit mechanisms. Position sizing uses either fixed lot sizes or risk-based calculation as a percentage of account balance, with support for single-strategy and multi-strategy position allocation. In terms of money management, the EA sets maximum position limits and maximum drawdown protection, but the coordination mechanism between strategies is insufficient, which may lead to overleveraging when multiple strategies trigger simultaneously.
Strengths
- Multi-strategy combination improves adaptability across different market conditions; when one strategy fails, others can still profit
- Individual strategies can be independently enabled or disabled, providing high flexibility for backtesting and optimization
- Includes trailing stop and maximum position limits, providing a basic risk control framework
Weaknesses
- Lacks position coordination mechanism when multiple strategies trigger simultaneously, potentially leading to overly concentrated risk exposure
- Missing spread filter and new bar check, which may generate duplicate signals during fast markets or high volatility periods
- Strategy weight allocation and dynamic adjustment mechanism is not intelligent enough to automatically adjust weights based on recent performance
Possible improvements
- Add an inter-strategy position coordinator that dynamically adjusts the total position cap when multiple strategies trigger simultaneously
- Add new bar check and spread filter to prevent duplicate entries on the same bar and entries during excessive spread conditions
- Implement dynamic strategy weight adjustment that automatically increases or decreases each strategy's weight based on recent profit/loss performance
Risk assessment
Overall risk: Medium
- Positions may stack too large when multiple strategies trigger simultaneously, lacking total exposure control
- Missing new bar check may cause duplicate entries on the same bar, increasing slippage and spread costs
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
LotSize | 0.1 | Fixed trading lot size |
RiskPercent | 2.0 | Risk per trade as percentage of account equity |
StopLoss | 50 | Stop loss in pips per order |
TakeProfit | 100 | Overall grid profit target in currency |
TrailingStop | 30 | Trailing stop in points |
TrailingStep | 5 | Trailing stop step |
MaxPositions | 3 | Maximum positions |
Strategy1_Enabled | true | Enable Strategy 1 - Trend Following |
Strategy2_Enabled | true | Enable Strategy 2 - Momentum Trading |
Strategy3_Enabled | true | Enable Strategy 3 - Breakout Trading |
FastMA_Period | 10 | Fast moving average period |
SlowMA_Period | 50 | Slow moving average period |
RSI_Period | 14 | RSI indicator period |
RSI_Overbought | 70 | RSI overbought level |
RSI_Oversold | 30 | RSI oversold level |
MACD_FastEMA | 12 | MACD fast EMA period |
MACD_SlowEMA | 26 | MACD slow EMA period |
MACD_SignalSMA | 9 | MACD signal SMA period |
BreakoutPeriod | 20 | breakoutcalculation period |
MagicNumber | 123456 | Order magic number to identify this EA's orders |
Similar Multi-Timeframe EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.