以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  请老师分析一下是什么原因?  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=148638)

--  作者: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
按此在新窗口浏览图片

--  作者:jinzhe
--  发布时间:2017/3/6 9:23:37
--  
macd有他的特殊性,你要精确测试和k线图一致,用ma来测试
--  作者:zwdqx
--  发布时间:2017/3/6 21:48:18
--  

并不是我一定要与K线图一致,就怕实盘的时候出错,出现没有信号下单,有信号反而不下单的情况。macd用在实盘中会出现这种情况吗?


--  作者:jinzhe
--  发布时间:2017/3/7 8:54:08
--  
因为macd 是特殊的,是根据前一根数据产生的值,所以严格意义上来说不同的数据下产生不同的结果是没问题的
--  作者:zwdqx
--  发布时间:2017/3/7 10:59:09
--  
macd用在实盘中会出现这种情况吗?
--  作者:jinzhe
--  发布时间:2017/3/7 11:06:33
--  
macd在不同数据下的计算结果是不一样的,实盘里面也是不同数据结果不一样,但是不一样的数据在各自数据下又都是对的,这是根据macd里面ema函数算法所导致的
--  作者:zwdqx
--  发布时间:2017/3/7 11:13:26
--  
鉴于此种情况,是不是不建议macd用在实盘中。
--  作者:jinzhe
--  发布时间:2017/3/7 11:18:40
--  
当然不是了,就如上面所言,不同数据下的macd在各自数据下都是对的,