Relative Strength Index (RSI)
RSI
The RSI is a bounded 0–100 momentum oscillator that measures the speed of recent price changes, used to read overbought and oversold conditions, divergence, and momentum bias — and one of the easiest indicators to turn into a no-code EA.
- Default period
- 14
- Common levels
- 70 / 30
- Indicator range
- 0–100
예시용 — 합성 데이터로, 실시간 호가가 아닙니다.
What RSI tells you
RSI compresses recent price action into one bounded number. It compares the size of recent gains to recent losses over a lookback window and plots the result on a fixed 0–100 scale — so you can read at a glance whether momentum is stretched, fading, or turning.
- Above 70: momentum may be stretched to the upside
- Below 30: momentum may be stretched to the downside
- Around 50: balance between buyers and sellers
- 1 Price changes bar to bar
- 2 Average gains vs average losses
- 3 RSI value from 0 to 100
공식 및 계산 세부 정보 표시
The RSI is derived from the average gain and the average loss over the chosen period — 14 bars by default:
- For each bar, record the change from the previous applied price. Positive changes are gains; negative changes are losses, stored as positive numbers.
- Compute the average gain and the average loss over the lookback period. Wilder uses a smoothed moving average, so each new bar updates the running averages rather than recomputing from scratch.
- Form the Relative Strength:
RS = average gain / average loss. - Convert to the bounded index:
RSI = 100 − (100 / (1 + RS)).
When the average loss is zero the formula returns 100; when the average gain is zero it returns 0. Wilder’s smoothing is why the RSI needs a few bars to warm up after a chart loads, and why platforms that use a simple average instead of the smoothed one can show tiny differences on the same data. J. Welles Wilder introduced the formula in 1978, and it is unchanged in MetaTrader 5 today.
In MQL5 the call is iRSI(symbol, period, ma_period, applied_price) and it returns a handle to a single buffer. applied_price is a full ENUM_APPLIED_PRICE argument — the step-one price series above is PRICE_CLOSE only because that is the default, not because the indicator is fixed to closes.
신호
RSI이 제공하는 백테스트 가능한 뚜렷한 신호 — 및 각 신호에 적합한 시장 상황.
Centreline Crossover
Builder로 구현 가능Divergence
고급 로직Failure Swing
고급 로직MT5 구현
MetaTrader 5가 실제로 계산하고 그리는 내용 — 이 페이지의 모든 규칙이 기준으로 삼는 사양입니다.
버퍼
| 인덱스 | 버퍼 | MT5 표시 방식 | 저장 값 |
|---|---|---|---|
| 0 | MAIN_LINE | Line | The RSI value itself, 0–100. iRSI publishes a single buffer — there is no signal line to copy. |
가장 잘 작동하는 경우 / 주의해서 사용
어떤 지표도 보편적인 우위를 가지지 않습니다. RSI이 도움이 되는 곳 — 그리고 오해를 일으키는 곳.
가장 잘 작동하는 경우
- Ranging markets
- Clear momentum shifts
- With a volatility filter
- With trend confirmation
주의해서 사용
- Strong one-way trends
- RSI alone as an entry
- Low-liquidity periods
- Optimised settings without validation
RSI 전략 구축
신호를 진입 및 청산 규칙에 연결하고, 컴파일 가능한 MT5 EA를 내보내세요 — 코드 없이.
- RSI (14)
- RSI below 30
- Open Buy · SL 30 / TP 60
- RSI above 70 → Open Sell
RSI을 다른 지표와 결합
하나의 지표만으로는 충분하지 않습니다. 이 조합들이 RSI의 취약점을 보완합니다.
RSI + ATR
- RSI < 30
- ATR contracting
- Buy
No template pairs RSI with ATR yet. The closest ready-made one is Range-filter Reversal (hl_range_reversal), which gates the same RSI entry on a recent high-low range instead.
Builder 열기 →RSI + Moving Average
- EMA 5 / 20 / 60 aligned up
- RSI > 50
- Buy
RSI + Bollinger Bands
- Price at lower band
- RSI < 30
- Buy
The Bollinger Bounce template trades band touches only — add an RSI node and a Compare node to it to require the momentum confirmation described here.
Builder 열기 →매개변수
자신의 통화쌍과 시간 프레임에서 검증할 초기값 — 보장된 설정이 아닙니다.
| 매개변수 | 기본값 | 권장 테스트 범위 | 기능 |
|---|---|---|---|
| Period | 14 | 2–50 | Lookback window for the smoothed average gain and loss. Shorter reacts faster and whipsaws more; longer is smoother and slower. |
| Applied price | Close | Close / Open / High / Low / Median / Typical / Weighted | Price series the gains and losses are measured on. Close is the MT5 default; the other six are the rest of ENUM_APPLIED_PRICE and all are accepted by iRSI. |
| Overbought | 70 | 60–90 | Upper zone. A reading above it means strong up-momentum, not a guaranteed reversal. This is your level, not an MT5 setting — iRSI has no threshold argument. |
| Oversold | 30 | 10–40 | Lower zone. Strong down-momentum — pair with a filter before fading it. Also your level rather than an indicator input. |
| Centreline | 50 | — | The momentum-bias switch: persistently above 50 is bullish, below is bearish. A convention rather than something to sweep. |
초기 프리셋
시장 예시
RSI이 작동하는 곳, 실패하는 곳, 그리고 필터가 결과를 어떻게 바꾸는지.
Successful reversal
In a ranging market the RSI drops into oversold, price stalls, and the fade back toward the mean plays out — the textbook mean-reversion case.
False signal in a strong trend
In a one-way trend the RSI sits above 70 for bar after bar. Selling every overbought print here fights the move and donates money.
Filtered setup improvement
Add a trend or volatility filter and the same overbought reading is suppressed while price keeps trending — the filter is what turns a naive fade into a survivable one.
FAQ
- What RSI period should I use for an EA?
- 14 is Wilder's default and the right starting point. Shorter periods (7–9) react faster but whipsaw more; longer periods (21+) are smoother but slower. Treat 14 as a documented baseline to re-validate on your pair and timeframe in a backtest, not as portable truth.
- Does RSI above 70 mean I should sell?
- No. A reading above 70 means momentum is strong, not that a reversal is due. In a trend the RSI can stay overbought for weeks. Use 70/30 as context and confirm with structure, a trend filter, or divergence before acting.
- Can I calculate RSI on something other than the close?
- Yes. MQL5's iRSI takes an ENUM_APPLIED_PRICE argument, so RSI can be built from Open, High, Low, Median, Typical or Weighted price as well as Close. Close is the default and by far the most common choice; the others mainly matter when you want the RSI to react to the whole bar's range rather than its settlement.
- Is RSI better for trend or mean-reversion EAs?
- Both, but differently. Fading 70/30 is a mean-reversion use and needs a range filter or it bleeds in trends; using the 50 line as a momentum-bias switch is a trend use. The same indicator becomes two different strategies depending on which signal you wire in.
- Can I build an RSI EA without coding?
- Yes, for the level-based signals. The RSI Reversal template wires RSI 14 into buy-below-30 and sell-above-70 rules with the period, levels and applied price exposed as EA inputs, so you can compile, backtest and optimise it per pair without writing MQL5. Divergence and failure swings are the exception — they need multi-bar swing detection that the node palette does not cover.
- How should I validate RSI settings before going live?
- Backtest on quality tick data first, then run the EA on a demo account before risking money. When optimising, hold back data the search never saw and prefer settings that stay profitable across periods over the single in-sample peak — chasing that peak is overfitting the noise. No default or preset here is a performance promise; every value is a starting point to re-validate on your own pair and broker.
관련 글
Glossary