我申请的是中信建投的账号。登录ctptest后提示“行情接口报错,代码: 4040, 信息: CTP:API Front shake hand err: decode err“和“交易服务器连接断开,原因4097”;中信建投技术服务解释说是API版本不对。我登录的版本(vnpy 2.3.0,接口版本6.5.1)和中信建投要求的(6.5.1_20200908)有什么不同吗?请问如果是API接口问题,应该怎么处理?谢谢。
我申请的是中信建投的账号。登录ctptest后提示“行情接口报错,代码: 4040, 信息: CTP:API Front shake hand err: decode err“和“交易服务器连接断开,原因4097”;中信建投技术服务解释说是API版本不对。我登录的版本(vnpy 2.3.0,接口版本6.5.1)和中信建投要求的(6.5.1_20200908)有什么不同吗?请问如果是API接口问题,应该怎么处理?谢谢。
4097是api版本不对,2.3.0的ctptest是6.5.1,可以用相同的配置信息分别练练ctptest和ctp试试看。如果能连上ctp,不能连上ctptest,那么可能是期货公司给了实盘的地址。如果都连不上建议可以用期货公司提供的api里的dll替换掉ctptest接口的dll然后再连ctptest试试看
非常感谢您的解答
xiaohe wrote:
4097是api版本不对,2.3.0的ctptest是6.5.1,可以用相同的配置信息分别练练ctptest和ctp试试看。如果能连上ctp,不能连上ctptest,那么可能是期货公司给了实盘的地址。如果都连不上建议可以用期货公司提供的api里的dll替换掉ctptest接口的dll然后再连ctptest试试看
您好,我今天自己按照您的方法尝试了,交易服务器能够正常连接,但是还是提示“行情接口报错,代码: 4040.信息: CTP APIFonT shake hand err decodee”。中信建投技术反馈还是版本不对。请问这个应该怎么处理?谢谢
可以用期货公司提供的api里的dll替换掉ctptest接口的dll然后再连ctptest试试看
xiaohe wrote:
可以用期货公司提供的api里的dll替换掉ctptest接口的dll然后再连ctptest试试看
非常感谢您的解答。应该是替换文件夹vnstudio\Lib\site-packages\vnpy_ctptest\api下的thostmduserapi_se.dll和thosttraderapi_se.dll这两个dll吧。我用中信建投提供的dll替换了,结果交易服务器可以连上,但是还是出现错误提示“行情接口报错,代码: 4040,信息,CTPAPIFront shahe hand er decoder”。
xiaohe wrote:
可以用期货公司提供的api里的dll替换掉ctptest接口的dll然后再连ctptest试试看
问题已经解决,替换dll后就可以了,期货公司反应慢了一拍。非常感谢您的解答。
麻烦请指出具体要替换那个文件夹呀?我看到我的CTP Test 版本是6.5.1 但是期货公司 需要 6.3.13 才能完成穿透测试。麻烦问一下如何才能降到6.3.13呀?
文清 wrote:
我申请的是中信建投的账号。登录ctptest后提示“行情接口报错,代码: 4040, 信息: CTP:API Front shake hand err: decode err“和“交易服务器连接断开,原因4097”;中信建投技术服务解释说是API版本不对。我登录的版本(vnpy 2.3.0,接口版本6.5.1)和中信建投要求的(6.5.1_20200908)有什么不同吗?请问如果是API接口问题,应该怎么处理?谢谢。
可以用期货公司提供的6.3.13的api里的dll替换掉ctptest接口的dll试试看
C:\vnstudio\Lib\site-packages\vnpy_ctptest\api 是这个路径么?
xiaohe wrote:
可以用期货公司提供的6.3.13的api里的dll替换掉ctptest接口的dll试试看
期货公司提供的6.3.13 CTP 测试 API 有两个文件夹,一个是这个
还有一个是 这个
这些文件应该分别考到VNPY的哪个文件夹呀?
另外版本VNPY 2.0.3 的exe 安装包在哪里可以下载呀?我在想如果能直接安个旧版本也可以?
charlesttt wrote:
C:\vnstudio\Lib\site-packages\vnpy_ctptest\api 是这个路径么?
xiaohe wrote:
可以用期货公司提供的6.3.13的api里的dll替换掉ctptest接口的dll试试看
用期货公司提供的dll替换vnpy_ctptest.api下同名的dll即可
只有两个同名的
请问大家解决了吗?我和楼主几乎一样的情况。期货公司给的API文件结构都一样,报错信息一样,但是报错代码不一样。
dll文件全替换了,报错如下
···
14:38:34.60 行情接口报错,代码:842162802,信息:05
···
之前没有见过这个报错,可以咨询一下期货公司工作人员看看
xiaohe wrote:
4097是api版本不对,2.3.0的ctptest是6.5.1,可以用相同的配置信息分别练练ctptest和ctp试试看。如果能连上ctp,不能连上ctptest,那么可能是期货公司给了实盘的地址。如果都连不上建议可以用期货公司提供的api里的dll替换掉ctptest接口的dll然后再连ctptest试试看
客服好像不太懂,也不给我api,让我自己去上期官网下载,下了个6.6.1的还是同样的错误该咋弄呀
期货公司使用api版本不是固定的,不同公司不一样。如果客服不懂的话只能问期货公司的客户经理,或者找开户时的文档。没有api版本的话,别人也帮不了你。
郭易燔 wrote:
期货公司使用api版本不是固定的,不同公司不一样。如果客服不懂的话只能问期货公司的客户经理,或者找开户时的文档。没有api版本的话,别人也帮不了你。
文档写了是6.6.1,但我搞来了好像还是连不上。。
我也遇到这个问题,系统是ubuntu20.04。期货公司的人说api版本不对,是不是需要重新编译vnpy啊?有没有编译的具体步骤呢?