获取市场深度
HTTP 请求
GET /spot/depth
请求参数
参数名 | 是否必须 | 类型 | 说明 |
---|---|---|---|
market | true | string | 市场名称 |
limit | true | int | 深度数据条数。 [5, 10, 20, 50]中的其中一个 |
interval | true | string | 合并粒度。 ["0", "0.00000000001", "0.000000000001", "0.0000000001", "0.000000001", "0.00000001", "0.0000001", "0.000001", "0.00001", "0.0001", "0.001", "0.01", "0.1", "1", "10", "100", "1000"]中的一个 |
请求响应
参数名 | 类型 | 说明 |
---|---|---|
market | string | 市场名 |
is_full | bool | true为全量推送,false为增量推送 |
depth | object | 深度数据 |
depth.asks | array | 卖方数据 |
asks[n][0] | string | 卖方价格 |
asks[n][1] | string | 卖方数量,在增量推送时,该值为0表示需要删除该价格的深度 |
depth.bids | array | 买方数据 |
bids[n][0] | string | 买方价格 |
bids[n][1] | string | 买方数量,在增量推送时,该值为0表示需要删除该价格的深度 |
depth.last | string | 最新价格 |
depth.updated_at | int | 时间戳,毫秒 |
depth.checksum | string | 数据校验和 |
提示
关于深度校验和(checksum):
- checksum 校验和是全深度数据的有符号的32位整数,用于验证深度数据的正确性。
- 构造校验和字符串:bid1_price:bid1_amount:bid2_price:bid2_amount:ask1_price:ask1_amout:…(如果沒有出价,则校验和字符串是ask1_price:ask1_amount:ask2_price:ask2_amount:…)
- 将校验和字符串使用crc32算法编码
如何结合全量及增量推送在api客户端恢复完整深度数据及进行深度数据校验,请参考代码示例
请求示例
GET /spot/depth?market=BTCUSDT&limit=5&interval=0.01
响应示例
{
"code": 0,
"data": {
"market": "BTCUSDT",
"is_full": true,
"depth": {
"asks": [
[
"30740.00",
"0.31763545"
],
[
"30769.00",
"1.45155000"
]
],
"bids": [
[
"30736.00",
"0.04857373"
],
[
"30733.00",
"0.84696320"
],
[
"30725.00",
"0.12563353"
],
[
"30422.00",
"0"
]
],
"last": "30746.28",
"updated_at": 1689152421692,
"checksum": 2578768879
}
},
"message": "OK"
}