TA-lib是一个技术分析库,里面包含了大部分主流的技术指标,让使用者不用再重复造轮子。
这个库在国外很常用,各种大型的开源量化框架,都会内置这个库。
# 计算速度快
TA-lib的一个特点是计算速度快,因为原始版本是用C语言写的,然后通过Cython转化,使得Python也能调用。
我们使用TA-lib和pandas分别来计算移动平均线,看看效率的差别。
首先通过numpy创建一个长度为1亿的数组:
然后通过TA-lib计算这个数组的移动平均线,一行代码搞定:
使用2016款macbook pro运行程序,发现耗时是1.30秒。
接着使用pandas计算移动平均线:
发现耗时是4.81秒。相比于TA-lib,显然慢了不少。
示例的代码和数据,可以加我微信xbx_laoshi获取。
# K线形态识别
TA-lib不仅可以计算常见的技术指标,另外一个特色就是可以识别K线形态。
例如上图中的第一个函数CDL2CROWS,中文名为两只乌鸦。
调用该函数,就可以识别出符合两只乌鸦形态的K线,具体调用方法如下。
首先展示DataFrame中K线的开、高、收、低数据:
然后准备好函数的输入数据:
最后调用CDL2CROWS两只乌鸦函数,查看输出结果:
当某天的K线满足两只乌鸦形态时,会输出-100,不满足时会输出0。
我们通过Python将K线图画出,图中最后3根K线就是两只乌鸦形态。
示例的代码和数据,可以加我微信xbx_laoshi获取。
# 两只乌鸦有效吗?
我们通过TA-lib可以找出两只乌鸦形态,那么这个K线形态有效吗?
出现这个形态之后,股票会涨还是会跌?
详细内容可以见下方的视频,详细讲解如何通过TA-lib,从所有股票中找出某个形态的K线,并检验其有效性。TA-lib视频教程(超简易使用方法)_腾讯视频https://v.qq.com/x/cover/z05423zgjyu/z05423zgjyu.html
# 翻译项目
TA-lib在国外很常用,但是因为没有好的中文文档(其实连英文文档都没有),所以在国内用的人并不多。
并且部分技术指标的计算方式,和国内主流也有一些不同。
所以想到组织大家一起翻译,也为python的量化社区做一点贡献。目前已有20+人参与。
已经有出版社的编辑联系我,有意向将翻译内容出版成书。到时候所有参与翻译的小伙伴都会成为作者。想加入翻译的,可以加我微信xbx_laoshi咨询。