用以下策略代码做30分钟周期回测测试,测试当满足日周期条件开平仓时会开平出现开平仓时间点并非第2日的开盘时间,
麻烦大佬们解释一下是什么原因,如何避免?
#IMPORT[day,1,MA均线上穿条件] AS VAR2
COND1:=VAR2.COND;
#IMPORT[day,1,MA均线下破条件] AS VAR1
COND2:=VAR1.COND;
//该公式仅仅复制KD上穿点条件内容添加跨周期指标开平仓测试
RSV:= (CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:SMA(RSV,M1,1);
D:SMA(K,M2,1);
COND:=CROSS(K,D) && D<N1;
DRAWICON(COND,K,'ICO10');//标识出K上穿D,且D值小于20的K线;N1为参数,默认值为20,可以在参数列表修改。
COND1,BK;
COND2,SP;
以下是30分钟回测结果,开平仓时间点均不在第二日开盘时间,与原本代码的逻辑相背离!

策略加载到30分钟K线,会在满足条件的30分钟K线的开盘发单,软件就是这样设计的