Indicator · Pine Script v6 · On the chart

Institutional Insight Indicator

by RuneDD

This overlay indicator marks volume-driven buying and selling pressure on the price chart.

View on GitHub

GitHub stars11on the repository
Pine versionv6current
Lines of code98
Settings6inputs
LicenceApache-2.0
Last update2 months ago14 Aug 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 indicator, select all of the template text and paste. Press Save and give it a name.
  4. 4Add it to the chartPress Add to chart, then adjust the settings with the gear icon next to its name.

Source Code

98 lines of Pine Script v6 from script.pine, published under Apache-2.0. Keep the author's credit and licence lines when you reuse it.

script.pine
// --------------------------------------------------------------------------------------------------
// Institutional Insight Indicator (Enhanced)
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © RuneDD
//@version=6
indicator(title="Institutional Insight Indicator [Enhanced]", shorttitle="III [E]", overlay=true)

// 1. INPUTS
groupGeneral = "General Settings"
multiplier   = input.float(2.5, title="Volume Multiplier", group=groupGeneral, tooltip="Scales the volatility-based volume threshold.")
length       = input.int(50,    title="Volume MA Length",  group=groupGeneral, tooltip="Period used for average volume calculation.")
buffer       = input.float(0.005, title="Swing Buffer", group=groupGeneral, minval=0.001, maxval=0.05, step=0.001, tooltip="Offset to confirm swing highs/lows.")

groupTrend   = "Trend & Zones"
smaLength2   = input.int(200,   title="Trend SMA Length",        group=groupTrend, tooltip="Period for the main SMA to determine the overall trend.")
zoneLength   = input.int(50,    title="Supply/Demand Zone Length", group=groupTrend, tooltip="Lookback period for swing high/low zones.")

groupRSI     = "RSI Settings"
rsiPeriod    = input.int(14, title="RSI Period", group=groupRSI, tooltip="RSI calculation period.")

// 2. CALCULATIONS

// 2.1 Volatility & Volume
volatility        = ta.stdev(close, 20)
dynamicMultiplier = multiplier * volatility
avgVolume         = ta.sma(volume, length)

// 2.2 Trend SMA
trendSMA = ta.sma(close, smaLength2)

// 2.3 RSI
rsiValue = ta.rsi(close, rsiPeriod)

// 2.4 Swings
// Swing high if current close > highest close of zoneLength (plus buffer)
// Swing low if current close < lowest close of zoneLength (minus buffer)
swingHigh = close > (1 + buffer) * ta.highest(close[1], zoneLength) and close[1] > close[2]
swingLow  = close < (1 - buffer) * ta.lowest(close[1], zoneLength)  and close[1] < close[2]

// 2.5 Fibonacci (based on most recent swings)
mostRecentSwingHigh = ta.valuewhen(swingHigh, close, 0)
mostRecentSwingLow  = ta.valuewhen(swingLow,  close, 0)

fib382 = mostRecentSwingLow + 0.382 * (mostRecentSwingHigh - mostRecentSwingLow)
fib500 = mostRecentSwingLow + 0.500 * (mostRecentSwingHigh - mostRecentSwingLow)
fib618 = mostRecentSwingLow + 0.618 * (mostRecentSwingHigh - mostRecentSwingLow)

// 2.6 Buying & Selling Pressure
buyingPressure  = (close > trendSMA) and (close > open) and (volume > avgVolume * dynamicMultiplier) and (close[1] < close) and (rsiValue < 30)
sellingPressure = (close < trendSMA) and (close < open) and (volume > avgVolume * dynamicMultiplier) and (close[1] > close) and (rsiValue > 70)

// 3. SUPPLY & DEMAND ZONES

var box supplyBox = na
var box demandBox = na

// Pivot prices for new zones
pivotHighPrice = ta.valuewhen(swingHigh, high, 0)
pivotLowPrice  = ta.valuewhen(swingLow,  low,  0)

// On a new swing high -> remove old supply, then create new supply zone
if swingHigh
    if not na(supplyBox)
        box.delete(supplyBox)
    supplyBox := box.new(left=bar_index, top=pivotHighPrice, right=bar_index+1, bottom=ta.valuewhen(swingHigh, close, 0), border_color=color.new(color.red, 0), bgcolor=color.new(color.red, 85))

if not na(supplyBox)
    box.set_right(supplyBox, bar_index)

// On a new swing low -> remove old demand, then create new demand zone
if swingLow
    if not na(demandBox)
        box.delete(demandBox)
    demandBox := box.new(left=bar_index, top=ta.valuewhen(swingLow, close, 0), right=bar_index+1, bottom=pivotLowPrice, border_color=color.new(color.green, 0), bgcolor=color.new(color.green, 85))

if not na(demandBox)
    box.set_right(demandBox, bar_index)

// 4. VISUALIZATION

// 4.1 Bar Color
barcolor(buyingPressure ? color.new(color.green, 90) : sellingPressure ? color.new(color.red, 90) : na)

// 4.2 Trend SMA
plot(trendSMA, title="Trend SMA", color=color.purple, linewidth=2)

// 4.3 Fibonacci Levels
plot(fib382, title="Fib 38.2%", color=color.new(color.orange, 60), linewidth=2)
plot(fib500, title="Fib 50%",   color=color.new(color.blue,   60), linewidth=1)
plot(fib618, title="Fib 61.8%", color=color.new(color.orange, 60), linewidth=2)

// 4.4 High Volume Background
highVolume = volume > avgVolume * dynamicMultiplier
bgcolor(highVolume ? color.new(color.blue, 95) : na)

// 5. ALERTS
alertcondition(buyingPressure,  title="Buying Pressure Alert",  message="Buying Pressure Detected!")
alertcondition(sellingPressure, title="Selling Pressure Alert", message="Selling Pressure Detected!")

Overview

Institutional Insight Indicator compares volume with a simple moving average scaled by a volatility-based multiplier, and it uses a trend simple moving average plus RSI thresholds to color bars. Swing highs and lows, confirmed with a buffer, create one supply box and one demand box that replace earlier zones. It also plots Fibonacci retracements from the latest swings. Settings change volume, trend, zone, and RSI lookbacks. It has no trade entries or exits.

Details

Published by

RuneDD on GitHub

Type

Indicator, Pine Script v6

Draws

On the price chart

Category

Volume, Support & resistance, Oscillators & momentum, Trend

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

pinescripttradingviewtradingview-indicatormarketanalysisprofile

Settings

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

SettingTypeDefaultVariable
Volume Multiplierfloat2.5multiplier
Volume MA Lengthint50length
Swing Bufferfloat0.005buffer
Trend SMA Lengthint200smaLength2
Supply/Demand Zone Lengthint50zoneLength
RSI Periodint14rsiPeriod
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

The Momentum Setup is a multi-indicator visual tool designed for trend and momentum analysis directly on the price chart. It combines Relative Strength Index (RSI), Money Flow Index (MFI), Commodity Channel Index (CCI), Supertrend, and a 250-bar percentage cha

Indicator v5 Oscillators & momentumTrend
Updated 1 year ago · MPL-2.0 GitHub repository of Momentum Setup - Ankush Bajaj Momentum Investing Setup

Aroon-based Strategy

by capissimo
114 stars

This indicator overlay generates buy and sell signals based on Aroon extreme levels combined with optional volume or volatility filters. It calculates Aroon Up and Aroon Down lines using localized high and low lookbacks, generating trade entries when Aroon rea

Indicator v4 TrendOscillators & momentum
Updated 1 year ago · None stated GitHub repository of Aroon-based Strategy

Moon Dev Lunar Sniper

by moondevonyt
92 stars

Moon Dev Lunar Sniper is a multi-indicator overlay that scores confluence across fast and slow EMAs, RSI, MACD, DMI, and BB width to fire signals only when score meets the minimum threshold. It plots buy and sell signals on the price chart, highlights cosmic b

Indicator v6 TrendOscillators & momentum Repaints
Updated 8 weeks ago · Custom licence GitHub repository of Moon Dev Lunar Sniper

Signal Strategy 15m

by tripolskypetr
72 stars

This indicator generates trend-following trade signals on the price chart by combining moving average crossovers with multi-factor filters. It triggers entry alerts when fast and slow EMAs cross in the direction of a baseline trend EMA, confirmed by non-extrem

Indicator v5 TrendMoving averages
Updated 3 days ago · MIT GitHub repository of Signal Strategy 15m

Copilot

by milocaetano
48 stars

Copilot is an order flow range-reversal indicator designed to overlay trading setups directly on the price chart. It evaluates four criteria: market context (sideways vs trending regime based on ATR height), structure (double top or double bottom retests), abs

Indicator v5 SMC / ICT / price actionSupport & resistance
Updated yesterday · MIT GitHub repository of Copilot

More indicators

Trade Your Charts With a Regulated Broker

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

Compare brokers