EA-17021 · Trend Following

MA Cross

This EA implements a moving average crossover strategy, generating buy signals when a fast MA crosses above a slow MA and sell signals when the fast MA crosses below the slow MA. It is a classic trend-following system that aims to capture directional moves by entering after crossover confirmation. The EA automatically opens and manages positions based on these MA crossover signals.

Open the interactive view (equity curve, symbol switch)

Key facts

RiskMedium
Blow-up riskElevated
Rating★★☆☆☆
TypeTrading EA
TimeframesM15, H1, H4, D1
IndicatorsMA
Author—

Backtest results (H1, about 1 year)

SymbolP&LAnnualMax DDTradesWin rateSharpeRecoveryLosing streakPer tradeStatus
EURUSD+2.42%+2.10%3.62%12551.20%0.540.676+$1.94Reliable
GBPUSD+4.31%+3.74%4.64%12554.00%0.760.935+$3.67Reliable
USDJPY-2.43%-2.12%8.30%21846.50%-0.39-0.299−$1.12Reliable
XAUUSD+162.26%+121.81%22.76%11853.40%2.087.137+$137.51Reliable

Profitable on 3 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 Trend Following EAs with a reliable result on the same market: EURUSD: better than 73% of 95 · GBPUSD: better than 78% of 95 · USDJPY: better than 27% of 95 · XAUUSD: better than 97% of 96

Month by month

MarketMonths with a gainBest monthWorst month
EURUSD69%+1.68% 2026-02-1.52% 2026-09
GBPUSD62%+3.56% 2026-02-2.74% 2026-03
USDJPY38%+1.27% 2026-09-3.20% 2026-03
XAUUSD62%+45.21% 2026-01-9.30% 2026-08

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

Blow-up risk: Elevated

  • Has no stop loss or trailing stop
  • Can hold up to 2 positions at once

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 dual moving average crossover strategy as its core trading logic, which is a classic trend-following approach. Entry conditions are triggered when the fast MA crosses above the slow MA for buy signals (golden cross) and below for sell signals (death cross). Exit conditions typically rely on a reverse crossover signal to close positions or on stop-loss/take-profit levels, depending on parameter configuration. Position sizing is based on a fixed lot parameter without dynamic adjustment mechanisms. Money management relies on user-configured fixed lot sizes or risk ratios, lacking an adaptive money management module. The strategy performs well in strongly trending markets but is prone to frequent false signals and consecutive losses during ranging or choppy market conditions.

Strengths

  • Simple and clear strategy logic that is easy to understand and validate, suitable for beginners learning trend-following concepts
  • Effectively captures medium-to-long-term directional moves in trending markets with good risk-reward potential
  • Few parameters with clear optimization space, reducing the risk of overfitting

Weaknesses

  • Frequent false crossover signals in ranging markets lead to accumulated consecutive small losses
  • MA crossover inherently has lag, causing entry prices to often be far from optimal levels
  • Lacks dynamic position sizing and money management mechanisms, relying on manually configured parameters for risk control

Possible improvements

  • Add a trend filter (such as ADX or higher timeframe MA) to reduce false signals in ranging markets
  • Introduce a dynamic position sizing module that adapts lot size based on account balance and market volatility

Risk assessment

Overall risk: Medium

  • Lacks filtering mechanism in ranging markets, potentially generating frequent false trading signals
  • Fixed lot size without dynamic money management creates uncontrolled risk exposure with larger accounts
  • Without stop-loss configured, single trades may incur significant losses

Evaluation scores

Code quality3.0
Strategy logic3.0
Risk management2.0
Robustness2.0
Innovation2.0
Documentation2.0
Overall2.3

Parameters

ParameterDefaultDescription
FastMA_Period10Fast moving average period
SlowMA_Period50Slow moving average period
MA_MethodMODE_SMAMoving average calculation method
LotSize0.1Fixed trading lot size
StopLoss0Stop loss in points
TakeProfit0Take profit in points

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.