20 200 expert v 4.2 AntS
This EA implements a dual moving average crossover strategy using a 20-period and 200-period moving average, with AntS (Anti-Stop or Anti-S) enhancements in version 4.2. It enters long positions when the fast MA crosses above the slow MA and short positions on the reverse crossover, incorporating additional filters and stop management logic.
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 | +2.23% | +1.94% | 1.94% | 38 | 44.70% | 0.83 | 1.15 | 6 | +$5.87 | Reliable |
| GBPUSD | +2.82% | +2.45% | 2.21% | 37 | 47.20% | 0.81 | 1.28 | 3 | +$7.19 | Reliable |
| USDJPY | +2.89% | +2.51% | 2.73% | 43 | 54.80% | 0.75 | 1.06 | 4 | +$7.25 | Reliable |
| XAUUSD | +4.13% | +3.40% | 46.56% | 35 | 54.30% | 0.32 | 0.09 | 5 | +$11.81 | Reliable |
Profitable on 4 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 72% of 95 · GBPUSD: better than 69% of 95 · USDJPY: better than 82% of 95 · XAUUSD: better than 54% of 96
Month by month
| Market | Months with a gain | Best month | Worst month |
|---|---|---|---|
| EURUSD | 46% | +1.37% 2026-04 | -0.89% 2025-12 |
| GBPUSD | 62% | +1.63% 2026-03 | -1.68% 2026-07 |
| USDJPY | 46% | +2.47% 2026-09 | -2.10% 2026-01 |
| XAUUSD | 54% | +21.51% 2026-03 | -27.28% 2026-02 |
From the backtest equity curve, sampled about every two days; only reliable results.
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 is based on the classic 20/200 dual moving average crossover strategy, a quintessential trend-following system. Entry conditions are triggered when the 20-period MA crosses above the 200-period MA for long positions and vice versa for short positions. The AntS enhancement in version 4.2 likely incorporates anti-whipsaw filters or reverse-stop logic to improve signal quality and reduce false entries. Position sizing may use fixed lots or dynamic calculation based on account balance. Exit conditions likely include MA reverse crossover, fixed take-profit/stop-loss levels, or trailing stop mechanisms. Money management is characterized by long-period trend following with the 200 MA, meaning individual drawdowns can be significant but the win rate tends to be relatively stable over trending periods. The strategy performs well in strongly trending markets but can suffer from frequent false signals and consecutive losses during ranging or choppy conditions.
Strengths
- Simple and clear strategy logic based on the classic dual MA crossover, easy to understand and verify
- The 20/200 MA combination covers both short and long-term trends, performing excellently in strong trending markets
- AntS enhancement likely reduces false breakout signals and unnecessary trades
- The 200-period MA provides a reliable benchmark for trend direction determination
- Systematic execution eliminates emotional trading and enforces discipline
Weaknesses
- MA crossover strategies have significant lag, with entries and exits delayed from actual trend reversal points
- Prone to frequent false crossover signals in ranging markets, leading to consecutive losses
- The 20/200 combination generates very few signals, potentially resulting in long periods with no trades and low capital utilization
- If stop-loss is not set or is too wide, individual trade losses can be very severe
- Lacks volatility or volume filters, making it vulnerable in high-volatility low-trend environments
Possible improvements
- Add ATR or volatility filters to reduce trade frequency in low-trend-strength environments
- Incorporate multi-timeframe confirmation, such as entering only when H4 and D1 trend directions align
- Implement dynamic stop-loss and take-profit based on ATR multiples rather than fixed pip values
Risk assessment
Overall risk: Medium
- Dual MA crossover has significant lag, potentially causing large drawdowns before exit signals trigger
- If default stop-loss is 0, there is risk of trading without protective stops
- Consecutive false signals in ranging markets can cause cumulative losses
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
FastMA_Period | 20 | Fast MA period |
SlowMA_Period | 200 | Slow MA period |
LotSize | 0.1 | Trading lot size |
StopLoss | 0 | Stop loss in points |
TakeProfit | 0 | Take profit in points |
TrailingStop | 0 | Trailing stop in points |
MagicNumber | 0 | EA unique identifier |
Similar Trend Following EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.