2 Star 8 Fork 12

Dr.wang / DevilYuan

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

DevilYuan股票量化系统

简介

DevilYuan股票量化系统由python编写,支持python3.4及以上版本,有如下功能:

  • 可视化(基于PyQT的界面)
  • 多线程事件引擎
  • 四大功能
    • 股票数据
    • 选股
    • 策略回测(同时也支持向量回测)
    • 实盘交易
  • 历史数据均免费来自于网络
    • Wind免费个人接口(最近好像没法用了,推荐使用TuSharePro)
    • TuShare(TuSharePro)
    • 通达信
  • 全市场股票监控
  • 实盘微信提醒及交互
  • 一键挂机
  • 全自动交易
  • 模拟交易,支持9个模拟账号
  • 实盘和回测共用同一策略代码,支持tick和分钟级别
  • 实盘策略编写模板
  • 选股策略编写模板
  • 自动下载历史数据到MongoDB数据库
    • 股票代码表
    • 交易日数据
    • 个股,指数和ETF历史日线数据
    • 个股和ETF历史分笔数据
  • 集成基本的统计功能
  • 实盘单账户多策略

运行后的界面

image

运行前的准备

  • 支持的操作系统:Windows 7/8/10, Linux(不支持实盘)
  • 安装Anaconda,python3.4及以上版本 64位版本(32位应该也可以,但没测试过)
    • 最新版的Anaconda可能会不太稳定,同时DevilYuan也没有在最新的Anaconda上测试过,建议安装老版本的Anaconda,比如Anaconda3-5.x.x系列,或者Anaconda3-4.x.x系列
  • 安装MongoDB,并将MongoDB配置为系统服务
    • 如果你想下载更多的个股历史分笔数据,建议配备比较大的的硬盘。毛估估,现在一年的全市场个股分笔数据可能有80G左右。
    • MogonDB客户端
    • 注意: 在Windows下安装MongoDB时,会默认安装MongoDB Compass。 MongoDB Compass安装很慢,不需要安装
  • 实盘交易(Windows)
    • 银河证券,由于官网最新版可能做了防程序控制界面,请到这儿安装PC客户端
      • 银河证券的客户端需要做如下配置,不然会导致下单时价格出错以及客户端超时锁定
        • 系统设置 > 界面设置: 界面不操作超时时间设为 0
        • 系统设置 > 交易设置: 默认买入价格/买入数量/卖出价格/卖出数量 都设置为 空
        • 同时客户端不能最小化也不能处于精简模式
      • 登录界面设置
        • image
    • 同花顺,由于官网最新版可能做了防程序控制界面,请到这儿安装通用版同花顺
      • 同花顺的xiadan客户端需要做如下配置,不然会导致下单时价格出错以及客户端超时锁定
        • 系统设置 > 界面设置: 界面不操作超时时间设为 0
        • 系统设置 > 交易设置: 默认买入价格/买入数量/卖出价格/卖出数量 都设置为 空
        • 同时客户端不能最小化也不能处于精简模式
      • 运行同花顺交易接口之前,务必先手动启动同花顺下单程序并登录
  • 安装Wind个人免费Python接口 (Windows, 可选)
    • 若不安装Wind接口,股票代码表,交易日数据和历史日线数据将使用TuShare接口。TuShare这一块的数据更新速度比较慢。并且Wind的复权因子数据比较准确,建议安装Wind。但Wind的接口对数据流量有限制。最近好像Wind个人免费接口没法使用了,推荐使用TuSharePro。
    • 或者你可以使用TuSharePro,请到这儿注册自己的token。 DY系统里,有些策略或者功能需要TuSharePro 300积分。关于如何配置TuSharePro,请参考配置DevilYuan系统
  • Server酱注册一个SCKEY,这样实盘时的信号可以微信铃声通知 (可选)
  • 安装Vistual Studio社区版,并勾选Python插件 (可选)
    • 本项目是用VS2017开发的。你可以选择是用VS2017,或者用其他IDE
  • 需要安装的Python包
    • tushare
    • pytdx
      • 由于tushare可能包含老版本的pytdx,请先pip uninstall pytdx,然后再pip install pytdx
      • 如果执行上面的步骤后,仍然无法解决,请先手动删除<python安装目录>\Lib\site-packages下pytdx相关的所有目录夹(pytdx, pytdx*.dist-info, pytdx*.egg-info),然后再执行pip install pytdx
    • pymongo
    • qdarkstyle
    • pytesseract
    • pywinauto(Windows)
    • talib
      • Windows
        • 请到这儿安装对应的whl版本
      • Linux
          1. wget http://prdownloads.sourceforge.net/ta-lib/ta-lib-0.4.0-src.tar.gz
          2. tar -xzf ta-lib-0.4.0-src.tar.gz
          3. cd ta-lib/
          4. ./configure --prefix=/usr
          5. make
          6. sudo make install
          7. pip install TA-Lib
    • aiohttp
    • pyqrcode
    • mpl_finance
      • pip install https://github.com/matplotlib/mpl_finance/archive/master.zip
    • pypng
    • PyQt5
      • 如果你安装的是Anaconda5.3(Python3.7),并且出现以下错误
      from PyQt5 import QtCore, QtGui, QtWidgets
      ImportError: DLL load failed: The specified procedure could not be found.
      请执行pip install pyqt5
  • VS调试时报异常的包,不调试时不会报错,可选安装
    • datrie
    • crypto
    • gunicorn

安装Q&A

  • pip install
    • Q: pip install报如下错误
    pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
    • A: 请到Windows开始菜单里,找到对应的Anaconda Prompt。然后在Anaconda Prompt里,运行pip
  • Mac OS下出现MongoDB重连异常
    • Q: Mac OS下出现MongoDB重连异常(pymongo.errors.AutoReconnect)
    • A: 采用docker运行MongoDB

运行

因为程序需要读写文件,请到DevilYuan目录夹下以管理者权限运行python DyMainWindow.py 如果你运行报错,并且是Anaconda5.3(Python3.7)的运行环境,请到Anaconda Prompt里运行python DyMainWindow.py

运行后的步骤

  1. 配置DevilYuan系统
  2. 下载历史数据
  3. 写一个实盘策略(含向量回测)

文档

视频

感谢

项目的开发过程中借鉴了如下几个开源项目,向以下项目的作者表示衷心的感谢

交流

QQ群:293368752

捐赠

License

MIT

MIT License Copyright (c) 2018 moyuanz Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

DevilYuan可视化股票量化系统,支持选股,历史数据自动下载,策略回测及参数优化,实盘交易和常用的统计功能 展开 收起
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/longfeiw07/DevilYuan.git
git@gitee.com:longfeiw07/DevilYuan.git
longfeiw07
DevilYuan
DevilYuan
master

搜索帮助