Search
📝

분봉에서 일봉 스토캐스틱

input : Period1(10), Period2(5), Period3(5); var : cnt(0), highVal(0), lowVal(0), FK(0), SK(0), SD(0); var : Ep1(0), Ep2(0), PreSK(0), PreSD(0); //Period1 기간 일간 최고가 및 최저가 highVal = 0; lowVal = 0; for cnt = 0 to Period1-1 { //0일~9일(Period-1)전 일간고가 중 최고가 계산 if highVal == 0 or (highVal > 0 and dayHigh(cnt) > highVal) then highVal = dayhigh(cnt); //0일~9일(Period-1)전 일간저가 중 최저가 계산 if lowVal == 0 or (lowVal > 0 and dayLow(cnt) < lowVal) then lowVal = dayLow(cnt); } //FastK = (종가-최저가)/(최고가-최저가)*100 fK = (C-lowVal)/(highVal-lowVal)*100; #Period2 지수이동평균 평활상수 Ep1 = 2/(Period2+1); #Period2 지수이동평균 평활상수 Ep2 = 2/(Period3+1); if bdate != bdate[1] then { #Slow StochasticsK의 전일값 PreSK = SK[1]; #Slow StochasticsD의 전일값 PreSD = SD[1]; } //Slow StochasticsK //현재봉 FastK에는 EP1 가중치를 전일 SlowK값에는 (1-EP1)가중치를 주어 합산 SK = FK * EP1 + PreSK * (1-EP1); //Slow StochasticsD //현재봉 SlowK에는 EP1 가중치를 전일값 SlowD에는 (1-EP1)가중치를 주어 합산 SD = SK * EP2 + PreSD * (1-EP2); plot1(SK,"일봉 SlowK"); plot2(SD,"일봉 SlowD"); PlotBaseLine1(20); PlotBaseLine2(80);
JavaScript
복사
[스토캐스틱 공식]
FastK = (현재종가-n일기간 최저가) / (n일기간 최고가 - n일기간 최저가)*100 %K = 기본적K의 n지수이동평균 %D = Slow%K의 n지수이동평균