indicator · on price · open source
Imbalance Zones
Running…
Loading chart…
About
Imbalance Zones — permissive Fair Value Gaps (any 3-candle imbalance, no minimum size) so you see every unfilled area.
- Green zone = bullish imbalance, red = bearish.
- Optional
minGapPctto suppress noise on instruments with micro-gaps. - Use when you want to see all imbalances, not just the SMC-grade ones.
Source code
//@version=5
indicator("Imbalance Zones", overlay=true)
minGapPct = input.float(0, "Min Gap %", minval=0, maxval=5, step=0.05)
extendBars = input.int(30, "Extend Bars", minval=5, maxval=200)
imbBull = low[0] > high[2]
imbBear = high[0] < low[2]
imbBullPct = (low[0] - high[2]) / close * 100
imbBearPct = (low[2] - high[0]) / close * 100
imbBull := imbBull and imbBullPct >= minGapPct
imbBear := imbBear and imbBearPct >= minGapPct
var float imbBullTop = na
var float imbBullBot = na
var float imbBearTop = na
var float imbBearBot = na
var int imbBullAge = 9999
var int imbBearAge = 9999
if imbBull
imbBullTop := low[0]
imbBullBot := high[2]
imbBullAge := 0
if imbBear
imbBearTop := low[2]
imbBearBot := high[0]
imbBearAge := 0
imbBullAge += 1
imbBearAge += 1
if imbBullAge > extendBars
imbBullTop := na
imbBullBot := na
if imbBearAge > extendBars
imbBearTop := na
imbBearBot := na
p_Bull_Imb_Top = plot(imbBullTop, "Bull Imb Top", color=color.green, style=plot.style_linebr)
p_Bull_Imb_Bot = plot(imbBullBot, "Bull Imb Bot", color=color.green, style=plot.style_linebr)
p_Bear_Imb_Top = plot(imbBearTop, "Bear Imb Top", color=color.red, style=plot.style_linebr)
p_Bear_Imb_Bot = plot(imbBearBot, "Bear Imb Bot", color=color.red, style=plot.style_linebr)
fill(p_Bull_Imb_Top, p_Bull_Imb_Bot, color=color.new(color.green, 90))
fill(p_Bear_Imb_Top, p_Bear_Imb_Bot, color=color.new(color.red, 90))
No comments yet.
Sign in to comment.