MARSI- ")EA is a beginner-friendly Expert Advisor (EA) that combines the logic of the Relative Strength Index (RSI) and a Simple Moving Average (SMA) to identify and execute trading signals on financial markets like XAUUSD (Gold).
The EA is built to demonstrate:
Dynamic lot sizing based on account risk
RSI-based overbought/oversold entry conditions
Trend filtering using a Moving Average
SL and TP levels adjusted to symbol tick precision
This EA is especially useful for learners who are experimenting with technical strategies and want to understand how indicator handles, dynamic risk, and broker digit differences affect trading logic.
Trading Logic
The EA operates with the following entry rules:
Buy when:
The current price is above the moving average (bullish)
RSI is below the oversold threshold (suggesting price will rise)
Sell when:
Price is below the moving average (bearish)
RSI is above the overbought threshold (suggesting price will fall)
Stop Loss and Take Profit are configured using _Point , adjusted based on the broker’s pricing precision ( _Digits ).
External Input Parameters
Variable
Description
maPeriod
Period used for Simple Moving Average
rsiPeriod
Period used for Relative Strength Index
rsiOverbought
RSI threshold above which the market is considered overbought (sell trigger)
rsiOversold
RSI threshold below which the market is considered oversold (buy trigger)
riskPercent
Percentage of balance to risk per trade
stopLoss
Stop Loss distance in points
takeProfit
Take Profit distance in points
slippage
Maximum allowed slippage in points
Recommended Usage
Symbol: XAUUSD (Gold)
Timeframe: M15 or H1
Broker: Any broker with proper tick data (test across both 2/3 and 4/5 digit brokers for consistency)
Backtest Range: 3–6 months recommended
Conditions: Ensure tick data is available for reliable RSI/MA values
Additional Notes
The function PipSize() helps normalize pip values across brokers with different _Digits .
The EA automatically calculates a lot size based on the current account balance and defined risk.
Code is modular and easily extendable with trailing stops, news filters, or other conditions.
This Project is an ongoing one and feedbacks are welcome!