EA-15513 · Momentum

Exp_XDPOCandle

This EA trades based on signals from the custom XDPOCandle indicator, which uses dual smoothing algorithms to generate colored candle signals. It opens buy positions when the indicator signals bullish momentum (color value 2) and sell positions when it signals bearish momentum (color value 0), with configurable position closing on signal reversal.

Open the interactive view (equity curve, symbol switch)

Key facts

CategoryMomentum
RiskMedium
Blow-up riskLow
Rating★★☆☆☆
TypeTrading EA
TimeframesH1, H4, D1
IndicatorsXDPOCandle, SMA, T3
Author—

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

This EA employs a momentum-following strategy based on the XDPOCandle indicator, which processes price data through dual smoothing algorithms (first and second layer smoothing) to generate colored candle signals. Entry conditions are: a buy position opens when indicator buffer 4's current value changes from non-2 to 2, and a sell position opens when it changes from non-0 to 0; this change-detection mechanism ensures trades are triggered only on signal transitions. Exit conditions include hard stop-loss and take-profit settings, as well as active position closing on signal reversal (controlled by BuyPosClose and SellPosClose parameters). Position sizing is managed through the MM parameter controlling the lot ratio, with MMMode determining whether to use fixed lots or dynamic calculation based on account margin. In terms of money management, the stop-loss of 1000 points and take-profit of 2000 points provide a 1:2 risk-reward ratio, while the MM value of 0.1 suggests using 10% of available margin for trading. The strategy uses a new bar detection mechanism (IsNewBar) to prevent duplicate signals, while also supporting instant execution on a specified SignalBar for faster response.

Strengths

  • Dual smoothing algorithm effectively filters market noise and reduces false signals
  • Signal change detection mechanism ensures entries only on trend transitions, avoiding duplicate positions
  • Independent buy/sell open and close switches provide high flexibility for adapting to market conditions
  • Stop-loss to take-profit ratio of 1:2 provides a positive-expectancy risk-reward design
  • New bar detection mechanism prevents duplicate trade triggers within the same bar

Weaknesses

  • Depends on custom XDPOCandle indicator without transparency or verification of its internal logic
  • Stop-loss of 1000 points is excessively wide, potentially leading to large losses on volatile instruments
  • Lacks spread filter and trading session filter, allowing entries under unfavorable market conditions
  • MM=0.1 margin usage ratio may lead to overtrading with high leverage
  • No explicit position count limit, potentially causing frequent open/close cycles with excessive commission costs in ranging markets

Possible improvements

  • Add a spread filter mechanism to pause trading when spread exceeds a threshold, avoiding excessive slippage
  • Add trading session filters to avoid opening positions during low-liquidity periods
  • Implement trailing stop or break-even functionality to lock in profits after reaching a certain gain threshold
  • Backtest and validate the XDPOCandle indicator to clarify its performance characteristics across different market conditions

Risk assessment

Overall risk: Medium

  • Stop-loss of 1000 points is too wide, potentially causing large single-trade losses relative to account size
  • Lacks spread and session filters, potentially entering under unfavorable conditions
  • Relies on an unverified custom indicator; strategy failure is total if the indicator fails
  • Margin-based lot calculation amplifies risk under high leverage

Evaluation scores

Code quality3.0
Strategy logic3.0
Risk management2.0
Robustness3.0
Innovation2.0
Documentation1.0
Overall2.3

Parameters

ParameterDefaultDescription
MM0.1Money management parameter, lots or ratio
MMModeLOTMargin calculation mode (fixed lots, balance percentage, etc.)
StopLoss_1000Stop loss in points
TakeProfit_2000Take profit in points
Deviation_10Maximum allowed slippage
BuyPosOpentrueAllow buy positions
SellPosOpentrueAllow sell positions
BuyPosClosetrueClose long positions on reverse signal
SellPosClosetrueAllow closing short positions on signal reversal
InpInd_TimeframePERIOD_H4trend_arrows indicator timeframe
SignalBar1Signal bar index (0 for current bar)
MA_Method1MODE_SMA_First smoothing algorithm type
Length112First J2JMA smoothing period
Phase115First J2JMA phase parameter (-100 to +100)
MA_Method2MODE_T3Second smoothing algorithm type
Length25Second J2JMA smoothing period
Phase215Second J2JMA phase parameter (-100 to +100)

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.