接收美元的消息类型的小数位数

时间:2019-07-19 23:13:49

标签: coinbase-api

我正在使用Coinbase的websocket全频道。它说可以期望的一种类型称为接收类型。

在他们的API文档中,他们给出了一个示例:

{
    "type": "received",
    "time": "2014-11-09T08:19:27.028459Z",
    "product_id": "BTC-USD",
    "sequence": 12,
    "order_id": "dddec984-77a8-460a-b958-66f114b0de9b",
    "funds": "3000.234",
    "side": "buy",
    "order_type": "market"
}

我的问题是关于资金领域。他们提供了以下细节:

Market orders (indicated by the order_type field) may have an optional funds field which indicates how much quote currency will be used to buy or sell. For example, a funds field of 100.00 for the BTC-USD product would indicate a purchase of up to 100.00 USD worth of bitcoin.

因此,他们的示例是BTC-USD的市场买单,因此资金字段为USD。但是,该USD值如何小数点后3位?

最小的美元增量是一分钱(0.01),这是他们的示例中为其产品API调用(也在其文档中)指定的值:

 {
        "id": "BTC-USD",
        "base_currency": "BTC",
        "quote_currency": "USD",
        "base_min_size": "0.001",
        "base_max_size": "10000.00",
        "quote_increment": "0.01"
 }

但是通过查看程序的日志输出,我看到了其他奇怪的基金价值:

“ 1316.7081987750000000” “ 1767.4650256000000000” “ 523.6906608000000000”

忽略尾随的零,仍然有太多的十进制数字,第一个甚至有9个十进制数字。

我已经开了一张支持票,试图弄清楚,但一周后什么都没听到。想知道其他开发者是否对此有权威的解释?

一个想法是将其舍入到下一个便士,但这似乎不是适当的解决方案。

0 个答案:

没有答案