trading.kay27

Kay_BBands v2

This is the second version of Kay_BBands. But this is infused with ADX .

When +DI (Directional Index) is above -DI , then Upper band will be visible and vice-versa.
This is when the ADX is above the threshold. 20 is the default but can be set to 25.

When the ADX is below the specified threshold, both bands gets visible, showing no trending conditions.

Use it with another band with setting 20/21, 0.6 deviation. Prices keeping above or below the 2nd bands upper or lower bounds shows trending conditions.
Favori Komutlardan Çıkart Favori Komutlara Ekle
//version=2
//2nd version of the band
study(shorttitle="Kay_BBv2", title="Kay_BBands", overlay=true)
length = input(21, minval=1)
hl = input(true, title="Band source as high/low ?", type=bool)
Usrc = hl ? high : close // input(high/Low, title="Upper Src")
Lsrc = hl ? low : close //input(low, title="Lower Src")
mult = input(2.0, minval=0.001, maxval=50)
basis = input(true, title="Use EMA ?", type=bool) ? ema(close, length) : sma(close, length)
//dev = mult * stdev(src, length)
isU = close > basis// and close > basis
//isBetween = (open > basis and close < basis) or (open < basis and close > basis)
isD = close < basis//open < basis and close < basis

upperB = basis + (mult * stdev(Usrc, length))
lowerB = basis - (mult * stdev(Lsrc, length))

upper = isU and highest(Usrc, length) == Usrc ? upperB : upperB < fixnan(upper[1]) ? upperB : fixnan(upper[1])
lower = isD and lowest(Lsrc, length) == Lsrc ? lowerB : lowerB > fixnan(lower[1]) ? lowerB : fixnan(lower[1])

//Adx
adxlen = input(14, title="ADX Smoothing")
dilen = input(14, title="DI Length")
dirmov(len) =>
	up = change(high)
	down = -change(low)
	truerange = rma(tr, len)
	plus = fixnan(100 * rma(up > down and up > 0 ? up : 0, len) / truerange)
	minus = fixnan(100 * rma(down > up and down > 0 ? down : 0, len) / truerange)
	[plus, minus]

adx(dilen, adxlen) => 
	[plus, minus] = dirmov(dilen)
	sum = plus + minus
	adx = 100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), adxlen)

[plus1, minus1] = dirmov(dilen)
sig = adx(dilen, adxlen)
level = input(20, title="ADX level", minval = 1)

plot(basis, color=sig > level ? red : blue, title="BB Basis")
p1 = plot(upper, color=black, title="BB Upper modified", transp=0)
p2 = plot(lower, color=black, title="BB Lower modified", transp=0)
fill(p1, p2, color=blue, transp=90, title="Modified")

p3 = plot(upperB, color=sig > 20 ? (plus1 > minus1 ? green : na) : blue, title="BB Upper", transp=0)
p4 = plot(lowerB, color=sig > 20 ? (plus1 < minus1 ? green : na) : blue, title="BB Lower", transp=0)
fill(p3, p4, color=blue, transp=95, title="Background")

Ah..!! Disregard older comment. I published the script again. Please follow the link below for updated script.
Cevap Gönder
I didn't know how to update the old script so I just have pasted the code here instead of creating a new script. So please copy and paste the script in pine script editor and add it to the chart.
Changes - :
1) Updated default settings for the indicator
2) ADX setting are now DI (28), ADX (10), adx level to check is 10.
3) IMPORTANT one - When DI is up/down, lower/upper band will also have color (more visible that way.)

Play around the settings.. It really eliminates extra indicator checking visually... Please like if you think idea is good.
Cevap Gönder
//version=2
//2nd version of the band
study(shorttitle="Kay_BBv2", title="Kay_BBands", overlay=true)
length = input(20, minval=1)
hl = input(false, title="Band source as high/low ?", type=bool)
Usrc = hl ? high : close // input(high/Low, title="Upper Src")
Lsrc = hl ? low : close //input(low, title="Lower Src")
mult = input(2.0, minval=0.001, maxval=50)
basis = input(false, title="Use EMA ?", type=bool) ? ema(close, length) : sma(close, length)
//dev = mult * stdev(src, length)
isU = close > basis// and close > basis
//isBetween = (open > basis and close < basis) or (open < basis and close > basis)
isD = close < basis//open < basis and close < basis

//2 diviation
upperB = basis + (mult * stdev(Usrc, length))
lowerB = basis - (mult * stdev(Lsrc, length))

//1 Diviation
upperB1 = basis + ((mult/2) * stdev(Usrc, length))
lowerB1 = basis - ((mult/2) * stdev(Lsrc, length))

upper = isU and highest(Usrc, length) == Usrc ? upperB : upperB < fixnan(upper) ? upperB : fixnan(upper)
lower = isD and lowest(Lsrc, length) == Lsrc ? lowerB : lowerB > fixnan(lower) ? lowerB : fixnan(lower)

//Adx
adxlen = input(10, title="ADX Smoothing")
dilen = input(28, title="DI Length")
dirmov(len) =>
up = change(high)
down = -change(low)
truerange = rma(tr, len)
plus = fixnan(100 * rma(up > down and up > 0 ? up : 0, len) / truerange)
minus = fixnan(100 * rma(down > up and down > 0 ? down : 0, len) / truerange)


adx(dilen, adxlen) =>
= dirmov(dilen)
sum = plus + minus
adx = 100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), adxlen)

= dirmov(dilen)
sig = adx(dilen, adxlen)
level = input(10, title="ADX level", minval = 1)

plot(basis, color=sig > level ? red : blue, title="BB Basis")
//p1 = plot(upper, color=black, title="BB Upper modified", transp=0)
//p2 = plot(lower, color=black, title="BB Lower modified", transp=0)
//fill(p1, p2, color=blue, transp=90, title="Modified")

p1 = plot(upperB, color=sig > level ? (plus1 > minus1 ? #00C600 : #7D7D7D) : blue, title="BB Upper", transp=0)
p2 = plot(lowerB, color=sig > level ? (plus1 < minus1 ? #FF0000 : #7D7D7D) : blue, title="BB Lower", transp=0)
fill(p1, p2, color=blue, transp=95, title="Background")

p3 = plot(upperB1, color=sig > level ? (plus1 > minus1 ? #00C600 : #7D7D7D) : blue, title="BB Upper", transp=0)
p4 = plot(lowerB1, color=sig > level ? (plus1 < minus1 ? #FF0000 : #7D7D7D) : blue, title="BB Lower", transp=0)
fill(p3, p4, color=red, transp=95, title="Background")
Cevap Gönder
Ana Sayfa Hisse Senedi Takipçisi Forex Takipçisi Kripto Takipçisi Ekonomik Takvim Nasıl Çalışır Grafik Özellikleri Ücretlendirme Kurallarımız Moderatörler Web Sitesi & Aracı Kurum Çözümleri Görsel Bileşenler(Widget) Grafik Çözümleri Yardım Alın Yeni Özellik Talebi Blog ve Haberler SSS Viki Twitter
Profil Profil Ayarları Hesap ve Ödemeler TradingView Koinleri Destek Kayıtlarım Yardım Alın Yayınlanmış Fikirler Takip Edenler Takip Ediliyor Özel Mesajlar Sohbet Çıkış