订阅Kline数据

  • channel: babelsub_spot$pairkline$period

成功建立和 WebSocket API 的连接之后,向 Server 发送如下格式的数据来订阅数据

{
  "event": "addChannel",
  "channel": "babel_sub_spot_$pair_kline_$period"
}
参数名称是否必须类型描述默认值取值范围
pairtruestring交易对BIX_BTC, BIX_ETH, BTC_USDT, ETH_USDT ......
periodtruestringK线周期1min, 5min, 15min, 30min, 1hour, 2hour, 4hour, 6hour, 12hour, day, week

正确订阅的例子

  • 正确订阅
{
  "event": "addChannel",
  "channel": "babel_sub_spot_BIX_BTC_kline_1min"
}
  • 订阅成功返回数据的例子
[{
  "channel": "babel_sub_spot_BIX_BTC_kline_1min",
  "data_type": 0, //订阅成功返回一次全量数据,之后返回增量 
  "data": 
  [
      {
          "time":1536310020000,
          "open":"0.00006614",
          "high":"0.00006659",
          "low":"0.00006604",
          "close":"0.00006652",
          "vol":"74056.89597166"
      },
      {
          "time":1536310080000,
          "open":"0.00006652",
          "high":"0.00006652",
          "low":"0.00006652",
          "close":"0.00006652",
          "vol":"100"
      }
  ]
}]
  • "data_type" 标识返回的数据是全量还是增量,0-返回全量数据,1-返回增量数据

  • data 说明

  "data": {
    "time": k线某周期开始时间,
    "count": 成交笔数,
    "open": 开盘价,
    "high": 最高价,
    "low": 最低价,
    "close": 收盘价
    "vol": 成交量
  }

之后每当 KLine 有更新时,client 会收到数据,例子

[{
  "channel": "babel_sub_spot_BIX_BTC_kline_1min",
  "data_type": 1, 
  "data": 
  [
      {
          "time":1536310020000,
          "open":"0.00006614",
          "high":"0.00006659",
          "low":"0.00006604",
          "close":"0.00006652",
          "vol":"74056.89597166"
      },
      {
          "time":1536310080000,
          "open":"0.00006652",
          "high":"0.00006652",
          "low":"0.00006652",
          "close":"0.00006652",
          "vol":"100"
      }
  ]
}]

注:返回增量k线时,每次都返回最新相邻两条kline

错误订阅的例子

  • 错误订阅(错误的 pair,大小写敏感)
{
  "event": "addChannel",
  "channel": "babel_sub_spot_bix_btc_kline_1min"
}
  • 订阅失败返回数据的例子
{
  "channel": "babel_sub_spot_bix_btc_kline_1min",
  "error": 
  {
       "code": "3009",
       "msg":"推送订阅channel不合法"
  }
}