예스스탁
예스스탁 답변
2020-04-21 16:34:58
안녕하세요
예스스탁입니다.
이전 66636번에 문의하신 내용과 같은 내용입니다.
진입식에 NextBarSdate == sdate 조건 추가하시면 됩니다.
input : P1(1), Mult(0.45);
var : sumV(0), DailyVol(0), count(0), ChUp(0), ChDn(0);
sumV = 0;
for count = 1 to P1 {
sumV = sumV+(DayHigh(count)-DayLow(count));
}
DailyVol = sumV / P1;
ChUp = dayOpen + DailyVol*Mult;
ChDn = dayOpen - DailyVol*Mult;
# 진입식
if MarketPosition == 0 and NextBarSdate == sdate then Buy("매수",AtStop, ChUp);
if MarketPosition == 0 and NextBarSdate == sdate then Sell("매도",AtStop, ChDn);
# 청산식
If MarketPosition == 1 Then
exitlong("EL", atstop, Highest(H,BarsSinceEntry+1)-DailyVol*Mult);
If MarketPosition == -1 Then
exitshort("ES", atstop, Lowest(L,BarsSinceEntry+1)+DailyVol*Mult);
SetStopEndofday(150000);
즐거운 하루되세요
> 시고르시고르 님이 쓴 글입니다.
> 제목 : 왜 안되는지 봐주시면 감사하겠습니다.
> input : P1(1), Mult(0.45);
var : sumV(0), DailyVol(0), count(0), ChUp(0), ChDn(0);
sumV = 0;
for count = 1 to P1 {
sumV = sumV+(DayHigh(count)-DayLow(count));
}
DailyVol = sumV / P1;
ChUp = dayOpen + DailyVol*Mult;
ChDn = dayOpen - DailyVol*Mult;
# 진입식
if MarketPosition == 0 then Buy("매수",AtStop, ChUp);
if MarketPosition == 0 then Sell("매도",AtStop, ChDn);
# 청산식
If MarketPosition == 1 Then
exitlong("EL", atstop, Highest(H,BarsSinceEntry+1)-DailyVol*Mult);
If MarketPosition == -1 Then
exitshort("ES", atstop, Lowest(L,BarsSinceEntry+1)+DailyVol*Mult);
SetStopEndofday(150000);
---------------------------------------------------------------------------
2020년 4월 17일을 보면 그냥 시가에 바로 진입합니다. 전략상 시가 위아래로 채널을 돌파할때 진입해야 하는데 말이죠 이것도 뭐가 문제인지 모르겠네요
10분봉에서 돌려보았습니다. 항상감사드립니다.