커뮤니티

추가 질문 드립니다.

프로필 이미지
크레용빠
2011-06-21 11:41:10
575
글번호 39984
답변완료
안녕하세요? 스토캐스틱 %K가 %D를 상향 돌파한 후 20일선이 60일선을 상향 돌파했을때 두가지 조건의 시간차가 10분 이내면 매수하라는 식을 아래와 같이 받았습니다. 그런데 간혹 챠트상으로는 명확하게 신호가 나와야 됨에도 불구하고(즉, 시간 조건을 두지 않고 단지 스토캐스틱이 크로스업 그런후 이평선 크로스업하면 매수하게끔 식을 짜면 매수신호가 나옴에도 불구하고), 시간 조건을 두면 시간 조건이 만족함에도 불구하고 간혹 신호가 나오지 않는 경우가 발생하는 것은 왜 인가요? 혹시 1분 이내면.. 즉, 두 조건 시간차가 예를 들어 38초 이럴경우 인지를 못하는건가요? 300틱 챠트에 적용해 보았기 때문에 혹 두 조건이 1분 이내에서 발생하면 그럴수도 있겠다는 생각이 불현듯 드네요..^^ 혹시 그렇다면 이를 보정할 방법은 없는지요? Input : Period(12), Period1(5), Period2(5),p1(20), p2(60); value1 = StochasticsK(Period,Period1); value2 = StochasticsD(Period,Period1,Period2); if crossup(value1, value2) Then{ var1 = TimeToMinutes(stime); var3 = sdate; } if crossup(ma(c,p1), ma(c,p2))) Then{ var2 = TimeToMinutes(stime); var4 = sdate; if var3 == var4 and ABS(var1-var2) <= 10 and var1 < var2 Then buy(); }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2011-06-21 18:10:01

안녕하세요 예스스탁입니다. 예 맞습니다. 분단위로 시간을 감시해서 크면 신호가 발생하게 작성이 되어 있습니다. 초단위까지 파악하시고자 하시면 아래와 같이 변경하시면 됩니다. Input : Period(12), Period1(5), Period2(5),p1(20), p2(60); value1 = StochasticsK(Period,Period1); value2 = StochasticsD(Period,Period1,Period2); if crossup(value1, value2) Then{ var1 = stime; var3 = sdate; } if crossup(ma(c,p1), ma(c,p2)) Then{ var2 = stime; var4 = sdate; if var3 == var4 and ABS(var1-var2) <= 10 and var1 < var2 Then buy(); } 즐거운 하루되세요 > qone 님이 쓴 글입니다. > 제목 : 추가 질문 드립니다. > 안녕하세요? 스토캐스틱 %K가 %D를 상향 돌파한 후 20일선이 60일선을 상향 돌파했을때 두가지 조건의 시간차가 10분 이내면 매수하라는 식을 아래와 같이 받았습니다. 그런데 간혹 챠트상으로는 명확하게 신호가 나와야 됨에도 불구하고(즉, 시간 조건을 두지 않고 단지 스토캐스틱이 크로스업 그런후 이평선 크로스업하면 매수하게끔 식을 짜면 매수신호가 나옴에도 불구하고), 시간 조건을 두면 시간 조건이 만족함에도 불구하고 간혹 신호가 나오지 않는 경우가 발생하는 것은 왜 인가요? 혹시 1분 이내면.. 즉, 두 조건 시간차가 예를 들어 38초 이럴경우 인지를 못하는건가요? 300틱 챠트에 적용해 보았기 때문에 혹 두 조건이 1분 이내에서 발생하면 그럴수도 있겠다는 생각이 불현듯 드네요..^^ 혹시 그렇다면 이를 보정할 방법은 없는지요? Input : Period(12), Period1(5), Period2(5),p1(20), p2(60); value1 = StochasticsK(Period,Period1); value2 = StochasticsD(Period,Period1,Period2); if crossup(value1, value2) Then{ var1 = TimeToMinutes(stime); var3 = sdate; } if crossup(ma(c,p1), ma(c,p2))) Then{ var2 = TimeToMinutes(stime); var4 = sdate; if var3 == var4 and ABS(var1-var2) <= 10 and var1 < var2 Then buy(); }