The Relative Strength Index compares average gains to average losses over N periods, producing a 0–100 bounded oscillator. RSI measures momentum exhaustion — not direction. It shows how fast price moved, not where it is going.

Momentum Oscillator
Category
Beginner
Difficulty
0 to 100 (bounded)
Output Range
14
Default Period
None
Repaint Risk
Simple — close price only
Data Need
MOMENTUM · OSCILLATOR · BEGINNER_FRIENDLY · LAGGING · REAL_TIME
Tags

Section 1: Core Mechanics

RSI answers one question: is momentum exhausted in either direction? It divides average upward moves by average downward moves, then scales the result to 0–100.

Formula

Where N is the period (default 14).

Wilder Smoothing — applied after the first calculation:

The first average gain is a simple mean of the first N gains. Every subsequent value uses Wilder smoothing, which gives more weight to recent data without a sharp cutoff.

Inputs

  • Price source: Close price (standard — do not change without reason)
  • Period (N): Number of bars. Default 14. Shorter = more sensitive, more noise. Longer = smoother, fewer signals.

Parameters

Parameter Default Range Impact
Period (N) 14 2–50 Lower gives more signals with higher false rate
Overbought level 70 60–80 Raise to 80 in strong trends to reduce premature signals
Oversold level 30 20–40 Lower to 20 in strong downtrends
Price source Close Close / HL2 / HLC3 Close is standard

Output

RSI outputs a single value between 0 and 100. Above 70 = overbought momentum. Below 30 = oversold momentum. The 50 line is the neutral centerline — above = net bullish momentum, below = net bearish.

Visual Behavior

RSI plots as a line in a separate panel below price. It oscillates between its extremes. In strong uptrends, RSI stays elevated (50–80) and rarely dips below 40. In downtrends, RSI stays suppressed (20–50). A shift in this pattern is an early warning sign.


Section 2: Interpretation & Signals

Signal Zones

RSI Level Interpretation Action
Above 70 Overbought — momentum extreme Watch for reversal signal, not instant sell
50–70 Bullish momentum — uptrend bias Ride trend, buy dips toward 50
50 Centerline — momentum neutral Direction shift possible
30–50 Bearish momentum — downtrend bias Ride trend, sell rallies toward 50
Below 30 Oversold — momentum extreme Watch for reversal signal, not instant buy

Entry and Exit Rules

Overbought/Oversold Reversal:

  • Entry: RSI crosses back below 70 (bearish) or above 30 (bullish)
  • Exit: RSI reaches opposite extreme or crosses 50 against position

Centerline Cross:

  • RSI crosses above 50 = momentum turning bullish — use as trend filter, not entry trigger
  • RSI crosses below 50 = momentum turning bearish

Divergence — The Most Powerful RSI Signal

Divergence occurs when price and RSI disagree about momentum direction.

Bullish Divergence: Price makes a lower low. RSI makes a higher low. Momentum is recovering before price. This signals exhaustion of the downtrend.

Bearish Divergence: Price makes a higher high. RSI makes a lower high. Momentum is fading even as price climbs. This signals exhaustion of the uptrend.

RSI Bullish Divergence — Price Makes New Low, RSI Does Not

RSI Failure Swings

A failure swing is a signal within the RSI itself — independent of price action.

Bullish failure swing: RSI dips below 30, bounces above 30, pulls back but holds above 30, then breaks above the prior bounce high. That break = the entry signal.

Bearish failure swing: RSI rises above 70, drops below 70, rallies but fails to reclaim 70, then breaks below the prior pullback low. That break = the entry signal.

Failure swings are J. Welles Wilder's original preferred signal — more selective than simple overbought/oversold crosses.

💡 TIP
Divergence + failure swing in the same setup doubles the signal quality. If RSI shows bullish divergence AND a bullish failure swing simultaneously, the reversal probability is significantly higher.
⚠️ WARNING
RSI staying above 70 in a strong uptrend is normal. Do not short just because RSI is overbought — a stock can stay above 70 for weeks in a powerful trend. Wait for the exit from the zone (RSI crosses back below 70) before acting.

Best Market Conditions

RSI works best in ranging and mean-reverting markets. In trending markets, use RSI for divergence and failure swings only — not for overbought/oversold fade entries.


Section 3: Pass vs. Live — Real-Time Reliability

None — RSI value is fixed once bar closes
Repaint Risk
Moderate — Wilder smoothing reduces reactivity
Lag
Wait for bar close — live bar RSI shifts on every tick
Confirmation Timing
Divergence detection, momentum filter, extreme zone reversal timing
Best Use
Standalone trend entry in strong momentum markets
Avoid

RSI on a live unclosed bar updates on every tick. The Wilder smoothing means sudden price moves shift RSI significantly. Wait for the bar to close before acting on any RSI signal. Once the bar closes, the value is permanent — there is no historical repaint.


Section 4: Practical Use Cases

Setup: RSI(14) with 70/30 levels on 15-minute chart, higher-timeframe trend confirmed bullish Signal: RSI drops below 30 then crosses back above 30 (oversold exit) Entry: First 15m candle close after RSI crosses above 30 Exit: RSI reaches 60 or price hits 1.5x ATR target from entry Key Rule: Only trade oversold signals in direction of 1H trend — no counter-trend fades

Real example — AAPL 2022 bear market low: AAPL daily chart, October 2022. Price made a new 52-week low near $125. RSI(14) registered 28 on the first low, then 31 on the second lower price low — classic bullish divergence. RSI held above its prior RSI low even as AAPL printed a lower price. The recovery from that low drove AAPL from $125 to $177 over the next four months.


Section 5: Pseudo Code

INPUT: close_prices[], period=14, ob_level=70, os_level=30

PROCESS:
  Step 1: Calculate price changes: delta[i] = close[i] - close[i-1]
  Step 2: Separate gains and losses:
            gain[i] = delta[i] if delta[i] > 0 else 0
            loss[i] = abs(delta[i]) if delta[i] < 0 else 0
  Step 3: First avg gain = mean(gain[1:period+1])
          First avg loss = mean(loss[1:period+1])
  Step 4: For i > period, apply Wilder smoothing:
            avg_gain[i] = (avg_gain[i-1] * (period-1) + gain[i]) / period
            avg_loss[i] = (avg_loss[i-1] * (period-1) + loss[i]) / period
  Step 5: RS[i] = avg_gain[i] / avg_loss[i]  (if avg_loss == 0, RS = infinity)
  Step 6: RSI[i] = 100 - (100 / (1 + RS[i]))
          If avg_loss == 0: RSI[i] = 100

OUTPUT: rsi[] — array of RSI values (0 to 100)
EDGE CASES:
  - Period of all gains: avg_loss = 0, RSI = 100
  - Period of all losses: avg_gain = 0, RSI = 0
  - Fewer bars than period: return NaN until period bars available
  - NaN in close_prices: propagate NaN

Section 6: Parameters & Optimization

Standard Period Conventions

Period Use Case Characteristic
7 Scalping, very short-term High noise, fast signals, many false positives
9 Short-term swing Faster than default, still workable
14 Standard (default) Wilder's original — best balance
21 Slower swing Fewer signals, better in volatile markets
25+ Position trading Only major extremes trigger signal

Parameter Impact

Change Effect When to Apply
Lower period (< 14) More overbought/oversold touches, more whipsaws Only in calm trending markets with tight ranges
Higher period (> 14) Fewer signals, slower divergence detection High-volatility assets like crypto, biotech
Raise OB/OS levels to 80/20 Only catches extreme momentum exhaustion Strong trending environments
Lower OB/OS to 60/40 More signals in mean-reverting markets Range-bound stocks, stable indices
What period works best for crypto RSI?

Crypto markets trend harder and have more extreme swings than equities. RSI(14) regularly touches 80+ and 20- without reversing. Use RSI(21) for swing setups to reduce noise, and raise the overbought threshold to 75 or 80 when the market is in a strong trend phase. The standard 70/30 levels produce premature fade signals in bull markets.

Should RSI period match my chart timeframe?

The period does not need to match the timeframe — RSI(14) is standard across all timeframes. What changes is which signals you trade. On a 15-minute chart, use oversold exits for scalps. On a daily chart, prioritize divergence. On weekly, use centerline crosses for position bias. Same math, different application.

Why does TradingView RSI sometimes differ slightly from other platforms?

Wilder smoothing (RMA) requires a long warmup period to converge. If two platforms start calculating from different historical bars, early values diverge and the smoothing takes different paths. After 100+ bars of data, values converge. Always use at least 100 bars of history before trusting RSI readings.


Section 7: Synergies & Conflicts

Works Well WithAvoid Combining With
SMA(200)Use SMA(200) as trend filter — only take RSI oversold signals when price is above SMA(200)
MACDMACD histogram direction confirms RSI momentum direction — align both before entry
VolumeHigh-volume RSI divergence has higher success rate than low-volume divergence
Bollinger BandsRSI below 30 at lower Bollinger band = double confirmation oversold setup
Support / ResistanceRSI oversold at key horizontal support = high-probability reversal zone
Stochastic RSIStochRSI is RSI applied to RSI — double-smoothed from the same data. Redundant, not independent confirmation.
CCICCI and RSI both measure momentum from price — partial redundancy. They confirm each other but add little independent edge.
Multiple RSI periodsRSI(7) + RSI(14) on same chart creates visual noise. Pick one period and stick with it.

Section 8: Common Mistakes

Mistake Root Cause Solution
Shorting on RSI above 70 in uptrend Treating overbought as automatic sell signal Wait for RSI to cross back below 70 — overbought can persist for weeks
Ignoring higher timeframe trend Taking counter-trend RSI signals Check daily trend before acting on hourly RSI — only trade oversold in uptrend direction
Not waiting for divergence confirmation Acting on developing divergence mid-bar Only enter after the divergence bar closes — live bar RSI shifts every tick
Using RSI alone for entry RSI shows extremity, not timing Pair with price action (pin bar, engulfing) or a crossover for entry trigger
Equal weighting all divergence signals Not all divergence is equal — weak divergences at minor levels fail Score divergence: strong = at major S/R, high volume, clean RSI pattern. Weak = any single factor missing. Trade strong only.

Section 9: Cheat Sheet

ℹ️ INFO
**RSI (Relative Strength Index)**

USE WHEN: Price is at key support/resistance, divergence visible on closed bars, centerline cross for trend bias
AVOID WHEN: Strong trending market with no pullback, news catalyst imminent, ADX > 40 (avoid fade entries)

ENTRY SIGNAL: RSI crosses back above 30 (bullish) / RSI crosses back below 70 (bearish) / Divergence confirmed at bar close
EXIT SIGNAL: RSI reaches opposite extreme / RSI crosses 50 against position / Failure swing break

PARAMETERS: Standard = 14 period, 70/30 levels | Trending markets = 21 period, 80/20 levels
CONFLUENCE: SMA(200) trend filter + Volume on divergence bars + Support/Resistance level alignment

RISK: Overbought/oversold fade in trending markets: 55-65% loss rate without trend filter
BEST TIMEFRAME: Daily and 4H for divergence / 15m-1H for oversold entry scalps in trend direction