是的,如果是日线,则不需要做那个判断。
[PEL] 复制代码 INPUT:NMIN(10,1,100,1);
VARIABLE:ct2:=0;
ma1:=MA(c,40);
ma2:=MA(C,50);
ma3:=MA(c,60);
HD1:=HOLDING;
//交易条件
开多条件:=CROSS(ma1,ma2)and holding=0;
开空条件:=CROSS(ma2,ma1)and holding=0;
收盘平仓:=TIME>=CLOSETIME(0)-NMIN*100;//收盘平仓
平多条件:=(CROSS(ma3,ma1) OR 收盘平仓)and holding=1;
平空条件:=(CROSS(ma1,ma3) OR 收盘平仓)and holding=-1;
开多:BUY(开多条件 ,1,MARKET);
平多:SELL(平多条件,1,MARKET);
HD2:=HOLDING;
V1:HD1=0 AND HD2=0;
//如果是日线 则不需要判断 TIME=CLOSETIME(0)
IF TIME=CLOSETIME(0) AND ALL(V1,TODAYBAR) then ct2:=ct2+1;
if time=CLOSETIME(0) and any(not(v1),TODAYBAR) then ct2:=0;
最大空仓时间:hhv(ct2,0);
我刚才测试了几个周期的回测 看上去没啥问题,你本地再试试看。
|