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

互联网IP地址:202.69.19.72
交易端口:61205
行情端口:61213
BrokerID:5200
CTP评测版本:v6.7.0

平安提供的API版本是6.7.0的。
vnpy没有对应版本,下载了6.7.2的vnpy,然后按论坛里面原来写的方法,用SimNow提供的6.7.0文件里面的两个dll,替换了vnpy_ctp api里面的同名dll文件。但还是4040错误。

这咋搞呢?

Super Moderator
avatar
加入于:
帖子: 89
声望: 8

正确解决方案:使用 vnpy_ctptest 连接 CTP 评测环境

你的问题是由于 CTP 穿透式评测 必须使用 vnpy_ctptest 模块(而非 vnpy_ctp),否则会因 API 版本或授权问题导致 4040 错误


1. 确保使用 vnpy_ctptest 模块

  • vnpy_ctp 用于 实盘交易(需期货公司授权)。
  • vnpy_ctptest 用于 穿透式评测(无需授权,但需期货公司提供评测环境信息)。

VeighNa Station 或代码中加载 CTPTEST 接口(而非 CTP)。


2. 正确配置评测环境参数


3. 检查 DLL 版本(仅当 vnpy_ctptest 报错时)

如果 vnpy_ctptest 仍然报 4040 错误,可能是 DLL 版本不匹配,需手动替换:

  1. 从平安期货获取 6.7.0 版本的评测 DLLthosttraderapi.dllthostmduserapi.dll)。
  2. 替换 vnpy_ctptest/api/ 下的同名文件。
  3. 删除 .pyc 缓存文件(避免旧代码干扰)。

4. 其他可能问题

  • 网络限制:确保服务器 IP 和端口可访问(可用 telnet 202.69.19.72 61205 测试)。
  • 评测时段限制:部分期货公司的评测环境仅限交易日特定时段开放。

总结步骤

  1. 使用 vnpy_ctptest 模块(不要用 vnpy_ctp)。
  2. 填写正确的评测服务器地址(交易端口 61205,行情端口 61213)。
  3. 仅在 vnpy_ctptest 报错时替换 DLL(需版本完全匹配)。
  4. 如仍失败,联系期货公司确认评测环境是否正常。

如果问题仍未解决,建议提供 完整的错误日志,以便进一步排查。

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

沪公网安备 31011502017034号

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