커뮤니티

버그인가요 , 혹은 이유가 있는 것일까요?

프로필 이미지
루씰
2009-08-06 14:32:07
727
글번호 24012
답변완료

첨부 이미지

5분봉만 차팅한 상태에서의 화면입니다.
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2009-08-07 18:15:58

내용 확인결과 주석처리 여부에 따라서 Currentbar가 달라지기 때문에 발생하는 현상으로 확인되었습니다. RSI사용자함수는 currentbar를 사용해서 작성되는데, Currentbar는 사용된 식 중에서 가장 긴 구간의 값을 기준으로 셋팅됩니다. var1과 같이 하나만 사용할 경우에는 처음 currentbar값을 0으로 주고 순차 증가시키기 때문에 이전값 참조를 하면서 처음 계산값이 0이 나오면 그 이후 계산에도 영향을 받아 계속 0이 나오는 경우가 생기게 됩니다. 여기서 var2와 같이 고정된 기간값, 예를들어 RSI(30)으로 주게 되면 currentbar는 큰 값을 기준으로 잡히므로 30개 봉이 경과해야 연산을 시작하게되어 정상적으로 연산을 수행하게 됩니다. 이것을 주석으로 막게 되면 currentbar가 변경(연산이 앞으로 당겨지면서)되면서 정상적인 계산을 수행하지 못하는 경우가 생기게 됩니다. var1 = rsi(45/BarInterval); var2 = RSI(45/5); MessageLog("%.2f, %.2f, %.f", var1, var2, Currentbar); 이렇게 작성하고 주석으로 var2를 막은것과 막지 않은 것과 currentbar의 확인해 보시면 차이를 확인할 수 있을 것입니다. 즐거운 주말 되세요. > 루씰 님이 쓴 글입니다. > 제목 : 버그인가요 , 혹은 이유가 있는 것일까요? > 5분봉만 차팅한 상태에서의 화면입니다.