수고하십니다.
153400 포지션이 손해면 청산했다가 다음날 091000에 다시 진입시키려면
어떻게 될 수 있는지 방법이 안되네요
if MarketPosition== 1
AND sTime==153400
and c - EntryPrice < -0.1
then {ExitLong();NEXTMM=1;DELY=1;}
if MarketPosition== -1
AND sTime==153400
and c - EntryPrice > 0.1
then {ExitShort();NEXTMM=-1;DELY=-1;}
IF NEXTMM==1 AND sTime==090100 Then { Buy("RB");NEXTMM=0;}
IF NEXTMM==-1 AND sTime==090100 Then { Sell("RD");NEXTMM=0;}
답변 1
예스스탁
예스스탁 답변
2023-07-24 15:49:14
안녕하세요.
예스스탁입니다.
1분봉에서 153400 봉은 정규장 마지막봉으로
장종료가 되면 완성되서 신호가 발생해도 주문이 거부됩니다.
정규장에서 주문이 가능한 마지막 완성봉은 153300입니다.
153300으로 지정해 드립니다.
1
청산함수에 이름을 지정하고
해당 이름으로 다음날 진입하게 하시면 됩니다.
if MarketPosition== 1
AND sTime==153300
and c < EntryPrice-0.1
then
ExitLong("bx");
if MarketPosition== -1
AND sTime==153300
and c > EntryPrice+0.1
then ExitShort("sx");
//9시 1분봉
if sTime == 90100 Then
{
#무포지션이고 전일 마지막 청산이 bx이면 매수
if MarketPosition == 0 and IsExitName("bx",1) == true and sDate > ExitDate(1) Then
Buy();
#무포지션이고 전일 마지막 청산이 sx이면 매도
if MarketPosition == 0 and IsExitName("sx",1) == true and sDate > ExitDate(1) Then
sell();
}
2
9시01분이 첫봉을 의미하셨다면 첫봉이 stime은 90000입니다.
1분봉에서 stime이 90100은 두번째 봉이 됩니다.
첫봉이면 stime == 90000으로 변경하셔야 합니다.
즐거운 하루되세요
> 구름달 님이 쓴 글입니다.
> 제목 : 수식 부탁드립니다.
> 수고하십니다.
153400 포지션이 손해면 청산했다가 다음날 091000에 다시 진입시키려면
어떻게 될 수 있는지 방법이 안되네요
if MarketPosition== 1
AND sTime==153400
and c - EntryPrice < -0.1
then {ExitLong();NEXTMM=1;DELY=1;}
if MarketPosition== -1
AND sTime==153400
and c - EntryPrice > 0.1
then {ExitShort();NEXTMM=-1;DELY=-1;}
IF NEXTMM==1 AND sTime==090100 Then { Buy("RB");NEXTMM=0;}
IF NEXTMM==-1 AND sTime==090100 Then { Sell("RD");NEXTMM=0;}