全市场最优挂单信息
数据流描述
所有交易对交易对最优挂单信息

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/<streamName>
组合streams的URL格式为 /stream?streams=/<streamName1>/<streamName2>/<streamName3>
连接样例：
wss://fstream.binance.com/ws/bnbusdt@aggTrade
wss://fstream.binance.com/stream?streams=bnbusdt@aggTrade/btcusdt@markPrice
订阅组合streams时，事件payload会以这样的格式封装 {"stream":"<streamName<","data":<rawPayload>}

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
<symbol>@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
<symbol>@kline_<interval>

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
<pair>_<contractType>@continuousKline_<interval>

更新速度
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"					// 忽略此参数
  }
}


