Stochastic RSI (StochRSI)

Stochastic formula applied to RSI values instead of price. More sensitive than either parent indicator — earlier signals at the cost of more false positives.

Updated 2026-05-24
8 min read
intermediate

The Stochastic formula applied to RSI values rather than price. Produces a much more sensitive oscillator than either parent — same 0-to-100 scale, but values cycle faster and extremes happen more often.

Placeholder · Video / Clip

StochRSI (14, 14, 3, 3) cycling on MES 5m

Author hint: MES 5m, dark theme, ~80-bar window. StochRSI (14, 14, 3, 3) plotted in a sub-panel with %K and %D lines and horizontal markers at 80 and 20. Show the heightened oscillation compared to plain RSI — frequent extreme cycling. ≤ 10 seconds, no audio. Save to /public/images/guide/indicators/stochrsi/chart.mp4.

What it measures

  • Position of RSI within its recent range. Where the current RSI reading sits between its highest and lowest values over the lookback.
  • Amplified momentum signals. Because RSI's natural range is already compressed (most readings live between 30 and 70), normalizing it again produces dramatic readings.
  • Earlier momentum shifts. Often crosses 80/20 thresholds before plain RSI does.

Formula

How AlgoLift computes it
RSI[t] = standard RSI over rsi_period
StochRSI[t] = (RSI[t] − LowestRSI) / (HighestRSI − LowestRSI) × 100
%K = SMA(StochRSI, k_smoothing_period)
%D = SMA(%K, d_smoothing_period)

The Stochastic formula is applied to RSI values instead of price. The result is then smoothed twice — once into %K, again into %D — giving the indicator its standard two-line presentation.

Developed by Tushar Chande and Stanley Kroll in 1994.

Inputs in AlgoLift

SettingDefaultRangeNotes
RSI Period142–200Lookback for the underlying RSI calculation.
Stochastic Period142–200Lookback for applying the Stochastic formula.
%K Smoothing31–50Smoothing for the fast line.
%D Smoothing31–50Smoothing for the signal line.

Recommended settings

  • (14, 14, 3, 3) — default: Standard. Works for most timeframes.
  • (5, 5, 3, 3): Very fast — for short-timeframe scalping.
  • (14, 14, 1, 1): Unsmoothed — exposes the raw Stochastic-of-RSI value. Very noisy.

Outputs in AlgoLift

HandleTypePlottedNotes
%KNumericAlwaysThe main StochRSI line. Bounded 0-100.
%DNumericAlwaysSignal line — SMA of %K.
HistogramNumericOn select%K − %D. Tracks momentum acceleration.
SlopeNumericOn selectRate of change of %K.
Placeholder · Screenshot

StochRSI node — default state

Author hint: The StochRSI node on a fresh canvas with default settings (14, 14, 3, 3). All four output handles labeled. Dark theme. Tight crop. Save to /public/images/guide/indicators/stochrsi/node.png.

Reading the components together

StochRSI behaves like Stochastic but with amplified sensitivity:

  • %K moves quickly between extremes — visits 80+ and 20− many more times than plain RSI ever would.
  • %D lags %K and smooths the wildest swings — used as the reference for crossover signals.
  • Histogram shows acceleration — early warning of %K/%D crossovers about to happen.

The two-line structure means the standard Stochastic strategies all port over directly. The difference is that StochRSI fires those signals more often.

Key Takeaway

StochRSI is sensitivity in exchange for noise. Faster signals than RSI or Stochastic, more false signals too. Useful when you need early entries and have a strong regime filter to reject the bad ones — useless without that filter.

Best in / worst in

Best in range-bound markets with clear cyclical behavior, on instruments where you need earlier signals than RSI provides, and as a second-opinion oscillator alongside RSI itself.

Worst in trending markets (same failure mode as Stochastic, made worse by the extra sensitivity) and as a standalone signal without filters. The extreme readings happen too often for "every overbought = sell" to be profitable.

Three setups

1. Crossover at extreme

The canonical entry — same structure as Stochastic but on a noisier signal, so the filter requirements tighten.

  • Long: %K crosses above %D AND %K was < 20 within the last 2 bars AND price > EMA(50).
  • Short: %K crosses below %D AND %K was > 80 within the last 2 bars AND price < EMA(50).

The trend filter (EMA(50)) is mandatory here — without it, this strategy bleeds in any persistent direction.

Placeholder · Screenshot

StochRSI crossover with extreme + trend filter

Author hint: Node graph showing StochRSI %K and %D outputs feeding a crossover comparison, gated by both a recent-extreme check (using Tally) and a price > EMA(50) check, into an Entry node. Save to /public/images/guide/indicators/stochrsi/setup-01.png.

2. Histogram-led early entry

Use the Histogram for the very earliest momentum shift, with the crossover as confirmation.

  • Long: Histogram crosses above 0 (signals momentum acceleration) AND %K still < 50 AND KAMA Efficiency Ratio < 0.3 (range regime).
  • Short: Symmetric.

The combined filters — momentum-acceleration + below-midline + range regime — eliminate most false signals from StochRSI's raw sensitivity.

3. StochRSI as a pullback timer on top of RSI

Use plain RSI for the regime ("is the market in a buyable zone?") and StochRSI for entry timing ("right now?").

  • Long: RSI between 40 and 60 (neutral zone, not stretched) AND StochRSI %K crosses above %D from below 20.
  • Short: Symmetric thresholds.

The RSI check prevents StochRSI from firing during RSI extremes (which usually mean trend, not chop).

Advanced patterns in AlgoLift

StochRSI for scale-in timing. Take the initial entry on a slower trigger (EMA crossover, MACD signal). Use a Scaled Entry that fires when StochRSI %K bounces from < 20 — a quick re-entry signal that often catches additional impulse during a continuing trend.

StochRSI exit timer in mean-reversion trades. When entering a mean-reversion long, exit when StochRSI %K first crosses above 80 (target reached based on momentum extreme) — independent of price target. Captures the cyclical-extreme exit timing more precisely than price-based targets.

Cross-timeframe StochRSI agreement. Wire StochRSI on both the execution timeframe (5m) and a higher timeframe (1h) via separate data series. Only allow entries when both timeframes agree on direction (both rising from oversold, or both falling from overbought). The cross-timeframe filter dramatically reduces the false-signal rate.

Common mistakes

  • Treating it as plain Stochastic. StochRSI fires extreme signals roughly 2–3× more often than Stochastic. The default 80/20 thresholds still hold but produce many more triggers — most of which need additional filters.
  • Using it as a standalone signal. The increased sensitivity means StochRSI on its own is one of the noisiest indicators in the library. Always pair with a trend filter, regime detector, or second oscillator.
  • Confusing it with RSI. StochRSI's reading and RSI's reading often disagree — when StochRSI is at 80, RSI might be at 60. The two indicators are related but not interchangeable.
  • Over-tuning the four parameters. Four parameters means four dimensions to overfit. Stick with (14, 14, 3, 3) unless you have a specific thesis.
Common Misconception
Myth
StochRSI gives earlier signals than RSI, so it's better.
Reality
Earlier signals come with proportionally more false positives. StochRSI without filters is a worse strategy than RSI without filters, not a better one. The 'earlier' property only becomes useful when paired with strong filters that throw away the noise — which is more work, not less.