4.02K 浏览
0

ap101 行情延迟 最新价格一直不变

ringo 已回答的问题 2020年11月2日
0

推荐自己用最简代码试一下,然后检查自己循环内是否有使用类似time.sleep()函数或者一个循环内的计算时间超过了500ms这些均有可能造成你说的现象,至于为啥不能用time.sleep()参见https://www.shinnytech.com/question/7973/

另外快期手动平掉程序没反应,也可以用最简代码测试,然后建议检测pos类字段,因为pos根据成交回报计算,volume类字段是ctp限流查询得到的

xjj0008 发表新评论 2020年11月2日

我用的是下面的方法 是pos字段?
然后我试了下快期那边清仓后,依旧没有反应

def get_pos(vi):
pos = api.get_position(vi)
return [pos.pos_long, pos.pos_short]

程序的计算完成时间大概是3s
我用了 推荐的方法
deadline = time.time() + 4
while api.wait_update(deadline=deadline):

持仓没有检测到 已经发生了变化, 持仓盈亏 还是按照原来的仓位/实际上已经没有仓位了。

然后我这边,一般都只能开仓后,手动 重启程序 ,仓位变化 才能生效

0

请问具体是哪个产品,是什么时候呢?我们这边行情服务器一切正常

xjj0008 发表新评论 2020年11月2日

苹果 2101 合约 请求最新数据的时候。有 wait_upate 的情况下,更新的速度,还有准确性都是有问题的。 半分钟更新一次,更新的数据跟最新的价格也不一样。 // 但是,重新运行程序的话,返回的是没有延迟的, 总的来说就是,越用 延迟越大的感觉。

持仓的获取也是很卡,比如我 快期这边手动 清除了仓位。程序那边半天 没反应过来。 仓位没有更新。