EA-15764 · Momentum

Exp_iRSISign

This EA trades based on signals from the custom iRSISign indicator, which generates buy and sell signals when RSI crosses user-defined overbought and oversold levels. It opens and closes positions according to these RSI crossover signals, with configurable money management, stop loss, and take profit settings.

Open the interactive view (equity curve, symbol switch)

Key facts

CategoryMomentum
RiskMedium
Blow-up riskLow
Rating★★☆☆☆
TypeTrading EA
TimeframesM15, H1, H4, D1
IndicatorsRSI, ATR, iRSISign (custom)
Author—

Backtest results (H1, about 1 year)

SymbolP&LAnnualMax DDTradesWin rateSharpeRecoveryLosing streakPer tradeStatus
EURUSD0.00%0.00%0.00%0—————Not convertible yet
GBPUSD0.00%0.00%0.00%0—————Not convertible yet
USDJPY0.00%0.00%0.00%0—————Not convertible yet
XAUUSD0.00%0.00%0.00%0—————Not convertible yet

Why this EA never traded: no entry rule survived the conversion.

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 custom RSI momentum indicator variant called iRSISign, which generates buy signals when RSI breaks above the overbought level (default 70) and sell signals when it drops below the oversold level (default 30). Entry conditions: a long position is opened when the indicator's upper signal buffer produces a valid value (non-zero and non-empty), and a short position is opened when the lower signal buffer produces a valid value. Exit conditions include: RSI overbought signal triggers long position closure, oversold signal triggers short position closure, with fixed stop loss (default 1000 points) and take profit (default 2000 points). Position sizing leverages five money management modes from the TradeAlgorithms.mqh library, including fixed lot, balance-proportional, and free margin-proportional modes. The strategy also incorporates a retrospective check mechanism: when both opening and closing are enabled but no close signal exists on the current bar, it loops back through historical bars to find any untriggered reverse close signal, preventing missed exit opportunities.

Strengths

  • Clear signal logic based on classic RSI overbought/oversold crossovers, easy to understand and verify
  • Five money management modes provide high flexibility to suit different risk preferences
  • Buy/sell open and close can be independently controlled, facilitating partial strategy testing and optimization
  • IsNewBar mechanism prevents repeated trades within the same bar, reducing overtrading risk
  • Retrospective check mechanism prevents missing reverse close signals

Weaknesses

  • ATR_Period variable is not declared as input, preventing direct optimization in the strategy tester
  • Fixed stop loss and take profit do not account for market volatility (e.g., ATR), potentially unsuitable across varying market conditions
  • No spread filter, which may cause losses on short-term signals in high-spread environments
  • The retrospective check loop may iterate through a large number of historical bars, posing performance concerns
  • Depends on external custom indicator iRSISign and TradeAlgorithms library, reducing portability

Possible improvements

  • Declare ATR_Period as an input parameter for optimization, and consider ATR-based dynamic stop loss and take profit
  • Add spread filter and trading session filter to avoid trading during high-spread and low-liquidity periods
  • Add a maximum iteration limit to the retrospective check loop to prevent performance issues
  • Add position check logic to avoid duplicate opening when an existing same-direction position is already held

Risk assessment

Overall risk: Medium

  • Fixed stop loss/take profit not dynamically adjusted for market volatility, may cause large losses in extreme conditions
  • No spread filter, trading costs on high-spread instruments may erode profits
  • No position check, may open duplicate same-direction positions leading to excessive exposure
  • Retrospective check has no iteration limit, potentially affecting EA responsiveness in extreme cases

Evaluation scores

Code quality3.0
Strategy logic3.0
Risk management2.0
Robustness3.0
Innovation2.0
Documentation1.0
Overall2.3

Parameters

ParameterDefaultDescription
MM0.1Money management ratio (lot or percentage)
MMModeLOTMargin mode: free margin/balance/net margin/net balance/fixed lot
StopLoss_1000Stop loss in points
TakeProfit_2000Take profit in points
Deviation_10Maximum slippage tolerance
BuyPosOpentrueAllow buy to open
SellPosOpentrueAllow sell to open
BuyPosClosetrueAllow buy-side close (close sell on opposite signal)
SellPosClosetrueAllow sell-side close (close buy on opposite signal)
InpInd_TimeframePERIOD_H1Timeframe for indicator calculation
ATR_Period14ATR period (non-input variable)
RSIPeriod14RSI calculation period
RSIPricePRICE_CLOSERSI applied price type
UpLevel70WPR upper overbought level
DnLevel30WPR lower oversold level
SignalBar1Bar index for signal detection (0=current, 1=completed)

Similar Momentum 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.