Expert_RSI_Stochastic_MA
This EA generates trading signals by combining RSI, Stochastic Oscillator, and Moving Average indicators. It enters buy positions when RSI is oversold, Stochastic is in the oversold zone, and price is above the MA, and enters sell positions under the opposite conditions. The strategy aims to capture momentum reversals confirmed by trend direction.
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 | — | — | — | — | — | No trades |
| GBPUSD | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | No trades |
| USDJPY | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | No trades |
| XAUUSD | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | No trades |
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
This EA employs a multi-indicator confluence strategy where RSI identifies overbought/oversold levels, Stochastic confirms momentum reversals, and the Moving Average determines the prevailing trend direction. Entry conditions require all three indicators to align: a buy signal occurs when RSI is below its oversold threshold, Stochastic shows a bullish crossover, and price trades above the MA; sell signals follow the opposite logic. Exit conditions typically involve fixed take-profit and stop-loss levels or indicator reversal signals. Position sizing generally relies on fixed lot sizes or a percentage-of-equity approach without dynamic adjustment. Money management lacks comprehensive risk controls such as maximum drawdown limits or correlation-aware position sizing. The strategy's weakness lies in potential signal conflicts between indicators and frequent false signals during choppy, range-bound markets that can lead to consecutive losses.
Strengths
- Multi-indicator confluence reduces false signals and improves entry quality
- Combining trend direction with momentum reversal creates logically sound signals
- Highly customizable parameters allow optimization across instruments and timeframes
- Using both trend and oscillator indicators performs well in trending markets
Weaknesses
- Multiple indicator signals can conflict in choppy markets causing frequent losing trades
- Lacks dynamic position sizing and comprehensive money management
- No spread filter or trading session filter may cause entries under unfavorable conditions
- Fixed stop-loss and take-profit ignore market volatility changes
- Insufficient drawdown control without maximum drawdown limits or portfolio risk management
Possible improvements
- Add volatility-adaptive stop-loss/take-profit using ATR-based exits
- Implement spread filter and trading session restrictions to avoid unfavorable conditions
- Introduce dynamic position sizing based on account risk and market volatility
- Add maximum drawdown limits and maximum consecutive loss protection mechanisms
Risk assessment
Overall risk: Medium
- No spread filter may cause trading under high spread conditions with excessive slippage costs
- Fixed stop-loss ignores volatility — too wide in low volatility, too tight in high volatility
- Lacks maximum drawdown protection and consecutive loss control mechanisms
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
RSI_Period | 14 | RSI calculation period |
RSI_Overbought | 70 | RSI overbought threshold |
RSI_Oversold | 30 | RSI oversold threshold |
Stoch_KPeriod | 5 | Stochastic K period |
Stoch_DPeriod | 3 | Stochastic D period |
Stoch_Slowing | 3 | Stochastic smoothing period |
Stoch_Overbought | 80 | stochasticindicatoroverbought threshold |
Stoch_Oversold | 20 | stochasticindicatoroversold threshold |
MA_Period | 200 | Moving average period |
MA_Method | MODE_SMA | Moving average calculation method |
LotSize | 0.1 | Fixed trading lot size |
StopLoss | 50 | Stop loss in points |
TakeProfit | 100 | Take profit in points |
Similar Momentum EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.