커뮤니티

부탁드립니다

프로필 이미지
이대표
2020-03-16 10:54:11
390
글번호 136888
답변완료
지표전환 부탁드립니다 OverBought = input(70, minval=10) OverSold = input(30, maxval=70) band1 = hline(70, title="Upper Line", linestyle=dashed, linewidth=1, color=red) band0 = hline(30, title="Lower Line", linestyle=dashed, linewidth=1, color=green) // Super Trend sLines = input(true, "Show Super-Trend Lines") Factor1=input(1,type =float, minval=1,maxval = 100) Factor2=input(2,type =float, minval=1,maxval = 100) Factor3=input(3,type =float, minval=1,maxval = 100) Pd1=10 //input(10,minval=1,maxval = 100) Pd2=10 //input(10,minval=1,maxval = 100) Pd3=10 //input(10,minval=1,maxval = 100) // ST1 Up1=hlc3-(Factor1*atr(Pd1)) Up2=hlc3-(Factor2*atr(Pd2)) Up3=hlc3-(Factor3*atr(Pd3)) Dn1=hlc3+(Factor1*atr(Pd1)) Dn2=hlc3+(Factor2*atr(Pd2)) Dn3=hlc3+(Factor3*atr(Pd3)) // ST1.2 TrendUp1=na TrendUp2=na TrendUp3=na TrendUp1:=close[1]>TrendUp1[1]? max(Up1,TrendUp1[1]) : Up1 TrendUp2:=close[1]>TrendUp2[1]? max(Up2,TrendUp2[1]) : Up2 TrendUp3:=close[1]>TrendUp3[1]? max(Up3,TrendUp3[1]) : Up3 TrendDown1=na TrendDown2=na TrendDown3=na TrendDown1:=close[1]<TrendDown1[1]? min(Dn1,TrendDown1[1]) : Dn1 TrendDown2:=close[1]<TrendDown2[1]? min(Dn2,TrendDown2[1]) : Dn2 TrendDown3:=close[1]<TrendDown3[1]? min(Dn3,TrendDown3[1]) : Dn3 Trend1 = na Tsl1 = na Trend2 = na Tsl2 = na Trend3 = na Tsl3 = na Trend1 := close[1] > TrendDown1[1] ? 1: close[1] < TrendUp1[1]? -1: nz(Trend1[1],1) Tsl1 := Trend1==1 ? TrendUp1: TrendDown1 Trend2 := close[1] > TrendDown2[1] ? 1: close[1] < TrendUp2[1]? -1: nz(Trend2[1],1) Tsl2 := Trend2==1 ? TrendUp2: TrendDown2 Trend3 := close[1] > TrendDown3[1] ? 1: close[1] < TrendUp3[1]? -1: nz(Trend3[1],1) Tsl3 := Trend3==1 ? TrendUp3: TrendDown3 len=input(14) x=rsi(Tsl2,len) // Plotting linecolor = Tsl1 < Tsl2 and Tsl2 < Tsl3 ? red : Tsl1 > Tsl2 and Tsl2 > Tsl3 ? lime : orange plot(x , color = linecolor , style = line , linewidth = 3 ,title = "SuperTrend") tgreen=crossover(close, Tsl2) tred=crossunder(close, Tsl2) plotchar(tgreen, title="buy", char='b', location=location.bottom, color=black, transp=0, offset=0,size=size.tiny) plotchar(tred, title="sell", char='s', location=location.top, color=black, transp=0, offset=0,size=size.tiny)
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2020-03-16 18:39:57

안녕하세요 예스스탁입니다. input : OverBought(70),OverSold(30); input : sLines(true),Factor1(1),Factor2(2),Factor3(3); input : len(14); var : Pd1(0),Pd2(0),Pd3(0),HLC3(0); var : up1(0),up2(0),up3(0),dn1(0),dn2(0),dn3(0); var : x(0); var : TrendUp1(0),TrendUp2(0),TrendUp3(0); var : Trenddown1(0),Trenddown2(0),Trenddown3(0); var : Trend1(0),Trend2(0),Trend3(0); var : tsl1(0),tsl2(0),tsl3(0); Var : Counter(0), DownAmt(0), UpAmt(0), UpSum(0), DownSum(0), UpAvg(0), DownAvg(0),RSIv(0); var : linecolor(0); Pd1=10; Pd2=10; Pd3=10; PlotBaseLine1(70,"Upper Line",red); PlotBaseLine2(30,"Lower Line",green); hlc3 = (h+l+c)/3; // ST1 Up1=hlc3-(Factor1*atr(Pd1)); Up2=hlc3-(Factor2*atr(Pd2)); Up3=hlc3-(Factor3*atr(Pd3)); Dn1=hlc3+(Factor1*atr(Pd1)); Dn2=hlc3+(Factor2*atr(Pd2)); Dn3=hlc3+(Factor3*atr(Pd3)); if CurrentBar >= 1 then { TrendUp1=iff(close[1]>TrendUp1[1], max(Up1,TrendUp1[1]) , Up1); TrendUp2=iff(close[1]>TrendUp2[1], max(Up2,TrendUp2[1]) , Up2); TrendUp3=iff(close[1]>TrendUp3[1], max(Up3,TrendUp3[1]) , Up3); TrendDown1=iff(close[1]<TrendDown1[1], min(Dn1,TrendDown1[1]) , Dn1); TrendDown2=iff(close[1]<TrendDown2[1], min(Dn2,TrendDown2[1]) , Dn2); TrendDown3=iff(close[1]<TrendDown3[1], min(Dn3,TrendDown3[1]) , Dn3); Trend1 = iff(close[1] > TrendDown1[1], 1 ,iff(close[1] < TrendUp1[1], -1, Trend1[1])); Tsl1 = iff(Trend1==1, TrendUp1, TrendDown1); Trend2 = iff(close[1] > TrendDown2[1], 1,iff(close[1] < TrendUp2[1], -1, Trend2[1])); Tsl2 = iff(Trend2==1, TrendUp2, TrendDown2); Trend3 = iff(close[1] > TrendDown3[1], 1,iff(close[1] < TrendUp3[1], -1, Trend3[1])); Tsl3 = iff(Trend3==1, TrendUp3, TrendDown3); If CurrentBar == 1 AND len > 0 Then Begin UpSum = 0; DownSum = 0; For Counter = 0 To len - 1 Begin UpAmt = Tsl2[Counter] - Tsl2[Counter+1]; If UpAmt >= 0 Then DownAmt = 0; Else Begin DownAmt = -UpAmt; UpAmt = 0; End; UpSum = UpSum + UpAmt; DownSum = DownSum + DownAmt; End; UpAvg = UpSum / len; DownAvg = DownSum / len; End Else If CurrentBar > 1 AND len > 0 Then Begin UpAmt = Tsl2[0] - Tsl2[1]; If UpAmt >= 0 Then DownAmt = 0; Else Begin DownAmt = -UpAmt; UpAmt = 0; End; UpAvg = (UpAvg[1] * (len - 1) + UpAmt) / len; DownAvg = (DownAvg[1] * (len - 1) + DownAmt) / len; End; If UpAvg + DownAvg <> 0 Then RSIv = 100 * UpAvg / (UpAvg + DownAvg); Else RSIv = 0; x=rsiv; linecolor = iff(Tsl1 < Tsl2 and Tsl2 < Tsl3 , red ,iff( Tsl1 > Tsl2 and Tsl2 > Tsl3 ,blue,GRAY)); plot1(x,"SuperTrend",linecolor); } 즐거운 하루되세요 > 이대표 님이 쓴 글입니다. > 제목 : 부탁드립니다 > 지표전환 부탁드립니다 OverBought = input(70, minval=10) OverSold = input(30, maxval=70) band1 = hline(70, title="Upper Line", linestyle=dashed, linewidth=1, color=red) band0 = hline(30, title="Lower Line", linestyle=dashed, linewidth=1, color=green) // Super Trend sLines = input(true, "Show Super-Trend Lines") Factor1=input(1,type =float, minval=1,maxval = 100) Factor2=input(2,type =float, minval=1,maxval = 100) Factor3=input(3,type =float, minval=1,maxval = 100) Pd1=10 //input(10,minval=1,maxval = 100) Pd2=10 //input(10,minval=1,maxval = 100) Pd3=10 //input(10,minval=1,maxval = 100) // ST1 Up1=hlc3-(Factor1*atr(Pd1)) Up2=hlc3-(Factor2*atr(Pd2)) Up3=hlc3-(Factor3*atr(Pd3)) Dn1=hlc3+(Factor1*atr(Pd1)) Dn2=hlc3+(Factor2*atr(Pd2)) Dn3=hlc3+(Factor3*atr(Pd3)) // ST1.2 TrendUp1=na TrendUp2=na TrendUp3=na TrendUp1:=close[1]>TrendUp1[1]? max(Up1,TrendUp1[1]) : Up1 TrendUp2:=close[1]>TrendUp2[1]? max(Up2,TrendUp2[1]) : Up2 TrendUp3:=close[1]>TrendUp3[1]? max(Up3,TrendUp3[1]) : Up3 TrendDown1=na TrendDown2=na TrendDown3=na TrendDown1:=close[1]<TrendDown1[1]? min(Dn1,TrendDown1[1]) : Dn1 TrendDown2:=close[1]<TrendDown2[1]? min(Dn2,TrendDown2[1]) : Dn2 TrendDown3:=close[1]<TrendDown3[1]? min(Dn3,TrendDown3[1]) : Dn3 Trend1 = na Tsl1 = na Trend2 = na Tsl2 = na Trend3 = na Tsl3 = na Trend1 := close[1] > TrendDown1[1] ? 1: close[1] < TrendUp1[1]? -1: nz(Trend1[1],1) Tsl1 := Trend1==1 ? TrendUp1: TrendDown1 Trend2 := close[1] > TrendDown2[1] ? 1: close[1] < TrendUp2[1]? -1: nz(Trend2[1],1) Tsl2 := Trend2==1 ? TrendUp2: TrendDown2 Trend3 := close[1] > TrendDown3[1] ? 1: close[1] < TrendUp3[1]? -1: nz(Trend3[1],1) Tsl3 := Trend3==1 ? TrendUp3: TrendDown3 len=input(14) x=rsi(Tsl2,len) // Plotting linecolor = Tsl1 < Tsl2 and Tsl2 < Tsl3 ? red : Tsl1 > Tsl2 and Tsl2 > Tsl3 ? lime : orange plot(x , color = linecolor , style = line , linewidth = 3 ,title = "SuperTrend") tgreen=crossover(close, Tsl2) tred=crossunder(close, Tsl2) plotchar(tgreen, title="buy", char='b', location=location.bottom, color=black, transp=0, offset=0,size=size.tiny) plotchar(tred, title="sell", char='s', location=location.top, color=black, transp=0, offset=0,size=size.tiny)