-- 作者:zwdqx
-- 发布时间:2017/3/5 19:40:25
-- 请老师分析一下是什么原因?
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);
|
-- 作者:zwdqx
-- 发布时间:2017/3/6 7:29:31
--
用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);
此主题相关图片如下:捕获5.png

此主题相关图片如下:捕获6.png

|