EA-1933 · Momentum

Exp_BlauCMI

This EA trades based on the BlauCMI (Ergodic CMI) indicator, a momentum-based oscillator with triple smoothing. It opens buy positions when the indicator rises and sell positions when it falls, with configurable stop loss and take profit levels.

Open the interactive view (equity curve, symbol switch)

Key facts

CategoryMomentum
RiskMedium
Blow-up riskLow
Rating★★★☆☆
TypeTrading EA
TimeframesH1, H4, D1
IndicatorsBlauCMI, EMA, JJMA, VIDYA, AMA
AuthorCopyright © 2013, Nikolay Kositsin

Backtest results (H1, about 1 year)

SymbolP&LAnnualMax DDTradesWin rateSharpeRecoveryLosing streakPer tradeStatus
EURUSD0.00%0.00%0.00%0—————Not convertible yet
GBPUSD0.00%0.00%0.00%0—————Not convertible yet
USDJPY0.00%0.00%0.00%0—————Not convertible yet
XAUUSD0.00%0.00%0.00%0—————Not convertible yet

Why this EA never traded: no entry rule survived the conversion.

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 strategy concept is based on William Blau's CMI (Cumulative Momentum Index), which applies triple smoothing to momentum values to filter noise and generate more stable trading signals. Entry conditions: a buy position opens when the indicator value rises consecutively (Value[0]>Value[1] and Value[1]<Value[2]), and a sell position opens when the indicator value falls consecutively (Value[0]<Value[1] and Value[1]>Value[2]). Exit conditions include fixed stop loss (default 1000 points) and take profit (default 2000 points), as well as closing positions on opposing signals (long positions close on a declining signal, short positions close on a rising signal). Position sizing is controlled by the MM parameter, supporting either deposit percentage or fixed lot size modes. Money management uses the MarginMode enumeration to determine lot calculation, with MM defaulting to 0.1 representing 10% of the deposit. The strategy employs a multi-timeframe design where the indicator can run on a different timeframe than the chart, enhancing flexibility.

Strengths

  • Triple smoothing effectively reduces market noise, producing more stable signals
  • Supports multiple smoothing algorithms (EMA/JJMA/VIDIA/AMA) for market adaptability
  • Complete stop loss/take profit mechanism with bidirectional trade toggle controls
  • Multi-timeframe design allows analysis on higher timeframes with execution on lower ones
  • Input parameter validation rejects invalid configurations (IPC1==IPC2 with XLength==1)

Weaknesses

  • No spread filter, potentially entering at unfavorable prices during wide spreads
  • No trailing stop feature, potentially failing to protect floating profits adequately
  • Fixed stop loss (1000pts) and take profit (2000pts) without ATR-based volatility adaptation
  • Numerous indicator parameters (5 smoothing depths + 1 phase) create high overfitting risk
  • No check for existing positions in the same direction, potentially opening duplicate trades

Possible improvements

  • Add ATR-based adaptive stop loss/take profit that dynamically adjusts to market volatility
  • Add position checking logic to avoid duplicate entries in the same direction and excessive risk exposure
  • Add spread filter and trading session filter to improve entry quality

Risk assessment

Overall risk: Medium

  • Fixed stop loss/take profit ignores market volatility, potentially causing frequent stop outs during high volatility
  • No same-direction position check may accumulate excessive directional risk exposure
  • Excessive parameters create overfitting risk; backtest performance may not replicate in live trading

Evaluation scores

Code quality3.0
Strategy logic3.0
Risk management3.0
Robustness3.0
Innovation3.0
Documentation2.0
Overall2.8

Parameters

ParameterDefaultDescription
MM0.1Deposit percentage or fixed lots; negative value means lot size
MMModeLOTLot size calculation method
StopLoss_1000Stop loss in points
TakeProfit_2000Take profit in points
Deviation_10Maximum price slippage
BuyPosOpentrueAllow buy positions
SellPosOpentrueAllow sell positions
BuyPosClosetrueAllow closing long positions
SellPosClosetrueAllow closing short positions
InpInd_TimeframePERIOD_H4Indicator timeframe
XMA_MethodMODE_EMASmoothing method
XLength1Momentum averaging depth
XLength120First smoothing depth
XLength25Second smoothing depth
XLength33Third smoothing depth
XPhase15Smoothing parameter
IPC1PRICE_CLOSEClose price constant
IPC2PRICE_OPENOpen price constant
SignalBar1Bar index for entry signal

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.