【发布时间】:2019-10-10 08:22:33
【问题描述】:
我正在尝试通过 websocket 获取股票通道数据。我收到了一些数据的响应,但是我得到的数据与它应该显示的不匹配。
我已尝试执行 API 指定的操作。 API (https://docs.pro.coinbase.com/#the-ticker-channel) 表示发送请求如下:
参数 = { “类型”:“订阅”, “渠道”:[{“名称”:“ticker”,“product_ids”:[“BTC-USD”]}] }
现在这可行,我得到了响应,但是我得到的响应是:
{
“类型”:“股票代码”,
“序列”:9568995003,
"product_id":"BTC-USD",
“价格”:“7779.00000000”,
"open_24h":"7895.99000000",
"volume_24h":"19546.97986005",
"low_24h":"7467.10000000",
"high_24h":"7945.50000000",
"volume_30d":"569908.80402872",
"best_bid":"7775.66",
"best_ask":"7778.81"
}
当 api 说输出应该是: { “类型”:“股票代码”, “trade_id”:20153558, “序列”:3262786978, “时间”:“2017-09-02T17:05:49.250000Z”, "product_id": "BTC-USD", “价格”:“4388.01000000”, "side": "buy", // 接受方 "last_size": "0.03000000", "best_bid": "4388", “best_ask”:“4388.01” }
如您所见,我缺少last_size 和side。我不确定自己做错了什么。
from websocket import create_connection
import json
URL = "wss://ws-feed.pro.coinbase.com"
ws = create_connection(URL)
params = {
"type": "subscribe",
"channels": [{"name": "ticker", "product_ids": ["BTC-USD"]}]
}
def single():
ws.send(json.dumps(params))
result = ws.recv()
print(result)
single()
预期的输出应该包括 last_size 和 side 标签。非常感谢任何帮助。
【问题讨论】:
标签: python websocket coinbase-api