커뮤니티

문의드립니다.

프로필 이미지
as8282
2020-04-19 01:18:08
533
글번호 138082
답변완료
하기 수식을 예스로 부탁드립니다. study(title="ATR Trainling Stop Smoothed", shorttitle="ATR_SM", overlay = true) nATRPeriod = input(22, "Period") nATRMultip = input(8.1, "Multiplier",type=float, minval=0.5, maxval=1000, step=0.1) xATR = atr(nATRPeriod) nLoss = nATRMultip * xATR xATRTrailingStop = na xATRTrailingStop := iff(close > nz(xATRTrailingStop[1], 0) and close[1] > nz(xATRTrailingStop[1], 0), max(nz(xATRTrailingStop[1]), close - nLoss), iff(close < nz(xATRTrailingStop[1], 0) and close[1] < nz(xATRTrailingStop[1], 0), min(nz(xATRTrailingStop[1]), close + nLoss), iff(close > nz(xATRTrailingStop[1], 0), close - nLoss, close + nLoss))) pos = na pos := iff(close[1] < nz(xATRTrailingStop[1], 0) and close > nz(xATRTrailingStop[1], 0), 1, iff(close[1] > nz(xATRTrailingStop[1], 0) and close < nz(xATRTrailingStop[1], 0), -1, nz(pos[1], 0))) color = pos == -1 ? red: pos == 1 ? lime : blue len2 = input(100, minval=1, title="Smooth") src = input(close, title="Source") out = vwma(src, len2) avg1=avg(out, xATRTrailingStop) plot(avg1, color=aqua, transp=0, title="ATR")
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2020-04-20 13:31:11

안녕하세요 예스스탁입니다. input : nATRPeriod(22),nATRMultip(8.1); var : xATR(0),nLoss(0),xATRTrailingStop(0),color(0),pos(0); xATR = atr(nATRPeriod); nLoss = nATRMultip * xATR; xATRTrailingStop = iff(close > xATRTrailingStop[1] and close[1] > xATRTrailingStop[1], max(xATRTrailingStop[1], close - nLoss), iff(close < xATRTrailingStop[1] and close[1] < xATRTrailingStop[1], min(xATRTrailingStop[1], close + nLoss), iff(close > xATRTrailingStop[1], close - nLoss, close + nLoss))) ; pos = iff(close[1] < xATRTrailingStop[1] and close > xATRTrailingStop[1], 1, iff(close[1] > xATRTrailingStop[1] and close < xATRTrailingStop[1], -1, pos[1])); color = iff(pos == -1 , red,iff( pos == 1 , GREEN , blue)); input : len2(100); var : src(0),out(0),avg1(0); src = c; out = AccumN( src * v , len2 ) / AccumN( v, len2 ) ; avg1 = avg(out, xATRTrailingStop); plot1(avg1,"atr",cyan); 즐거운 하루되세요 > as8282 님이 쓴 글입니다. > 제목 : 문의드립니다. > 하기 수식을 예스로 부탁드립니다. study(title="ATR Trainling Stop Smoothed", shorttitle="ATR_SM", overlay = true) nATRPeriod = input(22, "Period") nATRMultip = input(8.1, "Multiplier",type=float, minval=0.5, maxval=1000, step=0.1) xATR = atr(nATRPeriod) nLoss = nATRMultip * xATR xATRTrailingStop = na xATRTrailingStop := iff(close > nz(xATRTrailingStop[1], 0) and close[1] > nz(xATRTrailingStop[1], 0), max(nz(xATRTrailingStop[1]), close - nLoss), iff(close < nz(xATRTrailingStop[1], 0) and close[1] < nz(xATRTrailingStop[1], 0), min(nz(xATRTrailingStop[1]), close + nLoss), iff(close > nz(xATRTrailingStop[1], 0), close - nLoss, close + nLoss))) pos = na pos := iff(close[1] < nz(xATRTrailingStop[1], 0) and close > nz(xATRTrailingStop[1], 0), 1, iff(close[1] > nz(xATRTrailingStop[1], 0) and close < nz(xATRTrailingStop[1], 0), -1, nz(pos[1], 0))) color = pos == -1 ? red: pos == 1 ? lime : blue len2 = input(100, minval=1, title="Smooth") src = input(close, title="Source") out = vwma(src, len2) avg1=avg(out, xATRTrailingStop) plot(avg1, color=aqua, transp=0, title="ATR")