커뮤니티

개인함수를 검토 부탁합니다.

프로필 이미지
이조만
2014-01-15 00:00:00
180
글번호 71488
답변완료
안녕하세요. 분봉내에서 일봉 스토캐스틱을 만들어서 사용하려고 하다보니 제 값이 나오지 않은 것 같아서 확인좀 부탁드립니다. 테스트한 파일은 첨부파일입니다. 그럼 수고하십시요.
사용자 함수
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2014-01-17 14:43:56

안녕하세요 예스스탁입니다. 식 내용이 잘못 작성되어 있습니다. 아래와 같이 변경하셔야 합니다. 스토케스틱은 FastK,SlowK,SlowD 3가지 입니다. FastD와 SlowK는 같은 함수이므로 불필요합니다. 아래 3개 만들어 사용하시면 됩니다. 1.FastDayK Input : Period(NumericSimple); Var : Value_Lowest(0), Value_Highest(0),cnt(0); Value_Lowest = DayLow; Value_Highest = daylow; for cnt = 0 to Period-1{ if DayLow(cnt) < Value_Lowest Then Value_Lowest = DayLow(cnt); if DayHigh(cnt) > Value_Highest Then Value_Highest = DayHigh(cnt); } FastDayK = (c - Value_Lowest) / (Value_Highest - Value_Lowest) * 100; 2. SlowDayK input : Period(Numeric), Period1(Numeric); var : cnt(0), highVal(0), lowVal(0), FK(0); var : Ep1(0), PreSK(0),SK(0); highVal = dayhigh(0); lowVal = daylow(0); for cnt = 0 to Period-1 { if dayHigh(cnt) > highVal then highVal = dayhigh(cnt); if dayLow(cnt) < lowVal then lowVal = dayLow(cnt); } fK = (C-lowVal)/(highVal-lowVal)*100; #Slow StochasticsK Ep1 = 2/(Period1+1); if date != date[1] then { PreSK = SK[1]; } SK = FK * EP1 + PreSK * (1-EP1); SlowDayK = SK; 3. SlowDayD input : Period(Numeric), Period1(Numeric), Period2(Numeric); var : cnt(0), highVal(0), lowVal(0), FK(0); var : Ep1(0), SK(0), PreSK(0); var : Ep2(0), SD(0), PreSD(0); #N일간 최고가 및 최저가 highVal = dayhigh(0); lowVal = daylow(0); for cnt = 0 to Period-1 { if dayHigh(cnt) > highVal then highVal = dayhigh(cnt); if dayLow(cnt) < lowVal then lowVal = dayLow(cnt); } #Fast StochasticsK fK = (C-lowVal)/(highVal-lowVal)*100; #Slow StochasticsK / Slow StochasticsD Ep1 = 2/(Period1+1); Ep2 = 2/(Period2+1); if date != date[1] then { PreSK = SK[1]; PreSD = SD[1]; } SK = FK * EP1 + PreSK * (1-EP1); SD = SK * EP2 + PreSD * (1-EP2); SlowDayD = SD; 즐거운 하루되세요 > 이조만 님이 쓴 글입니다. > 제목 : 개인함수를 검토 부탁합니다. > 안녕하세요. 분봉내에서 일봉 스토캐스틱을 만들어서 사용하려고 하다보니 제 값이 나오지 않은 것 같아서 확인좀 부탁드립니다. 테스트한 파일은 첨부파일입니다. 그럼 수고하십시요.