vn.trader使用教程系列1-安装和配置

来源:互联网 发布:网络综合布线验收报告 编辑:程序博客网 时间:2024/04/20 13:21

原创文章,转载请注明出处:用Python的交易员

2016年已经快要过去一半,目前vn.py项目的交易平台vn.trader已经基本定型,在发布v1.0以前不再会有新的功能模块添加,接下来的时间将会主要集中精力在修复一些小bug方面,同时针对新用户推出这个《vn.trader使用教程系列》,帮助大家更快上手使用。

安装运行环境

和大多数商业软件的傻瓜式一路“下一步”的安装方法不同,vn.trader运行环境的安装需要用户自行操作的地方较多:Python运行时环境、各项插件、数据库等等。

这里介绍的是较为简洁方便、适合新手的Windows通用安装流程,精力旺盛的资深用户可以自行选择其他的安装方式,但是如果你最后失败了,回到这个流程一步步做下去保证可以运行起来:

  1. 准备一台Windows 7 64位系统的电脑

  2. 安装Anaconda:下载Python 2.7 32位版本,注意必须是32位

  3. 安装MongoDB:下载Windows 64-bit 2008 R2+版本

  4. 安装pymongo:在cmd中运行pip install pymongo

  5. 参考这里,将MongoDB注册为Windows服务并启动

  6. 安装Visual C++ Redistributable Packages for VS2013,中英文随意,为了未来使用方便把x86和x64的都给撞了

  7. 安装QDarkStyleSheet(非常漂亮的PyQt黑色主题):在cmd中运行pip install qdarkstyle

  8. 在vn.py项目的Github主页选择Download ZIP下载项目代码,并解压到C:\vnpy

  9. 打开C:\vnpy\vn.trader文件夹,准备进行下一步的交易接口配置

除了上述建议的环境外,目前已经有社区用户在以下环境中成功运行(通常需要重新编译API和修改部分代码):

  • Anaconda 64位版本

  • Windows 8/10

  • VS2015

  • Ubuntu/Debian

  • Mac(只能使用IB和Oanda接口)

未来vn.py项目组官方会加入对Ubuntu 16.04环境的支持,其他环境用户就只有自行折腾了,这里强烈建议想专心做交易的朋友不要轻易入坑。

交易接口配置(账号、密码、服务器地址)

完成运行环境的安装后,我们需要配置交易接口,每个接口的功能如下:


接口名称相关品种功能ctpGatewayCTP期货、期货期权、证券期权行情、交易ltsGatewayLTS证券、证券期权行情、交易xspeedGateway飞创期货、期货期权行情、交易femasGateway飞马中金所期货和期货期权行情、交易ksotpGateway金仕达期权期货、期货期权、证券期权行情、交易ksgoldGateway金仕达黄金金交所贵金属行情、交易sgitGateway飞鼠期货、金交所贵金属行情、交易oandaGatewayOANDA外汇、CFD行情、交易ibGateway盈透证券外盘证券、期货、期权、外汇、债券等行情、交易windGateway万得证券、期货、外汇、期权、债券、指数等行情

目前vn.trader基本实现了国内外全品种的交易,期货的接口最多(CTP、飞马、飞创等),股票的接口目前只有LTS,金交所贵金属的接口飞鼠性能较强,但很多银行提供的接口是金仕达黄金,做外盘交易推荐使用盈透证券(功能最强大),如果是刚入门交易的可以试试OANDA(10美元就能开实盘账户并且正常交易)。

这里以最常用的CTP接口举例介绍如何配置交易接口。

首先需要有一个CTP的仿真或者实盘账户,本着对自己钱包负责的态度,我建议新手从仿真账户开始,可以在SimNow官网注册,完成后记好账号和密码。

然后前往该页面查询SimNow的服务器地址和经纪商编码(BrokerID),Trade Front对应交易服务器地址,Market Front对应行情服务器地址,从标准CTP的服务器中选一个就可以。

使用代码编辑器(如Sublime Text、VS Code等,不要用WingIDE之类的IDE,可能有文本编码问题)打开vn.trader/ctpGateway文件夹下的CTP_connect.json,可以看到如下内容:

{    "brokerID": "9999",     "tdAddress": "tcp://180.168.146.187:10000",     "password": "simnow申请",     "mdAddress": "tcp://180.168.212.228:41213",     "userID": "simnow申请"}

分别修改每个字段为之前步骤中我们记录下来的信息:

  • brokerID:经纪商编码

  • tdAddress:交易服务器地址(服务器地址:端口号),修改时注意不要少了tcp://

  • mdAddress:行情服务器地址,同样注意不要少了tcp://

  • userID:账号

  • password:密码

保存后就完成了接口的配置。

注意事项:

  1. 编辑json时,一定要使用代码编辑器(推荐Sublime Text),使用IDE大概率会出现文本编码问题(JSON文件无法打开);

  2. 修改服务器地址时不要少了tcp://,这是迄今为止发现用户最常犯的错误之一,会导致接口初始化时程序直接崩溃;

  3. 如果已经有了CTP的实盘账户,可以通过下载期货公司的快期交易软件,登录时点击测速和代理,查询实盘服务器的地址和端口号,而经纪商编码brokerID可以百度查询或者咨询期货公司的客户经理。

0 0
原创粉丝点击