想要在策略中加入立即开仓的函数,当条件满足时,立即开仓,不用等到k线走完再开仓,这个用函数如何体现出来呢?我在开仓条件里面加入了BK,BP,SKSP等函S,但是。回测一年之内的历史数据,全部都是开多的单子没有开空的单子,这是什么原因?
//定义变量 HIGH1:REF(HIGH,1); LOW1:REF(LOW,1); CLOSE1:REF(CLOSE,1); //NEWPRICE:NEWORDER; HIGHP:HIGH; LOW_P:LOW; //THOLDING:OPI; MA60:MA(CLOSE,60);
/**
CHECKSIG(SIG,MODE1,TIME1,MODE2,TIME2,INTERVAL);
SIG:位置为交易指令,交易指令包括BK\\SK\\BP\\SP\\BPK\\SPK。
MODE1: \'A\' >> 当INTERVAL为0时,出信号TIME1秒后确认信号下单
TIME1: 0
MODE2: \'C\' >>当INTERVAL为0时,下单TIME2秒后进行信号复核,TIME2=0为不复核
TIME2: 0
*/ HIGH1 - LOW1 <= 5 && HIGHP >= HIGH1 && HIGHP > MA60,BK; CHECKSIG(BK,\'A\',0,\'C\',0, 0);
LOW_P < LOW1,BP; CHECKSIG(BP,\'A\',0,\'C\',0, 0);
HIGH1 - LOW1 <= 5 && LOWP <= LOW1 && LOWP < MA60,SK; CHECKSIG(SK,\'A\',0,\'C\',0, 0);
HIGH_P > HIGH1,SP; CHECKSIG(SP,\'A\',0,\'C\',0, 0); //MULTSIG(1,0,1,0);
//返回距离收盘前的分钟数,例收盘时间为15:00,即14:55时清仓 ,MINUTE(5)表示5分钟。 CLOSEMINUTE1<=1 , CLOSEOUT;//收盘前1分钟,清仓
有开多的单子,也有开空的单子。我是用5分钟周期回测的。但是回测历史数据都是整点开仓,例如21:10:00或者10:55:00,它是以这个时间方式开仓的,我需要的是出现信号。立即开仓不复核,例如。当条件满足时,立即在10时:25分:08秒这个时间开仓。或者14时:22分 12秒开仓,还有一个问题,在夜盘收盘前1分钟和下午收盘前1分钟清掉所有仓位,您看看我写的这清仓条件对不对,麻烦老师了,谢谢
现在有开多的单子,也有开空的单子。我是用5分钟周期回测的。但是回测历史数据都是整点开仓,例如21:10:00或者10:55:00,它是以这个时间方式开仓的,我需要的是出现信号。立即开仓不复核,例如。当条件满足时,立即在10时:25分:08秒这个时间开仓。或者14时:22分 12秒开仓,还有一个问题,在夜盘收盘前1分钟和下午收盘前1分钟清掉所有仓位,您看看我写的这清仓条件对不对,麻烦老师了,谢谢
默认本来就是 立即开仓。
全部都是开多单子说明你只满足了开多的条件,没有满足开空的条件
您好,麻烦把代码贴出来,否则无法回答。