# 交易频道

### 描述

获取最近的成交数据(taker订单)，有成交数据就推送，实时推送

首次订阅后，会先全量(snapshot)推送最近数据，然后推送增量数据(update)

<div className="api-aligning">

```json title="请求示例"
{
    "op": "subscribe",
    "args": [
        {
            "instType": "SPOT",
            "channel": "trade",
            "instId": "BTCUSDT"
        }
    ]
}
```

### 请求参数

| 参数名 | 参数类型 | 是否必须 | 描述                       | 
| :---- | :---- | :---- |:-------------------------|
| op | String | 是 | 操作，subscribe unsubscribe |
| args | List&lt;Object&gt; | 是 | 请求订阅的频道列表                |
| &gt; instType | String | 是 | 产品线类型, `SPOT`            |
| &gt; channel | String | 是 | 频道名,`trade`              |
| &gt; instId | String | 是 | 产品id 例如：ETHUSDT          |

</div>

<div className="api-aligning">

```json title="订阅返回示例"
{
    "event": "subscribe",
    "arg": {
        "instType": "SPOT",
        "channel": "trade",
        "instId": "BTCUSDT"
    }
}
```
### 返回参数

| 返回字段 | 参数类型 | 字段说明                                 | 
| :---- | :---- |:-------------------------------------|
| event | String | 事件，`subscribe` `unsubscribe` `error` |
| arg | Object | 订阅的频道                                |
| &gt; instType | String | 产品类型, `SPOT`                         |
| &gt; channel | String | 频道名, `trade`                         |
| &gt; instId | String | 是<br/>产品id 例如：ETHUSDT                |
| code | String | 错误码，错误时才会返回                          |
| msg | String | 错误消息                                 |

</div>

<div className="api-br-10"></div>

<div className="api-aligning">

```json title="推送返回示例"
{
    "action": "snapshot",
    "arg": {
        "instType": "SPOT",
        "channel": "trade",
        "instId": "BTCUSDT"
    },
    "data": [
        {
            "ts": "1695709835822",
            "price": "26293.4",
            "size": "0.0013",
            "side": "buy",
            "tradeId": "1000000000"
        }
    ],
    "ts": 1695711090682
}
```

### 推送数据参数

| 返回字段 | 参数类型 | 字段说明                               | 
| :---- | :---- |:-----------------------------------|
| arg | Object | 订阅成功的频道                            |  
| &gt; instType | String | 产品类型, `SPOT`                       |  
| &gt; channel | String | 频道名,`trade`                        |  
| &gt; instId | String | 产品id 例如：ETHUSDT                    |  
| action | String | 推送数据动作, `snapshot` or `update`     |  
| data | List&lt;Object&gt; | 订阅的数据                              |  
| &gt; tradeId | String | 成交ID                               |  
| &gt; ts | String | 成交时间，Unix时间戳的毫秒数格式，如 1597026383085 |  
| &gt; price | String | 成交价格                               |  
| &gt; size | String | 成交数量                               |  
| &gt; side | String | 成交方向                               |  

</div>
