예스스탁
예스스탁 답변
2020-05-06 16:19:20
안녕하세요
예스스탁입니다.
input : Periods(20),Multiplier(3.0),changeATR(true),showsignals(true),highlighting(true);
var :src(0),atrv(0),atr2(0),up(0),up1(0),dn(0),dn1(0),trend(0);
src = (h+l)/2;
atr2 = ma(TrueRange, Periods);
atrv = iff(changeATR , atr(Periods) , atr2);
up = src-(Multiplier*atrv);
up1 = up[1];
up = iff(close[1] > up1 , max(up,up1) , up);
dn = src+(Multiplier*atrv);
dn1 = dn[1];
dn = iff(close[1] < dn1 , min(dn, dn1) , dn);
trend = 1;
trend = trend[1];
trend = iff(trend == -1 and close > dn1 , 1 ,iff( trend == 1 and close < up1 , -1 , trend));
plot1(iff(trend == 1 , up ,nan),"UpTrend", green);
plot2(iff(trend == 1 , nan , dn),"DownTrend",red);
plot3((o+h+l+c)/4,"평균가");
즐거운 하루되세요
> as8282 님이 쓴 글입니다.
> 제목 : 문의드립니다.
> 하기식의 지표부분만 예스로 부탁드립니다.
Periods = input(title="ATR Period", type=input.integer, defval=20)
src = input(hl2, title="Source")
Multiplier = input(title="ATR Multiplier", type=input.float, step=0.1, defval=3.0)
changeATR= input(title="Change ATR Calculation Method ?", type=input.bool, defval=true)
showsignals = input(title="Show Buy/Sell Signals ?", type=input.bool, defval=true)
highlighting = input(title="Highlighter On/Off ?", type=input.bool, defval=true)
atr2 = sma(tr, Periods)
atr= changeATR ? atr(Periods) : atr2
up=src-(Multiplier*atr)
up1 = nz(up[1],up)
up := close[1] > up1 ? max(up,up1) : up
dn=src+(Multiplier*atr)
dn1 = nz(dn[1], dn)
dn := close[1] < dn1 ? min(dn, dn1) : dn
trend = 1
trend := nz(trend[1], trend)
trend := trend == -1 and close > dn1 ? 1 : trend == 1 and close < up1 ? -1 : trend
upPlot = plot(trend == 1 ? up : na, title="Up Trend", style=plot.style_linebr, linewidth=2, color=color.green)
buySignal = trend == 1 and trend[1] == -1
plotshape(buySignal ? up : na, title="UpTrend Begins", location=location.absolute, style=shape.circle, size=size.tiny, color=color.green, transp=0)
plotshape(buySignal and showsignals ? up : na, title="Buy", text="Buy", location=location.absolute, style=shape.labelup, size=size.tiny, color=color.green, textcolor=color.white, transp=0)
dnPlot = plot(trend == 1 ? na : dn, title="Down Trend", style=plot.style_linebr, linewidth=2, color=color.red)
sellSignal = trend == -1 and trend[1] == 1
plotshape(sellSignal ? dn : na, title="DownTrend Begins", location=location.absolute, style=shape.circle, size=size.tiny, color=color.red, transp=0)
plotshape(sellSignal and showsignals ? dn : na, title="Sell", text="Sell", location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.red, textcolor=color.white, transp=0)
mPlot = plot(ohlc4, title="", style=plot.style_circles, linewidth=0)
longFillColor = highlighting ? (trend == 1 ? color.green : color.white) : color.white
shortFillColor = highlighting ? (trend == -1 ? color.red : color.white) : color.white