11
关注
6
关注者

求教:为了避免在火币合约结算期间下单,有什么更好的办法?

创建于: 2021-03-29 11:06:06, 更新于:
comments   4
hits   784

我现在是在轮巡过程中用

var now = new Date().getTime(); if(now%28800000 > 28790000 || now%28800000 < 300000) { Sleep(300000); }

来实现的。 自己感觉这个办法笨笨的,而且策略在运行的过程中每秒钟轮巡2-5次,每天为这3次结算要白白执行这两行代码多少次啊好浪费。

而火币官方文档说的是: “(1)在结算时不能下单和撤单,若用户在结算时下单或撤单会返回错误码”1056”,提示结算中无法下单和撤单。 建议您在结算时间点每隔几秒钟轮询获取合约信息接口:linear-swap-api/v1/swap_contract_info,当返回报文中contract_status返回状态码为5、6、7、8中的任意一个数字时表示在结算中,当contract_status返回状态码为1时是表示结算完成可以正常下单和撤单。”

那我每次轮巡去调用接口信息,是不是效率更低呢。 所以来这里请教大家,有没有什么更好的办法。

更多内容
全部留言
avatar of 小草
小草
GetLastError 获取到1056 在错误字符串中,休眠一段时间继续
2021-03-29 11:09:49
avatar of 骨刀
骨刀
明白了,谢谢!
2021-03-29 12:07:13
avatar of 小草
小草
有啥来不及的,做好容错就行,报这个错说明下单未成功
2021-03-29 12:00:01
avatar of 骨刀
骨刀
但是我的策略在结算的时候如果不下单是不会报错的,但是一下单报错就来不及了
2021-03-29 11:59:16