1

尝试提交 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)

但是,当通过十倍的低价时,订单完成而没有任何错误。此外,使用相同的管道,其他符号也不会引发任何错误。我究竟做错了什么?看起来像错误,但不确定在哪里提交。

任何建议将被认真考虑!

4

1 回答 1

-1

数量和价格应采用特定的字符串格式,以使其始终如一地工作。币安文档在这里

您可以使用此语法来应用格式:

amt_str = "{:0.0{}f}".format(amount, precision)

请注意,precision在此示例中是整数,而不是步长。

于 2021-05-12T16:30:50.807 回答