OPEN-SOURCE SCRIPT

3/9/27/9 Zero Lag EMA / EMA / Pivots / Dynamic Support (Fixed)

// Fixed error message "Index should not be negative(-8)"

//
// Author lonestar108
//
study(title = "3/9/27/9 Zero Lag EMA / EMA / Pivots / Dynamic Support", shorttitle="3/9/27/9 ZLEMA/EMA/Pivots/Support", overlay=true)

src=close
lengths=input(3, title="Short Period Length")
length=input(9, title="Fast Period Length")
length2=input(27, title="Slow Period Length")
plen=input(9, minval=1, title="Pivot Period Length")

// ema, zero lag ema
ema1=ema(src, length)
ema2=ema(ema1, length)
d=ema1-ema2
zlema=ema1+d
ema3=ema(src, length2)

// ema, zero lag ema
ema4=ema(src, length)
ema5=ema(ema4, length)
d2=ema4-ema5
zlema2=ema4+d
ema6=ema(src, length2)

// pivot points
highest_high = highest(high, plen)
highest_dev = dev(highest_high, plen) ? na : highest_high
high_pivot = highest_dev[-plen+1]
high_series = fixnan(high_pivot)
lowest_low = lowest(low, plen)
lowest_dev = dev(lowest_low, plen) ? na : lowest_low
low_pivot = lowest_dev[-plen + 1]
low_series = fixnan(low_pivot)


// Sell Setup
priceflip = barssince(close<close[4])
sellsetup = close>close[4] and priceflip
sell = sellsetup and barssince(priceflip!=9)
sell8 = sellsetup and barssince(priceflip!=8)
sellovershoot = sellsetup and barssince(priceflip!=13)
sellovershoot1 = sellsetup and barssince(priceflip!=14)
sellovershoot2 = sellsetup and barssince(priceflip!=15)
sellovershoot3 = sellsetup and barssince(priceflip!=16)

// Buy setup
priceflip1 = barssince(close>close[4])
buysetup = close<close[4] and priceflip1
buy = buysetup and barssince(priceflip1!=9)
buy8 = buysetup and barssince(priceflip1!=8)
buyovershoot = barssince(priceflip1!=13) and buysetup
buyovershoot1 = barssince(priceflip1!=14) and buysetup
buyovershoot2 = barssince(priceflip1!=15) and buysetup
buyovershoot3 = barssince(priceflip1!=16) and buysetup

// TD lines
val= buy !=sell[9]
TDhigh = valuewhen(val,high[9],0)
val1= sell !=buy[9]
TDlow = valuewhen(val1,low[9],0)

////////////////////////////
// PLOTTING

icolor=rising(zlema,1) ? lime : red

plot(zlema, color=yellow, linewidth=1)
plot(ema3, color=lime, linewidth=1)

plot(high_series, style=circles, color=lime, linewidth=1)
plot(low_series, style=circles, color=red, linewidth=1)

plot(high_pivot + 1, color=red, style=circles, linewidth=3)
plot(low_pivot - 1, color=lime, style=circles, linewidth=3)

plot(cross(zlema, ema3) ? rising(zlema,1) ? low - 1 : high + 1 : na, color=icolor, style=cross, linewidth=2)
plot(cross(zlema2, ema3) ? rising(zlema2,1) ? low - 1.25 : high + 1.25 : na, color=yellow, style=circles, linewidth=2)
plot(cross(zlema2, ema6) ? rising(zlema2,1) ? low - 1.35 : high + 1.35 : na, color=orange, style=circles, linewidth=2)
plot(cross(close, ema3) ? rising(zlema,1) ? low - 1.15 : high + 1.15 : na, color=fuchsia, style=circles, linewidth=2)

plotchar(buy,'9b','9',location.belowbar,color=lime,transp=0)
plotchar(sell,'9s','9',location.abovebar,color=red,transp=0)
plotchar(buy8,'8b','8',location.belowbar,color=lime,transp=0)
plotchar(sell8,'8s','8',location.abovebar,color=red,transp=0)

plot(TDhigh ? TDhigh : na ,style=circles, linewidth=1, color=lime,offset=-9)
plot(TDlow ? TDlow : na ,style=circles, linewidth=1, color=red, offset=-9)

barcolor(sellovershoot? #FF66A3 : sellovershoot1? #FF3385 : sellovershoot2? #FF0066 : sellovershoot3? #CC0052 : buyovershoot? #D6FF5C : buyovershoot1? #D1FF47 : buyovershoot2? #B8E62E : buyovershoot3? #8FB224 : na)

// Uncode for line chart with indicators //
c = sell? #FF0000 : buy? #00FF00 : sellovershoot? #FF66A3 : sellovershoot1? #FF3385 : sellovershoot2? #FF0066 : sellovershoot3? #CC0052 : buyovershoot? #D6FF5C : buyovershoot1? #D1FF47 : buyovershoot2? #B8E62E : buyovershoot3? #8FB224 : #c0c0c0
plot(close, color=c, linewidth=1)
Double Exponential Moving Average (DEMA)fixedPivot PointspivotsupportscriptSupport and Resistance

Skrip sumber terbuka

Dalam semangat sebenar TradingView, penulis telah menerbitkan kod Pine ini sebagai sumber terbuka supaya pedagang dapat memahami dan mengesahkannya. Sorakan kepada penulis! Anda boleh menggunakan perpustakaan ini secara percuma, tetapi penggunaan semula kod dalam penerbitan ini adalah dikawal oleh Peraturan dalaman. Anda boleh menyukainya untuk menggunakannya pada carta.

Ingin menggunakan skrip ini pada carta?

Penafian