MA2CCI
This EA combines two Moving Averages with the Commodity Channel Index (CCI) to generate trading signals. It enters long positions when the fast MA crosses above the slow MA and CCI confirms momentum, and enters short positions on the opposite conditions. The strategy is a trend-momentum hybrid that uses MA for direction and CCI for momentum confirmation.
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.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | No trades |
| GBPUSD | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | No trades |
| USDJPY | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | No trades |
| XAUUSD | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | No trades |
Why this EA never traded: its entry needs a signal and an extreme oscillator reading on the same bar, which did not happen in one year of hourly data.
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.
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
The core concept of this strategy is dual confirmation: Moving Average crossover provides trend direction signals while CCI provides momentum confirmation. Entry conditions are long when the fast MA crosses above the slow MA and CCI is above a specified threshold, and short on the opposite conditions. Exit conditions typically rely on reverse crossover signals or fixed stop-loss and take-profit levels. Position sizing uses fixed lots without dynamic adjustment based on account equity or volatility. Money management is relatively simple, lacking dynamic calculation based on account balance or risk percentage. The overall strategy logic is clear but lacks filtering mechanisms to avoid frequent false signals in ranging markets.
Strengths
- Dual confirmation mechanism reduces false signals; MA and CCI complement each other to improve signal reliability
- Strategy logic is simple and clear, easy to understand and adjust parameters
- CCI momentum confirmation effectively filters out entry signals in weak trends
Weaknesses
- Fixed lot sizing lacks dynamic position management, unable to adjust risk exposure based on market volatility
- MA crossovers generate frequent false signals in ranging markets; even with CCI filtering, overtrading may still occur
- Lacks new bar check mechanism, potentially opening multiple positions within the same bar causing duplicate entries
Possible improvements
- Add ATR-based dynamic stop-loss and position sizing to automatically adjust risk parameters based on market volatility
- Add new bar check and position check mechanisms to avoid duplicate entries and overtrading
Risk assessment
Overall risk: Medium
- Lacks new bar check mechanism, potentially opening duplicate positions within the same bar
- Fixed lots and fixed stop-loss do not account for changes in market volatility
- Frequent MA crossovers in ranging markets may produce consecutive losing signals
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
FastMA_Period | 5 | Fast moving average period |
SlowMA_Period | 20 | Slow moving average period |
CCI_Period | 14 | CCI indicator period |
CCI_BuyLevel | 100 | CCIlong threshold |
CCI_SellLevel | -100 | CCIshort threshold |
Lots | 0.1 | Fixed trading lot size |
StopLoss | 50 | Stop loss in points |
TakeProfit | 100 | Take profit in points |
MA_Method | MODE_SMA | Moving average calculation method |
Similar Momentum EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.