diff:=stkindi('','macd.diff',0,6);
dea:=stkindi('','macd.dea',0,6);
macd:=stkindi('','macd.macd1',0,6);
if CROSS(diff,dea) and tbuyholding(1)=0 and TTOTALDAYTRADE<1 then BEGIN
tbuy(1,10000/close,mkt);
用上面的公式进行股票回测时(公式周期是日线,分析周期也是日线),测试结果与K线对比,发现结果与K线不吻合,部分没有金叉。把6改成datatype,查了一下结果与K线都能吻合,是什么原因?难道不能引用?
diff:=stkindi('','macd.diff',0,DATATYPE);
dea:=stkindi('','macd.dea',0,DATATYPE);
macd:=stkindi('','macd.macd1',0,DATATYPE);
if CROSS(diff,dea) and tbuyholding(1)=0 and TTOTALDAYTRADE<1 then BEGIN
tbuy(1,10000/close,mkt);
用4.1版本继续测试,分别使用以下方式取diff,dea的值,存在以下问题:
1、我测试周期是2015.6.1至2015.10.27,K线图上时段也调成了2015.6.1至2015.10.27,但测试结果中有2015年4月份的股票。
2、测试结果与K线不吻合,出结果的没有金叉。
3、通过一段时间的测试有时候是正确的,有时候不正确,怎么办?
diff:=stkindi('','macd.diff',0,6);
dea:=stkindi('','macd.dea',0,6);
macd:=stkindi('','macd.macd1',0,6);
diff:=stkindi('','macd.diff',0,DATATYPE);
dea:=stkindi('','macd.dea',0,DATATYPE);
macd:=stkindi('','macd.macd1',0,DATATYPE);
DIFF : EMA(CLOSE,12) - EMA(CLOSE,26);
DEA : EMA(DIFF,9);
MACD1 : 2*(DIFF-DEA);
并不是我一定要与K线图一致,就怕实盘的时候出错,出现没有信号下单,有信号反而不下单的情况。macd用在实盘中会出现这种情况吗?