MOST (Moving Stop Loss) 인디케이터 Anıl Özekşi의 개발자로부터 완전히 새로운 지표입니다.
최적화된 트렌드 트래커 OTT는 트레이더들에게 기존 트렌드를 찾아주는 지표입니다. 즉, 우리가 현재 트렌드의 어느 쪽에 있는지 확인할 수 있습니다.
우리는 상승 추세의 영향을 받고 있습니다. 하락 추세의 영향으로, 가격이 OTT보다 낮을 때 우리는 그렇게 말할 수 있습니다.
두 개의 매개 변수로 설정된 OTT 지표의 첫 번째 매개 변수는 기간/길이입니다.
OTT는 트렌드 움직임에 훨씬 민감할 것입니다. 만약 그것이 더 작다면. 그리고 반대로, 더 길으면 덜 민감할 것입니다.
기간이 길어질수록 작은 추세와 가격 움직임에 대한 민감도가 낮아집니다.
이 방법으로, 당신의 기간 선택은 당신이 관심있는 어떤 종류의 추세와 밀접하게 관련이있을 것입니다.
OTT의 % 매개 변수는 최적화 계수입니다. 작은 값은 단기 변동을 더 잘 파악하는 반면 큰 값은 장기적인 추세에 더 적합할 것입니다.
또한, OTT를 사용 하 여 지원 라인, 구매 및 판매 신호 생산적인 지표가 될 것입니다.
OTT 기본 알람과 구매 판매 신호를 사용할 수 있습니다.
1- OTT 보다 높은 가격에 구매합니다. OTT보다 낮은 가격에서 팔자
2- OTT 지원 라인이 OTT 라인을 넘을 때 구매합니다. OTT 지원 라인이 OTT 라인을 넘을 때 판매합니다.
3- OTT 라인이 초록색이 되면 더 높게 구매합니다. OTT 라인이 빨간색이 되면 팔고, 낮은 하락점을 만듭니다.
참고: 영어 자막이 있는 작은 보도는 곧 제 유튜브 채널에서 볼 수 있습니다.재검토
/*backtest start: 2022-04-06 00:00:00 end: 2022-05-05 23:59:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © KivancOzbilgic //created by: @Anil_Ozeksi //developer: ANIL ÖZEKŞİ //author: @kivancozbilgic study("Optimized Trend Tracker","OTT", overlay=true) src = input(close, title="Source") length=input(2, "OTT Period", minval=1) percent=input(1.4, "OTT Percent", type=input.float, step=0.1, minval=0) showsupport = input(title="Show Support Line?", type=input.bool, defval=true) showsignalsk = input(title="Show Support Line Crossing Signals?", type=input.bool, defval=true) showsignalsc = input(title="Show Price/OTT Crossing Signals?", type=input.bool, defval=false) highlight = input(title="Show OTT Color Changes?", type=input.bool, defval=false) showsignalsr = input(title="Show OTT Color Change Signals?", type=input.bool, defval=false) highlighting = input(title="Highlighter On/Off ?", type=input.bool, defval=true) mav = input(title="Moving Average Type", defval="VAR", options=["SMA", "EMA", "WMA", "TMA", "VAR", "WWMA", "ZLEMA", "TSF"]) Var_Func(src,length)=> valpha=2/(length+1) vud1=src>src[1] ? src-src[1] : 0 vdd1=src<src[1] ? src[1]-src : 0 vUD=sum(vud1,9) vDD=sum(vdd1,9) vCMO=nz((vUD-vDD)/(vUD+vDD)) VAR=0.0 VAR:=nz(valpha*abs(vCMO)*src)+(1-valpha*abs(vCMO))*nz(VAR[1]) VAR=Var_Func(src,length) Wwma_Func(src,length)=> wwalpha = 1/ length WWMA = 0.0 WWMA := wwalpha*src + (1-wwalpha)*nz(WWMA[1]) WWMA=Wwma_Func(src,length) Zlema_Func(src,length)=> zxLag = length/2==round(length/2) ? length/2 : (length - 1) / 2 zxEMAData = (src + (src - src[zxLag])) ZLEMA = ema(zxEMAData, length) ZLEMA=Zlema_Func(src,length) Tsf_Func(src,length)=> lrc = linreg(src, length, 0) lrc1 = linreg(src,length,1) lrs = (lrc-lrc1) TSF = linreg(src, length, 0)+lrs TSF=Tsf_Func(src,length) getMA(src, length) => ma = 0.0 if mav == "SMA" ma := sma(src, length) ma if mav == "EMA" ma := ema(src, length) ma if mav == "WMA" ma := wma(src, length) ma if mav == "TMA" ma := sma(sma(src, ceil(length / 2)), floor(length / 2) + 1) ma if mav == "VAR" ma := VAR ma if mav == "WWMA" ma := WWMA ma if mav == "ZLEMA" ma := ZLEMA ma if mav == "TSF" ma := TSF ma ma MAvg=getMA(src, length) fark=MAvg*percent*0.01 longStop = MAvg - fark longStopPrev = nz(longStop[1], longStop) longStop := MAvg > longStopPrev ? max(longStop, longStopPrev) : longStop shortStop = MAvg + fark shortStopPrev = nz(shortStop[1], shortStop) shortStop := MAvg < shortStopPrev ? min(shortStop, shortStopPrev) : shortStop dir = 1 dir := nz(dir[1], dir) dir := dir == -1 and MAvg > shortStopPrev ? 1 : dir == 1 and MAvg < longStopPrev ? -1 : dir MT = dir==1 ? longStop: shortStop OTT=MAvg>MT ? MT*(200+percent)/200 : MT*(200-percent)/200 plot(showsupport ? MAvg : na, color=#0585E1, linewidth=2, title="Support Line") OTTC = highlight ? OTT[2] > OTT[3] ? color.green : color.red : #B800D9 pALL=plot(nz(OTT[2]), color=OTTC, linewidth=2, title="OTT", transp=0) buySignalk = crossover(MAvg, OTT[2]) plotshape(buySignalk and showsignalsk ? OTT*0.995 : na, title="Buy", text="Buy", location=location.absolute, style=shape.labelup, size=size.tiny, color=color.green, textcolor=color.white, transp=0) sellSignallk = crossunder(MAvg, OTT[2]) plotshape(sellSignallk and showsignalsk ? OTT*1.005 : na, title="Sell", text="Sell", location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.red, textcolor=color.white, transp=0) if buySignalk strategy.entry("entry long", strategy.long) else if sellSignallk strategy.entry("entry short", strategy.short)