Skip to content

WebSocket API Reference

topq-exchange edited this page Dec 18, 2019 · 1 revision

WebSocket API Reference

订阅 KLine 数据 $marketId_KLINE_$klineType_$symbol

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

{
   "dataType":"$marketId_KLINE_$klineType_$symbol", 
   "dataSize":"data size for you need"
   "action":"ADD"
}

参数名称 是否必须 类型 描述 默认值 取值范围
marketId true int 交易对所对应的市场id 如:281......
klineType true string K 线周期 1M, 5M, 15M, 30M, 1H, 1D
symbol true string 交易对 如:BTC_USDT,......
dataSize false int 数据量大小 0<=dataSize<=500; 在为0,或者不传时,仅推送1条数据

正确订阅的例子

正确订阅

{
    "dataType":"281_KLINE_15M_BTC_USDT",
    "dataSize":500, 
    "action":"ADD"
}

订阅数据成功返回的例子:

全量数据为二维数组,增量数据为一维数组

  • 全量数据
[
    [
        "K",         //数据类型,K线
        "281",       //市场id
        "btc_usdt",  //交易对
        "1569312900",//时间戳
        "9743.7",    //开盘价
        "9747.95",   //最高价
        "9732.75",   //最低价
        "9735.95",   //收盘价
        "26.92",     //成交量
        "-0.0795",   //涨跌幅
        "30.57",     //美元汇率
        "15M",       //KLine周期
        "false",     //是否转换数据
        "262139.72"  //成交额
    ],
    //more kline data here...
]
  • 增量数据
[
        "K",          //数据类型,K线
        "281",        //市场id
        "btc_usdt",   //交易对
        "1569312000", //时间戳
        "9754.22",    //开盘价
        "9766.21",    //最高价
        "9733.52",    //最低价 
        "9743.66",    //收盘价
        "245.48",     //成交量
        "-0.1083",    //涨跌幅
        "30.57",      //美元汇率
        "15M",        //K线周期
        "false",      //是否转换数据
        "2392181.46"  //成交额
    ],

订阅 Market Depth 数据 $marketId_ENTRUST_ADD_$symbol

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

{
   "dataType":"$marketId_ENTRUST_ADD_$symbol", 
   "dataSize":"data size for you need"
   "action":"ADD"
}

参数名称 是否必须 类型 描述 默认值 取值范围
marketId true int 交易对所对应的市场id 如:281......
symbol true string 交易对,与marketId 相对应的交易对名称 如:BTC_USDT,......
dataSize false int 数据量大小 0<=dataSize<=50; 在为0,或者不传时,仅推送1条数据

买盘卖盘各自最多50条,后续版本全量数据可能会发多次,接收到全量数据后清空替换掉所有盘口。

正确订阅的例子

正确订阅

{
    "dataType":"281_ENTRUST_ADD_BTC_USDT",
    "action":"ADD",
    "dataSize":100
}

订阅数据成功返回的例子:

全量数据为二维数组,增量数据为一维数组

  • 全量数据
[
    [
        "AE",                 //数据类型,全量 Market Depth
        "281",                //市场id
        "BTC_USDT",           //交易对
        "1569313206",         //时间戳
        {
            "asks":           //卖盘
            [          
                [
                    "12658.4",//价格
                    "0.1086"  //数量
                ],
                //more asks data here...
            ]
        },
        {
            "bids":           //买盘
            [
                [
                    "9734.25",//价格
                    "0.0026"  //数量
                ],
                //more bids data here...
            ]
        }
    ]
]
  • 增量数据

新增/删除

[
    "E",         //数据类型,增量Market Depth
    "281",       //市场id
    "1569313265",//时间戳
    "BTC_USDT",  //交易对
    "ASK",       //类型,ASK:卖盘数据,BID:买盘数据
    "9832.63",   //价格
    "3.6794"     //数量,如果数量为0 ,则此数据已在深度中删除
]

订阅 Trade Detail 数据 $marketId_TRADE_$symbol

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

{
   "dataType":"$marketId_TRADE_$symbol", 
   "dataSize":"data size for you need"
   "action":"ADD"
}

参数名称 是否必须 类型 描述 默认值 取值范围
marketId true int 交易对所对应的市场id 如:281......
symbol true string 交易对 如:BTC_USDT,......
dataSize false int 数据量大小 0<=dataSize<=50; 在为0,或者不传时,仅推送1条数据

全量数据最多50条

正确订阅的例子

正确订阅

{
    "dataType":"281_TRADE_BTC_USDT",
    "action":"ADD",
    "dataSize":20
}

订阅数据成功返回的例子:

  • 全量数据
[
    [
        "T",         //数据类型,全量Trade 数据
        "281",       //交易对
        "1569313211",//时间戳
        "BTC_USDT",  //交易对
        "ask",       //类型,ask:卖单,bid:买单
        "9735.95",   //价格
        "0.0008"     //数量
    ],
    // more Trade Detail data here...
]

  • 增量数据
[
    "T",         //数据类型,增量Trade数据 
    "281",       //交易对
    "1569313214",//时间戳
    "BTC_USDT",  //交易对
    "bid",       //类型,ask:卖单,bid:买单
    "9739.18",   //价格
    "0.1991"     //数量
]

订阅 Tickers 数据 ALL_TRADE_STATISTIC_24H

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

{
   "dataType":"ALL_TRADE_STATISTIC_24H", 
   "dataSize":"data size for you need"
   "action":"ADD"
}

参数名称 是否必须 类型 描述 默认值 取值范围
dataSize false int 数据量大小 0<=dataSize<=50; 在为0,或者不传时,仅推送1条数据

没有全量数据和增量数据的分别,只有一种格式。

正确订阅的例子

正确订阅

{
   "dataType":"ALL_TRADE_STATISTIC_24H",
   "dataSize":1,
   "action":"ADD"
}

订阅数据成功返回的例子:

  • 响应数据
{
    "trade_statistic":[
        [
            "4051",      //市场id
            "0.00619",   //最新成交价
            "0.00685",   //最高价
            "0.00584",   //最低价
            "59733830",  //24h 成交量
            "-3.43",     //24h  涨跌幅
            "[[1, 0.00619], [2, 0.00597], [3, 0.00596], [4, 0.0062], [5, 0.00619]]",//最近6小时收盘价列表
            "0.00591",   //买一价
            "0.0062",    //卖一价
            "375332.4314"//24h 成交额, 即 sum(每一笔成交价 * 该笔的成交量)
        ],
       ......// more ticker data here 
    ]
}

  • 最近6小时收盘价列表 数据解析
"[
   [1, 0.00619], //[序号,收盘价]
   [2, 0.00597], 
   [3, 0.00596], 
   [4, 0.0062], 
   [5, 0.00619]
]"

订阅 Ticker 数据 $marketId_TRADE_STATISTIC_24H

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

{
   "dataType":"4051_TRADE_STATISTIC_24H", 
   "dataSize":"data size for you need"
   "action":"ADD"
}

参数名称 是否必须 类型 描述 默认值 取值范围
marketId true int 交易对所对应的市场id 90......
dataSize false int 数据量大小 0<=dataSize<=50; 在为0,或者不传时,仅推送1条数据

没有全量数据和增量数据的分别,只有一种格式。

正确订阅的例子

正确订阅

{
   "dataType":"4051_TRADE_STATISTIC_24H",
   "dataSize":50,
   "action":"ADD"
}

订阅数据成功返回的例子:

  • 响应数据
      
{
    "trade_statistic":[
        [
            "4051",       //市场Id
            "0.00619",    //最新价
            "0.00685",    //最高价
            "0.00584",    //最低价
            "59733830",   //24h 成交量
            "-3.43",      //24h 涨跌幅
            "[[1, 0.00619], [2, 0.00597], [3, 0.00596], [4, 0.0062], [5, 0.00619]]",// 最近6h 收盘价列表
            "0.00591",    //买一价
            "0.0062",     //卖一价
            "375332.4314" //24h 成交额, 即 sum(每一笔成交价 * 该笔的成交量)
        ]
    ]
}

  • 最近6小时收盘价列表 数据解析
"[
   [1, 0.00619], //[序号,收盘价]
   [2, 0.00597], 
   [3, 0.00596], 
   [4, 0.0062], 
   [5, 0.00619]
]"

错误的Response

{
    "dataType":"90_TRADE_STATISTIC_24H",// 订阅的dataType
    "msg":"data not exist",//错误信息
    "code":"5016"// 错误码
}