커뮤니티
질문있습니다
2012-02-03 12:13:51
388
글번호 47325
야간장 5분봉 기준 첫봉에서 신호가 나가게 하고 싶은데요,
if (stime >= 90000 or stime < 50000) and DayIndex==60 then buy("b1",Onclose);
간단하게 이렇게 만들어 봤습니다. 시간 부분은 (stime >= 180000 or stime < 50000)로 해도 동일하네요.
그런데 문제는 DayIndex==60 이렇게 해놨더니 18시에 신호가 나가는 것 이외에 23시에
신호가 발생한다는 점입니다. 한 5번에 한 번 꼴로 18시 대신 23시에 신호가 나오고 있는데,
1. 왜 이런 현상이 발생하는 걸까요?
2. 혹시 청산이 영향을 끼치는 것인가요?
3. 해결 방안은 어떻게 됩니까?
답변 1
예스스탁 예스스탁 답변
2012-02-03 15:23:43
안녕하세요? 예스스탁입니다.
dayindex의 사용자함수는 날짜가 변경되는 시점(밤12시)부터 새롭게 카운팅을 시작합니다. 토요일 새벽에 야간장이 끝나고 그 다음주 월요일의 야간장은 날이 변경되기 때문에 새롭게 그 시점부터 카운트 되기 때문에 이런 현상이 발생합니다.
plot1(dayindex); 를 지표로 출력해 보시면 확인하실 수 있습니다.
18시부터 새롭게 카운트를 하는 방법을 이용하면 될것 같습니다.
사용자함수를 올려드립니다.
[사용자함수]
var : BarCountInDay(0);
if BarIndex <= 0 then
{
BarCountInDay = 0;
}
else
{
if stime == 180000 then
{
BarCountInDay = 0;
}
else
{
BarCountInDay = BarCountInDay + 1;
}
}
idx = BarCountInDay;
> 하얀마음흑구 님이 쓴 글입니다.
> 제목 : 질문있습니다
> 야간장 5분봉 기준 첫봉에서 신호가 나가게 하고 싶은데요,
if (stime >= 90000 or stime < 50000) and DayIndex==60 then buy("b1",Onclose);
간단하게 이렇게 만들어 봤습니다. 시간 부분은 (stime >= 180000 or stime < 50000)로 해도 동일하네요.
그런데 문제는 DayIndex==60 이렇게 해놨더니 18시에 신호가 나가는 것 이외에 23시에
신호가 발생한다는 점입니다. 한 5번에 한 번 꼴로 18시 대신 23시에 신호가 나오고 있는데,
1. 왜 이런 현상이 발생하는 걸까요?
2. 혹시 청산이 영향을 끼치는 것인가요?
3. 해결 방안은 어떻게 됩니까?