本程序使用传统的TuShare接口,并非需要捐赠的pro接口,获取数据无限制;
另,由于TuShare的增量更新接口有bug(最近一个交易日的数据获取不到),所以每次计算前都是删除所有数据,全部重新获取。
本程序实现了若干种选股策略,大家可以自行选择其中的一到多种策略组合使用,参见work_flow.py
各策略中的end_date
参数主要用于回测。
-
Mac OS X
$ brew install ta-lib
-
Windows
下载 ta-lib-0.4.0-msvc.zip,解压到
C:\ta-lib
-
Linux
$ untar and cd $ ./configure --prefix=/usr $ make $ sudo make install
pip install -r requirements.txt
$ python main.py
运行结果查看日志文件sequoia.log 也可参考notice.py模块,自行实现推送相关的功能
用户也可以将本程序作为定时任务运行在服务端,需要做以下工作:
- 注释掉main.py的L26-L27;
- 打开main.py中L13-L24的注释;
- 在notice.py模块中实现自己的推送功能,每天定时将选股结果推送到手机上。服务端推荐使用ejabberd,客户端Android推荐使用Conversations,iOS没有开发者证书的话推送不了,有证书推荐使用ChatSecure-iOS
,我采用的推送方案是
ejabberd
搭配Conversations
。 效果如图
修改work_flow.py#L61中end
为指定日期,格式为'YYYY-MM-DD'
,如:
end = '2019-06-17'