[Mod]更新部分文档
This commit is contained in:
parent
9e1d73cff5
commit
df563ce235
183
README.md
183
README.md
@ -2,9 +2,78 @@
|
||||
|
||||
|
||||
---
|
||||
|
||||
### 简介
|
||||
|
||||
vn.py是一套基于Python的开源量化交易程序开发框架,起源于国内私募的自主量化交易系统。2015年初项目启动时只是单纯的交易API接口的Python封装。随着业内关注度的上升和社区不断的贡献,目前已经一步步成长为一套全面的交易程序开发框架,用户群体也日渐多样化,包括私募基金、券商自营和资管、期货资管和子公司、高校研究机构和专业个人投资者等。
|
||||
vn.py是基于Python的开源量化交易程序开发框架,起源于国内私募的自主量化交易系统。2015年初项目启动时只是单纯的交易API接口的Python封装。随着业内关注度的上升和社区不断的贡献,目前已经成长为一套全功能的交易程序开发框架,用户群体也日渐多样化,包括私募基金、券商自营和资管、期货资管和子公司、高校研究机构和专业个人投资者等。
|
||||
|
||||
---
|
||||
|
||||
### 项目结构
|
||||
|
||||
1. 丰富的Python交易和数据API接口(vnpy.api),基本覆盖了国内外所有常规交易品种(股票、期货、期权、外汇、外盘、比特币),具体包括:
|
||||
|
||||
- CTP(ctp)
|
||||
|
||||
- 飞马(femas)
|
||||
|
||||
- 中泰证券XTP(xtp)
|
||||
|
||||
- 中信证券期权(cshshlp)
|
||||
|
||||
- 金仕达黄金(ksgold)
|
||||
|
||||
- 金仕达期权(ksotp)
|
||||
|
||||
- 飞鼠(sgit)
|
||||
|
||||
- 飞创(xspeed)
|
||||
|
||||
- QDP(qdp)
|
||||
|
||||
- 上海直达期货(shzd)
|
||||
|
||||
- Interactive Brokers(ib)
|
||||
|
||||
- OANDA(oanda)
|
||||
|
||||
- OKCOIN(okcoin)
|
||||
|
||||
- 火币(huobi)
|
||||
|
||||
- 链行(lhang)
|
||||
|
||||
- 通联数据(datayes)
|
||||
|
||||
2. 简洁易用的事件驱动引擎(vnpy.event),作为事件驱动型交易程序的核心
|
||||
|
||||
3. 支持服务器端数据推送的RPC框架(vnpy.rpc),用于实现多进程分布式架构的交易系统
|
||||
|
||||
4. 开箱即用的实盘交易平台框架(vnpy.trader),整合了多种交易接口,并针对具体策略算法和功能开发提供了简洁易用的API,用于快速构建交易员所需的量化交易程序,应用举例:
|
||||
|
||||
* 同时登录多个交易接口,在一套界面上监控多种市场的行情和多种资产账户的资金、持仓、委托、成交情况
|
||||
|
||||
* 支持跨市场套利(CTP期货和LTS证券)、境内外套利(CTP期货和IB外盘)、多市场数据整合实时预测走势(CTP的股指期货数据、IB的外盘A50数据、Wind的行业指数数据)等策略应用
|
||||
|
||||
* CTA策略引擎模块,在保持易用性的同时,允许用户针对CTA类策略运行过程中委托的报撤行为进行细粒度控制(降低交易滑点、实现高频策略)
|
||||
|
||||
* 实盘行情记录,支持Tick和K线数据的落地,用于策略开发回测以及实盘运行初始化
|
||||
|
||||
5. 数据相关的API接口(vnpy.data),用于构建和更新历史行情数据库,目前包括:
|
||||
|
||||
* 上海中期历史行情服务(shcifco)
|
||||
|
||||
* 通联数据API下载服务(datayes)
|
||||
|
||||
* 天勤行情数据接口(tq)
|
||||
|
||||
6. 关于vn.py项目的应用演示(examples),对于新手而言可以从这里开始学习vn.py项目的使用方式
|
||||
|
||||
8. vn.py项目的Docker镜像(docker),目前尚未完成
|
||||
|
||||
9. [官网](http://vnpy.org)和[知乎专栏](http://zhuanlan.zhihu.com/vn-py),内容包括vn.py项目的开发教程和Python在量化交易领域的应用研究等内容
|
||||
|
||||
10. 官方交流QQ群262656087,管理较严格(定期清除长期潜水的成员)
|
||||
|
||||
---
|
||||
### 环境准备
|
||||
@ -55,9 +124,9 @@ sudo /home/vnpy/anaconda2/bin/conda install -c quantopian ta-lib=0.4.9
|
||||
|
||||
1. 在[SimNow](http://simnow.com.cn/)注册CTP仿真账号,记下你的**账号、密码、经纪商编号**,然后下载快期查询你的**交易和行情服务器地址**
|
||||
|
||||
2. 找到你的Anaconda安装目录,打开Anaconda2\Lib\site-packages\vnpy-1.6.2b0-py2.7.egg\vnpy\trader\gateway\ctpGateway\CTP_connect.json,修改账号、密码、服务器等为上一步注册完成后你的信息(注意使用专门的编程编辑器,如Sublime Text等,防止json编码出错)
|
||||
2. 找到vn.py应用示例目录examples,打开examples\VnTrader\CTP_connect.json,修改账号、密码、服务器等为上一步注册完成后你的信息(注意使用专门的编程编辑器,如Sublime Text等,防止json编码出错)
|
||||
|
||||
3. 在任意目录将以下内容保存为run.py,并双击运行(若无法双击,则在当前目录按住Shift点鼠标右键,打开cmd输入python run.py运行):
|
||||
3. 找到VnTrader的启动入口run.py,并双击运行(若无法双击,则在当前目录按住Shift点鼠标右键,打开cmd输入python run.py运行),run.py内容如下:
|
||||
|
||||
```
|
||||
# encoding: UTF-8
|
||||
@ -78,12 +147,14 @@ from vnpy.trader.uiQt import createQApp
|
||||
from vnpy.trader.uiMainWindow import MainWindow
|
||||
|
||||
# 加载底层接口
|
||||
from vnpy.trader.gateway import (ctpGateway, oandaGateway, ibGateway,
|
||||
from vnpy.trader.gateway import (ctpGateway, oandaGateway, ibGateway,
|
||||
huobiGateway, okcoinGateway)
|
||||
|
||||
if system == 'Windows':
|
||||
from vnpy.trader.gateway import (femasGateway, xspeedGateway,
|
||||
sgitGateway, shzdGateway)
|
||||
from vnpy.trader.gateway import femasGateway, xspeedGateway
|
||||
|
||||
if system == 'Linux':
|
||||
from vnpy.trader.gateway import xtpGateway
|
||||
|
||||
# 加载上层应用
|
||||
from vnpy.trader.app import (riskManager, ctaStrategy, spreadTrading)
|
||||
@ -94,44 +165,46 @@ def main():
|
||||
"""主程序入口"""
|
||||
# 创建Qt应用对象
|
||||
qApp = createQApp()
|
||||
|
||||
|
||||
# 创建事件引擎
|
||||
ee = EventEngine()
|
||||
|
||||
|
||||
# 创建主引擎
|
||||
me = MainEngine(ee)
|
||||
|
||||
|
||||
# 添加交易接口
|
||||
me.addGateway(ctpGateway)
|
||||
me.addGateway(oandaGateway)
|
||||
me.addGateway(ibGateway)
|
||||
me.addGateway(huobiGateway)
|
||||
me.addGateway(okcoinGateway)
|
||||
|
||||
|
||||
if system == 'Windows':
|
||||
me.addGateway(femasGateway)
|
||||
me.addGateway(xspeedGateway)
|
||||
me.addGateway(sgitGateway)
|
||||
me.addGateway(shzdGateway)
|
||||
|
||||
|
||||
if system == 'Linux':
|
||||
me.addGateway(xtpGateway)
|
||||
|
||||
# 添加上层应用
|
||||
me.addApp(riskManager)
|
||||
me.addApp(ctaStrategy)
|
||||
me.addApp(spreadTrading)
|
||||
|
||||
|
||||
# 创建主窗口
|
||||
mw = MainWindow(me, ee)
|
||||
mw.showMaximized()
|
||||
|
||||
|
||||
# 在主线程中启动Qt事件循环
|
||||
sys.exit(qApp.exec_())
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
|
||||
```
|
||||
|
||||
以上run.py脚本位于examples\VnTrader目录下,更多使用方法方法请参考examples下的其他目录。
|
||||
更多使用方法方法请参考examples下的其他目录。
|
||||
|
||||
---
|
||||
|
||||
@ -154,75 +227,6 @@ if __name__ == '__main__':
|
||||
* [Visual Studio 2013](https://www.visualstudio.com/en-us/downloads/download-visual-studio-vs.aspx):这个就不多说了(作者编译API封装用的是2013版本)
|
||||
|
||||
|
||||
---
|
||||
|
||||
### 项目结构
|
||||
|
||||
1. 丰富的Python交易和数据API接口(vnpy.api),基本覆盖了国内外所有常规交易品种(股票、期货、期权、外汇、外盘、比特币),具体包括:
|
||||
|
||||
- CTP(ctp)
|
||||
|
||||
- 飞马(femas)
|
||||
|
||||
- LTS(lts)
|
||||
|
||||
- 中信证券期权(cshshlp)
|
||||
|
||||
- 金仕达黄金(ksgold)
|
||||
|
||||
- 金仕达期权(ksotp)
|
||||
|
||||
- 飞鼠(sgit)
|
||||
|
||||
- 飞创(xspeed)
|
||||
|
||||
- QDP(qdp)
|
||||
|
||||
- 上海直达期货(shzd)
|
||||
|
||||
- Interactive Brokers(ib)
|
||||
|
||||
- OANDA(oanda)
|
||||
|
||||
- OKCOIN(okcoin)
|
||||
|
||||
- 火币(huobi)
|
||||
|
||||
- 链行(lhang)
|
||||
|
||||
- 通联数据(datayes)
|
||||
|
||||
2. 简洁易用的事件驱动引擎(vnpy.event),作为事件驱动型交易程序的核心
|
||||
|
||||
3. 支持服务器端数据推送的RPC框架(vnpy.rpc),用于实现多进程分布式架构的交易系统
|
||||
|
||||
4. 开箱即用的实盘交易平台框架(vnpy.trader),整合了多种交易接口,并针对具体策略算法和功能开发提供了简洁易用的API,用于快速构建交易员所需的量化交易程序,应用举例:
|
||||
|
||||
* 同时登录多个交易接口,在一套界面上监控多种市场的行情和多种资产账户的资金、持仓、委托、成交情况
|
||||
|
||||
* 支持跨市场套利(CTP期货和LTS证券)、境内外套利(CTP期货和IB外盘)、多市场数据整合实时预测走势(CTP的股指期货数据、IB的外盘A50数据、Wind的行业指数数据)等策略应用
|
||||
|
||||
* CTA策略引擎模块,在保持易用性的同时,允许用户针对CTA类策略运行过程中委托的报撤行为进行细粒度控制(降低交易滑点、实现高频策略)
|
||||
|
||||
* 实盘行情记录,支持Tick和K线数据的落地,用于策略开发回测以及实盘运行初始化
|
||||
|
||||
5. 数据相关的API接口(vnpy.data),用于构建和更新历史行情数据库,目前包括:
|
||||
|
||||
* 上海中期历史行情服务(shcifco)
|
||||
|
||||
* 通联数据API下载服务(datayes)
|
||||
|
||||
5. 关于vn.py项目的应用演示(examples),对于新手而言可以从这里开始学习vn.py项目的使用方式
|
||||
|
||||
5. 关于项目在实盘交易中的一些使用指南(tutorial)
|
||||
|
||||
6. vn.py项目的Docker镜像(docker),目前尚未完成
|
||||
|
||||
7. [官网](http://vnpy.org)和[知乎专栏](http://zhuanlan.zhihu.com/vn-py),内容包括vn.py项目的开发教程和Python在量化交易领域的应用研究等内容
|
||||
|
||||
7. 官方交流QQ群262656087,管理较严格(定期清除长期潜水的成员)
|
||||
|
||||
|
||||
---
|
||||
### 贡献代码
|
||||
|
||||
@ -256,8 +260,13 @@ vn.py使用github托管其源代码,如果希望贡献代码请使用github的
|
||||
|
||||
|
||||
---
|
||||
### 联系作者
|
||||
作者知乎名:用python的交易员,想要联系作者可以通过知乎私信
|
||||
### 其他内容
|
||||
|
||||
* [获取帮助](https://github.com/vnpy/vnpy/blob/dev/docs/SUPPORT.md)
|
||||
* [社区行为准侧](https://github.com/vnpy/vnpy/blob/dev/docs/CODE_OF_CONDUCT.md)
|
||||
* [Issue模板](https://github.com/vnpy/vnpy/blob/dev/docs/ISSUE_TEMPLATE.md)
|
||||
* [PR模板](https://github.com/vnpy/vnpy/blob/dev/docs/PULL_REQUEST_TEMPLATE.md)
|
||||
|
||||
|
||||
---
|
||||
### License
|
||||
|
@ -1,18 +1,8 @@
|
||||
# 获取帮助
|
||||
|
||||
* 操作系统: 如Windows 7或者Ubuntu 16.04
|
||||
* Anaconda版本: 如Anaconda 4.0.0 Python 2.7 32位
|
||||
* vn.py版本: 如v1.7发行版或者dev branch 20170920(下载日期)
|
||||
在开发和使用vn.py项目的过程中遇到问题时,获取帮助的渠道包括:
|
||||
|
||||
## Issue类型
|
||||
三选一:Bug/Enhancement/Question
|
||||
|
||||
## 预期程序行为
|
||||
|
||||
|
||||
## 实际程序行为
|
||||
|
||||
|
||||
## 重现步骤
|
||||
|
||||
针对Bug类型Issue,请提供具体重现步骤以及报错截图
|
||||
* Github Issues:[Issues页面](https://github.com/vnpy/vnpy/issues)
|
||||
* 官方QQ群: 262656087
|
||||
* 项目论坛:[维恩的派](http://www.vnpie.com))
|
||||
* 项目邮箱: vn.py@foxmail.com
|
||||
|
Loading…
Reference in New Issue
Block a user