DayIndex함수를 Loop 안에서 사용하면 Loop가 돌때마다 증가하는 현상이 생기는데요...
예를 들면 (실제 결과도 똑같이 나옴)
for count=1 to 4 {
if date==20071012 and time>=090000 and time<=093000 then
messagelog("DayIndex %.0f, count %.0f", DayIndex(), count);
}
를 1분봉에서 돌리면 DayIndex가 0에서부터 Loop 돌때마다 증가하여 09시 01분에서
DayIndex가 4가 나옵니다.
해결책 부탁드립니다.
답변 1
예스스탁
예스스탁 답변
2007-11-02 15:56:46
안녕하세요? 예스스탁입니다.
dayindex함수는 사용자함수로 작성되어 있는데, 자기 값을 참조하여 1값씩 증가하도록 기존 식이 작성되어 있습니다. 따라서 for문에서 루프가 돌때마다 1씩 값이 증가 하게 됩니다.
for문 안에서 사용하시고자 한다면 사용자 함수를 수정해서 사용하셔야 될것 같습니다.
기존 dayindex사용자함수에서는
BarCountInDay = BarCountInDay + 1;
와 같이 작성되어 있는데,
BarCountInDay = BarCountInDay[1] + 1;
로 수정해서 사용하시면 될것 같습니다.
감사합니다.
> CJ_anhc0 님이 쓴 글입니다.
> 제목 : DayIndex() 함수에 오류가 있던지 아님 잘 못 사용하는 건지
> DayIndex함수를 Loop 안에서 사용하면 Loop가 돌때마다 증가하는 현상이 생기는데요...
예를 들면 (실제 결과도 똑같이 나옴)
for count=1 to 4 {
if date==20071012 and time>=090000 and time<=093000 then
messagelog("DayIndex %.0f, count %.0f", DayIndex(), count);
}
를 1분봉에서 돌리면 DayIndex가 0에서부터 Loop 돌때마다 증가하여 09시 01분에서
DayIndex가 4가 나옵니다.
해결책 부탁드립니다.