RSI_MAonRSI_Dual_EA
This EA uses a dual-signal approach combining RSI indicator values with a moving average applied on RSI (MAonRSI) to generate trading signals. It enters long when RSI crosses above its moving average from oversold territory and enters short when RSI crosses below its moving average from overbought territory. The strategy aims to capture momentum shifts while filtering out false signals using the MA-on-RSI confirmation technique.
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.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | Run error |
| GBPUSD | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | Run error |
| USDJPY | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | Run error |
| XAUUSD | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | Run error |
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 core concept of this strategy leverages the relationship between the RSI indicator and its own moving average to detect momentum direction changes. Entry conditions are: for long positions, RSI crosses above its moving average from the oversold zone (typically below 30); for short positions, RSI crosses below its moving average from the overbought zone (typically above 70). This dual confirmation mechanism—requiring both RSI in extreme territory and a cross of the MA—is designed to reduce false signals. Exit conditions typically include reverse crossover signals, fixed take-profit/stop-loss levels, or RSI returning to neutral territory. Position sizing may include fixed lot or equity-based dynamic calculation options. Regarding money management, since the strategy relies on momentum reversal signals, it may face consecutive losses during strong trends, making proper stop-loss placement and per-trade risk control essential.
Strengths
- Dual confirmation mechanism (RSI extreme + MA crossover) effectively reduces false signals
- Clear and understandable strategy logic with good parameter adjustability for optimization
- MA-on-RSI technique is a valuable improvement over traditional RSI strategies, adding signal smoothing
Weaknesses
- RSI may stay in extreme zones during strong trends, causing signal delays or missed opportunities
- Lacks multi-timeframe confirmation, making single-timeframe signals susceptible to market noise
- No trading session or spread filter, potentially leading to unfavorable fills during low-liquidity periods
Possible improvements
- Add multi-timeframe confirmation, e.g., only enter when higher-timeframe RSI direction aligns
- Add trading session filter and maximum spread limit to avoid unfavorable execution environments
- Implement trailing stop functionality to protect floating profits
Risk assessment
Overall risk: Medium
- Default stop-loss and take-profit values may be 0, meaning no protective exit mechanism
- Momentum reversal strategy may produce consecutive losses during strong trends
- Lacks position count checks and duplicate order protection
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
RSI_Period | 14 | RSI calculation period |
RSI_Applied_Price | CLOSE | RSI applied price type |
MA_Period | 14 | Moving average period for trend direction |
MA_Method | MODE_SMA | Moving average calculation method |
RSI_Overbought | 70 | Overbought threshold |
RSI_Oversold | 30 | Oversold threshold |
LotSize | 0.1 | Default trading lot size |
StopLoss | 0 | Stop loss in points per level, 0 for none |
TakeProfit | 0 | Take profit in points per level |
Timeframe | H1 | Timeframe for new bar detection |
Similar Momentum EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.