Type/to search
11
Follow
6
Followers
求教:为了避免在火币合约结算期间下单,有什么更好的办法?
Help
Created 2021-03-29 11:06:06  
 4
 1357

我现在是在轮巡过程中用

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时是表示结算完成可以正常下单和撤单。”

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

Related Recommendations
Comment
All comments (4)

    GetLastError 获取到1056 在错误字符串中,休眠一段时间继续

    5 years ago

    但是我的策略在结算的时候如果不下单是不会报错的,但是一下单报错就来不及了

    5 years ago

    有啥来不及的,做好容错就行,报这个错说明下单未成功

    5 years ago

    明白了,谢谢!

    5 years ago
  • 1
Forums
PINE Language
Get the app
iPhone Download
© 2015 - ∞ INVENTOR PTE LTD (SG)