//中间变量
DIFF :=EMA(CLOSE,S) - EMA(CLOSE,P);
DEA :=EMA(DIFF,M);
MACD :=2*(DIFF-DEA);
手数:=ss;
//交易条件
开多平空条件:=CROSS(MACD,0);//开多平空条件
开空平多条件:=CROSS(0,MACD);//开空平多条件
//交易系统
平空:SELLSHORT(开多平空条件,手数,MARKET);
平多:SELL(开空平多条件,手数,MARKET);
开多:BUY(,1,MARKET);
开空:BUYSHORT(,1,MARKET);
当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;
以上策略中想要加入
当卖价>=某一价格 开多单 并且不开空单
当买价<=某一价格 开空单 并且不开多单
平仓时不建反向单
添加这样的条件应该如何添加,
DIFF :=EMA(CLOSE,S) - EMA(CLOSE,P);
DEA :=EMA(DIFF,M);
MACD :=2*(DIFF-DEA);
手数:=ss;
//交易条件
开多平空条件:=CROSS(MACD,0);//开多平空条件
开空平多条件:=CROSS(0,MACD);//开空平多条件
//交易系统
平空:SELLSHORT(开多平空条件,手数,MARKET);
平多:SELL(开空平多条件,手数,MARKET);
开多:BUY(close>=某一价格,1,MARKET);
开空:BUYSHORT(close<=某一价格,1,MARKET);
[此贴子已经被作者于2015/7/17 13:28:15编辑过]
测试中不停出现建仓信号,如何避免重复建仓呢?我只想做单次交易,平仓后再二次建仓,该怎么写进去呢?
平空:SELLSHORT(开多平空条件,手数,MARKET);
平多:SELL(开空平多条件,手数,MARKET);
开多:BUY(close>=某一价格 and holding=0,1,MARKET);
开空:BUYSHORT(close<=某一价格 and holding=0,1,MARKET);