EA-298 · Momentum

Expert_ADC_PL_CCI

This EA uses the CDC_PL_CCI signal filter, which combines CCI (Commodity Channel Index) with a Moving Average to generate trade signals within the MQL5 Standard Library Expert Advisor framework. It employs fixed-lot money management and no trailing stop, relying entirely on the CCI/MA momentum signal for entry and exit decisions.

Open the interactive view (equity curve, symbol switch)

Key facts

CategoryMomentum
RiskHigh risk
Blow-up riskHigh
Rating★★☆☆☆
TypeTrading EA
TimeframesM15, H1, H4
IndicatorsCCI, MA
AuthorMetaQuotes Software Corp.

Backtest results (H1, about 1 year)

SymbolP&LAnnualMax DDTradesWin rateSharpeRecoveryLosing streakPer tradeStatus
EURUSD+3.75%+3.25%3.53%9648.40%0.821.065+$3.59Reliable
GBPUSD-5.71%-4.98%8.66%11044.00%-0.89-0.668−$5.46Reliable
USDJPY-8.02%-7.01%10.12%11835.00%-1.36-0.799−$6.79Reliable
XAUUSD-98.62%-97.09%99.07%2842.90%-1.38-0.994−$352.21Account stopped out

Profitable on 1 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 Momentum EAs with a reliable result on the same market: EURUSD: better than 79% of 68 · GBPUSD: better than 21% of 66 · USDJPY: better than 1% of 68 · XAUUSD: better than 12% of 75

Month by month

MarketMonths with a gainBest monthWorst month
EURUSD62%+2.52% 2026-03-1.47% 2026-04
GBPUSD31%+2.16% 2026-09-4.01% 2026-04
USDJPY31%+0.42% 2025-11-2.38% 2026-05
XAUUSD15%+33.96% 2025-12-96.78% 2026-02

From the backtest equity curve, sampled about every two days; only reliable results.

Blow-up risk: High

  • Has no stop loss or trailing stop
  • Hit a stop-out in our backtest (equity below 10%) on XAUUSD

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 strategy concept is based on a combined momentum signal from the CCI indicator and a Moving Average, where CCI identifies the degree of price deviation from its statistical mean and MA smooths and confirms trend direction. Entry conditions are triggered by CCI and MA crossover or threshold breakthroughs, with signals required to reach the open threshold (default 40) and close threshold (default 20) before executing trades. Exit conditions rely on the reverse decay of signal strength, closing positions when the signal value drops below the close threshold, with no hard stop loss or take profit configured (both set to 0). Position sizing uses a fixed lot model (default 0.1 lots), which does not dynamically adjust based on account balance or market volatility. Money management employs the CMoneyFixedLot class with a fixed percentage (10%) and fixed lot size allocation, lacking an adaptive position sizing mechanism.

Strengths

  • Uses the MQL5 Standard Library Expert framework with clean, well-structured, and highly modular code
  • CCI and MA combination signal effectively filters false breakouts and reduces over-trading
  • Signal threshold mechanism provides flexible open/close control and adjustable strategy sensitivity
  • Fixed lot sizing reduces compounding risk, suitable for small account testing

Weaknesses

  • Stop loss and take profit are both set to 0, lacking hard risk controls which could cause significant losses in extreme market conditions
  • No trailing stop means profitable positions may reverse into losses due to price retracements
  • Fixed lot sizing ignores account size and volatility changes, lacking adaptive money management
  • Uses only a single signal filter, lacking strategy diversity and prone to consecutive losses in ranging markets
  • No explicit new bar check despite EveryTick=false, potentially recalculating multiple times within a bar

Possible improvements

  • Add stop loss and take profit parameters to provide basic risk protection mechanisms
  • Introduce dynamic position sizing based on ATR or account risk ratio for automatic lot adjustment
  • Add additional signal filters or time filters to improve strategy robustness and adaptability
  • Add trailing stop functionality to protect unrealized profits

Risk assessment

Overall risk: High risk

  • Stop loss and take profit are both 0, providing no hard risk boundaries or protection in extreme market conditions
  • Fixed lot sizing does not adjust with account changes, potentially leading to over-leveraging or under-utilization of capital
  • Single signal filter may generate consecutive losing signals under unfavorable market conditions

Evaluation scores

Code quality4.0
Strategy logic3.0
Risk management1.0
Robustness2.0
Innovation2.0
Documentation2.0
Overall2.3

Parameters

ParameterDefaultDescription
Signal_ThresholdOpen40Open position signal threshold [0...100]
Signal_ThresholdClose20Close position signal threshold [0...100]
Signal_PriceLevel0.0Price level for trade execution
Signal_StopLevel0.0Stop loss level (points)
Signal_TakeLevel0.0Take profit level (points)
Signal_Expiration4Pending order validity (bars)
Signal__PeriodCCI49CCI indicator period
Signal__PeriodMA11MA moving average period
Signal__Weight1.0Signal filter weight [0...1.0]
Money_FixLot_Percent10.0Money percentage
Money_FixLot_Lots0.1Fixed trading lot size

Similar Momentum EAs

Backtests are historical simulations and do not guarantee future results. Not financial advice.

Get the weekly Arena report

One email a week: ranking changes, new signals and new research. No spam; unsubscribe any time.