接口详解

CTP

如何加载

run.py文件提供了接口加载示例:先从gateway上调用ctpGateway类;然后通过add_gateway()函数添加到main_engine上。

  1. from vnpy.gateway.ctp import CtpGateway
  2. main_engine.add_gateway(CtpGateway)

相关字段

  • 用户名:username

  • 密码:password:

  • 经纪商编号:brokerid

  • 交易服务器地址:td_address

  • 行情服务器地址:md_address

  • 产品名称:app_id

  • 授权编码:auth_code

获取账号

  • 仿真账号:从SimNow网站上获取。只需输入手机号码和短信验证即可。(短信验证有时只能在工作日正常工作时段收到)SimNow的用户名(InvestorID)为6位纯数字,经纪商编号为9999,并且提供2套环境用于盘中仿真交易以及盘后的测试。

  • 实盘账号:在期货公司开户,通过联系客户经理可以开通。用户名为纯数字,经纪商编号也是4位纯数字。(每个期货公司的经纪商编号都不同)另外,实盘账号也可以开通仿真交易功能,同样需要联系客户经理。

MINI

如何加载

先从gateway上调用MiniGateway类;然后通过add_gateway()函数添加到main_engine上。

  1. from vnpy.gateway.mini import MiniGateway
  2. main_engine.add_gateway(MiniGateway)

相关字段

  • 用户名:username

  • 密码:password:

  • 经纪商编号:brokerid

  • 交易服务器地址:td_address

  • 行情服务器地址:md_address

  • 产品名称:product_info

  • 授权编码:auth_code

获取账号

在期货公司开户,通过联系客户经理可以开通。用户名为纯数字,经纪商编号也是4位纯数字。(每个期货公司的经纪商编号都不同)另外,实盘账号也可以开通仿真交易功能,同样需要联系客户经理。

飞马(FEMAS)

如何加载

先从gateway上调用FemasGateway类;然后通过add_gateway()函数添加到main_engine上。

  1. from vnpy.gateway.femas import FemasGateway
  2. main_engine.add_gateway(FemasGateway)

相关字段

  • 用户名:username

  • 密码:password:

  • 经纪商编号:brokerid

  • 交易服务器地址:td_address

  • 行情服务器地址:md_address

  • 产品名称:product_info

  • 授权编码:auth_code

获取账号

在期货公司开户,通过联系客户经理可以开通。用户名为纯数字,经纪商编号也是4位纯数字。(每个期货公司的经纪商编号都不同)另外,实盘账号也可以开通仿真交易功能,同样需要联系客户经理。

中泰柜台(XTP)

如何加载

先从gateway上调用XtpGateway类;然后通过add_gateway()函数添加到main_engine上。

  1. from vnpy.gateway.xtp import XtpGateway
  2. main_engine.add_gateway(XtpGateway)

相关字段

  • 账号:

  • 密码:

  • 客户号”: 1

  • 行情地址:

  • 行情端口”: 0

  • 交易地址:

  • 交易端口”: 0

  • 行情协议: [“TCP”, “UDP”]

  • 授权码:

获取账号

测试账号请联系中泰证券申请。

其他特点

XTP是首家提供融资融券的极速柜台。

宽睿柜台(OES)

如何加载

先从gateway上调用OesGateway类;然后通过add_gateway()函数添加到main_engine上。

  1. from vnpy.gateway.oes import OesGateway
  2. main_engine.add_gateway(OesGateway)

相关字段

  • 用户名:username

  • 密码:password

  • 硬盘序列号:hdd_serial

  • 交易委托服务器:td_ord_server

  • 交易回报服务器:td_rpt_server

  • 交易查询服务器:td_qry_server

  • 行情推送服务器:md_tcp_server

  • 行情查询服务器:md_qry_server

获取账号

测试账号请联系宽睿科技申请

其他特点

宽睿柜台提供内网UDP低延时组播行情以及实时成交信息推送。

华鑫奇点(TORA)

如何加载

先从gateway上调用ToraGateway类;然后通过add_gateway()函数添加到main_engine上。

  1. from vnpy.gateway.tota import ToraGateway
  2. main_engine.add_gateway(ToraGateway)

相关字段

  • 账号: username

  • 密码: password

  • 交易服务器: td_address

  • 行情服务器: md_address

获取账号

测试账号请联系华鑫证券申请

盈透证券(IB)

如何加载

先从gateway上调用IbGateway类;然后通过add_gateway()函数添加到main_engine上。

  1. from vnpy.gateway.ib import IbGateway
  2. main_engine.add_gateway(IbGateway)

相关字段

  • TWS地址:127.0.0.1

  • TWS端口:7497

  • 客户号:1

获取账号

在盈透证券开户并且入金后可以获得API接入权限。拥有实盘账号后才可以申请开通仿真交易账号。

其他特点

可交易品种几乎覆盖全球的股票、期权、期权;手续费相对较低。

注意IB接口的合约代码较为特殊,请前往官网的产品查询板块查询,VN Trader中使用的是盈透证券对于每个合约在某一交易所的唯一标识符ConId来作为合约代码,而非Symbol或者LocalName。

易盛外盘(TAP)

如何加载

先从gateway上调用TapGateway类;然后通过add_gateway()函数添加到main_engine上。

  1. from vnpy.gateway.tap import TapGateway
  2. main_engine.add_gateway(TapGateway)

相关字段

  • 授权码:auth code

  • 行情账号:quote username

  • 行情密码:quote password

  • 行情地址:123.15.58.21

  • 行情端口:7171

获取账号

在TAP开户并且入金后可以获得API接入权限。

富途证券(FUTU)

如何加载

先从gateway上调用FutuGateway类;然后通过add_gateway()函数添加到main_engine上。

  1. from vnpy.gateway.futu import FutuGateway
  2. main_engine.add_gateway(FutuGateway)

相关字段

  • 地址:127.0.0.1

  • 密码:

  • 端口:11111

  • 市场:HK 或 US

  • 环境:TrdEnv.REAL 或 TrdEnv.SIMULATE

获取账号

在富途证券开户并且入金后可以获得API接入权限。拥有实盘账号后才可以申请开通仿真交易账号。

老虎证券(TIGER)

如何加载

先从gateway上调用TigerGateway类;然后通过add_gateway()函数添加到main_engine上。

  1. from vnpy.gateway.tiger import TigerGateway
  2. main_engine.add_gateway(TigerGateway)

相关字段

  • 用户ID:tiger_id

  • 环球账户:account

  • 标准账户:standard_account

  • 秘钥:private_key

获取账号

在老虎证券开户并且入金后可以获得API接入权限。拥有实盘账号后才可以申请开通仿真交易账号。

ALPACA

如何加载

先从gateway上调用AlpacaGateway类;然后通过add_gateway()函数添加到main_engine上。

  1. from vnpy.gateway.alpaca import AlpacaGateway
  2. main_engine.add_gateway(AlpacaGateway)

相关字段

  • KEY ID: key

  • Secret Key: secret

  • 会话数: 10

  • 服务器:[“REAL”, “PAPER”]

获取账号

在OKEX官网开户并且入金后可以获得API接入权限。

其他特点

BITMEX

如何加载

先从gateway上调用BitmexGateway类;然后通过add_gateway()函数添加到main_engine上。

  1. from vnpy.gateway.bitmex import BitmexGateway
  2. main_engine.add_gateway(BitmexGateway)

相关字段

  • 用户ID:ID

  • 密码:Secret

  • 会话数:3

  • 服务器:REAL 或 TESTNET

  • 代理地址:

  • 代理端口:

获取账号

在BITMEX官网开户并且入金后可以获得API接入权限。

OKEX现货(OKEX)

如何加载

先从gateway上调用OkexGateway类;然后通过add_gateway()函数添加到main_engine上。

  1. from vnpy.gateway.okex import OkexGateway
  2. main_engine.add_gateway(OkexGateway)

相关字段

  • API秘钥:API Key

  • 密码秘钥:Secret Key

  • 会话数:3

  • 密码:passphrase

  • 代理地址:

  • 代理端口:

获取账号

在OKEX官网开户并且入金后可以获得API接入权限。

OKEX期货(OKEXF)

如何加载

先从gateway上调用OkexfGateway类;然后通过add_gateway()函数添加到main_engine上。

  1. from vnpy.gateway.okexf import OkexfGateway
  2. main_engine.add_gateway(OkexfGateway)

相关字段

  • API秘钥:API Key

  • 密码秘钥:Secret Key

  • 会话数:3

  • 密码:passphrase

  • 杠杆:Leverage

  • 代理地址:

  • 代理端口:

获取账号

在OKEX官网开户并且入金后可以获得API接入权限。

火币(HUOBI)

如何加载

先从gateway上调用HuobiGateway类;然后通过add_gateway()函数添加到main_engine上。

  1. from vnpy.gateway.huobi import HuobiGateway
  2. main_engine.add_gateway(HuobiGateway)

相关字段

  • API秘钥:API Key

  • 密码秘钥:Secret Key

  • 会话数:3

  • 代理地址:

  • 代理端口:

获取账号

在火币官网开户并且入金后可以获得API接入权限。

火币合约(HUOBIF)

如何加载

先从gateway上调用HuobifGateway类;然后通过add_gateway()函数添加到main_engine上。

  1. from vnpy.gateway.huobif import HuobifGateway
  2. main_engine.add_gateway(HuobifGateway)

相关字段

  • API秘钥:API Key

  • 密码秘钥:Secret Key

  • 会话数:3

  • 代理地址:

  • 代理端口:

获取账号

在火币官网开户并且入金后可以获得API接入权限。

BITFINEX

如何加载

先从gateway上调用BitFinexGateway类;然后通过add_gateway()函数添加到main_engine上。

  1. from vnpy.gateway.bitfinex import BitfinexGateway
  2. main_engine.add_gateway(BitfinexGateway)

相关字段

  • 用户ID:ID

  • 密码:Secret

  • 会话数:3

  • 代理地址:

  • 代理端口:

获取账号

在BITFINEX官网开户并且入金后可以获得API接入权限。

ONETOKEN

如何加载

先从gateway上调用OnetokenGateway类;然后通过add_gateway()函数添加到main_engine上。

  1. from vnpy.gateway.onetoken import OnetokenGateway
  2. main_engine.add_gateway(OnetokenGateway)

相关字段

  • Key秘钥:OT Key

  • 密码秘钥:OT Secret

  • 会话数:3

  • 交易所:[“BINANCE”, “BITMEX”, “OKEX”, “OKEF”, “HUOBIP”, “HUOBIF”]

  • 账号:

  • 代理地址:

  • 代理端口:

获取账号

在Onetoken官网开户并且入金后可以获得API接入权限。

BINANCE

如何加载

先从gateway上调用BinanceGateway类;然后通过add_gateway()函数添加到main_engine上。

  1. from vnpy.gateway.binance import BinanceGateway
  2. main_engine.add_gateway(BinanceGateway)

相关字段

  • Key秘钥

  • secret

  • session_number(会话数):3

  • proxy_host

  • proxy_port

获取账号

在BINANCE官网开户并且入金后可以获得API接入权限。

RPC

如何加载

RPC的加载涉及到服务端和客户端

  • 服务端:运行vntrader时加载rpc_service模块

    1. from vnpy.app.rpc_service import RpcService

    启动vntrader后,首先连接外部交易交易如CTP,然后点击菜单栏”功能”->”RPC服务”,点击”启动”

  • 客户端:运行vntrader时加载RpcGateway

    1. from vnpy.gateway.rpc import RpcGateway

    启动vntrader后,连接rpc接口即可。

相关字段

在服务端和客户端,使用默认填好的参数即可

获取账号

使用rpc无须额外申请账号,只需要一个外部接口账号

其他特点

rpc服务支持同一外部接口数据在本地多进程分发,比如在服务端连接了ctp接口,订阅了rb1910后,客户端多个进程会自动订阅来自服务端分发的订阅数据# 交易接口