VeighNa量化社区
你的开源社区量化交易平台
Member
avatar
加入于:
帖子: 42
声望: 0

遇到一个问题,我用CTP,在夜盘正常交易,然后经过一个晚上,第二天早上并没有成功自动登录交易服务器,早上程序发不出去单子,也没有收到成交信息

监控信息那边一直提示:Send Heartbeat

我以前是用ROHON接口的,已经正常运行一年了,这是第一次用CTP,以前融航没有碰到这个问题,融航第二天早上都有自动成功登陆交易服务器正常交易

请问用CTP接口,在账户登录等事情上,跟融航接口有什么不一样和特殊的吗?

2023-12-25 18:55:43 --------------------------------------------------
2023-12-25 18:55:43 VeighNa Trader进程启动
2023-12-25 18:55:44 找不到数据服务驱动vnpy_,使用默认的RQData数据服务
2023-12-25 20:44:09 Connect to 101.230.*.:*(交易服务器地址)
2023-12-25 20:44:09 Session 2031681537 Connected
2023-12-26 02:36:44 CThostFtdcUserApiImplBase::OnSessionDisconnected[000001525348FFD8][2031681537][ 4097]
Session 2031681537 Disconnected, reason = [00001001]
2023-12-26 07:47:14 Connect to 101.230.*.:*(交易服务器地址)
2023-12-26 07:47:14 Session 344064002 Connected
2023-12-26 07:47:31 Send Heartbeat 1703548051
2023-12-26 07:47:34 CThostFtdcUserApiImplBase::OnSessionDisconnected[00000152539141B8][344064002][ 4097]
Session 344064002 Disconnected, reason = [00001001]
2023-12-26 07:47:34 Connect to 101.230.*.:*(交易服务器地址)
2023-12-26 07:47:34 Session 345374723 Connected
2023-12-26 07:47:49 Send Heartbeat 1703548069
2023-12-26 07:48:04 Send Heartbeat 1703548084
2023-12-26 07:48:22 Send Heartbeat 1703548102
2023-12-26 07:48:37 Send Heartbeat 1703548117
2023-12-26 07:48:52 Send Heartbeat 1703548132
2023-12-26 07:49:07 Send Heartbeat 1703548147
2023-12-26 07:49:24 Send Heartbeat 1703548164
2023-12-26 07:49:39 Send Heartbeat 1703548179
2023-12-26 07:49:55 Send Heartbeat 1703548195
2023-12-26 07:50:10 Send Heartbeat 1703548210
2023-12-26 07:50:27 Send Heartbeat 1703548227

Member
avatar
加入于:
帖子: 1472
声望: 105

CTP接口目前夜盘收盘后到日盘的自动重连功能不稳定,需要重建API对象实例后再发起连接才行

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

MTF wrote:

CTP接口目前夜盘收盘后到日盘的自动重连功能不稳定,需要重建API对象实例后再发起连接才行

具体要怎么弄呢?
我早上检测了一下,提示信息是这样:07:48:30交易服务器授权验证失败,代码:8,信息:CTP:前置不活跃
是一个授权失败错误,但是授权码肯定是正确的啊,
我猜感觉好像是自动重连的时间太早了的原因,还没有8点,交易服务器还不稳定

请问现在系统的自动重连是设置成什么时候开始连接呢?这个重连时间可以自己定吗?如果定到8点半以后再连接,我觉得成功率就会高了.

还有,我是否可以自己调用MainEngine的connect自己重连一次?

我看到接口代码里,说行情服务器重复连接会导致崩溃(# 禁止重复发起连接,会导致异常崩溃)

那请问交易服务器重复连接呢?可以吗?

Member
avatar
加入于:
帖子: 4713
声望: 287

图形界面要盘后关闭软件盘前重启
想定时重连可以用no_ui脚本启动https://gitee.com/vnpy/vnpy/blob/master/examples/no_ui/run.py

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

xiaohe wrote:

图形界面要盘后关闭软件盘前重启
想定时重连可以用no_ui脚本启动https://gitee.com/vnpy/vnpy/blob/master/examples/no_ui/run.py

我是这么做的啊,每天15点收盘后关闭软件,晚上21点开盘前重启软件
现在出现的问题是,我用图形界面,然后夜盘正常交易,白天9点的时候,交易服务器没有自动连接成功.

Member
avatar
加入于:
帖子: 1472
声望: 105

CTP柜台当前版本的API,夜盘收盘后也同样要关闭软件,早盘9点前重启。

改了有一年多了吧

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

MTF wrote:

CTP柜台当前版本的API,夜盘收盘后也同样要关闭软件,早盘9点前重启。

改了有一年多了吧

真的假的,那怎么用?

那夜盘还没成交的挂单,怎么处理?不就无法触发了?

比如网格策略,需要根据成交来挂新单

P.S. 我现在是早上8点半,手工使用连接框重连,是可以正常下单.(在CTP gateway文件中,我把交易服务器授权失败后不再重连的代码注释掉了)

Member
avatar
加入于:
帖子: 4713
声望: 287

建议不用这样做。
如果说的是本地停止单的话,可以夜盘关闭的时候缓存委托信息,早上初始化的时候再挂上

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

xiaohe wrote:

建议不用这样做。
如果说的是本地停止单的话,可以夜盘关闭的时候缓存委托信息,早上初始化的时候再挂上

可是我的策略,以及做的品种,需要挂单很久才能成交的呢,可能挂单一天下来才成交一次

如果夜盘撤单早上重新挂单,就又重新排队了

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

MTF wrote:

CTP柜台当前版本的API,夜盘收盘后也同样要关闭软件,早盘9点前重启。

改了有一年多了吧

请问,早上7点多自动重连服务器的时间,能不能改,能告知哪里改这个时间吗?我想改成晚一点,比如8点30以后再连接交易服务器.

Member
avatar
加入于:
帖子: 1472
声望: 105

18650802653 wrote:

MTF wrote:

CTP柜台当前版本的API,夜盘收盘后也同样要关闭软件,早盘9点前重启。

改了有一年多了吧

请问,早上7点多自动重连服务器的时间,能不能改,能告知哪里改这个时间吗?我想改成晚一点,比如8点30以后再连接交易服务器.

这个是CTP底层API中实现的自动重连机制,并不是设置了7点多重连,而是7点多服务器的网络端口开始监听了

要控制连接时间,只有用守护监控进程的方式实现

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

沪公网安备 31011502017034号

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