如何解决某些符号的币安意外百分比价格错误
我在尝试提交 ETHUSDT 订单时遇到了意外的 Binance API 错误。错误看起来很标准:
{'code': -1013,'msg': 'Filter failure: PERCENT_PRICE'}
我正在传递一个平均价格,该价格是一秒钟前使用 API 的符号价格代码函数检索到的。我的订单功能如下:
params = {
"symbol": "ETHUSDT","side": "BUY","type": "LIMIT","quantity" : 0.1,"timeInForce" : "GTC","price" : 3391,#A price from GET /api/v3/ticker/price
"recvWindow" : 40000
}
response = send_signed_request('POST','/api/v3/order',params)
print(response)
但是当价格低了十倍时,订单就完成了,没有任何错误。此外,使用相同的管道,其他符号也不会引发任何错误。我究竟做错了什么?看起来是个bug,但不知道在哪里提交。
任何建议将不胜感激!
解决方法
数量和价格应采用特定的字符串格式,以使其始终如一地工作。 Binance 相关文档为 here。
您可以使用此语法来应用格式:
amt_str = "{:0.0{}f}".format(amount,precision)
请注意,此示例中的 precision
是一个整数,而不是步长。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。