/quant

Primary LanguagePython

Sequoia选股系统

简介

本程序使用传统的TuShare接口,并非需要捐赠的pro接口,获取数据无限制;

另,由于TuShare的增量更新接口有bug(最近一个交易日的数据获取不到),所以每次计算前都是删除所有数据,全部重新获取。

本程序实现了若干种选股策略,大家可以自行选择其中的一到多种策略组合使用,参见work_flow.py

各策略中的end_date参数主要用于回测。

安装依赖:

根据不同的平台安装TA-Lib程序

推荐使用Python3.5以上以及pip3

Python 依赖:

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。 效果如图

statistics strategy

如何回测

修改work_flow.py#L61end为指定日期,格式为'YYYY-MM-DD',如:

end = '2019-06-17'