RicardoSantos

[RS]Average Advance and Decline Curved Lines V0

exponential curve linear regression , use falloff multiplier to control curve falloff strength.

Skrypt open-source

Zgodnie z prawdziwym duchem TradingView, autor tego skryptu opublikował go jako open-source, aby traderzy mogli go zrozumieć i zweryfikować. Brawo dla autora! Możesz używać go za darmo, ale ponowne wykorzystanie tego kodu w publikacji jest regulowane przez Dobre Praktyki. Możesz go oznaczyć jako ulubione, aby użyć go na wykresie.

Wyłączenie odpowiedzialności

Informacje i publikacje przygotowane przez TradingView lub jego użytkowników, prezentowane na tej stronie, nie stanowią rekomendacji ani porad handlowych, inwestycyjnych i finansowych i nie powinny być w ten sposób traktowane ani wykorzystywane. Więcej informacji na ten temat znajdziesz w naszym Regulaminie.

Chcesz użyć tego skryptu na wykresie?
study("[RS]AA&DCL.V0", overlay=true)
//  ||---   Inputs: 
tempname = input("text")
risingdecaymultiplier = (syminfo.mintick*input(30.000, type=float))
fallingdecaymultiplier = (syminfo.mintick*input(30.000, type=float))
marginmultiplier = input(10)
hidefallingline = input(false)
hiderisingline = input(false)
hidetopmargin = input(false)
hidebottommargin = input(false)
//  ||---   Get the decay averages for tops and bottoms.
topdecay = high >= nz(topdecay[1]) ? high : nz(topdecay[1]) - nz(fallingdecay[1])
botdecay = n < 10 ? low : low <= nz(botdecay[1]) ? low : nz(botdecay[1]) + nz(risingdecay[1])
//  ||---   Counters for decay
falloffmultiplier = input(1.1)

fallingdecaycounter = topdecay < topdecay[1] ? nz(fallingdecaycounter[1]) * sqrt(falloffmultiplier) : falloffmultiplier
risingdecaycounter = botdecay > botdecay[1] ? nz(risingdecaycounter[1]) * sqrt(falloffmultiplier) : falloffmultiplier

fallingdecay = (fallingdecaymultiplier * fallingdecaycounter)// * avgdecaymultiplier
risingdecay = (risingdecaymultiplier * risingdecaycounter)// * avgdecaymultiplier

//topdecay2 = topdecay - fallingdecay
//botdecay2 = botdecay + risingdecay
//  ||---   Get the margin for entry
tmargin = topdecay - (fallingdecaymultiplier*marginmultiplier)
bmargin = botdecay + (risingdecaymultiplier*marginmultiplier)
//  ||---   Detect if price is in challenge zone or outside(trending/breakout)
breakoutup = close > bmargin ? true : false
breakoutdown = close < tmargin ? true : false
//  ||---   Color Switchs:
topdecaycolor = breakoutdown ? topdecay < topdecay[1] and topdecay >= high ? maroon : na : topdecay < topdecay[1] and topdecay >= high ? gray : na
botdecaycolor = breakoutup ? botdecay > botdecay[1] and botdecay <= low ? green : na : botdecay > botdecay[1] and botdecay <= low ? gray : na
//  ||---   Outputs:
plot(hidefallingline ? na : topdecay, color=topdecaycolor, style=linebr, linewidth=2, join=true)
plot(hiderisingline ? na : botdecay, color=botdecaycolor, style=linebr, linewidth=2, join=true)
//plot(topdecay+fallingdecaymultiplier, color=topdecaycolor, style=circles, linewidth=2)
//plot(botdecay-risingdecaymultiplier, color=botdecaycolor, style=circles, linewidth=2)
plot(hidetopmargin ? na : tmargin, color=topdecaycolor, style=linebr, linewidth=1, join=true)
plot(hidebottommargin ? na : bmargin, color=botdecaycolor, style=linebr, linewidth=1, join=true)