UDAY_C_Santhakumar

UCS Squeeze Bar

This indicator is a request from tvmember jackvmk. Credits to jackvmk.

Squeeze bar = a bar which encompasses 5, 10, 15, 20, 30, 40 SMA
Squeeze bars high and lows are support and resistance. when price break one of them, this direction is direction of explosion.

I have added a further more customization
1. Using EMA instead of SMA
2. Using Heikin Ashi Optimization
3. Using Realbody (ignore wicks)
4. Plot the MA Ribbon

Uday C Santhakumar
Script de código abierto

Siguiendo el verdadero espíritu de TradingView, el autor de este script lo ha publicado en código abierto, para que los traders puedan entenderlo y verificarlo. ¡Un hurra por el autor! Puede utilizarlo de forma gratuita, aunque si vuelve a utilizar este código en una publicación, debe cumplir con lo establecido en las Normas internas. Puede añadir este script a sus favoritos y usarlo en un gráfico.

Exención de responsabilidad

La información y las publicaciones que ofrecemos, no implican ni constituyen un asesoramiento financiero, ni de inversión, trading o cualquier otro tipo de consejo o recomendación emitida o respaldada por TradingView. Puede obtener información adicional en las Condiciones de uso.

¿Quiere utilizar este script en un gráfico?
study(title="Squeeze Bar", shorttitle="Sqz Bar", overlay=true)

useHAC = input(true, title = "** Select this When Using Optimized Squeeze **", type=bool)
userb = input(true, title = "Ignore Wicks", type = bool)
plma = input(true, title = "Plot Moving Averages", type = bool)
masl = input(false, title = "Use EMA instead of SMA", type = bool)

// Heikin Ashi ATR Calculations
haclose = ohlc4
haopen = na(haopen[1]) ? (open + close)/2 : (haopen[1] + haclose[1]) / 2
hahigh = max (high, max(haopen,haclose))
halow = min (low, min(haopen,haclose))
haatra = abs(hahigh - haclose[1])
haatrb = abs(haclose[1] - halow)
haatrc = abs(hahigh - halow)
haatr = max(haatra, max(haatrb,haatrc))

src = useHAC ? haclose : close
sro = useHAC ? haopen : open

// MA Calculations
ma1 = masl ? ema(src,5) : sma(src,5)
ma2 = masl ? ema(src,10) : sma(src,10)
ma3 = masl ? ema(src,15) : sma(src,15)
ma4 = masl ? ema(src,20) : sma(src,20)
ma5 = masl ? ema(src,30) : sma(src,30)
ma6 = masl ? ema(src,40) : sma(src,40)

// High and Low
rblow = userb ? min(src, sro) : low
rbhig = userb ? max(src, sro) : high

// Squeeze Bar
sqzbar = (ma1 > rblow and ma1 < rbhig) and (ma2 > rblow and ma2 < rbhig) and (ma3 > rblow and ma3 < rbhig) and (ma4 > rblow and ma4 < rbhig) and (ma5 > rblow and ma5 < rbhig) and (ma6 > rblow and ma6 < rbhig)

// Bar Coloring
barcolor(sqzbar ? yellow : na)

// Ploting
plot(plma ? ma1 : na, title = "Moving Average", color = red, linewidth = 1)
plot(plma ? ma2 : na, title = "Moving Average", color = red, linewidth = 1)
plot(plma ? ma3 : na, title = "Moving Average", color = red, linewidth = 1)
plot(plma ? ma4 : na, title = "Moving Average", color = green, linewidth = 3)
plot(plma ? ma5 : na, title = "Moving Average", color = blue, linewidth = 2)
plot(plma ? ma6 : na, title = "Moving Average", color = gray, linewidth = 3)