커뮤니티

수식 좀 요청 드립니다.

프로필 이미지
요타
2021-09-24 14:47:15
867
글번호 152439
답변완료
* 항상 많은 도움에 고맙습니다. * 요청 사항 - 100틱 차트에서 스톡캐스터 crossup(StoK , 80) 이면 매수 - 300틱 차트에서 스톡케스터 crossdown(StoK , 50) 이면 청산 매매로직좀 부탁 드립니다. ## 아래 수식 Input : Period(10), Period1(3), Period2(3); var1 = StochasticsK(Period,Period1); var2 = StochasticsD(Period,Period1,Period2); if var1 > var1[1] then plot1(var1,"K",red); else plot1(var1,"K",blue); if var2 > var2[1] then plot2(var2,"D",red); else plot2(var2,"D",blue); PlotBaseLine1(20, "기준선1",black); PlotBaseLine2(80, "기준선2",black); * 좋은 주말 되십시요.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2021-09-24 15:12:39

안녕하세요 예스스탁입니다. 스토케스틱이 과거봉수에 따라 현재값에 영향이 있습니다. 100틱차트에서 300틱의 스토케스틱을 계산하면 봉수문제로 실제 300틱에서 보시는 값과 다를수 있습니다. 차트는 최대한 1만개봉 조회하고 적용하시기 바랍니다. input : Sto1(10),Sto2(5),Sto3(5); input : N(3);//기본차트 N배 var : stok(0),D1(0),idx(0),TF(0); var : cnt(0), Hv(0), LV(0), FK(0), SK(0), SD(0); var : Ep1(0), EP2(0), JISU(0), DINDEX(0), PreSK(0), PreSD(0); Array : HH[50](0),LL[50](0); stok = StochasticsK(sto1,sto2); if CrossUp(stok,80) Then Buy(); Ep1 = 2/(sto2+1); Ep2 = 2/(sto3+1); if Bdate != Bdate[1] Then { D1 = sdate; idx = 0; } Else idx = idx +1; if D1 > 0 then { TF = idx%N; if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF < TF[1]) Then { HH[0] = H; LL[0] = L; for cnt = 1 to 49{ HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; } } if H > HH[0] Then HH[0] = H; if L < LL[0] Then LL[0] = L; if HH[sto1-1] > 0 and LL[sto1-1] > 0 then { if bdate != bdate[1] or (Bdate == Bdate[1] and TF < TF[1]) Then { DINDEX = DINDEX+1; PreSK = SK[1]; PreSD = SD[1]; } Hv = HH[0]; LV = LL[0]; for cnt = 0 to sto1-1 { if HH[cnt] > Hv then Hv = HH[cnt]; if LL[cnt] < LV then LV = LL[cnt]; } FK = (C-LV)/(HV-LV)*100; if DINDEX <= 1 then { SK = FK; SD = SK; } else { SK = FK * EP1 + PreSK * (1-EP1); SD = SK * EP2 + PreSD * (1-EP2); } if sk < 50 and preSK > 50 Then ExitLong(); } } 즐거운 하루되세요 > 요타 님이 쓴 글입니다. > 제목 : 수식 좀 요청 드립니다. > * 항상 많은 도움에 고맙습니다. * 요청 사항 - 100틱 차트에서 스톡캐스터 crossup(StoK , 80) 이면 매수 - 300틱 차트에서 스톡케스터 crossdown(StoK , 50) 이면 청산 매매로직좀 부탁 드립니다. ## 아래 수식 Input : Period(10), Period1(3), Period2(3); var1 = StochasticsK(Period,Period1); var2 = StochasticsD(Period,Period1,Period2); if var1 > var1[1] then plot1(var1,"K",red); else plot1(var1,"K",blue); if var2 > var2[1] then plot2(var2,"D",red); else plot2(var2,"D",blue); PlotBaseLine1(20, "기준선1",black); PlotBaseLine2(80, "기준선2",black); * 좋은 주말 되십시요.