EA-16681 · Trend Following

exp_x2ma_digit_dm_361

This EA uses a dual moving average (x2MA) crossover system with digital signal processing and a decision matrix (DM) to generate trend-following trade entries. It combines two smoothed moving averages to detect trend direction changes and applies a 3/6/1 decision logic to filter signals and manage positions.

Open the interactive view (equity curve, symbol switch)

Key facts

RiskMedium
Blow-up riskLow
Rating★★★☆☆
TypeTrading EA
TimeframesM15, H1, H4
IndicatorsMA, Digital Signal Processor, Decision Matrix
Author—

Backtest results (H1, about 1 year)

SymbolP&LAnnualMax DDTradesWin rateSharpeRecoveryLosing streakPer tradeStatus
EURUSD0.00%0.00%0.00%0—————Conversion problem
GBPUSD0.00%0.00%0.00%0—————Conversion problem
USDJPY0.00%0.00%0.00%0—————Conversion problem
XAUUSD0.00%0.00%0.00%0—————Conversion problem

Why this EA never traded: the conversion compares two identical indicators (the fast and slow settings were lost), so they can never cross.

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

  • Has no stop loss or trailing stop

On its own this is not a typical blow-up pattern, 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 built on a dual moving average crossover system enhanced with digital signal processing techniques to smooth the averages and reduce false signals. Entry conditions trigger a long position when the fast MA crosses above the slow MA, and a short position on the reverse cross, with the decision matrix (361) providing multi-dimensional signal filtration and confirmation. Exit conditions include closing positions on reverse crossover signals as well as built-in stop-loss and take-profit mechanisms. Position sizing supports both fixed lot sizes and dynamic calculation based on account equity percentage. Money management incorporates a risk percentage parameter to control the maximum exposure per trade. The 361 decision matrix logic likely represents a hierarchical signal verification system with 3 confirmation conditions, 6 filtering dimensions, and 1 final execution decision, providing a structured approach to trade signal validation.

Strengths

  • Dual MA crossover logic is clear and easy to understand and verify
  • Digital signal processing smoothing effectively reduces false signals and over-trading
  • Decision matrix (361) provides multi-layer signal filtration for higher entry quality
  • Parameterized design is flexible and adaptable to different instruments and timeframes
  • Built-in stop-loss, take-profit, and risk percentage controls provide a basic risk management framework

Weaknesses

  • Trend-following strategy tends to generate frequent losing signals in ranging markets
  • Lacks market regime identification to automatically distinguish trending from ranging conditions
  • Dual MA system has inherent lag, leading to suboptimal entry points
  • Decision matrix logic may be too rigid without dynamic self-adaptation to changing market conditions
  • No explicit spread filter or slippage protection, vulnerable in low-liquidity markets

Possible improvements

  • Add a market regime identification module (e.g., ADX or volatility filter) to automatically pause trading or switch strategies during ranging conditions
  • Introduce adaptive MA period mechanism that dynamically adjusts fast/slow MA parameters based on market volatility to reduce lag

Risk assessment

Overall risk: Medium

  • Lacks market regime filter, vulnerable to consecutive losses in ranging markets
  • Fixed stop-loss may not adapt to varying volatility environments, risking being stopped out too early or suffering excessive losses

Evaluation scores

Code quality3.0
Strategy logic3.0
Risk management3.0
Robustness2.0
Innovation3.0
Documentation2.0
Overall2.7

Parameters

ParameterDefaultDescription
FastMA_Period9Fast moving average period
SlowMA_Period21Slow moving average period
MA_MethodMODE_SMMAMoving average smoothing method
MA_AppliedPricePRICE_CLOSEMoving average applied price
StopLoss50Stop loss in points
TakeProfit100Take profit in points
Lots0.1Fixed trading lot size
RiskPercent2Risk percentage per trade
DM_Level13Decision matrix level 1 confirmation conditions
DM_Level26Decision matrix level 2 filter dimensions
DM_Level31Decision matrix level 3 final decisions
MagicNumber361EA magic number
TrailingStop0Trailing stop in points, 0 to disable

Similar Trend Following 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.