全市场最优挂单信息 数据流描述 所有交易对交易对最优挂单信息 Stream Name !bookTicker 注意: 响应消息不包含RPI订单,其不可见。 更新速度 5s 响应示例 { "e":"bookTicker", // 事件类型 "u":400900217, // 更新ID "E": 1568014460893, // 事件推送时间 "T": 1568014460891, // 撮合时间 "s":"BNBUSDT", // 交易对 "b":"25.35190000", // 买单最优挂单价格 "B":"31.21000000", // 买单最优挂单数量 "a":"25.36520000", // 卖单最优挂单价格 "A":"40.66000000" // 卖单最优挂单数量 } 市场数据连接 本篇所列出的所有wss接口需用下列方式连接: Base Url:wss://fstream.binance.com 订阅单一stream格式为 /ws/ 组合streams的URL格式为 /stream?streams=/// 连接样例: wss://fstream.binance.com/ws/bnbusdt@aggTrade wss://fstream.binance.com/stream?streams=bnbusdt@aggTrade/btcusdt@markPrice 订阅组合streams时,事件payload会以这样的格式封装 {"stream":"} stream名称中所有交易对均为小写。 每个链接有效期不超过24小时,请妥善处理断线重连。 服务端每3分钟会发送ping帧,客户端应当在10分钟内回复pong帧,否则服务端会主动断开链接。允许客户端发送不成对的pong帧(即客户端可以以高于15分钟每次的频率发送pong帧保持链接)。 Websocket服务器每秒最多接受10个订阅消息。 如果用户发送的消息超过限制,连接会被断开连接。反复被断开连接的IP有可能被服务器屏蔽。 单个连接最多可以订阅 1024 个Streams。 实时订阅/取消数据流 以下数据可以通过websocket发送以实现订阅或取消订阅数据流。示例如下。 响应内容中的id是无符号整数,作为往来信息的唯一标识。 订阅一个信息流 请求 { "method": "SUBSCRIBE", "params": [ "btcusdt@aggTrade", "btcusdt@depth" ], "id": 1 } 响应 { "result": null, "id": 1 } 取消订阅一个信息流 请求 { "method": "UNSUBSCRIBE", "params": [ "btcusdt@depth" ], "id": 312 } 响应 { "result": null, "id": 312 } 已订阅信息流 请求 { "method": "LIST_SUBSCRIPTIONS", "id": 3 } 响应 { "result": [ "btcusdt@aggTrade" ], "id": 3 } 设定属性 当前,唯一可以设置的属性是设置是否启用combined("组合")信息流。 当使用/ws/("原始信息流")进行连接时,combined属性设置为false,而使用 /stream/进行连接时则将属性设置为true。 请求 { "method": "SET_PROPERTY", "params": [ "combined", true ], "id": 5 } 响应 { "result": null "id": 5 } 检索属性 请求 { "method": "GET_PROPERTY", "params": [ "combined" ], "id": 2 } 响应 { "result": true, // Indicates that combined is set to true. "id": 2 } 错误信息 错误信息 描述 {"code": 0, "msg": "Unknown property"} SET_PROPERTY 或 GET_PROPERTY中应用的参数无效 {"code": 1, "msg": "Invalid value type: expected Boolean"} 仅接受true或false {"code": 2, "msg": "Invalid request: property name must be a string"} 提供的属性名无效 {"code": 2, "msg": "Invalid request: request ID must be an unsigned integer"} 参数id未提供或id值是无效类型 {"code": 2, "msg": "Invalid request: unknown variant %s, expected one of SUBSCRIBE, UNSUBSCRIBE, LIST_SUBSCRIPTIONS, SET_PROPERTY, GET_PROPERTY at line 1 column 28"} 错字提醒,或提供的值不是预期类型 {"code": 2, "msg": "Invalid request: too many parameters"} 数据中提供了不必要参数 {"code": 2, "msg": "Invalid request: property name must be a string"} 未提供属性名 {"code": 2, "msg": "Invalid request: missing field method at line 1 column 73"} 数据未提供method {"code":3,"msg":"Invalid JSON: expected value at line %s column %s"} JSON 语法有误. 按Symbol的完整Ticker 数据流描述 按Symbol刷新的24小时完整ticker信息 Stream Name @ticker 更新速度 2000ms 响应示例 { "e": "24hrTicker", // 事件类型 "E": 123456789, // 事件时间 "s": "BNBUSDT", // 交易对 "p": "0.0015", // 24小时价格变化 "P": "250.00", // 24小时价格变化(百分比) "w": "0.0018", // 平均价格 "c": "0.0025", // 最新成交价格 "Q": "10", // 最新成交价格上的成交量 "o": "0.0010", // 24小时内第一比成交的价格 "h": "0.0025", // 24小时内最高成交价 "l": "0.0010", // 24小时内最低成交价 "v": "10000", // 24小时内成交量 "q": "18", // 24小时内成交额 "O": 0, // 统计开始时间 "C": 86400000, // 统计关闭时间 "F": 0, // 24小时内第一笔成交交易ID "L": 18150, // 24小时内最后一笔成交交易ID "n": 18151 // 24小时内成交数 } K线 Stream Description K线stream逐秒推送所请求的K线种类(最新一根K线)的更新。推送间隔250毫秒(如有刷新) 订阅 Kline 需要提供间隔参数,最短为分钟线,最长为月线。支持以下间隔: m -> 分钟; h -> 小时; d -> 天; w -> 周; M -> 月 1m 3m 5m 15m 30m 1h 2h 4h 6h 8h 12h 1d 3d 1w 1M Stream Name @kline_ Update Speed 250ms Response Example { "e": "kline", // 事件类型 "E": 123456789, // 事件时间 "s": "BNBUSDT", // 交易对 "k": { "t": 123400000, // 这根K线的起始时间 "T": 123460000, // 这根K线的结束时间 "s": "BNBUSDT", // 交易对 "i": "1m", // K线间隔 "f": 100, // 这根K线期间第一笔成交ID "L": 200, // 这根K线期间末一笔成交ID "o": "0.0010", // 这根K线期间第一笔成交价 "c": "0.0020", // 这根K线期间末一笔成交价 "h": "0.0025", // 这根K线期间最高成交价 "l": "0.0015", // 这根K线期间最低成交价 "v": "1000", // 这根K线期间成交量 "n": 100, // 这根K线期间成交笔数 "x": false, // 这根K线是否完结(是否已经开始下一根K线) "q": "1.0000", // 这根K线期间成交额 "V": "500", // 主动买入的成交量 "Q": "0.500", // 主动买入的成交额 "B": "123456" // 忽略此参数 } } 连续合约K线 数据流描述 K线stream逐秒推送所请求的K线种类(最新一根K线)的更新。 合约类型: perpetual 永续合约 current_quarter 当季交割合约 next_quarter 次季交割合约 tradifi_perpetual 传统金融合约 订阅Kline需要提供间隔参数,最短为分钟线,最长为月线。支持以下间隔: s -> 秒; m -> 分钟; h -> 小时; d -> 天; w -> 周; M -> 月 1s 1m 3m 5m 15m 30m 1h 2h 4h 6h 8h 12h 1d 3d 1w 1M Stream Name _@continuousKline_ 更新速度 250ms 响应示例 { "e":"continuous_kline", // 事件类型 "E":1607443058651, // 事件时间 "ps":"BTCUSDT", // 标的交易对 "ct":"PERPETUAL", // 合约类型 "k":{ "t":1607443020000, // 这根K线的起始时间 "T":1607443079999, // 这根K线的结束时间 "i":"1m", // K线间隔 "f":116467658886, // 这根K线期间第一笔更新ID "L":116468012423, // 这根K线期间末一笔更新ID "o":"18787.00", // 这根K线期间第一笔成交价 "c":"18804.04", // 这根K线期间末一笔成交价 "h":"18804.04", // 这根K线期间最高成交价 "l":"18786.54", // 这根K线期间最低成交价 "v":"197.664", // 这根K线期间成交量 "n":543, // 这根K线期间成交笔数 "x":false, // 这根K线是否完结(是否已经开始下一根K线) "q":"3715253.19494", // 这根K线期间成交额 "V":"184.769", // 主动买入的成交量 "Q":"3472925.84746", // 主动买入的成交额 "B":"0" // 忽略此参数 } }