vnpy
vn.py
[toc]
# general
# vn.py 、 VN Studio、 VN Station、 VN Trader 区别
vn.py:开源量化交易框架,以下所有功能的核心底层,注意只有它名字是小写的~
VN Studio:针对量化交易专门打包的Python发行版,包含了Python解释器以及一系列量化交易常用的三方库,完整支持vn.py
VN Station:用于管理VN Trader以及其他Python量化交易应用的图形化管理工具(帮你省去写脚本或者用命令行的麻烦)
VN Trader:vn.py框架中的开箱即用专业量化交易平台,灵活加载各类交易接口(期货、股票、期权、外汇、数字货币),支持诸多量化交易用(CTA策略、算法交易、脚本策略、行情录制、RPC服务等等)
# 最为常见的接口
- 国内期货:上期技术CTP接口
- 数字货币:比特币合约BitMEX接口
- 海外市场:盈透证券IB接口
- A股证券:中泰证券XTP接口
# 每个交易所的合约命名规则有所区别:
- 中金所CFFEX:字母部分大写,年份数字为2位,举例IF1908
- 上期所SHFE:字母部分小写,年份数字为2位,举例rb1910
- 能源交易所INE:字母部分小写,年份数字为2位,举例sc1910
- 大商所DCE:字母部分小写,年份数字为2位,举例m1911
- 郑商所CZCE:字母部分大写,年份数字为1位,举例TA910
# SimNow
[[Simnow-CTPopen-Nsight#选择3(对应SimNow第二套)7x24h【电信】]]
各个字段的填写如下:
- 用户名:SimNow的investorId
- 密码:SimNow的密码
- 经纪商代码:9999
- 交易服务器:180.168.146.187:10101
- 行情服务器:180.168.146.187:10111
- 产品名称:simnow_client_test
- 授权编码:0000000000000000(16个0)
- 产品信息:留空不用填
其中交易和行情服务器,一共有三组选择,前两组只能在交易时段登录(周一到周五,日盘和夜盘时段),提供和实盘环境一致的行情和撮合:
# IB
vn.py快速入门4 - 海外市场IB (opens new window)
# Login
- Live Trading:实盘账户
- Paper Trading:仿真账户
- socket port:
- tws: 7497
- IBgateway: 4002
- socket port:
- Demo Trading:演示账户
- socket port:
- tws: 7496
- socket port:
其中Paper Trading和Live Trading高度类似,提供接近实盘交易行情以及撮合成交(像CTP的第一套环境),而Demo Trading则只提供历史行情的回放,满足交易接口测试的需求(像CTP的第二套7X24小时环境)
然后进入到“右上角SET->API->“Settings”来进行API接入相关的配置:
- 勾选“Enable ActiveX and Socket Clients”,允许外部程序接入TWS;
- 勾选“Download open orders on connection”,在外部程序连上TWS时获取所有未成交委托信息;
- 记录你的端口号“Socket Port”(我这里是7497),将用于后续从VN Trader发起到TWS的连接;
- 点击“OK”按钮,保存配置.
各个字段的填写如下:
- TWS地址:127.0.0.1(本机IP地址)
- TWS端口:7497(之前步骤)
- 客户号:填写1即可(除非你有多个进程连接TWS)
需要强调的是,和CTP等其他API从本地交易程序直连远端服务器的模式不同,IB API的连接是从本地交易程序(如VN Trader),到本地的客户端TWS,背后由TWS负责维护从本地到IB服务器的连接。
相关的合约信息:https://www.interactivebrokers.com.hk/cn/index.php?f=5430.
注意在VN Trader中,针对IB接口所使用的交易合约代码,是该合约在IB系统内的唯一标识符Conid,全称Contract Identifier,注意Conid为一串纯数字,不要和Symbol或者Description Name搞混。
![[Pasted image 20211030154320.png]]
# Note
vnpy.gateway.ib.ib_gateway
IB Symbol Rules
SPY-USD-STK SMART
EUR-USD-CASH IDEALPRO
XAUUSD-USD-CMDTY SMART
ES-202002-USD-FUT GLOBEX
SI-202006-1000-USD-FUT NYMEX
ES-2020006-C-2430-50-USD-FOP GLOBEX
2
3
4
5
6
7
8
- IDEALPRO
- USD-CNH-CASH