Strategy · Pine Script v5 · On the chart

RSI Divergence

by muammeryldrm42

This strategy detects bullish and bearish RSI divergences using price and RSI pivot points.

View on GitHub

GitHub stars7on the repository
Pine versionv5runs as is
Lines of code52
Settings2inputs
LicenceMIT
Last update3 months ago8 Jul 2026

Add It to Your TradingView Chart

  1. 1Copy the scriptPress Copy script above, or the copy button on the code below.
  2. 2Open the Pine EditorOpen a TradingView chart and choose Pine Editor at the bottom of the screen.
  3. 3Paste over the templateCreate a new strategy, select all of the template text and paste. Press Save and give it a name.
  4. 4Add it to the chartPress Add to chart. The trades and results appear in the Strategy Tester tab; adjust the settings with the gear icon.

Source Code

52 lines of Pine Script v5 from public/code/indicators__rsi_divergence.pine, published under MIT. Keep the author's credit and licence lines when you reuse it.

indicators__rsi_divergence.pine
//@version=5
strategy("RSI Divergence", overlay=true,
         default_qty_type=strategy.percent_of_equity, default_qty_value=10)

rsiLen  = input.int(14, "RSI Period")
pivotLb = input.int(5, "Pivot Lookback")

rsiV = ta.rsi(close, rsiLen)
atrV = ta.atr(14)

// Pivotlar
ph = ta.pivothigh(high, pivotLb, pivotLb)
pl = ta.pivotlow(low,  pivotLb, pivotLb)
phRsi = ta.pivothigh(rsiV, pivotLb, pivotLb)
plRsi = ta.pivotlow(rsiV,  pivotLb, pivotLb)

var float prevPL = na, var float prevPLRsi = na
var float prevPH = na, var float prevPHRsi = na
var float currPL = na, var float currPLRsi = na
var float currPH = na, var float currPHRsi = na

if not na(pl)
    prevPL := currPL
    prevPLRsi := currPLRsi
    currPL := pl
    currPLRsi := rsiV[pivotLb]

if not na(ph)
    prevPH := currPH
    prevPHRsi := currPHRsi
    currPH := ph
    currPHRsi := rsiV[pivotLb]

bullDiv = not na(prevPL) and not na(currPL) and currPL < prevPL and currPLRsi > prevPLRsi and currPLRsi < 40
bearDiv = not na(prevPH) and not na(currPH) and currPH > prevPH and currPHRsi < prevPHRsi and currPHRsi > 60

if bullDiv and strategy.position_size == 0
    sl = currPL - 0.3 * atrV
    risk = close - sl
    if risk > 0
        strategy.entry("Div L", strategy.long)
        strategy.exit("X", "Div L", stop=sl, limit=close + risk * 3)

if bearDiv and strategy.position_size == 0
    sl = currPH + 0.3 * atrV
    risk = sl - close
    if risk > 0
        strategy.entry("Div S", strategy.short)
        strategy.exit("X", "Div S", stop=sl, limit=close - risk * 3)

plotshape(bullDiv, "Bull Div", shape.triangleup,   location.belowbar, color.lime, size=size.normal)
plotshape(bearDiv, "Bear Div", shape.triangledown, location.abovebar, color.red,  size=size.normal)

Overview

A bullish divergence triggers a long entry when price forms a lower low while RSI forms a higher low below 40. A bearish divergence triggers a short entry when price forms a higher high while RSI forms a lower high above 60. Positions are protected by ATR-adjusted stop losses based on pivot levels, and exits target a 1:3 risk-to-reward ratio. Shapes are plotted directly on the main chart when signals occur.

Details

Published by

muammeryldrm42 on GitHub

Type

Strategy, Pine Script v5

Draws

On the price chart

Category

Oscillators & momentum, Divergence

Markets

Any symbol

Timeframes

Any timeframe

Risk Notes

No repainting, lookahead or stacked entries were found in its code or README. That says nothing about how well it works: test it first.

Topics

cryptofuturessodexsosovaluestrategyvaluechain

Settings

The inputs you can change from the gear icon on the chart. Defaults are the author's.

SettingTypeDefaultVariable
RSI Periodint14rsiLen
Pivot Lookbackint5pivotLb
Third-party code. ForexR did not write, test or endorse this script, and the summary above was generated automatically from its code and README. Indicators describe the past, and a strategy's backtest can look better than live trading, especially when a script repaints. Check it in the Strategy Tester and on a demo account before you rely on it.

Similar Pine Scripts

ETH_buy_3commas

by hasnocool
106 stars

This strategy overlays a Cipher B style WaveTrend study on the price chart and is titled for Ethereum buy alerts aimed at 3Commas. It calculates a WaveTrend channel and a short moving average, and can mark buy, sell, gold, and divergence dots. Settings change

Strategy v4 Oscillators & momentumDivergence
Updated 2 years ago · GPL-3.0 GitHub repository of ETH_buy_3commas
24 stars

This overlay strategy combines a Cipher B WaveTrend oscillator with two optional moving averages on the price chart. It exposes WaveTrend channel and average lengths, overbought and oversold levels, buy, sell and gold dots, and regular or hidden divergence mar

Strategy v5 Oscillators & momentumMoving averages
Updated 4 years ago · MPL-2.0 GitHub repository of Cipher B + EMAs Strategy

Divergenced A002

by ruckard
13 stars

Divergenced A002 is a momentum divergence strategy designed to identify entry opportunities using Squeeze Momentum Indicator shifts alongside price action. It enters long when momentum reaches higher lows during lower price lows and enters short on opposite di

Strategy v5 Oscillators & momentumDivergence
Updated 1 year ago · None stated GitHub repository of Divergenced A002

This strategy executes long positions by combining a 200-period EMA trend filter, Stochastic RSI oversold crosses, and Williams Alligator retracements, supplemented by RSI divergence detection. It triggers long entries when the price trades above the 200 EMA w

Strategy v4 TrendOscillators & momentum
Updated 3 years ago · Apache-2.0 GitHub repository of 200 EMA + Alligator + Stochastic Long Strategy
4 stars

Divergence Strategy scans multiple technical oscillators to detect regular and hidden divergences against price action. It evaluates customizable indicators including MACD, RSI, Stochastic, CCI, Momentum, OBV, and Money Flow Index to trigger strategy entries o

Strategy v4 DivergenceOscillators & momentum
Updated 4 years ago · None stated GitHub repository of Divergence Strategy

MACD_Crossover_STEPFUN

by eltonaguiar
4 stars

This strategy enters long when the MACD line crosses above its signal line and short when it crosses below. Optional filters require the histogram to exceed a threshold, price to sit on the matching side of a simple moving average, and a simplified three-bar d

Strategy v5 Oscillators & momentumMoving averages
Updated today · None stated GitHub repository of MACD_Crossover_STEPFUN

More strategys

Trade Your Charts With a Regulated Broker

Compare brokers that connect to TradingView, with spreads, minimum deposits and leverage side by side.

Compare brokers