커뮤니티
CountIF 사용 문제...
2010-07-14 16:38:27
910
글번호 30926
다음 식은 일반적인 30MBO 전략에서
진입조건으로 하단 채널 LowVal을 돌파한 적이 있을 경우에만
상단 채널 HighVal 돌파시 매수 하는 식입니다.
실제 적용시 하단 채널 LowVal을 돌파한 적이 없는 경우에도 매수가 됩니다.
검토 부탁드립니다.
감사합니다...^^
Var: HighVal(0), LowVal(0);
SetStopEndofday(144500);
if DayIndex()==6 then
{
HighVal = highest(H, dayindex()+1);
LowVal = lowest(L, dayindex()+1);
}
if
DayIndex()>6
&& CountIF(CrossDown(C,LowVal), dayindex+1)>=1
&& Crossup(C, HighVal)
Then
buy("A");
답변 1
예스스탁 예스스탁 답변
2010-07-15 10:03:46
안녕하세용
예스스탁입니다.
Var: HighVal(0), LowVal(0);
if DayIndex()==6 then
{
HighVal = highest(H, dayindex()+1);
LowVal = lowest(L, dayindex()+1);
}
plot1(HighVal);
plot2(LowVal);
위 지표를 차트에 그려보시면
당일 6개봉전까지는 전일이 값이 그려지는 것을 확인하실 수 있습니다.
6개봉이전에 전일값을 크로스 다운하면
CountIF(CrossDown(C,LowVal), dayindex+1)>=1
가 만족되므로 당일값을 크로스다운하지 않아도 신호가 발생합니다.
아래와 같이 수식을 수정하셔야 합니다.
Var: HighVal(0), LowVal(0);
SetStopEndofday(144500);
if date != date[1] Then
Condition1 = false;
if DayIndex()==6 then
{
HighVal = highest(H, dayindex()+1);
LowVal = lowest(L, dayindex()+1);
}
if DayIndex()>6 Then{
if CrossDown(C,LowVal) Then
Condition1 = true;
if Condition1 == true and Crossup(C, HighVal) Then
buy("A");
}
즐거운 하루되세요
> 일목초인 님이 쓴 글입니다.
> 제목 : CountIF 사용 문제...
> 다음 식은 일반적인 30MBO 전략에서
진입조건으로 하단 채널 LowVal을 돌파한 적이 있을 경우에만
상단 채널 HighVal 돌파시 매수 하는 식입니다.
실제 적용시 하단 채널 LowVal을 돌파한 적이 없는 경우에도 매수가 됩니다.
검토 부탁드립니다.
감사합니다...^^
Var: HighVal(0), LowVal(0);
SetStopEndofday(144500);
if DayIndex()==6 then
{
HighVal = highest(H, dayindex()+1);
LowVal = lowest(L, dayindex()+1);
}
if
DayIndex()>6
&& CountIF(CrossDown(C,LowVal), dayindex+1)>=1
&& Crossup(C, HighVal)
Then
buy("A");
다음글
이전글