EMA
An Expert Advisor based on Exponential Moving Average (EMA) crossover signals to identify trend direction and generate trade entries. It opens buy positions when a fast EMA crosses above a slow EMA and sell positions on the reverse crossover, following the established trend. The EA is a classic trend-following system that relies on moving average dynamics to capture directional market moves.
Open the interactive view (equity curve, symbol switch)Key facts
Backtest results (H1, about 1 year)
| Symbol | P&L | Annual | Max DD | Trades | Win rate | Sharpe | Recovery | Losing streak | Per trade | Status |
|---|---|---|---|---|---|---|---|---|---|---|
| EURUSD | -0.27% | -0.24% | 3.79% | 110 | 48.60% | — | — | — | — | Same as other EAs |
| GBPUSD | +6.63% | +5.74% | 3.89% | 108 | 51.90% | — | — | — | — | Same as other EAs |
| USDJPY | +2.10% | +1.82% | 4.75% | 99 | 49.50% | — | — | — | — | Same as other EAs |
| XAUUSD | +1.98% | +1.63% | 52.23% | 105 | 50.00% | — | — | — | — | Same as other EAs |
On every market this backtest is identical to EA-16787, EA-16877, EA-17274, EA-17489, EA-19089, EA-20222, EA-20527, EA-22465 and others. The automatic conversion almost certainly lost what makes this EA different (a custom indicator, a filter or the money management), so these results are not ranked or counted.
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 a dual EMA crossover system, using golden cross and death cross of a fast and slow EMA to determine trend direction. Entry conditions trigger a buy when the fast EMA crosses above the slow EMA, and a sell when the fast EMA crosses below the slow EMA, which is a classic moving average crossover trend-following entry logic. Exit conditions typically rely on the reverse crossover signal to close positions - closing longs on a death cross and closing shorts on a golden cross. Position sizing uses fixed lot sizes without dynamic adjustment based on account equity or market volatility, which limits adaptability to changing market conditions. Money management may lack stop-loss and take-profit configurations or only have basic risk controls, creating potential for uncontrolled single-trade losses. The overall strategy is straightforward but prone to frequent false signals and consecutive losses in ranging or choppy markets.
Strengths
- Simple and clear strategy logic that is easy to understand and backtest
- Effectively captures medium-term swing profits during trending markets
- EMA responds faster to price changes than SMA, reducing signal lag
Weaknesses
- Frequent false crossover signals in ranging markets lead to consecutive losses
- Lacks dynamic position sizing and risk management; fixed lots cannot adapt to market volatility
- Moving average crossovers are lagging indicators, entering after the trend has already moved significantly
- No market regime filter to distinguish between trending and ranging conditions
Possible improvements
- Add ATR or ADX trend strength filters to reduce invalid trades in ranging markets
- Introduce dynamic position sizing based on account equity and market volatility
- Implement stop-loss/take-profit mechanisms and trailing stop functionality to protect profits
Risk assessment
Overall risk: Medium
- Frequent false signals in ranging markets cause consecutive stop-losses
- Fixed lot sizing lacks risk control flexibility; single-trade losses can be excessive in extreme markets
- Default stop-loss and take-profit of zero may expose unlimited loss risk
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
FastEMA_Period | 9 | Fast EMA period parameter |
SlowEMA_Period | 21 | Slow EMA period parameter |
LotSize | 0.1 | Fixed trading lot size |
StopLoss | 0 | Stop loss in points, limits max loss per trade |
TakeProfit | 0 | Take profit in points, locks profit target per trade |
MagicNumber | 12345 | Magic number for closing, 0 for all positions |
Similar Trend Following EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.