Gate 现货深度频道升级公告

gateio交易平台

为提升交易体验,Gate 将于近期在现货推出全新深度频道 spot.obu ,优化推送逻辑并扩展深度档位。具体规则如下:

1.频道详情

  • 名称:spot.obu
  • 参数格式:ob.{symbol}.{level}
  • 示例: ob.BTC_USDT.400(400档)、ob.BTC_USDT.50(50档)
  • 档位与频率: 400档:每100ms更新 50档:每20ms更新

    2.订阅与推送规则 1.全量深度推送(full=true) 当频道推送的深度为全量深度时,需要将该深度数据完整替换本地深度,并将深度ID更新为消息中的字段 u 。服务端可能会重复推送全量深度。

  • 订阅该频道时,首次推送为全量深度。

2.增量深度推送(full=false)
增量消息中不会显示 "full" 字段,此时消息包含字段 "U"(深度起始ID)和 "u"(深度结束ID)。

  • 如果 U = 本地深度ID + 1,则表示深度连续更新:
    • 将本地深度ID替换为消息中的 "u"。
    • 若更新中的 "a" 和 "b" 不为空,分别按价格更新对应的买、卖深度数量(level[0] 为价格,level[1] 为数量)。当数量 level[1] = "0" 时,需移除对应档位。
  • 若 U ≠ 本地深度ID + 1,则深度数据不连续,需要取消订阅该市场,并重新订阅以获取初始化深度。

3.订阅限制 针对同一币对的同一深度流,一个链接只允许订阅一次,重复订阅会返回错误。示例:

{ "error": { "code": 2, "message": "Alert sub ob.BTC_USDT.50" } }

3.操作与数据推送示例

1.订阅

1.1订阅请求示例

from websocket import create_connection 
import json 

ws = create_connection("wss://ws-testnet.gt-link.tech/v4/ws/spot") 

subscribe_msg = {"time": 1748572393, "channel": "spot.obu", "event": "subscribe", "payload": ["ob.BTC_USDT.50"]} 

ws.send(json.dumps(subscribe_msg))
print(ws.recv())

1.2 订阅成功响应示例

{"time":1748572394,"time_ms":1748572394271,"conn_id":"b61f70b2e6bcca91","trace_id":"d2e2d92c3a7eabc3d5be52514ef508d2","channel":"spot.obu","event":"subscribe","payload":["ob.BTC_USDT.50"],"result":{"status":"success"},"requestId":"d2e2d92c3a7eabc3d5be52514ef508d2"}

1.3 全量推送示例

{"channel":"spot.obu","result":{"t":1748572394325,"full":true,"s":"ob.BTC_USDT.50","u":28606981,"b":[["105958.9","0.00908"],["105953.2","0.02426"],["105942.6","0.02074"],["105937.7","0.0099"],["105932","0.01731"],["105927.1","0.01796"],["105921.4","0.02041"],["105893.2","0.01265"],["105872","0.01895"],["70000","0.00005"],["49000.1","0.0002"],["66","0.05"]],"a":[["106009.9","0.01555"],["106038.1","0.00648"],["106048.7","0.01751"],["106059.3","0.00198"],["106080.5","0.01861"],["106091.1","0.02018"],["106101.7","0.01548"],["106112.3","0.01776"],["106122.9","0.01546"],["106133.5","0.02117"]]},"time_ms":1748572394325,"event":"update"}

1.4 增量推送示例

{"channel":"spot.obu","result":{"t":1748572395237,"s":"ob.BTC_USDT.50","u":28606989,"U":28606988,"b":[["66","0"]],"a":[["106009.9","0"]]},"time_ms":1748572395237,"event":"update"}

2. 取消订阅

2.1 取消订阅请求示例

from websocket import create_connection 
import json 

ws = create_connection("wss://ws-testnet.gt-link.tech/v4/ws/spot") 

unsubscribe_msg = {"time": 1747054611, "channel": "spot.obu", "event": "unsubscribe", "payload": ["ob.BTC_USDT.50"]}

ws.send(json.dumps(unsubscribe_msg)) 
print(ws.recv())

2.2 取消订阅响应示例

{"time": 1743673617,"time_ms": 1743673617242,"id": 1,"conn_id": "7b06ff199a98ab0e","trace_id": "8f86e4021a84440e502f73fde5b94918","channel": "spot.obu","event": "unsubscribe","payload": ["ob.BTC_USDT.50"],"result": {"status": "success"}}

4. 模拟盘测试通知

此功能已在现货模拟环境上线,请通过以下URL接入测试: WebSocket 现货模拟交易地址: wss://ws-testnet.gt-link.tech/v4/ws/spot

请开发者根据新规则调整对接逻辑。如有疑问,请联系客户支持团队。

Gate团队 2025年5月30日 **** 访问Gate官网 下载Gate App | 电脑端

发表评论

快捷回复: 表情:
评论列表 (暂无评论,14人围观)

还没有评论,来说两句吧...

目录[+]