커뮤니티

스토캐스틱 지표를 추세선으로 표시하는 수식 2

프로필 이미지
다니엘87
2024-11-06 15:45:08
620
글번호 185026
답변완료
아래 수식은 일봉 스토캐스틱을 분봉에 표시하는 식을 기본으로 하여 스토캐스틱 선의 상승과 하락을 추세선으로 차트에 표시하는 수식입니다. 이전에 가르쳐 주셨던 것을 기반으로 나름대로 수정하여 만들어 봤지만... 제대로 나오지가 않네요. ㅠㅠ 한번 봐 주시고 수정을 부탁드립니다. 감사합니다. # ---<Stochastics(5,3,3) >-------------------------------------------------- Variables : Sto_Var1(0), Sto_Var2(0), Sto_Var3(0), Sto_Var4(0), Sto_Var5(0); Variables : PreSto_Var2(0),PreSto_Var3(0),PreSto_Var4(0),PreSto_Var5(0); Variables : D_Highest(0),D_Lowest(0),D_Index(0),cnt(0); Variables : PrepreSto_Var4(0); Inputs : Sto_Per1(5), Sto_Per2(3), Sto_Per3(3); # 변수 : 5,3,3 // 12,5,5 // 30,10,10 D_Highest = DayHigh; D_Lowest = DayLow; For cnt = 0 to Sto_Per1-1 Begin If DayHigh(cnt) > D_Highest Then D_Highest = DayHigh(cnt); if DayLow(cnt) < D_Lowest Then D_Lowest = DayLow(cnt); End; Sto_Var1 = (Close-D_Lowest)/(D_Highest-D_Lowest)*100; If Date != Date[1] Then Begin D_Index = D_Index + 1; PrepreSto_Var4 = PreSto_Var4; PreSto_Var2 = Sto_Var2[1]; PreSto_Var3 = Sto_Var3[1]; PreSto_Var4 = Sto_Var4[1]; PreSto_Var5 = Sto_Var5[1]; End; If D_Index <= 1 Then Begin Sto_Var2 = Sto_Var1; Sto_Var3 = Sto_Var2; End Else Begin Sto_Var2 = Sto_Var1*2/(Sto_Per2+1) + PreSto_Var2*(1-2/(Sto_Per2+1)); Sto_Var3 = Sto_Var2*2/(Sto_Per3+1) + PreSto_Var3*(1-2/(Sto_Per3+1)); End; Sto_Var4 = Sto_Var2*2-100; Sto_Var5 = Sto_Var3*2-100; # ---<Stochastics Line >-------------------------------------------------- Variables : TL_K(0); If PreSto_Var4 < Sto_Var4 Then Begin If PrepreSto_Var4 > PreSto_Var4 Then Begin TL_K = TL_New(sDate[1],sTime[1],Low[1],sDate,sTime,High); TL_SetColor(TL_K,RED); TL_SetStyle(TL_K,1); TL_SetSize (TL_K,1); End Else TL_SetEnd(TL_K,sDate,sTime,High); End; If PreSto_Var4 > Sto_Var4 Then Begin If PrepreSto_Var4 < PreSto_Var4 Then Begin TL_K = TL_New(sDate[1],sTime[1],High[1],sDate,sTime,Low); TL_SetColor(TL_K,Blue); TL_SetStyle(TL_K,1); TL_SetSize (TL_K,1); End Else TL_SetEnd(TL_K,sDate,sTime,Low); End;
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2024-11-07 14:45:20

안녕하세요 예스스탁입니다. # ---<Stochastics(5,3,3) >-------------------------------------------------- Inputs : Sto_Per1(5), Sto_Per2(3), Sto_Per3(3);# 변수 : 5,3,3 // 12,5,5 // 30,10,10 Variables : Sto_Var1(0), Sto_Var2(0), Sto_Var3(0), Sto_Var4(0), Sto_Var5(0); Variables : PreSto_Var2(0),PreSto_Var3(0),PreSto_Var4(0),PreSto_Var5(0); Variables : D_Highest(0),D_Lowest(0),D_Index(0),cnt(0); Variables : PrepreSto_Var4(0),EP1(0),EP2(0),T(0),PreT(0),D1(0),T1(0),C1(0); Ep1 = 2/(Sto_Per2+1); Ep2 = 2/(Sto_Per3+1); D_Highest = DayHigh; D_Lowest = DayLow; For cnt = 0 to Sto_Per1-1 { If DayHigh(cnt) > D_Highest Then D_Highest = DayHigh(cnt); if DayLow(cnt) < D_Lowest Then D_Lowest = DayLow(cnt); } Sto_Var1 = (Close-D_Lowest)/(D_Highest-D_Lowest)*100; If bdate != bDate[1] Then { D_Index = D_Index + 1; PrepreSto_Var4 = PreSto_Var4; PreSto_Var2 = Sto_Var2[1]; PreSto_Var3 = Sto_Var3[1]; PreSto_Var4 = Sto_Var4[1]; PreSto_Var5 = Sto_Var5[1]; PreT = T[1]; D1 = sDate[1]; T1 = sTime[1]; C1 = C[1]; } If D_Index <= 1 Then Begin Sto_Var2 = Sto_Var1; Sto_Var3 = Sto_Var2; End Else Begin Sto_Var2 = Sto_Var1 * EP1 + PreSto_Var2 * (1-EP1); Sto_Var3 = Sto_Var3 * EP1 + PreSto_Var3 * (1-EP1); End; Sto_Var4 = Sto_Var2*2-100; Sto_Var5 = Sto_Var3*2-100; Plot1(Sto_Var2); var : TL1(0),TL2(0); if NextBarSdate != sDate Then { if Sto_Var4 > PreSto_Var4 Then { if T != 1 Then { TL_SetEnd(TL1,d1,t1,c1); TL1 = TL_New(d1,t1,c1,sDate,sTime,C); TL_SetColor(TL1,Red); } Else { TL_SetEnd(TL1,sdate,sTime,C1); } T = 1; } if Sto_Var4 < PreSto_Var4 Then { if T != -1 Then { TL_SetEnd(TL1,d1,t1,c1); TL1 = TL_New(d1,t1,c1,sDate,sTime,C); TL_SetColor(TL1,Blue); } Else { TL_SetEnd(TL1,sdate,sTime,C); } T = -1; } } Else { TL_Delete(TL2); if Sto_Var4 > PreSto_Var4 Then { if T != 1 Then { TL2 = TL_New(d1,t1,c1,sDate,sTime,c); TL_SetColor(TL2,Red); } Else { TL_SetEnd(Tl1,sdate,sTime,C); } } if Sto_Var4 < PreSto_Var4 Then { if T != -1 Then { TL2 = TL_New(d1,t1,c1,sDate,sTime,c); TL_SetColor(TL2,Blue); } Else { TL_SetEnd(Tl1,sdate,sTime,C); } } } 즐거운 하루되세요 > 다니엘87 님이 쓴 글입니다. > 제목 : 스토캐스틱 지표를 추세선으로 표시하는 수식 2 > 아래 수식은 일봉 스토캐스틱을 분봉에 표시하는 식을 기본으로 하여 스토캐스틱 선의 상승과 하락을 추세선으로 차트에 표시하는 수식입니다. 이전에 가르쳐 주셨던 것을 기반으로 나름대로 수정하여 만들어 봤지만... 제대로 나오지가 않네요. ㅠㅠ 한번 봐 주시고 수정을 부탁드립니다. 감사합니다. # ---<Stochastics(5,3,3) >-------------------------------------------------- Variables : Sto_Var1(0), Sto_Var2(0), Sto_Var3(0), Sto_Var4(0), Sto_Var5(0); Variables : PreSto_Var2(0),PreSto_Var3(0),PreSto_Var4(0),PreSto_Var5(0); Variables : D_Highest(0),D_Lowest(0),D_Index(0),cnt(0); Variables : PrepreSto_Var4(0); Inputs : Sto_Per1(5), Sto_Per2(3), Sto_Per3(3); # 변수 : 5,3,3 // 12,5,5 // 30,10,10 D_Highest = DayHigh; D_Lowest = DayLow; For cnt = 0 to Sto_Per1-1 Begin If DayHigh(cnt) > D_Highest Then D_Highest = DayHigh(cnt); if DayLow(cnt) < D_Lowest Then D_Lowest = DayLow(cnt); End; Sto_Var1 = (Close-D_Lowest)/(D_Highest-D_Lowest)*100; If Date != Date[1] Then Begin D_Index = D_Index + 1; PrepreSto_Var4 = PreSto_Var4; PreSto_Var2 = Sto_Var2[1]; PreSto_Var3 = Sto_Var3[1]; PreSto_Var4 = Sto_Var4[1]; PreSto_Var5 = Sto_Var5[1]; End; If D_Index <= 1 Then Begin Sto_Var2 = Sto_Var1; Sto_Var3 = Sto_Var2; End Else Begin Sto_Var2 = Sto_Var1*2/(Sto_Per2+1) + PreSto_Var2*(1-2/(Sto_Per2+1)); Sto_Var3 = Sto_Var2*2/(Sto_Per3+1) + PreSto_Var3*(1-2/(Sto_Per3+1)); End; Sto_Var4 = Sto_Var2*2-100; Sto_Var5 = Sto_Var3*2-100; # ---<Stochastics Line >-------------------------------------------------- Variables : TL_K(0); If PreSto_Var4 < Sto_Var4 Then Begin If PrepreSto_Var4 > PreSto_Var4 Then Begin TL_K = TL_New(sDate[1],sTime[1],Low[1],sDate,sTime,High); TL_SetColor(TL_K,RED); TL_SetStyle(TL_K,1); TL_SetSize (TL_K,1); End Else TL_SetEnd(TL_K,sDate,sTime,High); End; If PreSto_Var4 > Sto_Var4 Then Begin If PrepreSto_Var4 < PreSto_Var4 Then Begin TL_K = TL_New(sDate[1],sTime[1],High[1],sDate,sTime,Low); TL_SetColor(TL_K,Blue); TL_SetStyle(TL_K,1); TL_SetSize (TL_K,1); End Else TL_SetEnd(TL_K,sDate,sTime,Low); End;