[Mod]更新部分文档

This commit is contained in:
vn.py 2017-10-18 13:58:55 +08:00
parent 9e1d73cff5
commit df563ce235
2 changed files with 101 additions and 102 deletions

183
README.md
View File

@ -2,9 +2,78 @@
---
### 简介
vn.py是一套基于Python的开源量化交易程序开发框架起源于国内私募的自主量化交易系统。2015年初项目启动时只是单纯的交易API接口的Python封装。随着业内关注度的上升和社区不断的贡献目前已经一步步成长为一套全面的交易程序开发框架用户群体也日渐多样化包括私募基金、券商自营和资管、期货资管和子公司、高校研究机构和专业个人投资者等。
vn.py是基于Python的开源量化交易程序开发框架起源于国内私募的自主量化交易系统。2015年初项目启动时只是单纯的交易API接口的Python封装。随着业内关注度的上升和社区不断的贡献目前已经成长为一套全功能的交易程序开发框架用户群体也日渐多样化包括私募基金、券商自营和资管、期货资管和子公司、高校研究机构和专业个人投资者等。
---
### 项目结构
1. 丰富的Python交易和数据API接口vnpy.api基本覆盖了国内外所有常规交易品种股票、期货、期权、外汇、外盘、比特币具体包括
- CTPctp
- 飞马femas
- 中泰证券XTPxtp
- 中信证券期权cshshlp
- 金仕达黄金ksgold
- 金仕达期权ksotp
- 飞鼠sgit
- 飞创xspeed
- QDPqdp
- 上海直达期货shzd
- Interactive Brokersib
- OANDAoanda
- OKCOINokcoin
- 火币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基本覆盖了国内外所有常规交易品种股票、期货、期权、外汇、外盘、比特币具体包括
- CTPctp
- 飞马femas
- LTSlts
- 中信证券期权cshshlp
- 金仕达黄金ksgold
- 金仕达期权ksotp
- 飞鼠sgit
- 飞创xspeed
- QDPqdp
- 上海直达期货shzd
- Interactive Brokersib
- OANDAoanda
- OKCOINokcoin
- 火币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

View File

@ -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