VeighNa量化社区
你的开源社区量化交易平台 | vn.py | vnpy
Member
avatar
加入于:
帖子: 7
声望: 0

穿透测试流程

这是知乎很多年前进行穿透测试的流程,与现在大差不差。如知乎连接
我的申请流程是:
1.申请穿透式接入
2.填写表格。其中appid可以随便填。但是要记得跟其他人有区分度。
3.期货公司返回测试信息,期货公司返回的信息如下。

description

4.回到vnpy,启动vnpy的ctp测试。
description

先登录评测系统,然后登录仿真系统,即可。
注意,这里不是用的实盘账号,用的是期货公司给的评测CTP账号和仿真CTP账号。如果报“CTP用户不活跃”,大概就是账号用错环境了

这里还有个巨坑,期货公司用的评测系统的CTP版本可能和仿真系统的CTP版本不一致,一定要确认好用哪个CTP版本,要来.dll或者.so文件后,然后在按照下面的decode err的解法处理。

常见问题

1.行情服务器段看,原因4097,但没有其他提示

description
这个大概率是因为期货公司服务器没有开,一般需要在期货开盘的时间登录,非期货开盘的时间是登录不上去的。

2.行情服务器断开,shake hand error:decode err

description
这是因为期货公司使用的CTP版本和你目前使用的CTP版本不一致,所以报了上述错误。找期货公司要CTP的连接文件,要来的文件会是这个样子。分为Linux和windows,根据自己的系统版本安装即可。

description

① 对于windows
在网上找到的资料都是编译后重新安装,问题是linux编译重新安装我理解,windows是什么怎么重新安装啊,windows用的是VeighNa Station又不是github上下载的项目ε=ε=ε=(#>д<)ノ
经过艰苦探索,总算成功了

首先,本地准备一份vnpy_ctptest, 直接从github克隆下来即可。
1.替换dll文件,路径是vnpy_ctptest\vnpy_ctptest\api\
2.替换.h头文件,路径是vnpy_ctptest\vnpy_ctptest\api\include\ctp\
3.在vnpy_ctptest环境下,打开cmd,使用pip install -e .
注意命令后面有个点,代表当前目录。这一步主要是将vnpy_ctptest重新编译

description

4.编译过后,在vnpy_ctptest\build\cp313会生成.pyd文件

description

5.找到VeighNa Station的安装位置,进入vnpy\Lib\site-packages\vnpy_ctptest\api文件夹。使用期货公司给的.dll文件替换此文件夹中的dll文件,使用刚才编译成功的.pyd和.lib文件替换此目录中的.lib和.pyd文件。
可以在操作之前将vnpy_ctptest备份一份,如果搞岔劈了,可以复制回来。不然又得使用VeighNa Station的安装包安装,巨慢。

description

② 对于Linux
1.从git克隆一份vnpy_ctptest到vnpy的同级目录。

description

2.替换掉vnpy_ctptest/api/include/ctp/文件夹下的.h文件,替换掉vnpy_ctptest/api文件夹下的.so文件。
注意,期货公司给的.so文件可能缺少lib前缀,需要加上。

description

3.替换掉之后,回到vnpy文件夹。删除掉现有的依赖库中的vnpy_ctptest。我使用的是venv,路径在.venv/lib/python3.13/site-packages/vnpy_ctptest,将vnpy_ctptest和vnpy_ctptest-6.7.2.0.dist-info都删除掉。
description

5.从本地安装vnpy_ctptest,pip install ../vnpy_ctptest

description

Member
avatar
加入于:
帖子: 14
声望: 0

佬, 最近我也在搞穿透式测试, 就是我想问一问, 这个是完成穿透式测试就可以使用策略上自己的实盘账号使用策略自动化交易了吗, 还是说需要再进行程序化测试通过之后才能使用策略进行自动化交易啊, 你那边是只进行穿透式测试吗 还是说 穿透式测试和程序化测试都弄啊

Member
avatar
加入于:
帖子: 7
声望: 0

guozhi wrote:

佬, 最近我也在搞穿透式测试, 就是我想问一问, 这个是完成穿透式测试就可以使用策略上自己的实盘账号使用策略自动化交易了吗, 还是说需要再进行程序化测试通过之后才能使用策略进行自动化交易啊, 你那边是只进行穿透式测试吗 还是说 穿透式测试和程序化测试都弄啊

穿透式测试和程序化测试。 我也在弄,vnpy的学习门槛也太高了,资料太少了

Member
avatar
加入于:
帖子: 1
声望: 0

我昨天开了期货的户,今天模拟仿真账号也要下来了,搜到的这文章很实用,准备做穿透测试。

© 2015-2022 上海韦纳软件科技有限公司
备案服务号:沪ICP备18006526号

沪公网安备 31011502017034号

【用户协议】
【隐私政策】
【免责条款】