金融IT
最近一直在使用talib库的相关函数研究数据,最近琢磨talib上的STOCH函数,网上说和通达信交易软件中的KDJ指标中的K值和D值是一样的,但是自己回测了几只股票后发现信号触发的点和通达信交易软件上的不一致。查查了度娘有人说是因为KDJ中使用的SMA和talib上的SMA算法不一样导致的。遂燃起了我的好奇心,又仔细查了查,有个网友的文章讲的很清楚了,顺道把MA,EMA,SMA,DMA的计算公式都讲了一遍,我就不再赘述了。我就想测测到底通达信上的这几个均线的计算结果和talib上的比较差不差,差多少。go go go
关于通达信这几个指标计算公式的解释
通达信中 MA, EMA, SMA, DMA 解释
准备工作:
一、通达信
1、下载好数据
2、主图用MA,参数随意
3、三个副图分别用EMA、SMA、DMA,这几个指标简称打出来的指标和我们想要的不一致,自己动手编辑公式然后起个自己理解的名字就行,如下图:
4、最后把数据导出一个xls文件,准备下一步工作
二、python
1、使用talib和pandas
2、导入通达信生成的xls文件,编写代码计算talib中对应公式的值(可惜talib中没有DMA,虽然DMA和SMA很接近)
3、把通达信4个指标的结果和talib使用收盘价计算的结果相比较,计算标准差。
源代码我就不贴了,对大家来说应该很简答,直接说结论吧。如图:
结论如下:
1、MA的计算结果是一样一样的;
2、EMA参数为13的计算结果是一样一样的,参数为55的虽然不是一样一样的但是标准差才0.03,可以说忽略不计了。
3、SMA就有些许的区别了,标准差0.398,极值也超过了1,大家自己心里掂量掂量。
所以在使用talib做回测或别的计算时,尽量对照一下第三方库或软件对比一下,心里有个数!
如果觉得《MA EMA SMA DMA通达信和talib计算比较》对你有帮助,请点赞、收藏,并留下你的观点哦!