单独写出以解决时间平仓条件难以执行问题,语句如何处理:
COND4:=F4 AND F5 OR F6;//循环平多
COND6:=F1 AND F2 OR F3;//循环平空
SELL(COND4,1,MARKET),ORDERQUEUE;
SELLSHORT(COND6,1,MARKET),ORDERQUEUE;
BUY((COND1 OR COND3) AND HOLDING=0,1,MARKET),ORDERQUEUE;
BUYSHORT((COND2 OR COND5) AND HOLDING=0 ,1,MARKET),ORDERQUEUE;
是这样吗:
SELL(COND4,1,MARKET),ORDERQUEUE;
SELL(time>=145900,1,MARKET),ORDERQUEUE;
SELLSHORT(COND6,1,MARKET),ORDERQUEUE;
SELLSHORT(time>=145900,1,MARKET),ORDERQUEUE;
BUY((COND1 OR COND3) AND HOLDING=0,1,MARKET),ORDERQUEUE;
BUYSHORT((COND2 OR COND5) AND HOLDING=0 ,1,MARKET),ORDERQUEUE
请指教,谢谢!
你是想收盘前平仓呢?还是符合条件平仓
如果是符合条件就平仓,根本就不需要写个时间点
如果是收盘前平仓,那么不需要平仓条件,写个时间点超过就平掉
按照你的意思就改成这样:
if time >= 145900 then begin
sell(cond4 and holding>0,0,market);
sellshort(cond6 and holding<0,0,market);
end
但是这样的话,IF 条件没啥用,写不写都一样。而且还收盘前平仓还无法执行。
SELL(time>=145900,1,MARKET),ORDERQUEUE;
就按照这种格式来写 就是对的
有其他平仓想法 再多写几句sell就行了