概览
欢迎查看 Okcoin V5 API文档。我们提供完整的REST和WebSocket API以满足您的交易需求。
V5 API只适用于统一账户。
创建我的APIKey
点击跳转至官网创建V5APIKey的页面 创建我的APIKey
实盘交易
实盘API交易地址如下:
- REST:
https://www.okcoin.com/
- WebSocket公共频道:
wss://real.okcoin.com:8443/ws/v5/public
- WebSocket私有频道:
wss://real.okcoin.com:8443/ws/v5/private
交易时效性
由于网络延时或者Okcoin服务器繁忙会导致订单无法及时处理。如果您对交易时效性有较高的要求,可以灵活设置请求有效截止时间expTime
以达到你的要求。
(批量)下单,(批量)改单接口请求中如果包含expTime
,如果服务器当前系统时间超过expTime
,则该请求不会被服务器处理。
你应跟我们服务器系统时间同步。请用获取系统时间来获取系统时间。
REST
请求头中设置如下参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
expTime | String | 否 | 请求有效截止时间。Unix时间戳的毫秒数格式,如 1597026383085 |
目前支持如下接口:
请求示例
curl -X 'POST' \
'https://www.okcoin.com/api/v5/trade/order' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'OK-ACCESS-KEY: *****' \
-H 'OK-ACCESS-SIGN: *****'' \
-H 'OK-ACCESS-TIMESTAMP: *****'' \
-H 'OK-ACCESS-PASSPHRASE: *****'' \
-H 'expTime: 1597026383085' \ // 有效截止时间
-d '{
"instId": "BTC-USDT",
"tdMode": "cash",
"side": "buy",
"ordType": "limit",
"px": "1000",
"sz": "0.01"
}'
WebSocket
请求中设置如下参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
expTime | String | 否 | 请求有效截止时间。Unix时间戳的毫秒数格式,如 1597026383085 |
目前支持如下接口:
请求示例
{
"id": "1512",
"op": "order",
"expTime":"1597026383085", // 有效截止时间
"args": [{
"side": "buy",
"instId": "BTC-USDT",
"tdMode": "isolated",
"ordType": "market",
"sz": "100"
}]
}
REST API
请求验证
生成APIKey
在对任何请求进行签名之前,您必须通过交易网站创建一个APIKey。创建APIKey后,您将获得3个必须记住的信息:
- APIKey
- SecretKey
- Passphrase
APIKey和SecretKey将由平台随机生成和提供,Passphrase将由您提供以确保API访问的安全性。平台将存储Passphrase加密后的哈希值进行验证,但如果您忘记Passphrase,则无法恢复,请您通过交易网站重新生成新的APIKey。
发起请求
所有REST私有请求头都必须包含以下内容:
OK-ACCESS-KEY
字符串类型的APIKey。OK-ACCESS-SIGN
使用HMAC SHA256哈希函数获得哈希值,再使用Base-64编码(请参阅签名)。OK-ACCESS-TIMESTAMP
发起请求的时间(UTC),如:2020-12-08T09:08:57.715ZOK-ACCESS-PASSPHRASE
您在创建API密钥时指定的Passphrase。
所有请求都应该含有application/json类型内容,并且是有效的JSON。
签名
生成签名
OK-ACCESS-SIGN
的请求头是对timestamp + method + requestPath + body
字符串(+表示字符串连接),以及SecretKey,使用HMAC SHA256方法加密,通过Base-64编码输出而得到的。
如:sign=CryptoJS.enc.Base64.stringify(CryptoJS.HmacSHA256(timestamp + 'GET' + '/api/v5/account/balance?ccy=BTC', SecretKey))
其中,timestamp
的值与OK-ACCESS-TIMESTAMP
请求头相同,为ISO格式,如2020-12-08T09:08:57.715Z
。
method是请求方法,字母全部大写:GET/POST
。
requestPath是请求接口路径。如:/api/v5/account/balance
body是指请求主体的字符串,如果请求没有主体(通常为GET请求)则body可省略。如:{"instId":"BTC-USDT","lever":"5","mgnMode":"isolated"}
SecretKey为用户申请APIKey时所生成。如:22582BD0CFF14C41EDBF1AB98506286D
交易
交易
功能模块下的API接口需要身份验证。
下单
只有当您的账户有足够的资金才能下单。
限速: 60次/2s
限速规则:币币:UserID + instrumentID
HTTP请求
POST /api/v5/trade/order
请求示例
币币下单:
POST /api/v5/trade/order
body
{
"instId":"BTC-USD",
"tdMode":"cash",
"clOrdId":"b15",
"side":"buy",
"ordType":"limit",
"px":"2.15",
"sz":"2"
}
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instId | String | 是 | 产品ID,如 BTC-USD |
tdMode | String | 是 | 交易模式 非保证金模式: cash :非保证金 |
clOrdId | String | 否 | 客户自定义订单ID 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度要在1-32位之间。 |
tag | String | 否 | 订单标签 字母(区分大小写)与数字的组合,可以是纯字母、纯数字,且长度在1-16位之间。 |
side | String | 是 | 订单方向buy :买, sell :卖 |
ordType | String | 是 | 订单类型 market :市价单limit :限价单 post_only :只做maker单 fok :全部成交或立即取消 ioc :立即成交并取消剩余 |
sz | String | 是 | 委托数量 |
px | String | 可选 | 委托价格,仅适用于limit 、post_only 、fok 、ioc 类型的订单 |
tgtCcy | String | 否 | 市价单委托数量sz 的单位,仅适用于币币 市价订单base_ccy : 交易货币 ;quote_ccy :计价货币买单默认 quote_ccy , 卖单默认base_ccy |
banAmend | Boolean | 否 | 是否禁止币币市价改单,true 或 false,默认false 为true时,余额不足时,系统不会改单,下单会失败,仅适用于币币市价单 |
返回结果
{
"code":"0",
"msg":"",
"data":[
{
"clOrdId":"oktswap6",
"ordId":"12345689",
"tag":"",
"sCode":"0",
"sMsg":""
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
ordId | String | 订单ID |
clOrdId | String | 客户自定义订单ID |
tag | String | 订单标签 |
sCode | String | 事件执行结果的code,0代表成功 |
sMsg | String | 事件执行失败时的msg |
批量下单
每次最多可以批量提交20个新订单。请求参数应该按数组格式传递。
限速:300个/2s
限速规则:币币:UserID + instrumentID
HTTP请求
POST /api/v5/trade/batch-orders
请求示例
币币批量下单:
POST:/api/v5/trade/batch-orders
body
[
{
"instId":"BTC-USD",
"tdMode":"cash",
"clOrdId":"b15",
"side":"buy",
"ordType":"limit",
"px":"2.15",
"sz":"2"
},
{
"instId":"BTC-USD",
"tdMode":"cash",
"clOrdId":"b15",
"side":"buy",
"ordType":"limit",
"px":"2.15",
"sz":"2"
}
]
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instId | String | 是 | 产品ID,如 BTC-USD |
tdMode | String | 是 | 交易模式 非保证金模式: cash :非保证金 |
clOrdId | String | 否 | 客户自定义订单ID 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度要在1-32位之间。 |
tag | String | 否 | 订单标签 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度要在1-16位之间。 |
side | String | 是 | 订单方向 buy :买, sell :卖 |
ordType | String | 是 | 订单类型 market :市价单limit :限价单 post_only :只做maker单 fok :全部成交或立即取消 ioc :立即成交并取消剩余 |
sz | String | 是 | 委托数量 |
px | String | 否 | 委托价格,仅适用于limit 、post_only 、fok 、ioc 类型的订单 |
tgtCcy | String | 否 | 市价单委托数量sz 的单位,仅适用于币币 市价订单base_ccy : 交易货币 ;quote_ccy :计价货币买单默认 quote_ccy , 卖单默认base_ccy |
banAmend | Boolean | 否 | 是否禁止币币市价改单,true 或 false,默认false 为true时,余额不足时,系统不会改单,下单会失败,仅适用于币币市价单 |
返回结果
{
"code":"0",
"msg":"",
"data":[
{
"clOrdId":"oktswap6",
"ordId":"12345689",
"tag":"",
"sCode":"0",
"sMsg":""
},
{
"clOrdId":"oktswap7",
"ordId":"12344",
"tag":"",
"sCode":"0",
"sMsg":""
},
.......
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
ordId | String | 订单ID |
clOrdId | String | 客户自定义订单ID |
tag | String | 订单标签 |
sCode | String | 事件执行结果的code,0代表成功 |
sMsg | String | 事件执行失败时的msg |
撤单
撤销之前下的未完成订单。
限速: 60次/2s
限速规则:币币:UserID + instrumentID
HTTP请求
POST /api/v5/trade/cancel-order
请求示例
POST /api/v5/trade/cancel-order
body
{
"ordId":"2510789768709120",
"instId":"BTC-USD"
}
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instId | String | 是 | 产品ID,如 BTC-USD |
ordId | String | 可选 | 订单ID, ordId 和clOrdId 必须传一个,若传两个,以ordId 为主 |
clOrdId | String | 可选 | 用户自定义ID |
返回结果
{
"code":"0",
"msg":"",
"data":[
{
"clOrdId":"oktswap6",
"ordId":"12345689",
"sCode":"0",
"sMsg":""
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
ordId | String | 订单ID |
clOrdId | String | 客户自定义订单ID |
sCode | String | 事件执行结果的code,0代表成功 |
sMsg | String | 事件执行失败时的msg |
批量撤单
撤销未完成的订单,每次最多可以撤销20个订单。请求参数应该按数组格式传递。
限速:300个/2s
限速规则:币币:UserID + instrumentID
HTTP请求
POST /api/v5/trade/cancel-batch-orders
请求示例
POST /api/v5/trade/cancel-batch-orders
body
[
{
"instId":"BTC-USD",
"ordId":"12312"
},
{
"instId":"BTC-USD",
"ordId":"1212"
}
]
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instId | String | 是 | 产品ID,如 BTC-USD |
ordId | String | 可选 | 订单ID, ordId 和clOrdId 必须传一个,若传两个,以ordId 为主 |
clOrdId | String | 可选 | 用户自定义ID |
返回结果
{
"code":"0",
"msg":"",
"data":[
{
"clOrdId":"oktswap6",
"ordId":"12345689",
"sCode":"0",
"sMsg":""
},
{
"clOrdId":"oktswap7",
"ordId":"12344",
"sCode":"0",
"sMsg":""
},
.......
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
ordId | String | 订单ID |
clOrdId | String | 客户自定义订单ID |
sCode | String | 事件执行结果的code,0代表成功 |
sMsg | String | 事件执行失败时的msg |
修改订单
修改当前未成交的挂单
限速: 60次/2s
限速规则:币币:UserID + instrumentID
HTTP请求
POST /api/v5/trade/amend-order
请求示例
POST /api/v5/trade/amend-order
body
{
"ordId":"2510789768709120",
"newSz":"2",
"instId":"BTC-USD"
}
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instId | String | 是 | 产品ID |
cxlOnFail | Boolean | 否 | false :不自动撤单 true :自动撤单 当订单修改失败时,该订单是否需要自动撤销。默认为false |
ordId | String | 可选 | 订单ID, ordId 和clOrdId 必须传一个,若传两个,以ordId 为主 |
clOrdId | String | 可选 | 用户自定义order ID |
reqId | String | 否 | 用户自定义修改事件ID 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度要在1-32位之间。 |
newSz | String | 可选 | 修改的新数量,newSz 和newPx 不可同时为空。对于部分成交订单,该数量应包含已成交数量。 |
newPx | String | 可选 | 修改的新价格 |
返回结果
{
"code":"0",
"msg":"",
"data":[
{
"clOrdId":"",
"ordId":"12344",
"reqId":"b12344",
"sCode":"0",
"sMsg":""
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
ordId | String | 订单ID |
clOrdId | String | 用户自定义ID |
reqId | String | 用户自定义修改事件ID |
sCode | String | 事件执行结果的code,0代表成功 |
sMsg | String | 事件执行失败时的msg |
批量修改订单
修改未完成的订单,一次最多可批量修改20个订单。请求参数应该按数组格式传递。
限速:300个/2s
限速规则:币币:UserID + instrumentID
HTTP请求
POST /api/v5/trade/amend-batch-orders
请求示例
POST /api/v5/trade/amend-batch-orders
body
[
{
"ordId":"2510789768709120",
"newSz":"2",
"instId":"BTC-USD"
},
{
"ordId":"2510789768709121",
"newSz":"2",
"instId":"BTC-USD"
}
]
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instId | String | 是 | 产品ID |
cxlOnFail | Boolean | 否 | false :不自动撤单 true :自动撤单 当订单修改失败时,该订单是否需要自动撤销,默认为false |
ordId | String | 可选 | 订单ID, ordId 和clOrdId 必须传一个,若传两个,以ordId 为主 |
clOrdId | String | 可选 | 用户自定义order ID |
reqId | String | 否 | 用户自定义修改事件ID 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度要在1-32位之间。 |
newSz | String | 可选 | 修改的新数量,newSz 和newPx 不可同时为空。对于部分成交订单,该数量应包含已成交数量。 |
newPx | String | 可选 | 修改的新价格 |
返回结果
{
"code":"0",
"msg":"",
"data":[
{
"clOrdId":"oktswap6",
"ordId":"12345689",
"reqId":"b12344",
"sCode":"0",
"sMsg":""
},
{
"clOrdId":"oktswap7",
"ordId":"12344",
"reqId":"b12344",
"sCode":"0",
"sMsg":""
},
.......
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
ordId | String | 订单ID |
clOrdId | String | 用户自定义ID |
reqId | String | 用户自定义修改事件ID |
sCode | String | 事件执行结果的code,0代表成功 |
sMsg | String | 事件执行失败时的msg |
获取订单信息
查订单信息
限速: 60次/2s
限速规则:币币:UserID + instrumentID
HTTP请求
GET /api/v5/trade/order
请求示例
GET /api/v5/trade/order?ordId=2510789768709120&instId=BTC-USD
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instId | String | 是 | 产品ID ,如BTC-USD |
ordId | String | 可选 | 订单ID , ordId 和clOrdId 必须传一个,若传两个,以ordId 为主 |
clOrdId | String | 可选 | 用户自定义ID |
返回结果
{
"code": "0",
"data": [
{
"accFillSz": "1.6342",
"avgPx": "0.9995",
"cTime": "1672814726198",
"category": "normal",
"ccy": "",
"clOrdId": "",
"fee": "-0.00245007435",
"feeCcy": "USD",
"fillPx": "0.9995",
"fillSz": "1.6342",
"fillTime": "1672814726201",
"instId": "USDT-USD",
"instType": "SPOT",
"lever": "",
"ordId": "530758662663180288",
"ordType": "market",
"pnl": "0",
"posSide": "net",
"px": "",
"rebate": "0",
"rebateCcy": "USDT",
"reduceOnly": "false",
"side": "sell",
"slOrdPx": "",
"slTriggerPx": "",
"slTriggerPxType": "",
"source": "",
"state": "filled",
"sz": "1.6342",
"tag": "",
"tdMode": "cash",
"tgtCcy": "base_ccy",
"tpOrdPx": "",
"tpTriggerPx": "",
"tpTriggerPxType": "",
"tradeId": "3225651",
"uTime": "1672814726203"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
instType | String | 产品类型SPOT :币币 |
instId | String | 产品ID |
tgtCcy | String | 币币市价单委托数量sz 的单位base_ccy : 交易货币 ;quote_ccy :计价货币仅适用于 币币 市价订单默认买单为 quote_ccy ,卖单为base_ccy |
ccy | String | 保证金币种,未启用,请忽略。 |
ordId | String | 订单ID |
clOrdId | String | 客户自定义订单ID |
tag | String | 订单标签 |
px | String | 委托价格 |
sz | String | 委托数量 |
pnl | String | 收益,未启用,请忽略。 |
ordType | String | 订单类型 market :市价单limit :限价单 post_only :只做maker单 fok :全部成交或立即取消 ioc :立即成交并取消剩余 |
side | String | 订单方向 |
posSide | String | 持仓方向,未启用,请忽略。 |
tdMode | String | 交易模式 |
accFillSz | String | 累计成交数量 |
fillPx | String | 最新成交价格,如果成交数量为0,该字段也为0 |
tradeId | String | 最新成交ID |
fillSz | String | 最新成交数量 |
fillTime | String | 最新成交时间 |
avgPx | String | 成交均价,如果成交数量为0,该字段也为0 |
state | String | 订单状态 canceled :撤单成功live :等待成交 partially_filled :部分成交filled :完全成交 |
lever | String | 杠杆倍数,未启用,请忽略。 |
tpTriggerPx | String | 止盈触发价 |
tpTriggerPxType | String | 止盈触发价类型last :最新价格 |
tpOrdPx | String | 止盈委托价 |
slTriggerPx | String | 止损触发价 |
slTriggerPxType | String | 止损触发价类型last :最新价格 |
slOrdPx | String | 止损委托价 |
feeCcy | String | 交易手续费币种 |
fee | String | 手续费与返佣 为订单交易累计的手续费,平台向用户收取的交易手续费,为负数。如: -0.01 |
rebateCcy | String | 返佣金币种 |
source | String | 订单来源 13 :策略委托单触发后的生成的限价单 |
rebate | String | 返佣金额,仅适用于币币,平台向达到指定lv交易等级的用户支付的挂单奖励(返佣),如果没有返佣金,该字段为“”。手续费返佣为正数,如:0.01 |
category | String | 订单种类 normal :普通委托 |
uTime | String | 订单状态更新时间,Unix时间戳的毫秒数格式,如:1597026383085 |
cTime | String | 订单创建时间,Unix时间戳的毫秒数格式, 如 :1597026383085 |
获取未成交订单列表
获取当前账户下所有未成交订单信息
限速: 60次/2s
限速规则:UserID
HTTP请求
GET /api/v5/trade/orders-pending
请求示例
GET /api/v5/trade/orders-pending?ordType=post_only,fok,ioc&instType=SPOT
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instType | String | 否 | 产品类型SPOT :币币 |
instId | String | 否 | 产品ID,如BTC-USD |
ordType | String | 否 | 订单类型 market :市价单limit :限价单 post_only :只做maker单 fok :全部成交或立即取消 ioc :立即成交并取消剩余 |
state | String | 否 | 订单状态live :等待成交 partially_filled :部分成交 |
after | String | 否 | 请求此ID之前(更旧的数据)的分页内容,传的值为对应接口的ordId |
before | String | 否 | 请求此ID之后(更新的数据)的分页内容,传的值为对应接口的ordId |
limit | String | 否 | 返回结果的数量,最大为100,默认100条 |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"accFillSz": "0",
"avgPx": "",
"cTime": "1618235248028",
"category": "normal",
"ccy": "",
"clOrdId": "",
"fee": "0",
"feeCcy": "BTC",
"fillPx": "",
"fillSz": "0",
"fillTime": "",
"instId": "BTC-USDT",
"instType": "SPOT",
"lever": "5.6",
"ordId": "301835739059335168",
"ordType": "limit",
"pnl": "0",
"posSide": "net",
"px": "59200",
"rebate": "0",
"rebateCcy": "USDT",
"side": "buy",
"slOrdPx": "",
"slTriggerPx": "",
"slTriggerPxType": "last",
"source": "",
"state": "live",
"sz": "1",
"tag": "",
"tdMode": "cross",
"tgtCcy": "",
"tpOrdPx": "",
"tpTriggerPx": "",
"tpTriggerPxType": "last",
"tradeId": "",
"uTime": "1618235248028"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
instType | String | 产品类型 |
instId | String | 产品ID |
tgtCcy | String | 币币市价单委托数量sz 的单位base_ccy : 交易货币 ;quote_ccy :计价货币仅适用于 币币 市价订单默认买单为 quote_ccy ,卖单为base_ccy |
ccy | String | 保证金币种,未启用,请忽略。 |
ordId | String | 订单ID |
clOrdId | String | 客户自定义订单ID |
tag | String | 订单标签 |
px | String | 委托价格 |
sz | String | 委托数量 |
pnl | String | 收益,未启用,请忽略。 |
ordType | String | 订单类型market :市价单limit :限价单 post_only :只做maker单 fok :全部成交或立即取消 ioc :立即成交并取消剩余 |
side | String | 订单方向 |
posSide | String | 持仓方向,未启用,请忽略。 |
tdMode | String | 交易模式 |
accFillSz | String | 累计成交数量 |
fillPx | String | 最新成交价格。如果还没成交,系统返回0 。 |
tradeId | String | 最新成交ID |
fillSz | String | 最新成交数量 |
fillTime | String | 最新成交时间 |
avgPx | String | 成交均价。如果还没成交,系统返回0 。 |
state | String | 订单状态live :等待成交 partially_filled :部分成交 |
lever | String | 杠杆倍数,未启用,请忽略。 |
tpTriggerPx | String | 止盈触发价 |
tpTriggerPxType | String | 止盈触发价类型last :最新价格 |
slTriggerPx | String | 止损触发价 |
slTriggerPxType | String | 止损触发价类型last :最新价格 |
slOrdPx | String | 止损委托价 |
feeCcy | String | 交易手续费币种 |
fee | String | 手续费与返佣 对于币币,为订单交易累计的手续费,平台向用户收取的交易手续费,为负数。如: -0.01 |
rebateCcy | String | 返佣金币种 |
source | String | 订单来源 13 :策略委托单触发后的生成的限价单 |
rebate | String | 返佣金额,仅适用于币币,平台向达到指定lv交易等级的用户支付的挂单奖励(返佣),如果没有返佣金,该字段为“”。手续费返佣为正数 ,如:0.01 |
category | String | 订单种类 normal : 普通委托 |
uTime | String | 订单状态更新时间,Unix时间戳的毫秒数格式,如 1597026383085 |
cTime | String | 订单创建时间,Unix时间戳的毫秒数格式,如 1597026383085 |
获取历史订单记录(近七天)
获取最近7天的已经完结状态的订单数据,已经撤销的未成交单 只保留2小时
限速: 40次/2s
限速规则:UserID
HTTP请求
GET /api/v5/trade/orders-history
请求示例
GET /api/v5/trade/orders-history?ordType=post_only,fok,ioc&instType=SPOT
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instType | String | 是 | 产品类型SPOT :币币 |
instId | String | 否 | 产品ID,如BTC-USD |
ordType | String | 否 | 订单类型 market :市价单limit :限价单 post_only :只做maker单 fok :全部成交或立即取消 ioc :立即成交并取消剩余 |
state | String | 否 | 订单状态canceled :撤单成功 filled :完全成交 |
after | String | 否 | 请求此ID之前(更旧的数据)的分页内容,传的值为对应接口的ordId |
before | String | 否 | 请求此ID之后(更新的数据)的分页内容,传的值为对应接口的ordId |
limit | String | 否 | 返回结果的数量,最大为100,默认100条 |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"instType": "SPOT",
"instId": "BTC-USD",
"ccy": "",
"ordId": "312269865356374016",
"clOrdId": "b1",
"tag": "",
"px": "999",
"sz": "3",
"ordType": "limit",
"side": "buy",
"posSide": "net",
"tdMode": "cash",
"accFillSz": "0",
"fillPx": "0",
"tradeId": "0",
"fillSz": "0",
"fillTime": "0",
"state": "filled",
"avgPx": "0",
"lever": "",
"tpTriggerPx": "",
"tpTriggerPxType": "last",
"tpOrdPx": "",
"slTriggerPx": "",
"slTriggerPxType": "last",
"slOrdPx": "",
"feeCcy": "",
"fee": "",
"rebateCcy": "",
"source":"",
"rebate": "",
"tgtCcy":"",
"pnl": "",
"category": "",
"uTime": "1597026383085",
"cTime": "1597026383085"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
instType | String | 产品类型 |
instId | String | 产品ID |
tgtCcy | String | 币币市价单委托数量sz 的单位base_ccy : 交易货币 ;quote_ccy :计价货币仅适用于 币币 市价订单默认买单为 quote_ccy ,卖单为base_ccy |
ccy | String | 保证金币种,未启用,请忽略。 |
ordId | String | 订单ID |
clOrdId | String | 客户自定义订单ID |
tag | String | 订单标签 |
px | String | 委托价格 |
sz | String | 委托数量 |
ordType | String | 订单类型 market :市价单limit :限价单 post_only :只做maker单 fok :全部成交或立即取消 ioc :立即成交并取消剩余 |
side | String | 订单方向 |
posSide | String | 持仓方向,未启用,请忽略。 |
tdMode | String | 交易模式 |
accFillSz | String | 累计成交数量 |
fillPx | String | 最新成交价格,如果成交数量为0,该字段也为0 |
tradeId | String | 最新成交ID |
fillSz | String | 最新成交数量 |
fillTime | String | 最新成交时间 |
avgPx | String | 成交均价,如果成交数量为0,该字段也为0 |
state | String | 订单状态 canceled :撤单成功 filled :完全成交 |
lever | String | 杠杆倍数,未启用,请忽略。 |
tpTriggerPx | String | 止盈触发价 |
tpTriggerPxType | String | 止盈触发价类型last :最新价格 |
tpOrdPx | String | 止盈委托价 |
slTriggerPx | String | 止损触发价 |
slTriggerPxType | String | 止损触发价类型last :最新价格 |
slOrdPx | String | 止损委托价 |
feeCcy | String | 交易手续费币种 |
fee | String | 手续费与返佣 对于币币,为订单交易累计的手续费,平台向用户收取的交易手续费,为负数。如: -0.01 |
rebateCcy | String | 返佣金币种 |
source | String | 订单来源 13 :策略委托单触发后的生成的限价单 |
rebate | String | 返佣金额,仅适用于币币,平台向达到指定lv交易等级的用户支付的挂单奖励(返佣),如果没有返佣金,该字段为“”。手续费返佣为正数 ,如:0.01 |
pnl | String | 收益,未启用,请忽略。 |
category | String | 订单种类 normal :普通委托 |
uTime | String | 订单状态更新时间,Unix时间戳的毫秒数格式,如1597026383085 |
cTime | String | 订单创建时间,Unix时间戳的毫秒数格式,如 1597026383085 |
获取历史订单记录(近三个月)
获取最近3个月的已经完结状态的订单数据
限速: 20次/2s
限速规则:UserID
HTTP请求
GET /api/v5/trade/orders-history-archive
请求示例
GET /api/v5/trade/orders-history-archive?ordType=post_only,fok,ioc&instType=SPOT
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instType | String | 是 | 产品类型SPOT :币币 |
instId | String | 否 | 产品ID,如BTC-USD |
ordType | String | 否 | 订单类型 market :市价单limit :限价单 post_only :只做maker单 fok :全部成交或立即取消 ioc :立即成交并取消剩余 |
state | String | 否 | 订单状态canceled :撤单成功 filled :完全成交 |
after | String | 否 | 请求此ID之前(更旧的数据)的分页内容,传的值为对应接口的ordId |
before | String | 否 | 请求此ID之后(更新的数据)的分页内容,传的值为对应接口的ordId |
limit | String | 否 | 返回结果的数量,最大为100,默认100条 |
返回结果
{
"code": "0",
"data": [
{
"accFillSz": "1.6342",
"avgPx": "0.9995",
"cTime": "1672814726198",
"category": "normal",
"ccy": "",
"clOrdId": "",
"fee": "-0.00245007435",
"feeCcy": "USD",
"fillPx": "0.9995",
"fillSz": "1.6342",
"fillTime": "1672814726201",
"instId": "USDT-USD",
"instType": "SPOT",
"lever": "",
"ordId": "530758662663180288",
"ordType": "market",
"pnl": "0",
"posSide": "",
"px": "",
"rebate": "0",
"rebateCcy": "USDT",
"reduceOnly": "false",
"side": "sell",
"slOrdPx": "",
"slTriggerPx": "",
"slTriggerPxType": "",
"source": "",
"state": "filled",
"sz": "1.6342",
"tag": "",
"tdMode": "cash",
"tgtCcy": "base_ccy",
"tpOrdPx": "",
"tpTriggerPx": "",
"tpTriggerPxType": "",
"tradeId": "3225651",
"uTime": "1672814726859"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
instType | String | 产品类型 |
instId | String | 产品ID |
tgtCcy | String | 币币市价单委托数量sz 的单位base_ccy : 交易货币 ;quote_ccy :计价货币仅适用于 币币 市价订单默认买单为 quote_ccy ,卖单为base_ccy |
ccy | String | 保证金币种,未启用,请忽略。 |
ordId | String | 订单ID |
clOrdId | String | 客户自定义订单ID |
tag | String | 订单标签 |
px | String | 委托价格 |
sz | String | 委托数量 |
ordType | String | 订单类型 market :市价单limit :限价单 post_only :只做maker单 fok :全部成交或立即取消 ioc :立即成交并取消剩余 |
side | String | 订单方向 |
posSide | String | 持仓方向,未启用,请忽略。 |
tdMode | String | 交易模式 |
accFillSz | String | 累计成交数量 |
fillPx | String | 最新成交价格,如果成交数量为0,该字段也为0 |
tradeId | String | 最新成交ID |
fillSz | String | 最新成交数量 |
fillTime | String | 最新成交时间 |
avgPx | String | 成交均价,如果成交数量为0,该字段也为0 |
state | String | 订单状态 canceled :撤单成功 filled :完全成交 |
lever | String | 杠杆倍数,未启用,请忽略。 |
tpTriggerPx | String | 止盈触发价 |
tpTriggerPxType | String | 止盈触发价类型last :最新价格 |
tpOrdPx | String | 止盈委托价 |
slTriggerPx | String | 止损触发价 |
slTriggerPxType | String | 止损触发价类型last :最新价格 |
slOrdPx | String | 止损委托价 |
feeCcy | String | 交易手续费币种 |
fee | String | 手续费与返佣 对于币币,为订单交易累计的手续费,平台向用户收取的交易手续费,为负数。如: -0.01 |
rebateCcy | String | 返佣金币种 |
rebate | String | 返佣金额,仅适用于币币,平台向达到指定lv交易等级的用户支付的挂单奖励(返佣),如果没有返佣金,该字段为“”。手续费返佣为正数 ,如:0.01 |
pnl | String | 收益,未启用,请忽略。 |
source | String | 订单来源 13 :策略委托单触发后的生成的限价单 |
category | String | 订单种类 normal :普通委托 |
uTime | String | 订单状态更新时间,Unix时间戳的毫秒数格式,如 1597026383085 |
cTime | String | 订单创建时间,Unix时间戳的毫秒数格式,如 1597026383085 |
获取成交明细(近三天)
获取近3天的订单成交明细信息
限速:60次/2s
限速规则:UserID
HTTP 请求
GET /api/v5/trade/fills
请求示例
GET /api/v5/trade/fills
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instType | String | 否 | 产品类型SPOT :币币 |
instId | String | 否 | 产品 ID,如BTC-USD |
ordId | String | 否 | 订单 ID |
after | String | 否 | 请求此 ID 之前(更旧的数据)的分页内容,传的值为对应接口的billId |
before | String | 否 | 请求此 ID 之后(更新的数据)的分页内容,传的值为对应接口的billId |
begin | String | 否 | 筛选的开始时间戳,Unix 时间戳为毫秒数格式,如 1597026383085 |
end | String | 否 | 筛选的结束时间戳,Unix 时间戳为毫秒数格式,如 1597027383085 |
limit | String | 否 | 返回结果的数量,最大为100,默认100条 |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"instType": "SPOT",
"instId": "BTC-USD",
"tradeId": "123",
"ordId": "312269865356374016",
"clOrdId": "b16",
"billId": "1111",
"tag": "",
"fillPx": "999",
"fillSz": "3",
"side": "buy",
"posSide": "net",
"execType": "M",
"feeCcy": "",
"fee": "",
"ts": "1597026383085"
},
{
"instType": "SPOT",
"instId": "BTC-USD",
"tradeId": "123",
"ordId": "312269865356374016",
"clOrdId": "b16",
"billId": "1111",
"tag": "",
"fillPx": "999",
"fillSz": "3",
"side": "buy",
"posSide": "net",
"execType": "M",
"feeCcy": "",
"fee": "",
"ts": "1597026383085"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
instType | String | 产品类型 |
instId | String | 产品 ID |
tradeId | String | 最新成交 ID |
ordId | String | 订单 ID |
clOrdId | String | 用户自定义订单ID |
billId | String | 账单 ID |
tag | String | 订单标签 |
fillPx | String | 最新成交价格 |
fillSz | String | 最新成交数量 |
side | String | 订单方向 buy :买 sell :卖 |
posSide | String | 持仓方向,未启用,请忽略。 |
execType | String | 流动性方向 T :taker M :maker |
feeCcy | String | 交易手续费币种或者返佣金币种 |
fee | String | 手续费金额或者返佣金额,手续费扣除为‘负数’,如-0.01;手续费返佣为‘正数’,如 0.01 |
ts | String | 成交明细产生时间,Unix时间戳的毫秒数格式,如1597026383085 |
获取成交明细(近三个月)
获取近3个月订单成交明细信息
限速: 10 次/2s
限速规则:UserID
HTTP 请求
GET /api/v5/trade/fills-history
请求示例
GET /api/v5/trade/fills-history
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instType | String | 是 | 产品类型SPOT :币币 |
instId | String | 否 | 产品 ID,如BTC-USD |
ordId | String | 否 | 订单 ID |
after | String | 否 | 请求此 ID 之前(更旧的数据)的分页内容,传的值为对应接口的billId |
before | String | 否 | 请求此 ID 之后(更新的数据)的分页内容,传的值为对应接口的billId |
begin | String | 否 | 筛选的开始时间戳,Unix 时间戳为毫秒数格式,如 1597026383085 |
end | String | 否 | 筛选的结束时间戳,Unix 时间戳为毫秒数格式,如 1597027383085 |
limit | String | 否 | 返回结果的数量,最大为100,默认100条 |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"instType": "SPOT",
"instId": "BTC-USD",
"tradeId": "123",
"ordId": "312269865356374016",
"clOrdId": "b16",
"billId": "1111",
"tag": "",
"fillPx": "999",
"fillSz": "3",
"side": "buy",
"posSide": "net",
"execType": "M",
"feeCcy": "",
"fee": "",
"ts": "1597026383085"
},
{
"instType": "SPOT",
"instId": "BTC-USD",
"tradeId": "123",
"ordId": "312269865356374016",
"clOrdId": "b16",
"billId": "1111",
"tag": "",
"fillPx": "999",
"fillSz": "3",
"side": "buy",
"posSide": "net",
"execType": "M",
"feeCcy": "",
"fee": "",
"ts": "1597026383085"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
instType | String | 产品类型 |
instId | String | 产品 ID |
tradeId | String | 最新成交 ID |
ordId | String | 订单 ID |
clOrdId | String | 用户自定义订单ID |
billId | String | 账单 ID |
tag | String | 订单标签 |
fillPx | String | 最新成交价格 |
fillSz | String | 最新成交数量 |
side | String | 订单方向 buy :买 sell :卖 |
posSide | String | 持仓方向,未启用,请忽略。 |
execType | String | 流动性方向 T :taker M :maker |
feeCcy | String | 交易手续费币种或者返佣金币种 |
fee | String | 手续费金额或者返佣金额 ,手续费扣除 为 ‘负数’,如 -0.01 ; 手续费返佣 为 ‘正数’,如 0.01 |
ts | String | 成交明细产生时间,Unix 时间戳的毫秒数格式,如 1597026383085 |
策略委托下单
提供单向止盈止损委托、双向止盈止损委托、计划委托、冰山委托、时间加权委托、移动止盈止损委托
限速: 20次/2s
限速规则:币币:UserID + instrumentID
HTTP请求
POST /api/v5/trade/order-algo
请求示例
POST /api/v5/trade/order-algo
body
{
"instId":"BTC-USDT",
"tdMode":"cash",
"side":"buy",
"ordType":"conditional",
"sz":"2",
"tpTriggerPx":"15",
"tpOrdPx":"18"
}
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instId | String | 是 | 产品ID,如 BTC-USD |
tdMode | String | 是 | 交易模式 非保证金模式 cash :非保证金 |
side | String | 是 | 订单方向buy :买sell :卖 |
ordType | String | 是 | 订单类型conditional :单向止盈止损oco :双向止盈止损trigger :计划委托move_order_stop :移动止盈止损iceberg :冰山委托twap :时间加权委托 |
sz | String | 是 | 委托数量 |
tag | String | 否 | 订单标签 字母(区分大小写)与数字的组合,可以是纯字母、纯数字,且长度在1-16位之间。 |
tgtCcy | String | 否 | 委托数量的类型base_ccy : 交易货币 ;quote_ccy :计价货币仅适用于 币币 单向止盈止损市价买单默认买为 计价货币 ,卖为交易货币 |
clOrdId | String | 否 | 客户自定义订单ID 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度要在1-32位之间。 |
止盈止损
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
tpTriggerPx | String | 否 | 止盈触发价,如果填写此参数,必须填写 止盈委托价 |
tpTriggerPxType | String | 否 | 止盈触发价类型last :最新价格默认为 last |
tpOrdPx | String | 否 | 止盈委托价,如果填写此参数,必须填写 止盈触发价 委托价格为-1时,执行市价止盈 |
slTriggerPx | String | 否 | 止损触发价,如果填写此参数,必须填写 止损委托价 |
slTriggerPxType | String | 否 | 止损触发价类型last :最新价格默认为 last |
slOrdPx | String | 否 | 止损委托价,如果填写此参数,必须填写 止损触发价 委托价格为-1时,执行市价止损 |
计划委托
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
triggerPx | String | 是 | 计划委托触发价格 |
orderPx | String | 是 | 委托价格 委托价格为 -1 时,执行市价委托 |
triggerPxType | String | 否 | 计划委托触发价格类型last :最新价格默认为 last |
移动止盈止损
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
callbackRatio | String | 可选 | 回调幅度的比例,如 0.05 callbackRatio 和callbackSpread 只能传入一个 |
callbackSpread | String | 可选 | 回调幅度的价距 |
activePx | String | 否 | 激活价格 |
冰山委托
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
pxVar | String | 可选 | 挂单价距离盘口的比例 pxVar 和pxSpread 只能传入一个 |
pxSpread | String | 可选 | 挂单价距离盘口的价距 |
szLimit | String | 是 | 单笔数量 |
pxLimit | String | 是 | 挂单限制价 |
时间加权
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
pxVar | String | 可选 | 吃单价优于盘口的比例 pxVar 和pxSpread 只能传入一个 |
pxSpread | String | 可选 | 吃单单价优于盘口的价距 |
szLimit | String | 是 | 单笔数量 |
pxLimit | String | 是 | 挂单限制价 |
timeInterval | String | 是 | 下单间隔 |
返回结果
{
"code":"0",
"msg":"",
"data":[
{
"algoId":"12345689",
"clOrdId": "",
"sCode":"0",
"sMsg":""
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
algoId | String | 策略委托单ID |
clOrdId | String | 客户自定义订单ID |
sCode | String | 事件执行结果的code,0代表成功 |
sMsg | String | 事件执行失败时的msg |
撤销策略委托订单
撤销策略委托订单(不包含冰山委托、时间加权、移动止盈止损等高级策略订单),每次最多可以撤销10个策略委托单
限速: 20次/2s
限速规则:币币:UserID + instrumentID
HTTP请求
POST /api/v5/trade/cancel-algos
请求示例
POST /api/v5/trade/cancel-algos
body
[
{
"algoId":"198273485",
"instId":"BTC-USD"
},
{
"algoId":"198273485",
"instId":"BTC-USD"
}
]
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
algoId | String | 是 | 策略委托单ID |
instId | String | 是 | 产品ID 如 BTC-USD |
返回结果
{
"code":"0",
"msg":"",
"data":[
{
"algoId":"1234",
"sCode":"0",
"sMsg":""
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
algoId | String | 订单ID |
sCode | String | 事件执行结果的code,0代表成功 |
sMsg | String | 事件执行失败时的msg |
撤销高级策略委托订单
撤销冰山委托、时间加权、移动止盈止损委托订单,每次最多可以撤销10个策略委托单
限速: 20次/2s
限速规则:币币:UserID + instrumentID
HTTP请求
POST /api/v5/trade/cancel-advance-algos
请求示例
POST /api/v5/trade/cancel-advance-algos
body
[
{
"algoId":"198273485",
"instId":"BTC-USD"
},
{
"algoId":"198273485",
"instId":"BTC-USD"
}
]
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
algoId | String | 是 | 策略委托单ID |
instId | String | 是 | 产品ID 如 BTC-USD |
返回结果
{
"code":"0",
"msg":"",
"data":[
{
"algoId":"1234",
"sCode":"0",
"sMsg":""
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
algoId | String | 订单ID |
sCode | String | 事件执行结果的code,0代表成功 |
sMsg | String | 事件执行失败时的msg |
获取未完成策略委托单列表
获取当前账户下未触发的策略委托单列表
限速: 20次/2s
限速规则:UserID
HTTP请求
GET /api/v5/trade/orders-algo-pending
请求示例
GET /api/v5/trade/orders-algo-pending?ordType=conditional
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
algoId | String | 否 | 策略委托单ID |
instType | String | 否 | 产品类型SPOT :币币 |
instId | String | 否 | 产品ID,BTC-USD |
ordType | String | 是 | 订单类型 conditional :单向止盈止损oco :双向止盈止损 trigger :计划委托move_order_stop :移动止盈止损iceberg :冰山委托twap :时间加权委托 |
after | String | 否 | 请求此ID之前(更旧的数据)的分页内容,传的值为对应接口的algoId |
before | String | 否 | 请求此ID之后(更新的数据)的分页内容,传的值为对应接口的algoId |
limit | String | 否 | 返回结果的数量,最大为100,默认100条 |
clOrdId | String | 否 | 客户自定义订单ID 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度要在1-32位之间。 |
返回结果
{
"code": "0",
"data": [
{
"activePx": "",
"actualPx": "",
"actualSide": "",
"actualSz": "0",
"algoId": "492453578716610560",
"cTime": "1663682082511",
"callbackRatio": "",
"callbackSpread": "",
"ccy": "",
"clOrdId": "hahawang",
"instId": "BTC-USD",
"instType": "SPOT",
"lever": "",
"moveTriggerPx": "",
"ordId": "0",
"ordPx": "",
"ordType": "conditional",
"posSide": "net",
"pxLimit": "",
"pxSpread": "",
"pxVar": "",
"side": "buy",
"slOrdPx": "-1",
"slTriggerPx": "22000",
"slTriggerPxType": "last",
"state": "live",
"sz": "10",
"szLimit": "",
"tag": "",
"tdMode": "cash",
"tgtCcy": "",
"timeInterval": "",
"tpOrdPx": "",
"tpTriggerPx": "",
"tpTriggerPxType": "",
"triggerPx": "",
"triggerPxType": "",
"triggerTime": ""
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
instType | String | 产品类型 |
instId | String | 产品ID |
ccy | String | 保证金币种,未启用,请忽略。 |
ordId | String | 订单ID |
algoId | String | 策略委托单ID |
clOrdId | String | 客户自定义订单ID |
sz | String | 委托数量 |
ordType | String | 订单类型 |
side | String | 订单方向 |
posSide | String | 持仓方向,未启用,请忽略。 |
tdMode | String | 交易模式 |
tgtCcy | String | 币币市价单委托数量sz 的单位base_ccy : 交易货币 ;quote_ccy :计价货币仅适用于 币币 市价订单默认买单为 quote_ccy ,卖单为base_ccy |
state | String | 订单状态 ,live :待生效 pause :暂停生效 partially_effective :部分生效 |
lever | String | 杠杆倍数,未启用,请忽略。 |
tpTriggerPx | String | 止盈触发价 |
tpTriggerPxType | String | 止盈触发价类型last :最新价格 |
tpOrdPx | String | 止盈委托价 |
slTriggerPx | String | 止损触发价 |
slTriggerPxType | String | 止损触发价类型last :最新价格 |
slOrdPx | String | 止损委托价 |
triggerPx | String | 计划委托触发价格 |
triggerPxType | String | 计划委托触发价类型last :最新价格 |
ordPx | String | 计划委托委托价格 |
actualSz | String | 实际委托量 |
actualPx | String | 实际委托价 |
actualSide | String | 实际触发方向, tp :止盈 sl : 止损 |
triggerTime | String | 策略委托触发时间,Unix时间戳的毫秒数格式,如 1597026383085 |
pxVar | String | 价格比例 仅适用于 冰山委托 和时间加权委托 |
pxSpread | String | 价距 仅适用于 冰山委托 和时间加权委托 |
szLimit | String | 单笔数量 仅适用于 冰山委托 和时间加权委托 |
tag | String | 订单标签 |
pxLimit | String | 挂单限制价 仅适用于 冰山委托 和时间加权委托 |
timeInterval | String | 下单间隔 仅适用于 时间加权委托 |
callbackRatio | String | 回调幅度的比例 仅适用于 移动止盈止损 |
callbackSpread | String | 回调幅度的价距 仅适用于 移动止盈止损 |
activePx | String | 移动止盈止损激活价格 仅适用于 移动止盈止损 |
moveTriggerPx | String | 移动止盈止损触发价格 仅适用于 移动止盈止损 |
cTime | String | 订单创建时间, Unix时间戳的毫秒数格式,如 1597026383085 |
获取历史策略委托单列表
获取最近3个月当前账户下所有策略委托单列表
限速: 20次/2s
限速规则:UserID
HTTP请求
GET /api/v5/trade/orders-algo-history
请求示例
GET /api/v5/trade/orders-algo-history?state=effective&ordType=conditional
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
ordType | String | 是 | 订单类型 conditional :单向止盈止损oco :双向止盈止损trigger :计划委托move_order_stop :移动止盈止损iceberg :冰山委托twap :时间加权委托 |
state | String | 可选 | 订单状态effective :已生效 canceled :已经撤销 order_failed :委托失败【state和algoId必填且只能填其一】 |
algoId | String | 可选 | 策略委托单ID 【state 和algoId 必填且只能填其一】 |
instType | String | 否 | 产品类型SPOT :币币 |
instId | String | 否 | 产品ID,BTC-USD |
after | String | 否 | 请求此ID之前(更旧的数据)的分页内容,传的值为对应接口的algoId |
before | String | 否 | 请求此ID之后(更新的数据)的分页内容,传的值为对应接口的algoId |
limit | String | 否 | 返回结果的数量,最大为100,默认100条 |
返回结果
{
"code":"0",
"msg":"",
"data":[
{
"instType":"SPOT",
"instId":"BTC-USD",
"ordId":"123445",
"ccy":"",
"clOrdId":"",
"algoId":"1234",
"sz":"999",
"ordType":"oco",
"side":"buy",
"posSide":"net",
"tdMode":"cash",
"tgtCcy": "",
"state":"effective",
"lever":"",
"tpTriggerPx":"",
"tpTriggerPxType":"",
"tpOrdPx":"",
"slTriggerPx":"",
"slTriggerPxType":"",
"triggerPx":"99",
"triggerPxType":"last",
"ordPx":"12",
"actualSz":"",
"actualPx":"",
"actualSide":"",
"pxVar":"",
"pxSpread":"",
"pxLimit":"",
"szLimit":"",
"tag": "adadadadad",
"timeInterval":"",
"callbackRatio":"",
"callbackSpread":"",
"activePx":"",
"moveTriggerPx":"",
"triggerTime":"1597026383085",
"cTime":"1597026383000"
},
{
"instType":"SPOT",
"instId":"BTC-USD",
"ordId":"123445",
"ccy":"",
"clOrdId":"",
"algoId":"1234",
"sz":"999",
"ordType":"oco",
"side":"buy",
"posSide":"net",
"tdMode":"cash",
"tgtCcy": "",
"state":"effective",
"lever":"",
"tpTriggerPx":"",
"tpTriggerPxType":"",
"tpOrdPx":"",
"slTriggerPx":"",
"slTriggerPxType":"",
"triggerPx":"99",
"triggerPxType":"last",
"ordPx":"12",
"actualSz":"",
"actualPx":"",
"actualSide":"",
"pxVar":"",
"pxSpread":"",
"pxLimit":"",
"szLimit":"",
"tag": "adadadadad",
"timeInterval":"",
"callbackRatio":"",
"callbackSpread":"",
"activePx":"",
"moveTriggerPx":"",
"triggerTime":"1597026383085",
"cTime":"1597026383000"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
instType | String | 产品类型 |
instId | String | 产品ID |
ccy | String | 保证金币种,未启用,请忽略。 |
ordId | String | 订单ID |
algoId | String | 策略委托单ID |
clOrdId | String | 客户自定义订单ID |
sz | String | 委托数量 |
ordType | String | 订单类型 |
side | String | 订单方向 |
posSide | String | 持仓方向,未启用,请忽略。 |
tdMode | String | 交易模式 |
tgtCcy | String | 币币市价单委托数量sz 的单位base_ccy : 交易货币 ;quote_ccy :计价货币仅适用于 币币 市价订单默认买单为 quote_ccy ,卖单为base_ccy |
state | String | 订单状态 effective : 已生效canceled :已撤销 order_failed :委托失败 |
lever | String | 杠杆倍数,未启用,请忽略。 |
tpTriggerPx | String | 止盈触发价 |
tpTriggerPxType | String | 止盈触发价类型last :最新价格 |
tpOrdPx | String | 止盈委托价 |
slTriggerPx | String | 止损触发价 |
slTriggerPxType | String | 止损触发价类型last :最新价格 |
slOrdPx | String | 止损委托价 |
triggerPx | String | 计划委托触发价格 |
triggerPxType | String | 计划委托触发价格 |
ordPx | String | 计划委托委托价格类型last :最新价格 |
actualSz | String | 实际委托量 |
actualPx | String | 实际委托价 |
actualSide | String | 实际触发方向 tp :止盈 sl : 止损 |
triggerTime | String | 策略委托触发时间,Unix时间戳的毫秒数格式,如 1597026383085 |
pxVar | String | 价格比例 仅适用于 冰山委托 和时间加权委托 |
pxSpread | String | 价距 仅适用于 冰山委托 和时间加权委托 |
szLimit | String | 单笔数量 仅适用于 冰山委托 和时间加权委托 |
pxLimit | String | 挂单限制价 仅适用于 冰山委托 和时间加权委托 |
tag | String | 订单标签 |
timeInterval | String | 下单间隔 仅适用于 时间加权委托 |
callbackRatio | String | 回调幅度的比例 仅适用于 移动止盈止损 |
callbackSpread | String | 回调幅度的价距 仅适用于 移动止盈止损 |
activePx | String | 移动止盈止损激活价格 仅适用于 移动止盈止损 |
moveTriggerPx | String | 移动止盈止损触发价格 仅适用于 移动止盈止损 |
cTime | String | 订单创建时间,Unix时间戳的毫秒数格式,如 1597026383085 |
资金
资金
功能模块下的API接口需要身份验证。
获取币种列表
获取平台所有币种列表。
限速: 6 次/s
限速规则:UserID
HTTP 请求
GET /api/v5/asset/currencies
请求示例
GET /api/v5/asset/currencies
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
ccy | String | 否 | 币种,如 BTC 支持多币种查询(不超过20个),币种之间半角逗号分隔 |
返回结果
{
"code": "0",
"data": [
{
"canDep": true,
"canInternal": false,
"canWd": true,
"ccy": "EUR",
"chain": "EUR-fiat",
"depQuotaFixed": "",
"depQuoteDailyLayer2": "",
"logoLink": "https://static.okcoin.com/cdn/assets/imgs/218/3CE0A0023386E9EA.png",
"mainNet": true,
"maxFee": "0",
"maxWd": "1586886",
"minDep": "0.00000001",
"minDepArrivalConfirm": "0",
"minFee": "0",
"minWd": "0",
"minWdUnlockConfirm": "0",
"name": "Euro",
"needTag": false,
"usedDepQuotaFixed": "",
"usedWdQuota": "0",
"wdQuota": "1000000",
"wdTickSz": "4"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
ccy | String | 币种名称,如 BTC |
name | String | 币种中文名称,不显示则无对应名称 |
logoLink | String | 币种Logo链接 |
chain | String | 币种链信息 有的币种下有多个链,必须要做区分,如 USDT 下有USDT-ERC20 ,USDT-TRC20 ,USDT-Omni 多个链 |
canDep | Boolean | 是否可充值,false 表示不可链上充值,true 表示可以链上充值 |
canWd | Boolean | 是否可提币,false 表示不可链上提币,true 表示可以链上提币 |
canInternal | Boolean | 是否可内部转账,false 表示不可内部转账,true 表示可以内部转账 |
minDep | String | 币种单笔最小充值量 |
minWd | String | 币种单笔最小提币量 |
maxWd | String | 币种单笔最大提币量 |
wdTickSz | String | 提币精度,表示小数点后的位数 |
wdQuota | String | 过去24小时内提币额度,单位为USD |
usedWdQuota | String | 过去24小时内已用提币额度,单位为USD |
minFee | String | 最小提币手续费数量 |
maxFee | String | 最大提币手续费数量 |
mainNet | Boolean | 当前链是否为主链 如果是则返回 true ,否则返回false |
needTag | Boolean | 当前链是否需要标签(tag/memo)信息 |
minDepArrivalConfirm | String | 充值到账最小网络确认数。币已到账但不可提。 |
minWdUnlockConfirm | String | 提现解锁最小网络确认数 |
depQuotaFixed | String | 充币固定限额,单位为BTC 没有充币限制则返回"" |
usedDepQuotaFixed | String | 已用充币固定额度,单位为BTC 没有充币限制则返回"" |
获取资金账户余额
获取资金账户所有资产列表,查询各币种的余额、冻结和可用等信息。
限速: 6次/s
限速规则:UserID
HTTP请求
GET /api/v5/asset/balances
请求示例
GET /api/v5/asset/balances
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
ccy | String | 否 | 币种,如 BTC 支持多币种查询(不超过20个),币种之间半角逗号分隔 |
返回结果
{
"code": "0",
"msg": "",
"data": [{
"availBal": "37.11827078",
"bal": "37.11827078",
"ccy": "ETH",
"frozenBal": "0"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
ccy | String | 币种,如 BTC |
bal | String | 余额 |
frozenBal | String | 冻结余额 |
availBal | String | 可用余额 |
获取账户资产估值
查看账户资产估值
限速: 1次/2s
限速规则:UserID
HTTP请求
GET /api/v5/asset/asset-valuation
请求示例
GET /api/v5/asset/asset-valuation
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
ccy | String | 否 | 资产估值对应的单位 BTC USD 、CNY 、JPY、KRW、RUB、EUR VND 、IDR 、INR、PHP、THB、TRY AUD 、SGD 、ARS、SAR、AED、IQD 默认为 BTC 为单位的估值 |
返回结果
{
"code": "0",
"data": [
{
"details": {
"classic": "124.6",
"earn": "1122.73",
"funding": "0.09",
"trading": "2544.28"
},
"totalBal": "3790.09",
"ts": "1637566660769"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
totalBal | String | 账户总资产估值 |
ts | String | 数据更新时间,Unix时间戳的毫秒数格式,如 1597026383085 |
details | Array | 各个账户的资产估值 |
> funding | String | 资金账户 |
> trading | String | 统一账户 |
> classic | String | 经典账户 |
> earn | String | 金融账户 |
资金划转
调用时,APIKey 需要有交易权限
支持母账户的资金账户划转到交易账户,母账户到子账户的资金账户和交易账户划转;
限速: 1 次/s
限速规则:UserID + Currency
HTTP 请求
POST /api/v5/asset/transfer
请求示例
母账户USD从资金账户划转1.5USD到交易账户
POST /api/v5/asset/transfer
body
{
"ccy":"USD",
"amt":"1.5",
"from":"6",
"to":"18"
}
母账户从资金账户划转1.5USD到子账户的资金账户
POST /api/v5/asset/transfer
body
{
"ccy":"USD",
"type":"1",
"amt":"1.5",
"from":"6",
"to":"6",
"subAcct":"mini"
}
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
ccy | String | 是 | 币种,如 USD |
amt | String | 是 | 划转数量 |
from | String | 是 | 转出账户1 :经典账户 6 :资金账户 18 :统一账户 |
to | String | 是 | 转入账户1 :经典账户 6 :资金账户 18 :统一账户 |
subAcct | String | 可选 | 子账户名称,type 为1 或2 :subAcct 为必填项 |
type | String | 否 | 划转类型0 :账户内划转1 :母账户转子账户(仅适用于母账户APIKey)2 :子账户转母账户(仅适用于母账户APIKey)3 :子账户转母账户(仅适用于子账户APIKey)默认是 0 |
clientId | String | 否 | 客户自定义ID 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度要在1-32位之间。 |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"transId": "754147",
"ccy": "USD",
"clientId": "",
"from": "6",
"amt": "0.1",
"to": "18"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
transId | String | 划转 ID |
ccy | String | 划转币种 |
from | String | 转出账户 |
amt | String | 划转量 |
to | String | 转入账户 |
clientId | String | 客户自定义ID |
获取资金划转状态
获取最近2个星期内的资金划转状态数据
限速: 10 次/s
限速规则:UserID
HTTP 请求
GET /api/v5/asset/transfer-state
请求示例
GET /api/v5/asset/transfer-state?transId=1&type=1
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
transId | String | 可选 | 划转ID transId和clientId必须传一个,若传两个,以transId为主 |
clientId | String | 可选 | 客户自定义ID |
type | String | 否 | 划转类型0 :账户内划转1 :母账户转子账户(仅适用于母账户APIKey)2 :子账户转母账户(仅适用于母账户APIKey)3 :子账户转母账户(仅适用于子账户APIKey)默认是 0 |
返回结果
{
"code": "0",
"data": [
{
"amt": "1.5",
"ccy": "USDT",
"clientId": "",
"from": "18",
"instId": "", //已废弃
"state": "success",
"subAcct": "test",
"to": "6",
"toInstId": "", //已废弃
"transId": "1",
"type": "1"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
transId | String | 划转 ID |
clientId | String | 客户自定义ID |
ccy | String | 划转币种 |
amt | String | 划转量 |
type | String | 划转类型0 :账户内划转1 :母账户转子账户(仅适用于母账户APIKey)2 :子账户转母账户(仅适用于母账户APIKey)3 :子账户转母账户(仅适用于子账户APIKey)4 :子账户转子账户(仅适用于子账户APIKey,且目标账户需要是同一母账户下的其他子账户) |
from | String | 转出账户6 :资金账户 18 :统一账户 |
to | String | 转入账户6 :资金账户 18 :统一账户 |
subAcct | String | 子账户名称 |
instId | String | 已废弃 |
toInstId | String | 已废弃 |
state | String | 转账状态 成功: success ,处理中:pending ,失败:failed |
获取资金流水
查询资金账户账单流水,可查询最近一个月的数据。
限速:6 次/s
限速规则:UserID
HTTP 请求
GET /api/v5/asset/bills
请求示例
GET /api/v5/asset/bills
GET /api/v5/asset/bills?type=1
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
ccy | String | 否 | 币种 |
type | String | 否 | 账单类型1 :充值2 :提现13 :撤销提现20 :转出至子账户21 :从子账户转入22 :转出到母账户23 :母账户转入37 :转出至币币账户38 :从币币账户转入 |
clientId | String | 否 | 转账或提币的客户自定义ID 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度要在1-32位之间。 |
after | String | 否 | 查询在此之前的内容,值为时间戳,Unix 时间戳为毫秒数格式,如 1597026383085 |
before | String | 否 | 查询在此之后的内容,值为时间戳,Unix 时间戳为毫秒数格式,如 1597026383085 |
limit | String | 否 | 分页返回的结果集数量,最大为 100,不填默认返回 100 条 |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"billId": "12344",
"ccy": "BTC",
"clientId": "",
"balChg": "2",
"bal": "12",
"type": "1",
"ts": "1597026383085"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
billId | String | 账单 ID |
ccy | String | 账户余额币种 |
clientId | String | 转账或提币的客户自定义ID |
balChg | String | 账户层面的余额变动数量 |
bal | String | 账户层面的余额数量 |
type | String | 账单类型 |
ts | String | 账单创建时间,Unix 时间戳的毫秒数格式,如 1597026383085 |
闪电网络充币
一个用户在最近24小时内可以生成不超过1万个不同的invoice。
限速: 2次/s
限速规则:UserID
HTTP请求
GET /api/v5/asset/deposit-lightning
请求示例
GET /api/v5/asset/deposit-lightning?ccy=BTC&amt=0.01
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
ccy | String | 是 | 币种,仅支持BTC |
amt | String | 是 | 充值数量,推荐在0.000001〜0.1之间 |
to | String | 否 | 资金充值到账账户6 : 资金账户18 : 统一账户不填写此参数,默认到账资金账户 |
返回结果
{
"code": "0",
"data": [
{
"cTime": "1631171307612",
"invoice": "lnbc100u1psnnvhtpp5yq2x3q5hhrzsuxpwx7ptphwzc4k4wk0j3stp0099968m44cyjg9sdqqcqzpgxqzjcsp5hzzdszuv6yv6yw5svctl8kc8uv6y77szv5kma2kuculj86tk3yys9qyyssqd8urqgcensh9l4zwlwr3lxlcdqrlflvvlwldutm6ljx486h7lylqmd06kky6scas7warx69sregzrx20ffmsr4sp865x3wasrjd8ttgqrlx3tr"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
invoice | String | invoice 号码 |
cTime | String | 生成invoice时间 |
获取充值地址信息
获取各个币种的充值地址,包括曾使用过的老地址。
限速: 6次/s
限速规则:UserID
HTTP请求
GET /api/v5/asset/deposit-address
请求示例
GET /api/v5/asset/deposit-address?ccy=BTC
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
ccy | String | 是 | 币种,如BTC |
返回结果
{
"code": "0",
"data": [
{
"chain": "BTC-Bitcoin",
"ctAddr": "",
"ccy": "BTC",
"to": "6",
"addr": "39XNxK1Ryqgg3Bsyn6HzoqV4Xji25pNkv6",
"selected": true
},
{
"chain": "BTC-OKC",
"ctAddr": "",
"ccy": "BTC",
"to": "6",
"addr": "0x66d0edc2e63b6b992381ee668fbcb01f20ae0428",
"selected": true
},
{
"chain": "BTC-ERC20",
"ctAddr": "5807cf",
"ccy": "BTC",
"to": "6",
"addr": "0x66d0edc2e63b6b992381ee668fbcb01f20ae0428",
"selected": true
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
addr | String | 充值地址 |
tag | String | 部分币种充值需要标签,若不需要则不返回此字段 |
memo | String | 部分币种充值需要 memo,若不需要则不返回此字段 |
pmtId | String | 部分币种充值需要此字段(payment_id),若不需要则不返回此字段 |
addrEx | Object |
充值地址备注,部分币种充值需要,若不需要则不返回此字段 如币种 TONCOIN 的充值地址备注标签名为comment ,则该字段返回:{'comment':'123456'} |
ccy | String | 币种,如BTC |
chain | String | 币种链信息 有的币种下有多个链,必须要做区分,如 USDT 下有USDT-ERC20 ,USDT-TRC20 ,USDT-Omni 多个链 |
to | String | 转入账户6 :资金账户 18 :交易账户 |
selected | Boolean | 该地址是否为页面选中的地址 |
ctAddr | String | 合约地址后6位 |
获取充值记录
根据币种,充值状态,时间范围获取充值记录,按照时间倒序排列,默认返回 100 条数据。
限速: 6 次/s
限速规则:UserID
HTTP 请求
GET /api/v5/asset/deposit-history
请求示例
查询最近的充值记录
GET /api/v5/asset/deposit-history
查询从2022年06月01日到2022年07月01日之间的BTC的充值记录
GET /api/v5/asset/deposit-history?ccy=BTC&after=1654041600000&before=1656633600000
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
ccy | String | 否 | 币种名称,如 BTC |
depId | String | 否 | 充值记录 ID |
txId | String | 否 | 区块转账哈希记录 |
type | String | 否 | 充值方式3 :内部转账4 :链上充值 |
state | String | 否 | 充值状态0 :等待确认 1 :确认到账 2 :充值成功 8 :因该币种暂停充值而未到账,恢复充值后自动到账12 :账户或充值被冻结13 :子账户充值拦截 |
after | String | 否 | 查询在此之前的内容,值为时间戳,Unix 时间戳为毫秒数格式,如 1654041600000 |
before | String | 否 | 查询在此之后的内容,值为时间戳,Unix 时间戳为毫秒数格式,如 1656633600000 |
limit | string | 否 | 返回的结果集数量,默认为100,最大为100,不填默认返回100条 |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"actualDepBlkConfirm": "17",
"amt": "135.705808",
"ccy": "USDT",
"chain": "USDT-TRC20",
"depId": "34579090",
"from": "",
"state": "2",
"to": "TN4hxxxxxxxxxxxizqs",
"ts": "1655251200000",
"txId": "16f3638329xxxxxx42d988f97"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
ccy | String | 币种名称,如 BTC |
chain | String | 币种链信息 有的币种下有多个链,必须要做区分,如 USDT 下有USDT-ERC20 ,USDT-TRC20 ,USDT-Omni 多个链 |
amt | String | 充值数量 |
from | String | 充值地址,只显示内部账户转账地址,不显示区块链充值地址 |
to | String | 到账地址 |
txId | String | 区块转账哈希记录 |
ts | String | 充值到账时间,Unix 时间戳的毫秒数格式,如 1655251200000 |
state | String | 充值状态0 :等待确认 1 :确认到账 2 :充值成功 8 :因该币种暂停充值而未到账,恢复充值后自动到账12 :账户或充值被冻结13 :子账户充值拦截 |
depId | String | 充值记录 ID |
actualDepBlkConfirm | String | 最新的充币网络确认数 |
提币
用户提币。子账户不支持提币。
限速: 6次/s
限速规则:UserID
HTTP请求
POST /api/v5/asset/withdrawal
请求示例
POST /api/v5/asset/withdrawal
body
{
"amt":"1",
"fee":"0.0005",
"dest":"4",
"ccy":"BTC",
"chain":"BTC-Bitcoin",
"toAddr":"17DKe3kkkkiiiiTvAKKi2vMPbm1Bz3CMKw"
}
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
ccy | String | 是 | 币种,如 USD |
amt | String | 是 | 数量 |
dest | String | 是 | 提币方式3 :内部转账 4 :链上提币 |
toAddr | String | 是 | 如果选择链上提币,toAddr 必须是认证过的数字货币地址。某些数字货币地址格式为地址:标签 ,如 ARDOR-7JF3-8F2E-QUWZ-CAN7F:123456 如果选择内部转账, toAddr 必须是接收方地址,可以是邮箱、手机或者账户名。 |
fee | String | 是 | 网络手续费≥0 ,提币到数字货币地址所需网络手续费可通过获取币种列表接口查询 |
chain | String | 可选 | 币种链信息 如 USDT 下有USDT-ERC20 ,USDT-TRC20 ,USDT-Omni 多个链如果没有不填此参数,则默认为主链 |
clientId | String | 否 | 客户自定义ID 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度要在1-32位之间。 |
返回结果
{
"code": "0",
"msg": "",
"data": [{
"amt": "0.1",
"wdId": "67485",
"ccy": "BTC",
"clientId": "",
"chain": "BTC-Bitcoin"
}]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
ccy | String | 提币币种 |
chain | String | 币种链信息 有的币种下有多个链,必须要做区分,如 USDT 下有USDT-ERC20 ,USDT-TRC20 ,USDT-Omni 多个链 |
amt | String | 提币数量 |
wdId | String | 提币申请ID |
clientId | String | 客户自定义ID |
闪电网络提币
单笔提币金额最大值为"0.1BTC",最小值暂定为"0.000001BTC",最近24小时内最大提币数量为"1BTC"。子账户不支持提币。
限速: 2次/s
限速规则:UserID
HTTP请求
POST /api/v5/asset/withdrawal-lightning
请求示例
POST /api/v5/asset/withdrawal-lightning
body
{
"ccy":"BTC",
"invoice":"lnbc100u1psnnvhtpp5yq2x3q5hhrzsuxpwx7ptphwzc4k4wk0j3stp0099968m44cyjg9sdqqcqzpgxqzjcsp5hz"
}
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
ccy | String | 是 | 币种,如 BTC |
invoice | String | 是 | invoice 号码 |
memo | String | 否 | 闪电网络提币的备注 |
返回结果
{
"code": "0",
"msg": "",
"data": [{
"wdId": "121212",
"cTime": "1597026383085"
}]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
wdId | String | 提币申请ID |
cTime | String | 提币ID生成时间 |
撤销提币
可以撤销普通提币,但不支持撤销闪电网络上的提币。
限速: 6次/s
限速规则:UserID
HTTP请求
POST /api/v5/asset/cancel-withdrawal
请求示例
POST /api/v5/asset/cancel-withdrawal
body {
"wdId":"1123456"
}
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
wdId | String | 是 | 提币申请ID |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"wdId": "1123456"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
wdId | String | 提币申请ID |
获取提币记录
根据币种,提币状态,时间范围获取提币记录,按照时间倒序排列,默认返回100条数据。
限速: 6 次/s
限速规则:UserID
HTTP 请求
GET /api/v5/asset/withdrawal-history
请求示例
查询最近的提币记录
GET /api/v5/asset/withdrawal-history
查询从2022年06月01日到2022年07月01日之间的BTC的提币记录
GET /api/v5/asset/withdrawal-history?ccy=BTC&after=1654041600000&before=1656633600000
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
ccy | String | 否 | 币种名称,如 BTC |
wdId | String | 否 | 提币申请ID |
clientId | String | 否 | 客户自定义ID 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度要在1-32位之间。 |
txId | String | 否 | 区块转账哈希记录 |
type | String | 否 | 提币方式3 :内部转账4 :链上提币 |
state | String | 否 | 提币状态-3 :撤销中 -2 :已撤销 -1 :失败 0 :等待提现 1 :提现中 2 :已汇出 3 :邮箱确认 4 :人工审核中 5 :等待身份认证 |
after | String | 否 | 查询在此之前的内容,值为时间戳,Unix 时间戳为毫秒数格式,如 1654041600000 |
before | String | 否 | 查询在此之后的内容,值为时间戳,Unix 时间戳为毫秒数格式,如 1656633600000 |
limit | string | 否 | 返回的结果集数量,默认为100,最大为100,不填默认返回100条 |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"chain": "ETH-Ethereum",
"fee": "0.007",
"ccy": "ETH",
"clientId": "",
"amt": "0.029809",
"txId": "0x35c******b360a174d",
"from": "156****359",
"to": "0xa30d1fab********7CF18C7B6C579",
"state": "2",
"ts": "1655251200000",
"wdId": "15447421"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
ccy | String | 币种 |
chain | String | 币种链信息 有的币种下有多个链,必须要做区分,如 USDT 下有USDT-ERC20 ,USDT-TRC20 ,USDT-Omni 多个链 |
amt | String | 数量 |
ts | String | 提币申请时间,Unix 时间戳的毫秒数格式,如 1655251200000 |
from | String | 提币地址(如果收币地址是 Okcoin 平台地址,则此处将显示用户账户) |
to | String | 收币地址 |
tag | String | 部分币种提币需要标签,若不需要则不返回此字段 |
pmtId | String | 部分币种提币需要此字段(payment_id),若不需要则不返回此字段 |
memo | String | 部分币种提币需要此字段,若不需要则不返回此字段 |
addrEx | Object | 提币地址备注,部分币种提币需要,若不需要则不返回此字段。如币种TONCOIN的提币地址备注标签名为comment,则该字段返回:{'comment':'123456'} |
txId | String | 提币哈希记录 内部转账该字段返回"" |
fee | String | 提币手续费 |
state | String | 提币状态-3 :撤销中 -2 :已撤销 -1 :失败 0 :等待提现 1 :提现中 2 :已汇出 3 :邮箱确认 4 :人工审核中 5 :等待身份认证 |
wdId | String | 提币申请ID |
clientId | String | 客户自定义ID |
账户
账户
功能模块下的API接口需要身份验证。
查看账户余额
获取交易账户中资金余额信息。
限速: 10次/2s
限速规则:UserID
HTTP请求
GET /api/v5/account/balance
请求示例
获取账户中所有资产余额
GET /api/v5/account/balance
获取账户中BTC、ETH两种资产余额
GET /api/v5/account/balance?ccy=BTC,ETH
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
ccy | String | 否 | 币种,如 BTC 支持多币种查询(不超过20个),币种之间半角逗号分隔 |
返回结果
{
"code": "0",
"data": [
{
"adjEq": "",
"details": [
{
"availBal": "1.63427",
"availEq": "",
"cashBal": "1.63427",
"ccy": "USD",
"crossLiab": "",
"disEq": "0",
"eq": "1.63427",
"eqUsd": "1.63427",
"fixedBal": "0",
"frozenBal": "0",
"interest": "",
"isoEq": "",
"isoLiab": "",
"isoUpl": "",
"liab": "",
"maxLoan": "",
"mgnRatio": "",
"notionalLever": "",
"ordFrozen": "0",
"spotInUseAmt": "",
"stgyEq": "0",
"twap": "0",
"uTime": "1672814264380",
"upl": "",
"uplLiab": ""
}
],
"imr": "",
"isoEq": "",
"mgnRatio": "",
"mmr": "",
"notionalUsd": "",
"ordFroz": "",
"totalEq": "1.63427",
"uTime": "1672814275772"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
uTime | String | 账户信息的更新时间,Unix时间戳的毫秒数格式,如 1597026383085 |
totalEq | String | 美金层面权益 |
isoEq | String | 美金层面逐仓仓位权益,未启用,请忽略。 |
adjEq | String | 美金层面有效保证金,未启用,请忽略。 |
ordFroz | String | 美金层面全仓挂单占用保证金,未启用,请忽略。 |
imr | String | 美金层面占用保证金,未启用,请忽略。 |
mmr | String | 美金层面维持保证金,未启用,请忽略。 |
mgnRatio | String | 美金层面保证金率,未启用,请忽略。 |
notionalUsd | String | 以美金价值为单位的持仓数量,即仓位美金价值,未启用,请忽略。 |
details | Array | 各币种资产详细信息 |
> ccy | String | 币种 |
> eq | String | 币种总权益 |
> cashBal | String | 币种余额 |
> uTime | String | 币种余额信息的更新时间,Unix时间戳的毫秒数格式,如 1597026383085 |
> isoEq | String | 币种逐仓仓位权益,未启用,请忽略。 |
> availEq | String | 可用保证金 ,未启用,请忽略。 |
> disEq | String | 美金层面币种折算权益 |
> availBal | String | 可用余额 |
> frozenBal | String | 币种占用金额 |
> ordFrozen | String | 挂单冻结数量 |
> liab | String | 币种负债额,未启用,请忽略。 |
> upl | String | 未实现盈亏,未启用,请忽略。 |
> uplLiab | String | 由于仓位未实现亏损导致的负债,未启用,请忽略。 |
> crossLiab | String | 币种全仓负债额,未启用,请忽略。 |
> isoLiab | String | 币种逐仓负债额,未启用,请忽略。 |
> mgnRatio | String | 保证金率,未启用,请忽略。 |
> interest | String | 计息,未启用,请忽略。 |
> twap | String | 当前负债币种触发系统自动换币的风险,未启用,请忽略。 |
> maxLoan | String | 币种最大可借,未启用,请忽略。 |
> eqUsd | String | 币种权益美金价值 |
> notionalLever | String | 币种杠杆倍数,未启用,请忽略。 |
> stgyEq | String | 策略权益 |
> isoUpl | String | 逐仓未实现盈亏,未启用,请忽略。 |
> spotInUseAmt | String | 现货对冲占用数量,未启用,请忽略。 |
有效字段分布
参数 | 简单交易模式 |
---|---|
uTime | 是 |
totalEq | 是 |
isoEq | |
adjEq | |
ordFroz | |
imr | |
mmr | |
mgnRatio | |
notionalUsd | |
details | |
> ccy | 是 |
> eq | 是 |
> cashBal | 是 |
> uTime | 是 |
> isoEq | |
> availEq | |
> disEq | 是 |
> availBal | 是 |
> frozenBal | 是 |
> ordFrozen | 是 |
> liab | |
> upl | |
> uplLiab | |
> crossLiab | |
> isoLiab | |
> mgnRatio | |
> interest | |
> twap | |
> maxLoan | |
> eqUsd | 是 |
> notionalLever | |
> stgyEq | 是 |
> isoUpl |
账单流水查询(近七天)
帐户资产流水是指导致帐户余额增加或减少的行为。本接口可以查询最近7天的账单数据。
限速:5次/s
限速规则:UserID
HTTP请求
GET /api/v5/account/bills
请求示例
GET /api/v5/account/bills
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instType | String | 否 | 产品类型SPOT :币币 |
ccy | String | 否 | 账单币种 |
type | String | 否 | 账单类型1 :划转 2 :交易 |
subType | String | 否 | 账单子类型1 :买入 2 :卖出 11 :转入 12 :转出 |
after | String | 否 | 请求此id之前(更旧的数据)的分页内容,传的值为对应接口的billId |
before | String | 否 | 请求此id之后(更新的数据)的分页内容,传的值为对应接口的billId |
begin | String | 否 | 筛选的开始时间戳,Unix 时间戳为毫秒数格式,如 1597026383085 |
end | String | 否 | 筛选的结束时间戳,Unix 时间戳为毫秒数格式,如 1597027383085 |
limit | String | 否 | 分页返回的结果集数量,最大为100,不填默认返回100条 |
返回结果
{
"code": "0",
"data": [
{
"bal": "1.63093282565",
"balChg": "1.63093282565",
"billId": "530758662684151809",
"ccy": "USD",
"execType": "T",
"fee": "-0.00245007435",
"from": "",
"instId": "USDT-USD",
"instType": "SPOT",
"mgnMode": "cash",
"notes": "",
"ordId": "530758662663180288",
"pnl": "0",
"posBal": "0",
"posBalChg": "0",
"subType": "1",
"sz": "1.6333829",
"to": "",
"ts": "1672814726203",
"type": "2"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
instType | String | 产品类型 |
billId | String | 账单ID |
type | String | 账单类型 |
subType | String | 账单子类型 |
ts | String | 账单创建时间,Unix时间戳的毫秒数格式,如 1597026383085 |
balChg | String | 账户层面的余额变动数量 |
posBalChg | String | 仓位层面的余额变动数量,未启用,请忽略。 |
bal | String | 账户层面的余额数量 |
posBal | String | 仓位层面的余额数量,未启用,请忽略。 |
sz | String | 数量 |
ccy | String | 账户余额币种 |
pnl | String | 收益,未启用,请忽略。 |
fee | String | 手续费 正数代表平台返佣 ,负数代表平台扣除 |
mgnMode | String | 保证金模式,未启用,请忽略。 |
instId | String | 产品ID,如 BTC-USD |
ordId | String | 订单ID 当type为 2 :交易时,返回相应订单id。无订单时,该字段返回 "" |
execType | String | 流动性方向 T :taker M :maker |
from | String | 转出账户6 :资金账户 18 :交易账户仅适用于 资金划转 ,不是资金划转 时,返回 "" |
to | String | 转入账户6 :资金账户 18 :交易账户仅适用于 资金划转 ,不是资金划转 时,返回 "" |
notes | String | 备注 仅适用于 资金划转 ,不是资金划转 时,返回 "" |
账单流水查询(近三月)
帐户资产流水是指导致帐户余额增加或减少的行为。本接口可以查询最近3个月的账单数据。
限速:5次/2s
限速规则:UserID
HTTP请求
GET /api/v5/account/bills-archive
请求示例
GET /api/v5/account/bills-archive
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instType | String | 否 | 产品类型SPOT :币币 |
ccy | String | 否 | 账单币种 |
type | String | 否 | 账单类型1 :划转 2 :交易 |
subType | String | 否 | 账单子类型1 :买入 2 :卖出 11 :转入 12 :转出 |
after | String | 否 | 请求此id之前(更旧的数据)的分页内容,传的值为对应接口的billId |
before | String | 否 | 请求此id之后(更新的数据)的分页内容,传的值为对应接口的billId |
begin | String | 否 | 筛选的开始时间戳,Unix 时间戳为毫秒数格式,如 1597026383085 |
end | String | 否 | 筛选的结束时间戳,Unix 时间戳为毫秒数格式,如 1597027383085 |
limit | String | 否 | 分页返回的结果集数量,最大为100,不填默认返回100条 |
返回结果
{
"code": "0",
"data": [
{
"bal": "1.63093282565",
"balChg": "1.63093282565",
"billId": "530758662684151809",
"ccy": "USD",
"execType": "T",
"fee": "-0.00245007435",
"from": "",
"instId": "USDT-USD",
"instType": "SPOT",
"mgnMode": "cash",
"notes": "",
"ordId": "530758662663180288",
"pnl": "0",
"posBal": "0",
"posBalChg": "0",
"subType": "1",
"sz": "1.6333829",
"to": "",
"ts": "1672814726203",
"type": "2"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
instType | String | 产品类型 |
billId | String | 账单ID |
type | String | 账单类型 |
subType | String | 账单子类型 |
ts | String | 账单创建时间,Unix时间戳的毫秒数格式,如 1597026383085 |
balChg | String | 账户层面的余额变动数量 |
posBalChg | String | 仓位层面的余额变动数量,未启用,请忽略。 |
bal | String | 账户层面的余额数量 |
posBal | String | 仓位层面的余额数量,未启用,请忽略。 |
sz | String | 数量 |
ccy | String | 账户余额币种 |
pnl | String | 收益,未启用,请忽略。 |
fee | String | 手续费 正数代表平台返佣 ,负数代表平台扣除 |
mgnMode | String | 保证金模式,未启用,请忽略。 |
instId | String | 产品ID,如 BTC-USD |
ordId | String | 订单ID 当type为 2 :交易时,返回相应订单id。无订单时,该字段返回 "" |
execType | String | 流动性方向 T :taker M :maker |
from | String | 转出账户6 :资金账户 18 :交易账户仅适用于 资金划转 ,不是资金划转 时,返回 "" |
to | String | 转入账户6 :资金账户 18 :交易账户仅适用于 资金划转 ,不是资金划转 时,返回 "" |
notes | String | 备注 仅适用于 资金划转 ,不是资金划转 时,返回 "" |
查看账户配置
查看当前账户的配置信息。
限速:5次/2s
限速规则:UserID
HTTP请求
GET /api/v5/account/config
请求示例
GET /api/v5/account/config
请求参数
无
返回结果
{
"code": "0",
"data": [
{
"acctLv": "1",
"autoLoan": false,
"ctIsoMode": "automatic",
"greeksType": "PA",
"level": "Lv1",
"levelTmp": "",
"mgnIsoMode": "automatic",
"posMode": "net_mode",
"spotOffsetType": "",
"uid": "1300041872592896"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
uid | String | 账户ID,账户uid和app上的一致 |
acctLv | String | 账户层级1 :简单交易模式 |
posMode | String | 持仓方式,未启用,请忽略。 |
autoLoan | Boolean | 是否自动借币,未启用,请忽略。 |
greeksType | String | 当前希腊字母展示方式,未启用,请忽略。 |
level | String | 当前在平台上真实交易量的用户等级,例如 Lv1 。 |
levelTmp | String | 特约用户的临时体验用户等级,未启用,请忽略。 |
ctIsoMode | String | 衍生品的逐仓保证金划转模式,未启用,请忽略。 |
mgnIsoMode | String | 币币杠杆的逐仓保证金划转模式,未启用,请忽略。 |
spotOffsetType | String | 现货对冲类型,未启用,请忽略。 |
level 值与官网显示等级的映射关系如下:
level 值 | 官网显示的等级 |
---|---|
Lv1~Lv5 | P0 |
VIP1 | P1 |
VIP2 | P2 |
VIP3 | P3 |
VIP4 | P4 |
VIP5 | P5 |
VIP6 | P6 |
VIP7 | P7 |
VIP8 | P8 |
VIP9 | P9 |
VIP10 | P10 |
获取最大可买卖/开仓数量
限速:20次/2s
限速规则:UserID
HTTP请求
GET /api/v5/account/max-size
请求示例
GET /api/v5/account/max-size?instId=BTC-USD&tdMode=cash
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instId | String | 是 | 产品ID,如 BTC-USD 支持多产品ID查询(不超过5个),半角逗号分隔 |
tdMode | String | 是 | 交易模式 cash :非保证金 |
px | String | 否 | 委托价格 当不填委托价时会按当前最新成交价计算 当指定多个产品ID查询时,忽略该参数,按当前最新成交价计算 |
返回结果
{
"code": "0",
"data": [
{
"ccy": "",
"instId": "BTC-USD",
"maxBuy": "0.0000965776484683",
"maxSell": "0"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
instId | String | 产品ID |
ccy | String | 保证金币种,未启用,请忽略。 |
maxBuy | String | 币币 :最大可买的交易币数量 |
maxSell | String | 币币 :最大可卖的计价币数量 |
获取最大可用数量
限速:20次/2s
限速规则:UserID
HTTP请求
GET /api/v5/account/max-avail-size
请求示例
GET /api/v5/account/max-avail-size?instId=BTC-USD&tdMode=cash
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instId | String | 是 | 产品ID,如 BTC-USDT 支持多产品ID查询(不超过5个),半角逗号分隔 |
tdMode | String | 是 | 交易模式 cash :非保证金 |
返回结果
{
"code": "0",
"data": [
{
"availBuy": "1.63093282565",
"availSell": "0",
"instId": "BTC-USD"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
instId | String | 产品ID |
availBuy | String | 最大买入可用数量 |
availSell | String | 最大卖出可用数量 |
获取当前账户交易手续费费率
限速:5次/2s
限速规则:UserID
HTTP请求
GET /api/v5/account/trade-fee
请求示例
GET /api/v5/account/trade-fee?instType=SPOT
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instType | String | 是 | 产品类型SPOT :币币 |
instId | String | 否 | 产品ID,如 BTC-USD |
返回结果
{
"code": "0",
"data": [
{
"category": "1",
"delivery": "",
"exercise": "",
"instType": "SPOT",
"level": "Lv1",
"maker": "-0.001",
"makerU": "",
"makerUSDC": "-0.001",
"taker": "-0.0015",
"takerU": "",
"takerUSDC": "-0.0015",
"ts": "1672825392244"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
level | String | 手续费等级 |
taker | String | 吃单手续费率 |
maker | String | 挂单手续费率 |
takerU | String | USDT 合约吃单手续费率,未启用,请忽略。 |
makerU | String | USDT 合约挂单手续费率,未启用,请忽略。 |
delivery | String | 交割手续费率,未启用,请忽略。 |
exercise | String | 行权手续费率,未启用,请忽略。 |
instType | String | 产品类型 |
takerUSDC | String | USDC 交易区的吃单手续费率,未启用,请忽略。 |
makerUSDC | String | USDC 交易区的挂单手续费率,未启用,请忽略。 |
ts | String | 数据返回时间,Unix时间戳的毫秒数格式,如 1597026383085 |
category | String | 币种类别,注意:此参数已废弃 |
level 值与官网显示等级的映射关系如下:
level 值 | 官网显示的等级 |
---|---|
Lv1~Lv5 | P0 |
VIP1 | P1 |
VIP2 | P2 |
VIP3 | P3 |
VIP4 | P4 |
VIP5 | P5 |
VIP6 | P6 |
VIP7 | P7 |
VIP8 | P8 |
VIP9 | P9 |
VIP10 | P10 |
查看账户最大可转余额
当指定币种时会返回该币种的交易账户到资金账户的最大可划转数量,不指定币种会返回所有拥有的币种资产可划转数量。
限速:20次/2s
限速规则:UserID
HTTP请求
GET /api/v5/account/max-withdrawal
请求示例
GET /api/v5/account/max-withdrawal
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
ccy | String | 否 | 币种,如 BTC 支持多币种查询(不超过20个),币种之间半角逗号分隔 |
返回结果
{
"code": "0",
"data": [
{
"ccy": "USD",
"maxWd": "1.63093282565",
"maxWdEx": "",
"spotOffsetMaxWd": "",
"spotOffsetMaxWdEx": ""
},
{
"ccy": "USDT",
"maxWd": "0.00007",
"maxWdEx": "",
"spotOffsetMaxWd": "",
"spotOffsetMaxWdEx": ""
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
ccy | String | 币种 |
maxWd | String | 最大可划转数量 |
maxWdEx | String | 最大可划转数量(包含跨币种保证金模式 借币金额),未启用,请忽略。 |
spotOffsetMaxWd | String | 现货对冲不支持借币最大可转数量,未启用,请忽略。 |
spotOffsetMaxWdEx | String | 现货对冲支持借币的最大可转数量,未启用,请忽略。 |
场外大宗交易
OTC-Desk RFQ模式说明:RFQ(request for quote) 即客户通过restful api,向OTC-Desk提交询价请求,OTC-Desk返回报价后,客户可在指定有效期内与OTC-Desk完成成交。
获取可交易币对列表
限速:6次/s
限速规则:UserID
HTTP 请求
GET /api/v5/otc/rfq/instruments
请求示例
GET /api/v5/otc/rfq/instruments
请求参数
无
返回结果
{
"code": "0",
"data": [
{
"instruments": [
{
"baseCcy": "BTC",
"baseCcyIcon": "https://static.coinall.ltd/cdn/oksupport/asset/currency/icon/btc.png",
"baseSingleMin": "0.257",
"instId": "BTC-USD",
"quoteCcy": "USD",
"quoteCcyIcon": "https://static.coinall.ltd/cdn/assets/imgs/218/7775D0B35AA6AF73.png",
"quoteSingleMin": "10000"
}
],
"ts": "1623727445510"
}
],
"msg": ""
}
返回参数
参数名 | 参数类型 | 描述 |
---|---|---|
ts | String | 数据更新时间 Unix时间戳的毫秒数格式,例如 :1597026383085 |
instruments | Array | 交易币对列表 |
>instId | String | 交易币对 |
>baseCcy | String | 交易货币,如:BTC-USD 中的BTC ,BTC-USDT 中的BTC |
>baseSingleMin | String | 交易货币最小可交易数量 |
>baseCcyIcon | String | 交易货币图标链接 |
>quoteCcy | String | 计价货币币种,如:BTC-USD 中的USD ,BTC-USDT 中的USDT |
>quoteSingleMin | String | 计价货币最小可交易数量 |
>quoteCcyIcon | String | 计价货币图标链接 |
询价
查询当前市场报价信息
限速:3次/s
限速规则:UserID
HTTP请求
POST /api/v5/otc/rfq/quote
请求示例
POST /api/v5/otc/rfq/quote
body (要卖1000 USD等值的BTC)
{
"baseCcy": "BTC",
"quoteCcy": "USD",
"side": "sell",
"rfqSz": "1000",
"rfqSzCcy": "USD"
}
请求参数
参数名 | 类型 | 是否必填 | 描述 |
---|---|---|---|
baseCcy | String | 是 | 交易货币币种,如BTC-USD 中BTC |
quoteCcy | String | 是 | 计价货币币种,如BTC-USD 中USD |
side | String | 是 | 交易方向 买:buy 卖:sell 双向:two_way 以客户的角度,描述的是对于baseCcy 的交易方向 |
rfqSz | String | 是 | 数量 |
rfqSzCcy | String | 是 | 币种 |
clQReqId | String | 否 | 客户端自定义的报价请求ID,订单标识,仅长度限制 |
clQReqTs | String | 否 | 客户端rfq发送时间, Unix时间戳的毫秒数格式. |
返回结果
{
"code":"0",
"msg":"",
"data":[
{
"quoteTs":"1597026383085",
"ttlMs":"1000",
"clQReqId":"6666",
"quoteId":"123133",
"baseCcy":"BTC",
"quoteCcy":"USDT",
"side":"buy",
"origRfqSz":"0.55",
"rfqSz":"0.5",
"rfqSzCcy":"BTC",
"bidPx":"10790",
"bidBaseSz":"0.5",
"bidQuoteSz":"5395",
"askPx":"10800",
"askBaseSz":"54000",
"askQuoteSz":"5"
}
]
}
返回参数
参数名 | 参数类型 | 描述 |
---|---|---|
quoteTs | String | 生成报价时间,Unix时间戳的毫秒数格式 |
ttlMs | String | 报价剩余有效时间的毫秒数格式 |
clQReqId | String | 客户端自定义的报价请求ID |
quoteId | String | 报价ID,用作交易请求中的输入 |
baseCcy | String | 交易货币币种,如BTC-USDT 中BTC |
quoteCcy | String | 计价货币币种,如BTC-USDT 中USDT |
side | String | 交易方向 买:buy 卖:sell 双向:two_way |
origRfqSz | String | 原始数量 |
rfqSz | String | 可以报价的数量 |
rfqSzCcy | String | 可以报价的币种 |
bidPx | String | 买方价格 |
bidBaseSz | String | 客户可能需要支付的baseCcy 的数量。此字段只在报价请求是 Sell 或者 TwoWay 的时候才有效 |
bidQuoteSz | String | 客户可能会获取的quoteCcy 的数量。此字段只在报价请求是 Sell 或者 TwoWay 的时候才有效 |
askPx | String | 卖方价格 |
askBaseSz | String | 客户可能得到的baseCcy 的数量。此字段只在报价请求是 Buy 或者 TwoWay 的时候才有效 |
askQuoteSz | String | 客户可能需要支付的quoteCcy 的数量。此字段只在报价请求是 Buy 或者 TwoWay 的时候才有效 |
下单
限速:3次/s
限速规则:UserID
HTTP请求
POST /api/v5/otc/rfq/trade
请求示例
POST /api/v5/otc/rfq/trade
body
{
"clTReqId": "5111",
"quoteId": "12638308",
"baseCcy": "BTC",
"quoteCcy": "USD",
"side": "buy",
"Sz": "2",
"szCcy": "BTC"
}
请求参数
参数名 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
clTReqId | String | 是 | 客户端自定义的交易请求ID |
clTReqTs | String | 否 | 客户端rfq发送时间, Unix时间戳的毫秒数格式 |
quoteId | String | 是 | 报价查询返回的报价编号。 |
baseCcy | String | 是 | 交易货币币种,如BTC-USD 中BTC |
quoteCcy | String | 是 | 计价货币币种,如BTC-USD 中USD |
side | String | 是 | 交易方向 买:buy 卖:sell |
sz | String | 是 | 数量 |
szCcy | String | 是 | 币种 |
返回结果
{
"code":"0",
"msg":"",
"data":[
{
"ts":"1597026383085",
"tradeId":"159",
"quoteId":"126383085",
"clTReqId":"5111",
"state":"live",
"instId":"BTC-USDT",
"baseCcy":"BTC",
"quoteCcy":"USDT",
"side":"buy",
"px":"0.55",
"filledBaseSz":"",
"filledTermSz":"1"
}
]
}
返回参数
参数名 | 参数类型 | 描述 |
---|---|---|
ts | String | Unix时间戳的毫秒数格式 |
tradeId | String | 成交ID |
quoteId | String | 报价查询返回的报价编号ID |
clTReqId | String | 用户自定义ID |
state | String | 订单状态,PendingNew :交易 已经创建 FullyFilled :订单完全成交 Rejected :交易被拒绝 |
instId | String | 币对 |
baseCcy | String | 交易货币币种,如BTC-USDT 中BTC |
quoteCcy | String | 计价货币币种,如BTC-USDT 中USDT |
side | String | 交易方向 买:buy 卖:sell |
px | String | 交易价格 |
filledBaseSz | String | 成交数量 |
filledQuoteSz | String | 成交数量 |
订单查询
限速: 6次/s
限速规则:UserID
HTTP 请求
GET /api/v5/otc/rfq/trade
请求示例
GET/api/v5/otc/rfq/trade?tradeId=134
请求参数
参数名 | 类型 | 是否必填 | 描述 |
---|---|---|---|
clTReqId | String | 可选 | 客户端自定义的交易请求ID |
tradeId | String | 可选 | 订单ID,clTReqId和tradeId必须填写一个,如果用户两个都传值,只校验tradeId参数 |
返回结果
{
"code":"0",
"msg":"",
"data":[
{
"ts":"1597026383085",
"tradeId":"159",
"quoteId":"126383085",
"clTReqId":"5111",
"state":"FullyFilled",
"instId":"BTC-USDT",
"baseCcy":"BTC",
"quoteCcy":"USDT",
"side":"buy",
"px":"0.55",
"filledBaseSz":"",
"filledTermSz":"1"
}
]
}
返回参数
参数名 | 参数类型 | 描述 |
---|---|---|
ts | String | Unix时间戳的毫秒数格式 |
tradeId | String | 成交ID |
quoteId | String | 报价查询返回的报价编号ID |
clTReqId | String | 用户自定义ID |
state | String | 订单状态,PendingNew :交易 已经创建 FullyFilled :订单完全成交 Rejected :交易被拒绝 |
instId | String | 币对 |
baseCcy | String | 交易货币币种,如BTC-USDT 中BTC |
quoteCcy | String | 计价货币币种,如BTC-USDT 中USDT |
side | String | 交易方向 买:buy 卖:sell |
px | String | 交易价格 |
filledBaseSz | String | 成交数量 |
filledQuoteSz | String | 成交数量 |
查询历史订单
限速: 6次/s
限速规则:UserID
HTTP 请求
GET /api/v5/otc/rfq/history
请求示例
GET /api/v5/otc/rfq/history
请求参数
参数名 | 类型 | 是否必填 | 描述 |
---|---|---|---|
begin | String | 否 | 交易时间范围开始, Unix时间戳的毫秒数格式 |
end | String | 否 | 交易时间范围结束, Unix时间戳的毫秒数格式. |
pageSz | String | 否 | 每页返回数量,默认100 |
pageIdx | String | 否 | 当前属于第几页,默认值0 |
返回结果
{
"code":"0",
"msg":"",
"data":[
{
"ts":"1597026383085",
"pageIdx":"1",
"totalPageCnt":"160",
"totalRecordCnt":"1590",
"trades":[
{
"ts":"1597026383085",
"tradeTs":"1597026383085",
"tradeId":"13085",
"clTReqId":"",
"instId":"BTC-USDT",
"side":"buy",
"px":"3085",
"baseCcy":"BTC",
"baseSz":"85",
"quoteCcy":"USD",
"quoteSz":"38"
},
{
"ts":"1597026383085",
"tradeTs":"1597026383085",
"tradeId":"13085",
"clTReqId":"",
"instId":"BTC-USDT",
"side":"buy",
"px":"3085",
"baseCcy":"BTC",
"baseSz":"85",
"quoteCcy":"USD",
"quoteSz":"38"
}
]
}
]
}
返回参数
参数名 | 参数类型 | 描述 |
---|---|---|
ts | String | Unix时间戳的毫秒数格式 |
pageIdx | String | 当前属于第几页,默认值0 |
totalPageCnt | String | 总共多少页 |
totalRecordCnt | String | 总共多少条 |
trades | Array |
交易历史列表 |
>ts | String | 记录生成时间,Unix时间戳的毫秒数格式 |
>tradeTs | String | 成交ID |
>tradeId | String | 客户端自定义ID |
>clTReqId | String | 可以报价的数量 |
>instId | String | 币对 |
>side | String | 订单方向 ,buy :买 sell :卖 |
>px | String | 价格 |
>baseCcy | String | 交易货币币种,如BTC-USDT 中BTC |
>baseSz | String | 交易货币数量 |
>quoteCcy | String | 计价货币币种,如BTC-USDT 中USDT |
>quoteSz | String | 计价货币数量 |
法币
法币API接口,支持PrimeX,SEN两种支付渠道。
入金
发起入金请求。
限速: 6次/s
限速规则:UserID
HTTP请求
POST /api/v5/fiat/deposit
请求示例
POST /api/v5/fiat/deposit
body {
"chanId": "3",
"bankAcctNum": "hahawang",
"amt": "10"
}
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
chanId | String | 是 | 渠道ID。9 :PrimeX; 28 :PrimeX US; 21 :PrimeX Europe; 3 :Silvergate SEN; 27 :Silvergate SEN HK; 24 :ACH |
amt | String | 是 | 入金额度 |
bankAcctNum | String | 是 | 渠道下绑定的银行卡号 |
to | String | 否 | 充值到账账户funding : 资金账户 |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"depId": "1123456",
"cTime": "1637566660769"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
depId | String | 流水ID,depId 和页面上的流水ID一致。 |
cTime | String | 充值订单创建时间。如:1637566660769 |
撤销入金
撤销未完成支付的入金请求。
限速: 100次/2s
限速规则:UserID
HTTP请求
POST /api/v5/fiat/cancel-deposit
请求示例
POST /api/v5/fiat/cancel-deposit
body {
"depId": "02007131856581300"
}
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
depId | String | 是 | 流水ID。depId 和页面上的流水ID一致。 |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"depId": "1123456"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
depId | String | 流水ID,depId 和页面上的流水ID一致。 |
获取入金记录
查询历史出金请求。支持按照按渠道、充值状态、货币类型等多个维度筛选符合条件的结果。该请求支持分页,并且按成交时间倒序排序和存储,最新的排在最前面。
限速: 6 次/s
限速规则:UserID
HTTP 请求
GET api/v5/fiat/deposit-history
请求示例
GET api/v5/fiat/deposit-history?after=1515&chanId=3&status=0
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
chanId | String | 否 | 渠道ID。9 :PrimeX; 28 :PrimeX US; 21 :PrimeX Europe; 3 :Silvergate SEN; 27 :Silvergate SEN HK; 24 :ACH |
ccy | String | 否 | 货币类型。包含如下内容:USD :美元; EUR :欧元; SGD :新加坡元。 |
state | String | 否 | 法定货币入金状态。 包含如下内容: -2 :撤销充值订单; -1 :充值失败; 0 :用户提交充值请求; 1 :请求处理中; 2 :充值成功 |
depId | String | 否 | 流水ID |
after | String | 否 | 请求此id之前(更旧的数据)的分页内容,传的值为对应接口的billId |
before | String | 否 | 请求此id之后(更新的数据)的分页内容,传的值为对应接口的billId |
limit | String | 否 | 分页返回的结果集数量,最大为100,不填默认返回100条 |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"depId": "02007131618204007",
"chanId": "3",
"billId": "1513",
"bankAcctName": "qiang wang",
"bankAcctNum": "hahawang",
"amt": "10",
"state": "0",
"ccy": "USD",
"cTime": "1637566660769",
"uTime": "1637566660770"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
depId | String | 流水ID |
chanId | String | 渠道ID |
billId | String | 账单ID,用于分页 |
bankAcctName | String | 渠道下绑定的银行账户名 |
bankAcctNum | String | 渠道下绑定的银行卡号 |
amt | String | 入金额度 |
state | String | 法定货币入金状态。 包含如下内容: -2 :撤销充值订单; -1 :充值失败; 0 :用户提交充值请求; 1 :请求处理中; 2 :充值成功 |
ccy | String | 货币类型。包含如下内容:USD :美元; EUR :欧元; SGD :新加坡元。 |
cTime | String | 充值订单创建时间,如:1637566660769 |
uTime | String | 充值订单状态更新时间,如:1637566660770 |
出金
发起出金请求。
限速: 6次/s
限速规则:UserID
HTTP请求
POST /api/v5/fiat/withdrawal
请求示例
POST /api/v5/fiat/withdrawal
body {
"chanId": "3",
"bankAcctNum": "hahawang",
"amt": "10"
}
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
chanId | String | 是 | 渠道ID。9 :PrimeX; 28 :PrimeX US; 21 :PrimeX Europe; 3 :Silvergate SEN; 27 :Silvergate SEN HK |
amt | String | 是 | 出金额度 |
bankAcctNum | String | 是 | 渠道下绑定的银行卡号 |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"depId": "1123456",
"fee": "0",
"cTime": "1637566660769"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
wdId | String | 出金请求ID,和页面流水ID相同。 |
cTime | String | 请求创建时间,如:1637566660769 |
fee | String | 出金费用 |
撤销出金
撤销未完成支付的出金请求。
限速: 100次/2s
限速规则:UserID
HTTP请求
POST /api/v5/fiat/cancel-withdrawal
请求示例
POST /api/v5/fiat/cancel-withdrawal
body {
"wdId": "12007131909122084"
}
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
wdId | String | 是 | 出金请求ID,和页面流水ID相同 |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"wdId": "12007131909122084"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
wdId | String | The order number of the transaction |
获取出金记录
限速: 6 次/s
限速规则:UserID
HTTP 请求
GET /api/v5/fiat/withdrawal-history
请求示例
GET /api/v5/fiat/withdrawal-history?before=360&chanId=3
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
chanId | String | 否 | 渠道ID。9 :PrimeX; 28 :PrimeX US; 21 :PrimeX Europe; 3 :Silvergate SEN; 27 :Silvergate SEN HK |
ccy | String | 否 | 货币类型。包含如下内容:USD :美元; EUR :欧元; SGD :新加坡元。 |
state | String | 否 | 法定货币出金状态。 包含如下内容: -2 :撤销充值订单; -1 :充值失败; 0 :用户提交充值请求; 1 :请求处理中; 2 :充值成功 |
wdId | String | 否 | 出金请求ID。和页面流水ID相同。 |
after | String | 否 | 请求此id之前(更旧的数据)的分页内容,传的值为对应接口的billId |
before | String | 否 | 请求此id之后(更新的数据)的分页内容,传的值为对应接口的billId |
limit | String | 否 | 分页返回的结果集数量,最大为100,不填默认返回100条 |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"wdId": "02007131618204007",
"chanId": "3",
"billId": "1513",
"bankAcctName": "qiang wang",
"bankAcctNum": "hahawang",
"amt": "10",
"fee": "0",
"state": "0",
"ccy": "USD",
"cTime": "1637566660769",
"uTime": "1637566660770"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
wdId | String | 流水ID |
chanId | String | 渠道ID |
billId | String | 账单ID,用于分页 |
bankAcctName | String | 渠道下绑定的银行账户名 |
bankAcctNum | String | 渠道下绑定的银行卡号 |
amt | String | 出金额度 |
fee | String | 出金费用 |
state | String | 法定货币出金状态。 包含如下内容: -2 :撤销充值订单; -1 :充值失败; 0 :用户提交充值请求; 1 :请求处理中; 2 :充值成功 |
ccy | String | 货币类型。包含如下内容:USD :美元; EUR :欧元; SGD :新加坡元。 |
cTime | String | 充值订单创建时间,如:1637566660769 |
uTime | String | 充值订单状态更新时间,如:1637566660770 |
获取渠道信息
限速: 6 次/s
限速规则:UserID
HTTP 请求
GET /api/v5/fiat/channel
请求示例
GET /api/v5/fiat/channel
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
chanId | String | 否 | 渠道ID。9 :PrimeX; 28 :PrimeX US; 21 :PrimeX Europe; 3 :Silvergate SEN; 27 :Silvergate SEN HK; 24 :ACH |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"chanId": "3",
"ccy": "USD",
"depQuota": "999999999",
"minDep": "1",
"wdQuota": "4000000",
"minWd": "1",
"usedWdQuota": "0",
"validWdQuota": "4000000",
"bankAcctInfo": [
{
"bankAcctName": "CASHBACK DEBIT",
"bankAcctNum": "CASHBACK DEBIT-1234",
"instName": "Discover",
"maskAcctNum": "1234"
}
]
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
chanId | String | 渠道ID |
ccy | String | 货币类型。包含如下内容:USD :美元; EUR :欧元; SGD :新加坡元。 |
depQuota | String | 日(过去24小时内)最大可充值限额(保留小数点后2位) |
minDep | String | 单笔最小可充值数量(保留小数点后2位) |
wdQuota | String | 日(过去24小时内)提现限额(保留小数点后2位) |
minWd | String | 单笔最小可提现数量(保留小数点后2位) |
usedWdQuota | String | 日(过去24小时内)提现已用额度(保留小数点后2位) |
validWdQuota | String | 当日(过去24小时内)可提现额度(保留小数点后2位) |
bankAcctInfo | String | 绑定银行账号信息列表。一种支付渠道可以绑定多个银行账号 |
> bankAcctName | String | 银行账号名 |
> bankAcctNum | String | 银行卡号 |
> instName | String | 银行机构名称 |
> maskAcctNum | String | 掩码账号 |
子账户
子账户
功能模块下的API接口需要身份验证。
查看子账户列表
仅适用于母账户
限速:2次/2s
限速规则:UserID
HTTP请求
GET /api/v5/users/subaccount/list
请求示例
GET /api/v5/users/subaccount/list
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
enable | String | 否 | 子账户状态,true :正常使用 false :冻结 |
subAcct | String | 否 | 子账户名称 |
after | String | 否 | 查询在此之前的内容,值为时间戳,Unix时间戳为毫秒数格式 |
before | String | 否 | 查询在此之后的内容,值为时间戳,Unix时间戳为毫秒数格式 |
limit | String | 否 | 分页返回的结果集数量,最大为100,不填默认返回100条 |
返回结果
{
"code":"0",
"msg":"",
"data":[
{
"enable":true,
"subAcct":"test-1",
"type":"1",
"label":"trade futures",
"mobile":"1818181",
"gAuth":true,
"canTransOut": true,
"ts":"1597026383085"
},
{
"enable":false,
"subAcct":"test-2",
"type":"1",
"label":"trade spot",
"mobile":"1818199",
"gAuth":true,
"canTransOut": false,
"ts":"1597026383082"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
type | String | 子账户类型,1 :普通子账户 2 :托管子账户 |
enable | Boolean | 子账户状态,true :正常使用 false :冻结 |
subAcct | String | 子账户名称 |
label | String | 子账户备注 |
mobile | String | 子账户绑定手机号 |
gAuth | Boolean | 子账户是否开启的登录时的谷歌验证 true :已开启 false :未开启 |
canTransOut | Boolean | 是否可以主动转出 false :不可转出true :可以转出,未启用,请忽略。 |
ts | String | 子账户创建时间,Unix时间戳的毫秒数格式 ,如 1597026383085 |
查询子账户的APIKey
仅适用于母账户
限速:1次/s
限速规则:UserID
HTTP请求
GET /api/v5/users/subaccount/apikey
请求示例
GET /api/v5/users/subaccount/apikey?subAcct=panpanBroker2
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
subAcct | String | 是 | 子账户名称 |
apiKey | String | 否 | API的公钥 |
返回结果
"code":"0",
"msg":"",
"data":[
{
"label":"v5",
"apiKey":"arg13sdfgs",
"perm":"read_only,trade",
"ip":"1.1.1.1,2.2.2.2",
"ts":"1597026383085"
},
{
"label":"v5.1",
"apiKey":"arg13sdfgs",
"perm":"read_only",
"ip":"1.1.1.1,2.2.2.2",
"ts":"1597026383085"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
label | String | APIKey的备注 |
apiKey | String | API公钥 |
perm | String | APIKey权限 read_only:只读 ;trade :交易 |
ip | String | APIKey绑定的ip地址 |
ts | String | 创建时间 |
获取子账户交易账户余额
获取子账户交易账户余额(适用于母账户)
限速:2次/2s
限速规则:UserID
HTTP请求
GET /api/v5/account/subaccount/balances
请求示例
GET /api/v5/account/subaccount/balances?subAcct=test1
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
subAcct | String | 是 | 子账户名称 |
返回结果
{
"code": "0",
"data": [
{
"adjEq": "10679688.0460531643092577",
"details": [
{
"availBal": "",
"availEq": "9930359.9998",
"cashBal": "9930359.9998",
"ccy": "USDT",
"crossLiab": "0",
"disEq": "9439737.0772999514",
"eq": "9930359.9998",
"eqUsd": "9933041.196999946",
"frozenBal": "0",
"interest": "0",
"isoEq": "0",
"isoLiab": "0",
"liab": "0",
"maxLoan": "10000",
"mgnRatio": "",
"notionalLever": "",
"ordFrozen": "0",
"twap": "0",
"uTime": "1620722938250",
"upl": "0",
"uplLiab": "0"
},
{
"availBal": "",
"availEq": "33.6799714158199414",
"cashBal": "33.2009985",
"ccy": "BTC",
"crossLiab": "0",
"disEq": "1239950.9687532129092577",
"eq": "33.771820625136023",
"eqUsd": "1239950.9687532129092577",
"frozenBal": "0.0918492093160816",
"interest": "0",
"isoEq": "0",
"isoLiab": "0",
"liab": "0",
"maxLoan": "1453.92289531493594",
"mgnRatio": "",
"notionalLever": "",
"ordFrozen": "0",
"twap": "0",
"uTime": "1620722938250",
"upl": "0.570822125136023",
"uplLiab": "0"
}
],
"imr": "3372.2942371050594217",
"isoEq": "0",
"mgnRatio": "70375.35408747017",
"mmr": "134.8917694842024",
"notionalUsd": "33722.9423710505978888",
"ordFroz": "0",
"totalEq": "11172992.1657531589092577",
"uTime": "1623392334718"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
uTime | String | 获取账户信息的最新时间,Unix时间戳的毫秒数格式,如 1597026383085 |
totalEq | String | 美金层面权益 |
isoEq | String | 美金层面逐仓仓位权益,未启用,请忽略。 |
adjEq | String | 美金层面有效保证金,未启用,请忽略。 |
ordFroz | String | 美金层面全仓挂单占用保证金,未启用,请忽略。 |
imr | String | 美金层面占用保证金,未启用,请忽略。 |
mmr | String | 美金层面维持保证金,未启用,请忽略。 |
mgnRatio | String | 美金层面保证金率,未启用,请忽略。 |
notionalUsd | String | 以美金价值为单位的持仓数量,即仓位美金价值,未启用,请忽略。 |
details | Array | 各币种资产详细信息 |
> ccy | String | 币种 |
> eq | String | 币种总权益 |
> cashBal | String | 币种余额 |
> uTime | String | 币种余额信息的更新时间,Unix时间戳的毫秒数格式,如 1597026383085 |
> isoEq | String | 币种逐仓仓位权益,未启用,请忽略。 |
> availEq | String | 可用保证金,未启用,请忽略。 |
> disEq | String | 美金层面币种折算权益 |
> availBal | String | 可用余额 |
> frozenBal | String | 币种占用金额 |
> ordFrozen | String | 挂单冻结数量 |
> liab | String | 币种负债额,未启用,请忽略。 |
> upl | String | 未实现盈亏,未启用,请忽略。 |
> uplLiab | String | 由于仓位未实现亏损导致的负债,未启用,请忽略。 |
> crossLiab | String | 币种全仓负债额,未启用,请忽略。 |
> isoLiab | String | 币种逐仓负债额,未启用,请忽略。 |
> mgnRatio | String | 保证金率,未启用,请忽略。 |
> interest | String | 计息,未启用,请忽略。 |
> twap | String | 当前负债币种触发系统自动换币的风险,未启用,请忽略。 |
> maxLoan | String | 币种最大可借,未启用,请忽略。 |
> eqUsd | String | 币种权益美金价值 |
> notionalLever | String | 币种杠杆倍数,未启用,请忽略。 |
获取子账户资金账户余额
获取子账户资金账户余额(适用于母账户)
限速:2次/2s
限速规则:UserID
HTTP请求
GET /api/v5/asset/subaccount/balances
请求示例
GET /api/v5/asset/subaccount/balances?subAcct=test1
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
subAcct | String | 是 | 子账户名称 |
ccy | String | 否 | 币种,如 BTC 支持多币种查询(不超过20个),币种之间半角逗号分隔 |
返回结果
{
"code": "0",
"msg": "",
"data": [{
"availBal": "37.11827078",
"bal": "37.11827078",
"ccy": "ETH",
"frozenBal": "0"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
ccy | String | 币种,如 BTC |
bal | String | 余额 |
frozenBal | String | 冻结(不可用) |
availBal | String | 可用余额 |
查询子账户转账记录
仅适用于母账户,可以获取最近3个月的转账记录
限速:6次/s
限速规则:UserID
HTTP请求
GET /api/v5/asset/subaccount/bills
请求示例
GET /api/v5/asset/subaccount/bills
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
ccy | String | 否 | 币种,如 BTC |
type | String | 否 | 0 : 母账户转子账户 ;1 : 子账户转母账户 |
subAcct | String | 否 | 子账户名称 |
after | String | 否 | 查询在此之前的内容,值为时间戳,Unix时间戳为毫秒数格式 |
before | String | 否 | 查询在此之后的内容,值为时间戳,Unix时间戳为毫秒数格式 |
limit | String | 否 | 分页返回的结果集数量,最大为100,不填默认返回100条 |
返回结果
{
"code": "0",
"msg": "",
"data": [{
"billId": "12344",
"type":"1",
"ccy": "BTC",
"amt":"2",
"subAcct":"test-1",
"ts":"1597026383085"
}]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
billId | String | 账单ID |
ccy | String | 账户余额币种 |
amt | String | 划转金额 |
type | String | 账单类型 |
subAcct | String | 子账户名称 |
ts | String | 子账户创建时间,Unix时间戳的毫秒数格式 ,如 1597026383085 |
子账户间资金划转
母账户控制子账户与子账户之间划转(仅适用于母账户)
限速:1次/s
限速规则:UserID
HTTP请求
POST /api/v5/asset/subaccount/transfer
请求示例
POST /api/v5/asset/subaccount/transfer
body
{
"ccy":"USD",
"amt":"1.5",
"from":"6",
"to":"6",
"fromSubAccount":"test-1",
"toSubAccount":"test-2"
}
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
ccy | String | 是 | 币种 |
amt | String | 是 | 划转数量 |
from | String | 是 | 6 :资金账户 18 :交易账户 |
to | String | 是 | 6 :资金账户 18 :交易账户 |
fromSubAccount | String | 是 | 转出子账户的子账户名称 |
toSubAccount | String | 是 | 转入子账户的子账户名称 |
返回结果
{
"code":"0",
"msg":"",
"data":[
{
"transId":"12345",
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
transId | String | 划转ID |
行情数据
行情数据
功能模块下的API接口不需要身份验证。
获取所有产品行情信息
获取产品行情信息
限速: 20次/2s
限速规则:IP
HTTP请求
GET /api/v5/market/tickers
请求示例
GET /api/v5/market/tickers?instType=SPOT
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instType | String | 是 | 产品类型SPOT :币币 |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"instType": "SPOT",
"instId": "BTC-USD",
"last": "16848.15",
"lastSz": "0.0005",
"askPx": "16849.01",
"askSz": "0.0401",
"bidPx": "16848.15",
"bidSz": "0.017",
"open24h": "16761.08",
"high24h": "16943.44",
"low24h": "16629.04",
"volCcy24h": "2993092.015",
"vol24h": "178.2431",
"ts": "1672841403093",
"sodUtc0": "16688.74",
"sodUtc8": "16700.35"
},
{
"instType": "SPOT",
"instId": "ETH-USD",
"last": "1252.02",
"lastSz": "0.1727",
"askPx": "1251.95",
"askSz": "0.2296",
"bidPx": "1251.81",
"bidSz": "0.1699",
"open24h": "1217.86",
"high24h": "1260",
"low24h": "1206.08",
"volCcy24h": "4766566.0992",
"vol24h": "3860.2722",
"ts": "1672841403094",
"sodUtc0": "1214.45",
"sodUtc8": "1211.18"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
instType | String | 产品类型 |
instId | String | 产品ID |
last | String | 最新成交价 |
lastSz | String | 最新成交的数量 |
askPx | String | 卖一价 |
askSz | String | 卖一价的挂单数数量 |
bidPx | String | 买一价 |
bidSz | String | 买一价的挂单数量 |
open24h | String | 24小时开盘价 |
high24h | String | 24小时最高价 |
low24h | String | 24小时最低价 |
volCcy24h | String | 24小时成交量,以币 为单位数值为计价货币的数量。 |
vol24h | String | 24小时成交量,以张 为单位数值为交易货币的数量。 |
sodUtc0 | String | UTC 0 时开盘价 |
sodUtc8 | String | UTC+8 时开盘价 |
ts | String | ticker数据产生时间,Unix时间戳的毫秒数格式,如 1597026383085 |
获取单个产品行情信息
获取产品行情信息
限速: 20次/2s
限速规则:IP
HTTP请求
GET /api/v5/market/ticker
请求示例
GET /api/v5/market/ticker?instId=BTC-USD
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instId | String | 是 | 产品ID,如 BTC-USD |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"instType": "SPOT",
"instId": "BTC-USD",
"last": "16838.49",
"lastSz": "0.237",
"askPx": "16836.62",
"askSz": "0.0431",
"bidPx": "16835.97",
"bidSz": "0.2",
"open24h": "16764.37",
"high24h": "16943.44",
"low24h": "16629.04",
"volCcy24h": "2991370.9916",
"vol24h": "178.1375",
"ts": "1672841618814",
"sodUtc0": "16688.74",
"sodUtc8": "16700.35"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
instType | String | 产品类型 |
instId | String | 产品ID |
last | String | 最新成交价 |
lastSz | String | 最新成交的数量 |
askPx | String | 卖一价 |
askSz | String | 卖一价对应的数量 |
bidPx | String | 买一价 |
bidSz | String | 买一价对应的数量 |
open24h | String | 24小时开盘价 |
high24h | String | 24小时最高价 |
low24h | String | 24小时最低价 |
volCcy24h | String | 24小时成交量,以币 为单位数值为计价货币的数量。 |
vol24h | String | 24小时成交量,以张 为单位数值为交易货币的数量。 |
sodUtc0 | String | UTC 0 时开盘价 |
sodUtc8 | String | UTC+8 时开盘价 |
ts | String | ticker数据产生时间,Unix时间戳的毫秒数格式,如 1597026383085 |
获取产品深度
获取产品深度列表
限速: 20次/2s
限速规则:IP
HTTP请求
GET /api/v5/market/books
请求示例
GET /api/v5/market/books?instId=BTC-USD
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instId | String | 是 | 产品ID,如 BTC-USD |
sz | String | 否 | 深度档位数量,最大值可传400,即买卖深度共800条 不填写此参数,默认返回 1 档深度数据 |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"asks": [
[
"41006.8",
"0.60038921",
"0",
"1"
]
],
"bids": [
[
"41006.3",
"0.30178218",
"0",
"2"
]
],
"ts": "1629966436396"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
asks | Array |
卖方深度 |
bids | Array |
买方深度 |
ts | String | 深度产生的时间 |
获取交易产品K线数据
获取K线数据。K线数据按请求的粒度分组返回,K线数据每个粒度最多可获取最近1,440条。
限速: 40次/2s
限速规则:IP
HTTP请求
GET /api/v5/market/candles
请求示例
GET /api/v5/market/candles?instId=BTC-USD
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instId | String | 是 | 产品ID,如BTC-USD |
bar | String | 否 | 时间粒度,默认值1m 如 [1m/3m/5m/15m/30m/1H/2H/4H] 香港时间开盘价k线:[6H/12H/1D/2D/3D/1W/1M/3M] UTC时间开盘价k线:[/6Hutc/12Hutc/1Dutc/2Dutc/3Dutc/1Wutc/1Mutc/3Mutc] |
after | String | 否 | 请求此时间戳之前(更旧的数据)的分页内容,传的值为对应接口的ts |
before | String | 否 | 请求此时间戳之后(更新的数据)的分页内容,传的值为对应接口的ts |
limit | String | 否 | 分页返回的结果集数量,最大为300,不填默认返回100条 |
返回结果
{
"code":"0",
"msg":"",
"data":[
[
"1597026383085",
"3.721",
"3.743",
"3.677",
"3.708",
"8422410",
"22698348.04828491",
"12698348.04828491",
"0"
],
[
"1597026383085",
"3.731",
"3.799",
"3.494",
"3.72",
"24912403",
"67632347.24399722",
"37632347.24399722",
"1"
]
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
ts | String | 开始时间,Unix时间戳的毫秒数格式,如 1597026383085 |
o | String | 开盘价格 |
h | String | 最高价格 |
l | String | 最低价格 |
c | String | 收盘价格 |
vol | String | 交易量,数值为交易货币的数量。 |
volCcy | String | 交易量,数值为计价货币的数量。 |
volCcyQuote | String | 交易量,以计价货币为单位,未启用,请忽略。 |
confirm | String | K线状态 0 代表 K 线未完结,1 代表 K 线已完结。 |
获取交易产品历史K线数据
获取最近几年的历史k线数据
限速: 20次/2s
限速规则:IP
HTTP请求
GET /api/v5/market/history-candles
请求示例
GET /api/v5/market/history-candles?instId=BTC-USD
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instId | String | 是 | 产品ID,如BTC-USD |
after | String | 否 | 请求此时间戳之前(更旧的数据)的分页内容,传的值为对应接口的ts |
before | String | 否 | 请求此时间戳之后(更新的数据)的分页内容,传的值为对应接口的ts |
bar | String | 否 | 时间粒度,默认值1m 如 [1m/3m/5m/15m/30m/1H/2H/4H] 香港时间开盘价k线:[6H/12H/1D/2D/3D/1W/1M/3M] UTC时间开盘价k线:[6Hutc/12Hutc/1Dutc/2Dutc/3Dutc/1Wutc/1Mutc/3Mutc] |
limit | String | 否 | 分页返回的结果集数量,最大为100,不填默认返回100条 |
返回结果
{
"code":"0",
"msg":"",
"data":[
[
"1597026383085",
"3.721",
"3.743",
"3.677",
"3.708",
"8422410",
"22698348.04828491",
"12698348.04828491",
"1"
],
[
"1597026383085",
"3.731",
"3.799",
"3.494",
"3.72",
"24912403",
"67632347.24399722",
"37632347.24399722",
"1"
]
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
ts | String | 开始时间,Unix时间戳的毫秒数格式,如 1597026383085 |
o | String | 开盘价格 |
h | String | 最高价格 |
l | String | 最低价格 |
c | String | 收盘价格 |
vol | String | 交易量,数值为交易货币的数量。 |
volCcy | String | 交易量,数值为计价货币的数量。 |
volCcyQuote | String | 交易量,以计价货币为单位,未启用,请忽略。 |
confirm | String | K线状态 0 代表 K 线未完结,1 代表 K 线已完结。 |
获取交易产品公共成交数据
查询市场上的成交信息数据
限速: 100次/2s
限速规则:IP
HTTP请求
GET /api/v5/market/trades
请求示例
GET /api/v5/market/trades?instId=BTC-USD
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instId | String | 是 | 产品ID,如 BTC-USD |
limit | String | 否 | 分页返回的结果集数量,最大为500,不填默认返回100条 |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"instId": "BTC-USD",
"side": "sell",
"sz": "0.00001",
"px": "29963.2",
"tradeId": "242720720",
"ts": "1654161646974"
},
{
"instId": "BTC-USD",
"side": "sell",
"sz": "0.00001",
"px": "29964.1",
"tradeId": "242720719",
"ts": "1654161641568"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
instId | String | 产品ID |
tradeId | String | 成交ID |
px | String | 成交价格 |
sz | String | 成交数量 |
side | String | 成交方向 buy :买 sell :卖 |
ts | String | 成交时间,Unix时间戳的毫秒数格式, 如1597026383085 |
获取交易产品公共历史成交数据
查询市场上的成交信息数据,可以分页获取最近3个月的数据。
限速: 10次/2s
限速规则:IP
HTTP请求
GET /api/v5/market/history-trades
请求示例
GET /api/v5/market/history-trades?instId=BTC-USD
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instId | String | 是 | 产品ID,如 BTC-USD |
type | String | 否 | 分页类型1 :tradeId 分页 2 :时间戳分页默认为 1 :tradeId 分页 |
after | String | 否 | 请求此 ID 或 ts 之前的分页内容,传的值为对应接口的 tradeId 或 ts |
before | String | 否 | 请求此ID之后(更新的数据)的分页内容,传的值为对应接口的 tradeId。 不支持时间戳分页。 |
limit | String | 否 | 分页返回的结果集数量,最大为100,不填默认返回100条 |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"instId": "BTC-USD",
"side": "sell",
"sz": "0.00001",
"px": "29963.2",
"tradeId": "242720720",
"ts": "1654161646974"
},
{
"instId": "BTC-USD",
"side": "sell",
"sz": "0.00001",
"px": "29964.1",
"tradeId": "242720719",
"ts": "1654161641568"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
instId | String | 产品ID |
tradeId | String | 成交ID |
px | String | 成交价格 |
sz | String | 成交数量 |
side | String | 成交方向 buy :买 sell :卖 |
ts | String | 成交时间,Unix时间戳的毫秒数格式, 如1597026383085 |
获取平台24小时总成交量
24小时成交量滚动计算,以USD为计价单位。
限速: 2次/2s
限速规则:IP
HTTP请求
GET /api/v5/market/platform-24-volume
请求示例
GET /api/v5/market/platform-24-volume
返回结果
{
"code":"0",
"msg":"",
"data":[
{
"volCny": "230900886396766",
"volUsd": "34462818865189",
"ts": "1657856040389"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
volUsd | String | 24小时平台总成交量,以美元为单位 |
volCny | String | 24小时平台总成交量,以人民币为单位 |
ts | String | 接口返回数据时间 |
Oracle 上链交易数据
获取使用 Open Oracle 智能合约签名后加密资产价格。
限速: 1次/5s
限速规则:IP
HTTP请求
GET /api/v5/market/open-oracle
请求示例
GET /api/v5/market/open-oracle
返回结果
{
"code":"0",
"msg":"",
"data":[
{
"messages":[
"0x000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000616d3b1400000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000e70528b800000000000000000000000000000000000000000000000000000000000000006707269636573000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034254430000000000000000000000000000000000000000000000000000000000"
],
"prices":{
"BTC":"62014"
},
"signatures":[
"0xf18330e59eaf42373c2c40f1f9e24113ba21d4ed734dd3ed3bc1d12290fa74ba5623fca1113c5d245a1202dc065e333615b90f810f12132ce4a1ecacb8c6b24a000000000000000000000000000000000000000000000000000000000000001b"
],
"timestamp":"1634548500"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
messages | String | 数组包含对[ kind,timestamp,key,value]进行ABI编码的值,其中kind恒等于prices ,timestamp是获取价格的时间戳,key是加密资产(例如,ETH ),value是资产价格 |
prices | String | 价格 |
signatures | String | 每个消息的以太坊兼容ECDSA签名的数组 |
timestamp | String | 获取最新数据点的时间,Unix时间戳,如 1597026387 |
获取法币汇率
该接口提供的是2周的平均汇率数据
限速: 1次/2s
限速规则:IP
HTTP请求
GET /api/v5/market/exchange-rate
请求示例
GET /api/v5/market/exchange-rate
返回结果
{
"code": "0",
"msg": "",
"data": [ {
"usdCny": "6.44"
}]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
usdCny | String | 人民币兑美元汇率 |
公共数据
公共数据
功能模块下的API接口不需要身份验证。
获取交易产品基础信息
获取所有可交易产品的信息列表。
限速: 20次/2s
限速规则:IP +instType
HTTP请求
GET /api/v5/public/instruments
请求示例
GET /api/v5/public/instruments?instType=SPOT
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
instType | String | 是 | 产品类型SPOT :币币 |
instId | String | 否 | 产品ID |
返回结果
{
"code": "0",
"data": [
{
"alias": "",
"baseCcy": "BTC",
"category": "1",
"ctMult": "",
"ctType": "",
"ctVal": "",
"ctValCcy": "",
"expTime": "",
"instFamily": "",
"instId": "BTC-USD",
"instType": "SPOT",
"lever": "",
"listTime": "**1671521075000**",
"lotSz": "0.0001",
"maxIcebergSz": "99999999999999",
"maxLmtSz": "99999999999999",
"maxMktSz": "1000000",
"maxStopSz": "1000000",
"maxTriggerSz": "99999999999999",
"maxTwapSz": "99999999999999",
"minSz": "0.0001",
"optType": "",
"quoteCcy": "USD",
"settleCcy": "",
"state": "live",
"stk": "",
"tickSz": "0.01",
"uly": ""
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
instType | String | 产品类型 |
instId | String | 产品id, 如 BTC-USD |
uly | String | 标的指数,未启用,请忽略。 |
instFamily | String | 交易品种,未启用,请忽略。 |
category | String | 手续费档位,未启用,请忽略。 |
baseCcy | String | 交易货币币种,如 BTC-USD 中的 BTC |
quoteCcy | String | 计价货币币种,如 BTC-USD 中的USD |
settleCcy | String | 盈亏结算和保证金币种,未启用,请忽略。 |
ctVal | String | 合约面值,未启用,请忽略。 |
ctMult | String | 合约乘数,未启用,请忽略。 |
ctValCcy | String | 合约面值计价币种,未启用,请忽略。 |
optType | String | 期权类型,未启用,请忽略。 |
stk | String | 行权价格,未启用,请忽略。 |
listTime | String | 上线日期 Unix时间戳的毫秒数格式,如 1597026383085 |
expTime | String | 交割/行权日期,未启用,请忽略。 |
lever | String | 该instId 支持的最大杠杆倍数,未启用,请忽略。 |
tickSz | String | 下单价格精度,如 0.0001 |
lotSz | String | 下单数量精度,如 BTC-USDT:1 |
minSz | String | 最小下单数量 |
ctType | String | linear :正向合约inverse :反向合约,未启用,请忽略。 |
alias | String | 合约日期别名,未启用,请忽略。 |
state | String | 产品状态live :交易中 suspend :暂停中preopen :预上线 |
maxLmtSz | String | 现货限价单的单笔最大委托数量 |
maxMktSz | String | 现货市价单的单笔最大委托数量 |
maxTwapSz | String | 现货时间加权单的单笔最大委托数量 |
maxIcebergSz | String | 现货冰山委托的单笔最大委托数量 |
maxTriggerSz | String | 现货计划委托委托的单笔最大委托数量 |
maxStopSz | String | 现货止盈止损委托的单笔最大委托数量 |
获取系统时间
获取系统时间
限速: 10次/2s
限速规则:IP
HTTP请求
GET /api/v5/public/time
请求示例
GET /api/v5/public/time
返回结果
{
"code":"0",
"msg":"",
"data":[
{
"ts":"1597026383085"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
ts | String | 系统时间,Unix时间戳的毫秒数格式,如 1597026383085 |
Status
获取系统升级事件的状态。
限速:1次/5s
HTTP请求
GET /api/v5/system/status
请求示例
GET /api/v5/system/status
GET /api/v5/system/status?state=canceled
请求参数
请求示例
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
state | String | No | 系统的状态,scheduled :等待中 ; ongoing :进行中 ; pre_open :预开放;completed :已完成 canceled : 已取消 当维护时间过长,会存在预开放时间,一般持续10分钟左右。 不填写此参数,默认返回 等待中、进行中和预开放 的数据 |
返回结果
{
"code": "0",
"msg": "",
"data": [{
"title": "Spot System Upgrade",
"state": "scheduled",
"begin": "1620723600000",
"end": "1620724200000",
"href": "",
"serviceType": "1",
"system": "classic",
"scheDesc": ""
}]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
title | String | 系统维护说明的标题 |
state | String | 系统维护的状态 |
begin | String | 系统维护的开始时间,Unix时间戳的毫秒数格式 如:1617788463867 |
end | String | 交易全面开放的时间,Unix时间戳的毫秒数格式 如:1617788463867 在维护完成前,是预期结束时间;维护完成后,会变更为实际结束时间。 |
preOpenBegin | String | 预开放开始的时间,开放撤单、Post Only 下单和资金转入功能的时间 |
href | String | 系统维护详情的超级链接,若无返回值,默认值为空,如: “” |
serviceType | String | 服务类型, 0 :WebSocket ; 1 :经典账户 5 :统一账户;99 :其他(如:停止部分产品交易) |
system | String | 系统,classic :经典账户,unified :统一账户 |
scheDesc | String | 改期进度说明,如: 由 2021-01-26T16:30:00.000Z 改期到 2021-01-28T16:30:00.000Z |
WebSocket API
概述
WebSocket是HTML5一种新的协议(Protocol)。它实现了用户端与服务器全双工通信, 使得数据可以快速地双向传播。通过一次简单的握手就可以建立用户端和服务器连接, 服务器根据业务规则可以主动推送信息给用户端。其优点如下:
- 用户端和服务器进行数据传输时,请求头信息比较小,大概2个字节。
- 用户端和服务器皆可以主动地发送数据给对方。
- 不需要多次创建TCP请求和销毁,节约宽带和服务器的资源。
连接
连接说明:
连接限制:1次/秒
当订阅公有频道时,使用公有服务的地址;当订阅私有频道时,使用私有服务的地址
订阅限制:240次/小时
登录
限速: 1次/1s 适用于单账户登录
限速: 1次/15s 适用于多账户批量登录
请求示例
{
"op": "login",
"args":
[
{
"apiKey" : "985d5b66-57ce-40fb-b714-afc0b9787083",
"passphrase" :"123456",
"timestamp" :"1538054050",
"sign" :"7L+zFQ+CEgGu5rzCj4+BdV2/uUHGqddA9pI6ztsRRPs="
},
{
"apiKey" : "86126n98-57ce-40fb-b714-afc0b9787083",
"passphrase" :"123456",
"timestamp" :"1538054050",
"sign" :"7L+zFQ+CEgGu5rzCj4+BdV2/uUHGqddA9pI6ztsRRPs="
}
]
}
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
op | String | 是 | 操作,login |
args | Array | 是 | 账户列表,最多100组 |
> apiKey | String | 是 | APIKey |
> passphrase | String | 是 | APIKey 的密码 |
> timestamp | String | 是 | 时间戳,Unix Epoch时间,单位是秒 |
> sign | String | 是 | 签名字符串 |
全部成功返回示例
{
"event": "login",
"code": "0",
"msg": ""
}
全部失败返回示例
{
"event": "error",
"code": "60009",
"msg": "Login failed."
}
部分成功返回示例
{
"event": "login",
"code": "60022",
"msg": "Bulk login partially succeeded",
"data":[
{"apiKey": "86126n98-57ce-40fb-b714-afc0b9787083"}
]
}
返回参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
event | String | 是 | 操作,login error |
code | String | 否 | 错误码 |
msg | String | 否 | 错误消息 |
data | Object | 否 | 登陆失败后返回的数据 |
> apiKey | String | 是 | 登陆失败后返回的APIKey |
api_key:调用API的唯一标识。需要用户手动设置一个 passphrase:APIKey的密码 timestamp:Unix Epoch 时间戳,单位为秒 sign:签名字符串,签名算法如下:
先将timestamp
、 method
、requestPath
进行字符串拼接,再使用HMAC SHA256方法将拼接后的字符串和SecretKey加密,然后进行Base64编码
SecretKey:用户申请APIKey时所生成的安全密钥,如:22582BD0CFF14C41EDBF1AB98506286D
其中 timestamp 示例:const timestamp = '' + Date.now() / 1,000
其中 sign 示例: sign=CryptoJS.enc.Base64.stringify(CryptoJS.HmacSHA256(timestamp +'GET'+ '/users/self/verify', secret))
method 总是 'GET'
requestPath 总是 '/users/self/verify'
订阅
订阅说明
请求格式说明
{
"op": "subscribe",
"args": ["<SubscriptionTopic> "]
}
WebSocket 频道分成两类: 公共频道
和 私有频道
公共频道
无需登录,包括行情频道,K线频道,交易数据频道,资金费率频道,限价范围频道,深度数据频道,标记价格频道等。
私有频道
需登录,包括用户账户频道,用户交易频道,用户持仓频道等。
用户可以选择订阅一个或者多个频道,多个频道总长度不能超过4,096个字节。
请求示例
{
"op":"subscribe",
"args":[
{
"channel":"tickers",
"instId":"BTC-USD"
},
{
"channel":"candle1m",
"instId":"BTC-USD"
}
]
}
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
op | String | 是 | 操作,subscribe |
args | Array | 是 | 请求订阅的频道列表 |
> channel | String | 是 | 频道名 |
> instType | String | 否 | 产品类型SPOT :币币 |
> uly | String | 否 | 标的指数 |
> instId | String | 否 | 产品ID |
返回示例
{
"event": "subscribe",
"arg": {
"channel": "tickers",
"instId": "BTC-USD"
}
}
返回参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
event | String | 是 | 事件,subscribe error |
arg | Object | 否 | 订阅的频道 |
> channel | String | 是 | 频道名 |
> instType | String | 否 | 产品类型SPOT :币币 |
> uly | String | 否 | 标的指数 |
> instId | String | 否 | 产品ID |
code | String | 否 | 错误码 |
msg | String | 否 | 错误消息 |
取消订阅
可以取消一个或者多个频道
请求格式说明
{
"op": "unsubscribe",
"args": ["< SubscriptionTopic > "]
}
请求示例
{
"op": "unsubscribe",
"args":
[
{
"channel" : "tickers",
"instId":"BTC-USD"
},
{
"channel" : "candle1m",
"instId":"BTC-USD"
}
]
}
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
op | String | 是 | 操作,unsubscribe |
args | Array | 是 | 取消订阅的频道列表 |
> channel | String | 是 | 频道名 |
> instType | String | 否 | 产品类型SPOT :币币 |
> uly | String | 否 | 标的指数 |
> instId | String | 否 | 产品ID |
返回示例
{
"event": "unsubscribe",
"arg": {
"channel": "tickers",
"instId": "BTC-USD"
}
}
返回参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
event | String | 是 | 事件,unsubscribe error |
arg | Object | 否 | 取消订阅的频道 |
> channel | String | 是 | 频道名 |
> instType | String | 否 | 产品类型SPOT :币币 |
> uly | String | 否 | 标的指数 |
> instId | String | 否 | 产品ID |
code | String | 否 | 错误码 |
msg | String | 否 | 错误消息 |
交易
WebSocket交易
需要身份验证。
下单
只有当您的账户有足够的资金才能下单。一旦下单,您的账户资金将在订单生命周期内被冻结。被冻结的资金以及数量取决于订单指定的类型和参数
限速:60次/2s
限速规则:币币:UserID + instrumentID
请求示例
{
"id": "1512",
"op": "order",
"args": [{
"side": "buy",
"instId": "BTC-USDT",
"tdMode": "cash",
"ordType": "market",
"sz": "100"
}]
}
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
id | String | 是 | 消息的唯一标识 用户提供,返回参数中会返回以便于找到相应的请求。 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度必须要在1-32位之间。 |
op | String | 是 | 支持的业务操作,如 order |
args | Array | 是 | 请求参数 |
> instId | String | 是 | 产品ID,如 BTC-USD |
> tdMode | String | 是 | 交易模式 非保证金模式 cash :现金 |
> clOrdId | String | 否 | 由用户设置的订单ID 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度要在1-32位之间。 |
> tag | String | 否 | 订单标签 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度要在1-16位之间。 |
> side | String | 是 | 订单方向,buy sell |
> ordType | String | 是 | 订单类型 market :市价单limit :限价单 post_only :只做maker单 fok :全部成交或立即取消 ioc :立即成交并取消剩余 |
> sz | String | 是 | 委托数量 |
> px | String | 否 | 委托价,仅适用于limit 、post_only 、fok 、ioc 类型的订单 |
> tgtCcy | String | 否 | 币币市价单委托数量sz 的单位base_ccy : 交易货币 ;quote_ccy :计价货币仅适用于 币币 市价订单默认买单为 quote_ccy ,卖单为base_ccy |
> banAmend | Boolean | 否 | 是否禁止币币市价改单,true 或 false,默认false 为true时,余额不足时,系统不会改单,下单会失败,仅适用于币币市价单 |
expTime | String | 否 | 请求有效截止时间。Unix时间戳的毫秒数格式,如 1597026383085 |
成功返回示例
{
"id": "1512",
"op": "order",
"data": [{
"clOrdId": "",
"ordId": "12345689",
"tag": "",
"sCode": "0",
"sMsg": ""
}],
"code": "0",
"msg": ""
}
失败返回示例
{
"id": "1512",
"op": "order",
"data": [{
"clOrdId": "",
"ordId": "",
"tag": "",
"sCode": "5XXXX",
"sMsg": "not exist"
}],
"code": "1",
"msg": ""
}
格式错误返回示例
{
"id": "1512",
"op": "order",
"data": [],
"code": "60013",
"msg": "Invalid args"
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
id | String | 消息的唯一标识 |
op | String | 业务操作 |
code | String | 代码 |
msg | String | 消息 |
data | Array | 请求成功后返回的数据 |
> ordId | String | 订单ID |
> clOrdId | String | 由用户设置的订单ID |
> tag | String | 订单标签 |
> sCode | String | 订单状态码,0 代表成功 |
> sMsg | String | 订单状态消息 |
批量下单
批量进行下单操作,每次可批量交易不同类型的产品,最多可下单20个
限速:300个/2s
限速规则:币币:UserID + instrumentID
请求示例
{
"id": "1513",
"op": "batch-orders",
"args": [{
"instId":"BTC-USD",
"tdMode":"cash",
"clOrdId":"b15",
"side":"buy",
"ordType":"limit",
"px":"2.15",
"sz":"2"
},
{
"instId":"BTC-USD",
"tdMode":"cash",
"clOrdId":"b15",
"side":"buy",
"ordType":"limit",
"px":"2.15",
"sz":"2"
}]
}
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
id | String | 是 | 消息的唯一标识 用户提供,返回参数中会返回以便于找到相应的请求。 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度必须要在1-32位之间。 |
op | String | 是 | 支持的业务操作,如 batch-orders |
args | Array | 是 | 请求参数 |
> instId | String | 是 | 产品ID,如 BTC-USD |
> tdMode | String | 否 | 交易模式 非保证金模式 cash :现金 |
> clOrdId | String | 否 | 用户提供的订单ID 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度要在1-32位之间。 |
> tag | String | 否 | 订单标签 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度要在1-16位之间。 |
> side | String | 是 | 订单方向, buy sell |
> ordType | String | 是 | 订单类型 market : 市价单 limit :限价单post_only :只做maker单 fok :全部成交或立即取消单 ioc :立即成交并取消剩余单 |
> sz | String | 是 | 委托数量 |
> px | String | 否 | 委托价,仅适用于limit 、post_only 、fok 、ioc 类型的订单 |
> tgtCcy | String | 否 | 币币市价单委托数量sz 的单位base_ccy : 交易货币 ;quote_ccy :计价货币仅适用于 币币 市价订单默认买单为 quote_ccy ,卖单为base_ccy |
> banAmend | Boolean | 否 | 是否禁止币币市价改单,true 或 false,默认false 为true时,余额不足时,系统不会改单,下单会失败,仅适用于币币市价单 |
expTime | String | 否 | 请求有效截止时间。Unix时间戳的毫秒数格式,如 1597026383085 |
全部成功返回示例
{
"id": "1513",
"op": "batch-orders",
"data": [{
"clOrdId": "",
"ordId": "12345689",
"tag": "",
"sCode": "0",
"sMsg": ""
}, {
"clOrdId": "",
"ordId": "12344",
"tag": "",
"sCode": "0",
"sMsg": ""
}],
"code": "0",
"msg": ""
}
部分成功返回示例
{
"id": "1513",
"op": "batch-orders",
"data": [{
"clOrdId": "",
"ordId": "12345689",
"tag": "",
"sCode": "0",
"sMsg": ""
}, {
"clOrdId": "",
"ordId": "",
"tag": "",
"sCode": "5XXXX",
"sMsg": "Insufficient margin"
}],
"code": "2",
"msg": ""
}
全部失败返回示例
{
"id": "1513",
"op": "batch-orders",
"data": [{
"clOrdId": "oktswap6",
"ordId": "",
"tag": "",
"sCode": "5XXXX",
"sMsg": "Insufficient margin"
}, {
"clOrdId": "oktswap7",
"ordId": "",
"tag": "",
"sCode": "5XXXX",
"sMsg": "Insufficient margin"
}],
"code": "1",
"msg": ""
}
格式错误返回示例
{
"id": "1513",
"op": "batch-orders",
"data": [],
"code": "60013",
"msg": "Invalid args"
}
返回参数
参数 | 类型 | 描述 |
---|---|---|
id | String | 消息的唯一标识 |
op | String | 业务操作 |
code | String | 代码 |
msg | String | 消息 |
data | Array | 请求成功后返回的数据 |
> ordId | String | 订单ID |
> clOrdId | String | 由用户设置的订单ID |
> tag | String | 订单标签 |
> sCode | String | 订单状态码,0 代表成功 |
> sMsg | String | 订单状态消息 |
撤单
撤销当前未完成订单
限速:60次/2s
限速规则:币币:UserID + instrumentID
请求示例
{
"id": "1514",
"op": "cancel-order",
"args": [{
"instId": "BTC-USD",
"ordId": "2510789768709120"
}]
}
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
id | String | 是 | 消息的唯一标识 用户提供,返回参数中会返回以便于找到相应的请求。 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度必须要在1-32位之间。 |
op | String | 是 | 支持的业务操作,如 cancel-order |
args | Array | 是 | 请求参数 |
> instId | String | 是 | 产品ID |
> ordId | String | 可选 | 订单ID ordId和clOrdId必须传一个,若传两个,以 ordId 为主 |
> clOrdId | String | 可选 | 用户提供的订单ID 字母(区分大小写)与数字的组合,可以是纯字母、纯数字,且长度要在1-32位之间。 |
成功返回示例
{
"id": "1514",
"op": "cancel-order",
"data": [{
"clOrdId": "",
"ordId": "2510789768709120",
"sCode": "0",
"sMsg": ""
}],
"code": "0",
"msg": ""
}
失败返回示例
{
"id": "1514",
"op": "cancel-order",
"data": [{
"clOrdId": "",
"ordId": "2510789768709120",
"sCode": "5XXXX",
"sMsg": "Order not exist"
}],
"code": "1",
"msg": ""
}
格式错误返回示例
{
"id": "1514",
"op": "cancel-order",
"data": [],
"code": "60013",
"msg": "Invalid args"
}
返回参数
参数 | 类型 | 描述 |
---|---|---|
id | String | 消息的唯一标识 |
op | String | 业务操作 |
code | String | 代码 |
msg | String | 消息 |
data | Array | 请求成功后返回的数据 |
> ordId | String | 订单ID |
> clOrdId | String | 由用户设置的订单ID |
> sCode | String | 订单状态码,0 代表成功 |
> sMsg | String | 订单状态消息 |
批量撤单
批量进行撤单操作,每次可批量撤销不同类型的产品,最多撤销20个
限速:300个/2s
限速规则:币币:UserID + instrumentID
同restAPI共享限速
请求示例
{
"id": "1515",
"op": "batch-cancel-orders",
"args": [{
"instId": "BTC-USD",
"ordId": "2517748157541376"
}, {
"instId": "LTC-USD",
"ordId": "2517748155771904"
}]
}
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
id | String | 是 | 消息的唯一标识 用户提供,返回参数中会返回以便于找到相应的请求。 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度必须要在1-32位之间。 |
op | String | 是 | 支持的业务操作,如 batch-cancel-orders |
args | Array | 是 | 请求参数 |
> instId | String | 是 | 产品ID |
> ordId | String | 可选 | 订单ID ordId和clOrdId必须传一个,若传两个,以ordId 为主 |
> clOrdId | String | 可选 | 用户提供的订单ID 字母(区分大小写)与数字的组合,可以是纯字母、纯数字,且长度要在1-32位之间。 |
全部成功返回示例
{
"id": "1515",
"op": "batch-cancel-orders",
"data": [{
"clOrdId": "oktswap6",
"ordId": "2517748157541376",
"sCode": "0",
"sMsg": ""
}, {
"clOrdId": "oktswap7",
"ordId": "2517748155771904",
"sCode": "0",
"sMsg": ""
}],
"code": "0",
"msg": ""
}
部分成功的返回示例
{
"id": "1515",
"op": "batch-cancel-orders",
"data": [{
"clOrdId": "oktswap6",
"ordId": "2517748157541376",
"sCode": "0",
"sMsg": ""
}, {
"clOrdId": "oktswap7",
"ordId": "2517748155771904",
"sCode": "5XXXX",
"sMsg": "order not exist"
}],
"code": "2",
"msg": ""
}
全部失败的返回示例
{
"id": "1515",
"op": "batch-cancel-orders",
"data": [{
"clOrdId": "oktswap6",
"ordId": "2517748157541376",
"sCode": "5XXXX",
"sMsg": "order not exist"
}, {
"clOrdId": "oktswap7",
"ordId": "2517748155771904",
"sCode": "5XXXX",
"sMsg": "order not exist"
}],
"code": "1",
"msg": ""
}
格式错误示例
{
"id": "1515",
"op": "batch-cancel-orders",
"data": [],
"code": "60013",
"msg": "Invalid args"
}
返回参数
参数 | 类型 | 描述 |
---|---|---|
id | String | 消息的唯一标识 |
op | String | 业务操作 |
code | String | 代码 |
msg | String | 消息 |
data | Array | 请求成功后返回的数据 |
> ordId | String | 订单ID |
> clOrdId | String | 由用户设置的订单ID |
> sCode | String | 订单状态码,0 代表成功 |
> sMsg | String | 订单状态消息 |
改单
修改当前未成交的订单
限速:60次/2s
限速规则:币币:UserID + instrumentID
请求示例
{
"id": "1512",
"op": "amend-order",
"args": [{
"instId": "BTC-USD",
"ordId": "2510789768709120",
"newSz": "2"
}]
}
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
id | String | 是 | 消息的唯一标识 用户提供,返回参数中会返回以便于找到相应的请求。 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度必须要在1-32位之间。 |
op | String | 是 | 支持的业务操作,如 amend-order |
args | Array | 是 | 请求参数 |
> instId | String | 是 | 产品ID |
> cxlOnFail | Boolean | 否 | 当订单修改失败时,该订单是否需要自动撤销false :不自动撤单 true :自动撤单 ,默认为 false |
> ordId | String | 可选 | 订单ID ordId和clOrdId必须传一个,若传两个,以 ordId 为主 |
> clOrdId | String | 可选 | 用户提供的订单ID |
> reqId | String | 否 | 用户提供的reqId 如果提供,那在返回参数中返回reqId,方便找到相应的修改请求。 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度要在1-32位之间。 |
> newSz | String | 可选 | 请求修改的新数量,newSz 和newPx 不可同时为空。对于部分成交订单,该数量应包含已成交数量。 |
> newPx | String | 可选 | 请求修改的新价格 |
expTime | String | 否 | 请求有效截止时间。Unix时间戳的毫秒数格式,如 1597026383085 |
成功返回示例
{
"id": "1512",
"op": "amend-order",
"data": [{
"clOrdId": "",
"ordId": "2510789768709120",
"reqId": "b12344",
"sCode": "0",
"sMsg": ""
}],
"code": "0",
"msg": ""
}
失败返回示例
{
"id": "1512",
"op": "amend-order",
"data": [{
"clOrdId": "",
"ordId": "2510789768709120",
"reqId": "b12344",
"sCode": "5XXXX",
"sMsg": "order not exist"
}],
"code": "1",
"msg": ""
}
格式错误返回示例
{
"id": "1512",
"op": "amend-order",
"data": [],
"code": "60013",
"msg": "Invalid args"
}
返回参数
参数 | 类型 | 描述 |
---|---|---|
id | String | 消息的唯一标识 |
op | String | 业务操作 |
code | String | 代码 |
msg | String | 消息 |
data | Array | 请求成功后返回的数据 |
> ordId | String | 订单ID |
> clOrdId | String | 用户提供的订单ID |
> reqId | String | 用户提供的reqId 如果用户在请求中提供reqId,则返回相应reqId |
> sCode | String | 订单状态码,0 代表成功 |
> sMsg | String | 订单状态消息 |
批量改单
批量进行改单操作,每次可批量修改不同类型的产品,最多改20个
限速:300个/2s
限速规则:币币:UserID + instrumentID
请求示例
{
"id": "1513",
"op": "batch-amend-orders",
"args": [{
"instId": "BTC-USD",
"ordId": "12345689",
"newSz": "2"
}, {
"instId": "BTC-USD",
"ordId": "12344",
"newSz": "2"
}]
}
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
id | String | 是 | 消息的唯一标识 用户提供,返回参数中会返回以便于找到相应的请求。 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度必须要在1-32位之间。 |
op | String | 是 | 支持的业务操作,如 batch-amend-orders |
args | Array | 是 | 请求参数 |
> instId | String | 是 | 产品ID |
> cxlOnFail | Boolean | 否 | 当订单修改失败时,该订单是否需要自动撤销false :不自动撤单 true :自动撤单 ,默认为false |
> ordId | String | 可选 | 订单ID ordId 和 clOrdId 必须传一个,若传两个,以order id 为主 |
> clOrdId | String | 可选 | 用户提供的订单ID |
> reqId | String | 否 | 用户提供的请求ID 如果提供,那在返回参数中返回reqId,方便找到相应的修改请求。 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度要在1-32位之间。 |
> newSz | String | 可选 | 修改后的新数量,newSz 和newPx 不可同时为空。对于部分成交订单,该数量应包含已成交数量。 |
> newPx | String | 可选 | 修改后的新价格 |
expTime | String | 否 | 请求有效截止时间。Unix时间戳的毫秒数格式,如 1597026383085 |
全部成功返回示例
{
"id": "1513",
"op": "batch-amend-orders",
"data": [{
"clOrdId": "oktswap6",
"ordId": "12345689",
"reqId": "b12344",
"sCode": "0",
"sMsg": ""
}, {
"clOrdId": "oktswap7",
"ordId": "12344",
"reqId": "b12344",
"sCode": "0",
"sMsg": ""
}],
"code": "0",
"msg": ""
}
全部失败返回示例
{
"id": "1513",
"op": "batch-amend-orders",
"data": [{
"clOrdId": "",
"ordId": "12345689",
"reqId": "b12344",
"sCode": "5XXXX",
"sMsg": "order not exist"
}, {
"clOrdId": "oktswap7",
"ordId": "",
"reqId": "b12344",
"sCode": "5XXXX",
"sMsg": "order not exist"
}],
"code": "1",
"msg": ""
}
部分成功返回示例
{
"id": "1513",
"op": "batch-amend-orders",
"data": [{
"clOrdId": "",
"ordId": "12345689",
"reqId": "b12344",
"sCode": "0",
"sMsg": ""
}, {
"clOrdId": "oktswap7",
"ordId": "",
"reqId": "b12344",
"sCode": "5XXXX",
"sMsg": "order not exist"
}],
"code": "2",
"msg": ""
}
格式错误返回示例
{
"id": "1513",
"op": "batch-amend-orders",
"data": [],
"code": "60013",
"msg": "Invalid args"
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
id | String | 消息的唯一标识 |
op | String | 业务操作 |
code | String | 代码 |
msg | String | 消息 |
data | Array | 请求成功后返回的数据 |
> ordId | String | 订单ID |
> clOrdId | String | 由用户设置的订单ID |
> reqId | String | 用户提供的请求ID 如果用户在请求中提供reqId,则返回相应reqId |
> sCode | String | 订单状态码,0 代表成功 |
> sMsg | String | 订单状态消息 |
私有频道
账户频道
获取账户信息,首次订阅按照订阅维度推送数据,此外,当下单、撤单、成交等事件触发时,推送数据以及按照订阅维度定时推送数据
请求示例:单个
{
"op": "subscribe",
"args": [{
"channel": "account",
"ccy": "BTC"
}]
}
请求示例
{
"op": "subscribe",
"args": [{
"channel": "account"
}]
}
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
op | String | 是 | 操作,subscribe unsubscribe |
args | Array | 是 | 请求订阅的频道列表 |
> channel | String | 是 | 频道名,account |
> ccy | String | 否 | 币种 |
成功返回示例:单个
{
"event": "subscribe",
"arg": {
"channel": "account",
"ccy": "BTC"
}
}
成功返回示例
{
"event": "subscribe",
"arg": {
"channel": "account"
}
}
失败返回示例
{
"event": "error",
"code": "60012",
"msg": "Illegal request: {\"op\": \"subscribe\", \"argss\":[{ \"channel\" : \"account\", \"ccy\" : \"BTC\"}]}"
}
返回参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
event | String | 是 | 操作,subscribe unsubscribe error |
arg | Object | 否 | 订阅的频道 |
> channel | String | 是 | 频道名,account |
> ccy | String | 否 | 币种 |
code | String | 否 | 错误码 |
msg | String | 否 | 错误消息 |
推送示例:单个
{
"arg": {
"channel": "account",
"uid": "1300041872592896"
},
"data": [
{
"adjEq": "",
"details": [
{
"availBal": "1.63093282565",
"availEq": "",
"cashBal": "1.63093282565",
"ccy": "USD",
"coinUsdPrice": "1",
"crossLiab": "",
"disEq": "0",
"eq": "1.63093282565",
"eqUsd": "1.63093282565",
"fixedBal": "0",
"frozenBal": "0",
"interest": "",
"isoEq": "",
"isoLiab": "",
"isoUpl": "",
"liab": "",
"maxLoan": "",
"mgnRatio": "",
"notionalLever": "",
"ordFrozen": "0",
"spotInUseAmt": "",
"stgyEq": "0",
"twap": "0",
"uTime": "1672814726203",
"upl": ""
}
],
"imr": "",
"isoEq": "",
"mgnRatio": "",
"mmr": "",
"notionalUsd": "",
"ordFroz": "",
"totalEq": "1.63100282285",
"uTime": "1672814733845"
}
]
}
推送示例
{
"arg": {
"channel": "account",
"uid": "1300041872592896"
},
"data": [
{
"adjEq": "",
"details": [
{
"availBal": "1.63093282565",
"availEq": "",
"cashBal": "1.63093282565",
"ccy": "USD",
"coinUsdPrice": "1",
"crossLiab": "",
"disEq": "0",
"eq": "1.63093282565",
"eqUsd": "1.63093282565",
"fixedBal": "0",
"frozenBal": "0",
"interest": "",
"isoEq": "",
"isoLiab": "",
"isoUpl": "",
"liab": "",
"maxLoan": "",
"mgnRatio": "",
"notionalLever": "",
"ordFrozen": "0",
"spotInUseAmt": "",
"stgyEq": "0",
"twap": "0",
"uTime": "1672814726203",
"upl": ""
},
{
"availBal": "0.00007",
"availEq": "",
"cashBal": "0.00007",
"ccy": "USDT",
"coinUsdPrice": "0.99996",
"crossLiab": "",
"disEq": "0",
"eq": "0.00007",
"eqUsd": "0.0000699972",
"fixedBal": "0",
"frozenBal": "0",
"interest": "",
"isoEq": "",
"isoLiab": "",
"isoUpl": "",
"liab": "",
"maxLoan": "",
"mgnRatio": "",
"notionalLever": "",
"ordFrozen": "0",
"spotInUseAmt": "",
"stgyEq": "0",
"twap": "0",
"uTime": "1672814726203",
"upl": ""
}
],
"imr": "",
"isoEq": "",
"mgnRatio": "",
"mmr": "",
"notionalUsd": "",
"ordFroz": "",
"totalEq": "1.63100282285",
"uTime": "1672814733845"
}
]
}
推送数据参数
参数名 | 类型 | 描述 |
---|---|---|
arg | Object | 请求订阅的频道 |
> channel | String | 频道名 |
> uid | String | 用户标识 |
> ccy | String | 币种 |
data | Array | 订阅的数据 |
uTime | String | 获取账户信息的最新时间,Unix时间戳的毫秒数格式,如 1597026383085 |
totalEq | String | 美金层面权益 |
isoEq | String | 美金层面逐仓仓位权益,未启用,请忽略。 |
adjEq | String | 美金层面有效保证金,未启用,请忽略。 |
ordFroz | String | 美金层面全仓挂单占用保证金,未启用,请忽略。 |
imr | String | 美金层面占用保证金,未启用,请忽略。 |
mmr | String | 美金层面维持保证金,未启用,请忽略。 |
mgnRatio | String | 美金层面保证金率,未启用,请忽略。 |
notionalUsd | String | 以美金价值为单位的持仓数量,即仓位美金价值,未启用,请忽略。 |
details | Array | 各币种资产详细信息 |
> ccy | String | 币种 |
> eq | String | 币种总权益 |
> cashBal | String | 币种余额 |
> uTime | String | 币种余额信息的更新时间,Unix时间戳的毫秒数格式,如 1597026383085 |
> isoEq | String | 币种逐仓仓位权益,未启用,请忽略。 |
> availEq | String | 可用保证金,未启用,请忽略。 |
> disEq | String | 美金层面币种折算权益 |
> availBal | String | 可用余额 |
> frozenBal | String | 币种占用金额 |
> ordFrozen | String | 挂单冻结数量 |
> liab | String | 币种负债额,未启用,请忽略。 |
> upl | String | 未实现盈亏,未启用,请忽略。 |
> uplLiab | String | 由于仓位未实现亏损导致的负债,未启用,请忽略。 |
> crossLiab | String | 币种全仓负债额,未启用,请忽略。 |
> isoLiab | String | 币种逐仓负债额,未启用,请忽略。 |
> mgnRatio | String | 保证金率,未启用,请忽略。 |
> interest | String | 计息,未启用,请忽略。 |
> twap | String | 当前负债币种触发系统自动换币的风险,未启用,请忽略。 |
> maxLoan | String | 币种最大可借,未启用,请忽略。 |
> eqUsd | String | 币种权益美金价值 |
> notionalLever | String | 币种杠杆倍数,未启用,请忽略。 |
> coinUsdPrice | String | 币种美元指数 |
> stgyEq | String | 策略权益 |
> isoUpl | String | 逐仓未实现盈亏,未启用,请忽略。 |
> spotInUseAmt | String | 现货对冲占用数量,未启用,请忽略。 |
订单频道
获取订单信息,首次订阅不推送,只有当下单、撤单等事件触发时,推送数据
请求示例:单个
{
"op": "subscribe",
"args": [{
"channel": "orders",
"instType": "SPOT",
"instId": "BTC-USD"
}]
}
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
op | String | 是 | 操作,subscribe unsubscribe |
args | Array | 是 | 请求订阅的频道列表 |
> channel | String | 是 | 频道名, orders |
> instType | String | 是 | 产品类型SPOT :币币 |
> instId | String | 否 | 产品ID |
成功返回示例:单个
{
"event": "subscribe",
"arg": {
"channel": "orders",
"instType": "SPOT",
"instId": "BTC-USD"
}
}
失败返回示例
{
"event": "error",
"code": "60012",
"msg": "Illegal request: {\"op\": \"subscribe\", \"argss\":[{ \"channel\" : \"orders\", \"instType\" : \"SPOTT\"}]}"
}
返回参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
event | String | 是 | 事件,subscribe unsubscribe error |
arg | Object | 否 | 订阅的频道 |
> channel | String | 是 | 频道名 |
> instType | String | 是 | 产品类型SPOT :币币 |
> instId | String | 否 | 产品ID |
code | String | 否 | 错误码 |
msg | String | 否 | 错误消息 |
推送示例:单个
{
"arg": {
"channel": "orders",
"instType": "SPOT",
"instId": "ETH-USD",
"uid": "1300041872592896"
},
"data": [
{
"accFillSz": "0",
"amendResult": "",
"avgPx": "0",
"cTime": "1672898607313",
"category": "normal",
"ccy": "",
"clOrdId": "",
"code": "0",
"execType": "",
"fee": "0",
"feeCcy": "ETH",
"fillFee": "0",
"fillFeeCcy": "",
"fillNotionalUsd": "",
"fillPx": "",
"fillSz": "0",
"fillTime": "",
"instId": "ETH-USD",
"instType": "SPOT",
"lever": "0",
"msg": "",
"notionalUsd": "0.25",
"ordId": "531110485559349248",
"ordType": "limit",
"pnl": "0",
"posSide": "",
"px": "250",
"rebate": "0",
"rebateCcy": "USD",
"reduceOnly": "false",
"reqId": "",
"side": "buy",
"slOrdPx": "",
"slTriggerPx": "",
"slTriggerPxType": "last",
"source": "",
"state": "live",
"sz": "0.001",
"tag": "",
"tdMode": "cash",
"tgtCcy": "",
"tpOrdPx": "",
"tpTriggerPx": "",
"tpTriggerPxType": "last",
"tradeId": "",
"uTime": "1672898607313"
}
]
}
推送数据参数
参数名 | 类型 | 描述 |
---|---|---|
arg | Object | 订阅成功的频道 |
> channel | String | 频道名 |
> uid | String | 用户标识 |
> instType | String | 产品类型 |
> instId | String | 产品ID |
data | Array | 订阅的数据 |
> instType | String | 产品类型 |
> instId | String | 产品ID |
> ccy | String | 保证金币种,未启用,请忽略。 |
> ordId | String | 订单ID |
> clOrdId | String | 由用户设置的订单ID来识别您的订单 |
> tag | String | 订单标签 |
> px | String | 委托价格 |
> sz | String | 原始委托数量,币币 ,以币为单位; |
> notionalUsd | String | 委托单预估美元价值 |
> ordType | String | 订单类型 market :市价单 limit :限价单 post_only : 只做maker单 fok :全部成交或立即取消单ioc :立即成交并取消剩余单 |
> side | String | 订单方向,buy sell |
> posSide | String | 持仓方向,未启用,请忽略。 |
> tdMode | String | 交易模式 非保证金模式 cash :现金 |
> tgtCcy | String | 市价单委托数量sz 的单位base_ccy : 交易货币 quote_ccy :计价货币 |
> fillPx | String | 最新成交价格 |
> tradeId | String | 最新成交ID |
> fillSz | String | 最新成交数量 |
> fillTime | String | 最新成交时间 |
> fillFee | String | 最新一笔成交的手续费金额或者返佣金额: 手续费扣除 为 ‘负数’,如 -0.01 ; 手续费返佣 为 ‘正数’,如 0.01 |
> fillFeeCcy | String | 最新一笔成交的手续费币种 |
> execType | String | 最新一笔成交的流动性方向 T:taker M:maker |
> accFillSz | String | 累计成交数量 |
> fillNotionalUsd | String | 委托单已成交的美元价值 |
> avgPx | String | 成交均价,如果成交数量为0,该字段也为0 |
> state | String | 订单状态 canceled :撤单成功 live :等待成交partially_filled : 部分成交 filled :完全成交 |
> lever | String | 杠杆倍数,未启用,请忽略。 |
> tpTriggerPx | String | 止盈触发价 |
> tpTriggerPxType | String | 止盈触发价类型last :最新价格 |
> tpOrdPx | String | 止盈委托价,止盈委托价格为-1 时,执行市价止盈 |
> slTriggerPx | String | 止损触发价 |
> slTriggerPxType | String | 止损触发价类型last :最新价格 |
> slOrdPx | String | 止损委托价,止损委托价格为-1 时,执行市价止损 |
> feeCcy | String | 交易手续费币种 币币 :如果是买的话,收取的就是BTC;如果是卖的话,收取的就是USDT |
> fee | String | 订单交易累计的手续费与返佣 对于币币,为订单交易累计的手续费,平台向用户收取的交易手续费,为负数。如: -0.01 |
> rebateCcy | String | 返佣金币种 ,如果没有返佣金,该字段为“” |
> rebate | String | 返佣累计金额,仅适用于币币,平台向达到指定lv交易等级的用户支付的挂单奖励(返佣),如果没有返佣金,该字段为“” |
> pnl | String | 收益,未启用,请忽略。 |
> source | String | 订单来源 13 :策略委托单触发后的生成的限价单 |
> category | String | 订单种类分类normal :普通委托订单种类 |
> uTime | String | 订单更新时间,Unix时间戳的毫秒数格式,如 1597026383085 |
> cTime | String | 订单创建时间,Unix时间戳的毫秒数格式,如 1597026383085 |
> reqId | String | 修改订单时使用的request ID,如果没有修改,该字段为"" |
> amendResult | String | 修改订单的结果-1 : 失败0 :成功1 :自动撤单(因为修改失败导致订单自动撤销)通过API修改订单时,如果 cxlOnFail 设置为false 且修改失败后,则amendResult 返回 -1 通过API修改订单时,如果 cxlOnFail 设置为true 且修改失败后,则amendResult 返回1 通过Web/APP修改订单时,如果修改失败后,则 amendResult 返回-1 |
> code | String | 错误码,默认为0 |
> msg | String | 错误消息,默认为"" |
策略委托订单频道
获取策略委托订单,首次订阅不推送,只有当下单、撤单等事件触发时,推送数据
请求示例:单个
{
"op": "subscribe",
"args": [
{
"channel": "orders-algo",
"instType": "SPOT",
"instId": "BTC-USD"
}
]
}
请求示例
{
"op": "subscribe",
"args": [
{
"channel": "orders-algo",
"instType": "SPOT"
}
]
}
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
op | String | 是 | 操作,subscribe unsubscribe |
args | Array | 是 | 请求订阅的频道列表 |
> channel | String | 是 | 频道名,orders-algo |
> instType | String | 是 | 产品类型SPOT :币币 |
> instId | String | 否 | 产品ID |
成功返回示例:单个
{
"event": "subscribe",
"arg": {
"channel": "orders-algo",
"instType": "SPOT",
"instId": "BTC-USD"
}
}
成功返回示例
{
"event": "subscribe",
"arg": {
"channel": "orders-algo",
"instType": "SPOT"
}
}
失败返回示例
{
"event": "error",
"code": "60012",
"msg": "Illegal request: {\"op\": \"subscribe\", \"argss\":[{ \"channel\" : \"orders-algo\", \"instType\" : \"SPOTT\"}]}"
}
返回参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
event | String | 是 | 事件,subscribe unsubscribe error |
arg | Object | 否 | 订阅的频道 |
> channel | String | 是 | 频道名 |
> instType | String | 是 | 产品类型SPOT :币币 |
> instId | String | 否 | 产品ID |
code | String | 否 | 错误码 |
msg | String | 否 | 错误消息 |
推送示例:单个
{
"arg": {
"channel": "orders-algo",
"uid": "77982378738415879",
"instType": "SPOT",
"instId": "BTC-USD"
},
"data": [{
"instType": "SPOT",
"instId": "BTC-USD",
"ordId": "312269865356374016",
"ccy": "BTC",
"clOrdId": "",
"algoId": "1234",
"px": "999",
"sz": "3",
"tdMode": "cash",
"tgtCcy": "",
"notionalUsd": "",
"ordType": "trigger",
"side": "buy",
"posSide": "net",
"state": "live",
"lever": "20",
"tpTriggerPx": "",
"tpTriggerPxType": "",
"tpOrdPx": "",
"slTriggerPx": "",
"slTriggerPxType": "",
"triggerPx": "99",
"triggerPxType": "last",
"ordPx": "12",
"tag": "adadadadad",
"actualSz": "",
"actualPx": "",
"actualSide": "",
"triggerTime": "1597026383085",
"cTime": "1597026383000"
}]
}
推送数据参数
参数名 | 类型 | 描述 |
---|---|---|
arg | Object | 订阅成功的频道 |
> channel | String | 频道名 |
> uid | String | 用户标识 |
> instType | String | 产品类型 |
> instId | String | 产品ID |
data | Array | 订阅的数据 |
> instType | String | 产品类型 |
> instId | String | 产品ID |
> ccy | String | 保证金币种,未启用,请忽略。 |
> ordId | String | 订单ID,与策略委托订单关联的订单ID |
> algoId | String | 策略委托单ID |
> clOrdId | String | 客户自定义订单ID |
> sz | String | 委托数量,币币 以币为单位; |
> ordType | String | 订单类型conditional :单向止盈止损 oco :双向止盈止损trigger :计划委托 |
> side | String | 订单方向,buy sell |
> posSide | String | 持仓方向,未启用,请忽略。 |
> tdMode | String | 交易模式 非保证金模式 cash :现金 |
> tgtCcy | String | 币币市价单委托数量sz 的单位base_ccy : 交易货币 ;quote_ccy :计价货币仅适用于 币币 市价订单默认买单为 quote_ccy ,卖单为base_ccy |
> lever | String | 杠杆倍数,未启用,请忽略。 |
> state | String | 订单状态 live :待生效effective :已生效canceled :已撤销order_failed :委托失败 |
> tpTriggerPx | String | 止盈触发价 |
> tpTriggerPxType | String | 止盈触发价类型last :最新价格 |
> tpOrdPx | String | 止盈委托价,委托价格为-1 时,执行市价止盈 |
> slTriggerPx | String | 止损触发价 |
> slTriggerPxType | String | 止损触发价类型last :最新价格 |
> slOrdPx | String | 止损委托价委托价格为-1 时,执行市价止损 |
> triggerPx | String | 计划委托单的触发价格 |
> triggerPxType | String | 计划委托单的触发价类型last :最新价格 |
> ordPx | String | 计划委托单的委托价格 |
> actualSz | String | 实际委托量 |
> actualPx | String | 实际委价 |
> tag | String | 订单标签 字母(区分大小写)与数字的组合,可以是纯字母、纯数字,且长度在1-16位之间。 |
> notionalUsd | String | 委托单预估美元价值 |
> actualSide | String | 实际触发方向,sl :止损 tp :止盈 |
> triggerTime | String | 策略委托触发时间,Unix时间戳的毫秒数格式,如 1597026383085 |
> reduceOnly | String | 是否只减仓,true 或 false |
> cTime | String | 订单创建时间,Unix时间戳的毫秒数格式,如 1597026383085 |
高级策略委托订单频道
获取高级策略委托订单(冰山、时间加权、移动止盈止损),首次订阅推送,当下单、撤单等事件触发时,推送数据
请求示例:单个
{
"op": "subscribe",
"args": [{
"channel": "algo-advance",
"instType": "SPOT",
"instId": "BTC-USD"
}]
}
请求示例
{
"op": "subscribe",
"args": [{
"channel": "algo-advance",
"instType": "SPOT"
}]
}
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
op | String | 是 | 操作,subscribe unsubscribe |
args | Array | 是 | 请求订阅的频道列表 |
> channel | String | 是 | 频道名,algo-advance |
> instType | String | 是 | 产品类型SPOT :币币 |
> instId | String | 否 | 产品ID |
> algoId | String | 否 | 策略ID |
成功返回示例:单个
{
"event": "subscribe",
"arg": {
"channel": "algo-advance",
"instType": "SPOT",
"instId": "BTC-USD"
}
}
成功返回示例
{
"event": "subscribe",
"arg": {
"channel": "algo-advance",
"instType": "SPOT"
}
}
失败返回示例
{
"event": "error",
"code": "60012",
"msg": "Illegal request: {\"op\": \"subscribe\", \"argss\":[{ \"channel\" : \"algo-advance\", \"instType\" : \"SPOTT\"}]}"
}
返回参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
event | String | 是 | 事件,subscribe unsubscribe error |
arg | Object | 否 | 订阅的频道 |
> channel | String | 是 | 频道名 |
> instType | String | 是 | 产品类型SPOT :币币 |
> instId | String | 否 | 产品ID |
> algoId | String | 否 | 策略ID |
code | String | 否 | 错误码 |
msg | String | 否 | 错误消息 |
推送示例:单个
{
"arg":{
"channel":"algo-advance",
"uid": "77982378738415879",
"instType":"SPOT",
"instId":"BTC-USD"
},
"data":[
{
"actualPx":"",
"actualSide":"",
"actualSz":"0",
"algoId":"355056228680335360",
"cTime":"1630924001545",
"ccy":"",
"clOrdId": "",
"count":"1",
"instId":"BTC-USD",
"instType":"SPOT",
"lever":"0",
"notionalUsd":"",
"ordPx":"",
"ordType":"iceberg",
"pTime":"1630924295204",
"posSide":"net",
"pxLimit":"10",
"pxSpread":"1",
"pxVar":"",
"side":"buy",
"slOrdPx":"",
"slTriggerPx":"",
"state":"pause",
"sz":"0.1",
"szLimit":"0.1",
"tag": "adadadadad",
"tdMode":"cash",
"timeInterval":"",
"tpOrdPx":"",
"tpTriggerPx":"",
"triggerPx":"",
"triggerTime":"",
"callbackRatio":"",
"callbackSpread":"",
"activePx":"",
"moveTriggerPx":""
}
]
}
推送数据参数
参数名 | 类型 | 描述 |
---|---|---|
arg | Object | 订阅成功的频道 |
> channel | String | 频道名 |
> uid | String | 用户标识 |
> instType | String | 产品类型 |
> instId | String | 产品ID |
> algoId | String | 策略ID |
data | Array | 订阅的数据 |
> instType | String | 产品类型 |
> instId | String | 产品ID |
> ccy | String | 保证金币种,未启用,请忽略。 |
> ordId | String | 订单ID,与策略委托订单关联的订单ID |
> algoId | String | 策略委托单ID |
> clOrdId | String | 客户自定义订单ID |
> sz | String | 委托数量,币币 以币为单位; |
> ordType | String | 订单类型iceberg :冰山委托twap :时间加权委托move_order_stop :移动止盈止损 |
> side | String | 订单方向,buy sell |
> posSide | String | 持仓方向,未启用,请忽略。 |
> tdMode | String | 交易模式 非保证金模式 cash :现金 |
> tgtCcy | String | 币币市价单委托数量sz 的单位base_ccy : 交易货币 ;quote_ccy :计价货币仅适用于 币币 市价订单默认买单为 quote_ccy ,卖单为base_ccy |
> lever | String | 杠杆倍数,未启用,请忽略。 |
> state | String | 订单状态 live :待生效effective :已生效canceled :已撤销order_failed :委托失败 |
> tpTriggerPx | String | 止盈触发价 |
> tpOrdPx | String | 止盈委托价,委托价格为-1 时,执行市价止盈 |
> slTriggerPx | String | 止损触发价 |
> slOrdPx | String | 止损委托价委托价格为-1 时,执行市价止损 |
> triggerPx | String | 计划委托单的触发价格 |
> ordPx | String | 计划委托单的委托价格 |
> actualSz | String | 实际委托量 |
> actualPx | String | 实际委价 |
> tag | String | 订单标签 字母(区分大小写)与数字的组合,可以是纯字母、纯数字,且长度在1-16位之间。 |
> notionalUsd | String | 委托单预估美元价值 |
> actualSide | String | 实际触发方向,sl :止损 tp :止盈 |
> triggerTime | String | 策略委托触发时间,Unix时间戳的毫秒数格式,如 1597026383085 |
> cTime | String | 订单创建时间,Unix时间戳的毫秒数格式,如 1597026383085 |
> pxVar | String | 价格比例 仅适用于 冰山委托 和时间加权委托 |
> pxSpread | String | 价距 仅适用于 冰山委托 和时间加权委托 |
> szLimit | String | 单笔数量 仅适用于 冰山委托 和时间加权委托 |
> pxLimit | String | 挂单限制价 仅适用于 冰山委托 和时间加权委托 |
> timeInterval | String | 下单间隔 仅适用于 时间加权委托 |
> count | String | 策略订单计数 仅适用于 冰山委托 和时间加权委托 |
> callbackRatio | String | 回调幅度的比例 仅适用于 移动止盈止损 |
> callbackSpread | String | 回调幅度的价距 仅适用于 移动止盈止损 |
> activePx | String | 移动止盈止损激活价格 仅适用于 移动止盈止损 |
> moveTriggerPx | String | 移动止盈止损触发价格 仅适用于 移动止盈止损 |
> pTime | String | 订单信息的推送时间,Unix时间戳的毫秒数格式,如 1597026383085 |
公共频道
产品频道
当有产品状态变化时(新币对上线、人工暂停/恢复交易等),推送产品的增量数据。
请求示例
{
"op": "subscribe",
"args": [
{
"channel" : "instruments",
"instType": "SPOT"
}
]
}
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
op | String | 是 | 操作,subscribe unsubscribe |
args | Array | 是 | 请求订阅的频道列表 |
> channel | String | 是 | 频道名,instruments |
> instType | String | 是 | 产品类型SPOT :币币 |
成功返回示例
{
"event": "subscribe",
"arg": {
"channel": "instruments",
"instType": "SPOT"
}
}
失败返回示例
{
"event": "error",
"code": "60012",
"msg": "Illegal request: {\"op\": \"subscribe\", \"argss\":[{ \"channel\" : \"instruments\", \"instType\" : \"SPOTT\"}]}"
}
返回参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
event | String | 是 | 事件,subscribe unsubscribe error |
arg | Object | 否 | 订阅的频道 |
> channel | String | 是 | 频道名 |
> instType | String | 是 | 产品类型SPOT :币币 |
code | String | 否 | 错误码 |
msg | String | 否 | 错误消息 |
推送示例
{
"arg": {
"channel": "instruments",
"instType": "SPOT"
},
"data": [
{
"alias": "",
"baseCcy": "BTC",
"category": "1",
"ctMult": "",
"ctType": "",
"ctVal": "",
"ctValCcy": "",
"expTime": "",
"instFamily": "",
"instId": "BTC-USD",
"instType": "SPOT",
"lever": "",
"listTime": "",
"lotSz": "0.0001",
"maxIcebergSz": "",
"maxLmtSz": "99999999999999",
"maxMktSz": "1000000",
"maxStopSz": "1000000",
"maxTriggerSz": "",
"maxTwapSz": "",
"minSz": "0.0001",
"optType": "",
"quoteCcy": "USD",
"settleCcy": "",
"state": "live",
"stk": "",
"tickSz": "0.01",
"uly": ""
}
]
}
推送数据参数
参数名 | 类型 | 描述 |
---|---|---|
arg | Object | 订阅的频道 |
> channel | String | 频道名 |
> instType | String | 产品类型 |
data | Array | 订阅的数据 |
> instType | String | 产品类型 |
> instId | String | 产品ID,如 BTC-USD |
> category | String | 手续费档位,未启用,请忽略。 |
> uly | String | 标的指数,未启用,请忽略。 |
> instFamily | String | 交易品种,未启用,请忽略。 |
> baseCcy | String | 交易货币币种,如 BTC-USD 中的 BTC |
> quoteCcy | String | 计价货币币种,如 BTC-USD 中的USD |
> settleCcy | String | 盈亏结算和保证金币种,未启用,请忽略。 |
> ctVal | String | 合约面值,未启用,请忽略。 |
> ctMult | String | 合约乘数,未启用,请忽略。 |
> ctValCcy | String | 合约面值计价币种,未启用,请忽略。 |
> optType | String | 期权类型,未启用,请忽略。 |
> stk | String | 行权价格,未启用,请忽略。 |
> listTime | String | 上线日期 |
> expTime | String | 交割日期,未启用,请忽略。 |
> lever | String | 该instId 支持的最大杠杆倍数,未启用,请忽略。 |
> tickSz | String | 下单价格精度,如 0.0001 |
> lotSz | String | 下单数量精度,如0.001 :BTC-USD |
> minSz | String | 最小下单数量 |
> ctType | String | 合约类型,linear :正向合约 inverse :反向合约,未启用,请忽略。 |
> alias | String | 合约日期别名,未启用,请忽略。 |
> state | String | 产品状态 live :交易中 suspend :暂停中preopen :预上线 |
> maxLmtSz | String | 现货限价单的单笔最大委托数量 |
> maxMktSz | String | 现货市价单的单笔最大委托数量 |
> maxTwapSz | String | 现货时间加权单的单笔最大委托数量 |
> maxIcebergSz | String | 现货冰山委托的单笔最大委托数量 |
> maxTriggerSz | String | 现货计划委托委托的单笔最大委托数量 |
> maxStopSz | String | 现货止盈止损委托的单笔最大委托数量 |
行情频道
获取产品的最新成交价、买一价、卖一价和24小时交易量等信息。
最快100ms推送一次,没有触发事件时不推送,触发推送的事件有:成交、买一卖一发生变动。
请求示例
{
"op": "subscribe",
"args": [{
"channel": "tickers",
"instId": "BTC-USD"
}]
}
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
op | String | 是 | 操作,subscribe unsubscribe |
args | Array | 是 | 请求订阅的频道列表 |
> channel | String | 是 | 频道名,tickers |
> instId | String | 是 | 产品ID |
成功返回示例
{
"event": "subscribe",
"arg": {
"channel": "tickers",
"instId": "BTC-USD"
}
}
失败返回示例
{
"event": "error",
"code": "60012",
"msg": "Illegal request: {\"op\": \"subscribe\", \"argss\":[{ \"channel\" : \"tickers\", \"instId\" : \"BTC-USDD\"}]}"
}
返回参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
event | String | 是 | 事件,subscribe unsubscribe error |
arg | Object | 否 | 订阅的频道 |
> channel | String | 是 | 频道名 |
> instId | String | 是 | 产品ID |
code | String | 否 | 错误码 |
msg | String | 否 | 错误消息 |
推送示例
{
"arg": {
"channel": "tickers",
"instId": "BTC-USD"
},
"data": [
{
"instType": "SPOT",
"instId": "BTC-USD",
"last": "16838.75",
"lastSz": "0.0027",
"askPx": "16838.75",
"askSz": "0.0275",
"bidPx": "16836.5",
"bidSz": "0.0404",
"open24h": "16762.13",
"high24h": "16943.44",
"low24h": "16629.04",
"sodUtc0": "16688.74",
"sodUtc8": "16700.35",
"volCcy24h": "3016898.9552",
"vol24h": "179.6477",
"ts": "1672842446928"
}
]
}
推送数据参数
参数名 | 类型 | 描述 |
---|---|---|
arg | Object | 订阅成功的频道 |
> channel | String | 频道名 |
> instId | String | 产品ID |
data | Array | 订阅的数据 |
instType | String | 产品类型 |
instId | String | 产品ID |
last | String | 最新成交价 |
lastSz | String | 最新成交的数量 |
askPx | String | 卖一价 |
askSz | String | 卖一价对应的量 |
bidPx | String | 买一价 |
bidSz | String | 买一价对应的数量 |
open24h | String | 24小时开盘价 |
high24h | String | 24小时最高价 |
low24h | String | 24小时最低价 |
volCcy24h | String | 24小时成交量,以币 为单位数值为计价货币的数量。 |
vol24h | String | 24小时成交量,以张 为单位数值为交易货币的数量。 |
sodUtc0 | String | UTC 0 时开盘价 |
sodUtc8 | String | UTC+8 时开盘价 |
ts | String | 数据产生时间,Unix时间戳的毫秒数格式,如 1597026383085 |
K线频道
获取K线数据,推送频率最快是间隔1秒推送一次数据。
请求示例
{
"op": "subscribe",
"args": [{
"channel": "candle1D",
"instId": "BTC-USD"
}]
}
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
op | String | 是 | 操作,subscribe unsubscribe |
args | Array | 是 | 请求订阅的频道列表 |
> channel | String | 是 | 频道名,candle3M candle1M candle1W candle1D candle2D candle3D candle5D candle12H candle6H candle4H candle2H candle1H candle30m candle15m candle5m candle3m candle1m candle3Mutc candle1Mutc candle1Wutc candle1Dutc candle2Dutc candle3Dutc candle5Dutc candle12Hutc candle6Hutc |
> instId | String | 是 | 产品ID |
成功返回示例
{
"event": "subscribe",
"arg": {
"channel": "candle1D",
"instId": "BTC-USD"
}
}
失败返回示例
{
"event": "error",
"code": "60012",
"msg": "Illegal request: {\"op\": \"subscribe\", \"argss\":[{ \"channel\" : \"candle1D\", \"instId\" : \"BTC-USD-191227\"}]}"
}
返回参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
event | String | 是 | 事件,subscribe unsubscribe error |
arg | Object | 否 | 订阅的频道 |
> channel | String | 是 | 频道名 |
> instId | String | 是 | 产品ID |
code | String | 否 | 错误码 |
msg | String | 否 | 错误消息 |
推送示例
{
"arg": {
"channel": "candle1m",
"instId": "BTC-USD"
},
"data": [
[
"1672913160000",
"16837.25",
"16837.25",
"16837.25",
"16837.25",
"0.0438",
"737.4716",
"737.4716",
"1"
]
]
}
推送数据参数
参数名 | 类型 | 描述 |
---|---|---|
arg | Object | 订阅成功的频道 |
> channel | String | 频道名 |
> instId | String | 产品ID |
data | Array | 订阅的数据 |
> ts | String | 开始时间,Unix时间戳的毫秒数格式,如 1597026383085 |
> o | String | 开盘价格 |
> h | String | 最高价格 |
> l | String | 最低价格 |
> c | String | 收盘价格 |
> vol | String | 交易量,数值为交易货币的数量。 |
> volCcy | String | 交易量,数值为计价货币的数量。 |
> volCcyQuote | String | 交易量,以计价货币为单位,未启用,请忽略。 |
> confirm | String | K线状态 0 代表 K 线未完结,1 代表 K 线已完结。 |
交易频道
获取最近的成交数据,有成交数据就推送,每次推送仅包含一条成交数据。
请求示例
{
"op": "subscribe",
"args": [{
"channel": "trades",
"instId": "BTC-USD"
}]
}
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
op | String | 是 | 操作,subscribe unsubscribe |
args | Array | 是 | 请求订阅的频道列表 |
> channel | String | 是 | 频道名,trades |
> instId | String | 是 | 产品ID |
成功返回示例
{
"event": "subscribe",
"arg": {
"channel": "trades",
"instId": "BTC-USD"
}
}
失败返回示例
{
"event": "error",
"code": "60012",
"msg": "Illegal request: {\"op\": \"subscribe\", \"argss\":[{ \"channel\" : \"trades\", \"instId\" : \"BTC-USD-191227\"}]}"
}
返回参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
event | String | 是 | 事件,subscribe unsubscribe error |
arg | Object | 否 | 订阅的频道 |
> channel | String | 是 | 频道名 |
> instId | String | 是 | 产品ID |
code | String | 否 | 错误码 |
msg | String | 否 | 错误消息 |
推送示例
{
"arg": {
"channel": "trades",
"instId": "BTC-USD"
},
"data": [
{
"instId": "BTC-USD",
"tradeId": "130639474",
"px": "42219.9",
"sz": "0.12060306",
"side": "buy",
"ts": "1630048897897"
}
]
}
推送数据参数
参数名 | 类型 | 描述 |
---|---|---|
arg | Object | 订阅成功的频道 |
> channel | String | 频道名 |
> instId | String | 产品ID |
data | Array | 订阅的数据 |
> instId | String | 产品ID,如 BTC-USD |
> tradeId | String | 成交ID |
> px | String | 成交价格 |
> sz | String | 成交数量 |
> side | String | 成交方向,buy sell |
> ts | String | 成交时间,Unix时间戳的毫秒数格式,如 1597026383085 |
深度频道
获取深度数据,books
是400档频道,books5
是5档频道, bbo-tbt
是先1档后实时推送的频道,books-l2-tbt
是先400档后实时推送的频道,books50-l2-tbt
是先50档后实时推的频道;
books
首次推400档快照数据,以后增量推送,即每100毫秒有深度变化推送一次变化的数据
books5
首次推5档快照数据,以后定量推送,每100毫秒有深度变化推送一次5档数据,即每次都推送5档数据
bbo-tbt
首次推1档快照数据,以后定量推送,每10毫秒有深度变化推送一次1档数据,即每次都推送1档数据
books-l2-tbt
首次推400档快照数据,以后增量推送,即每10毫秒有深度有变化推送一次变化的数据
books50-l2-tbt
首次推50档快照数据,以后增量推送,即每10毫秒有深度有变化推送一次变化的数据
身份认证参考登录功能
请求示例
{
"op": "subscribe",
"args": [{
"channel": "books",
"instId": "BTC-USD"
}]
}
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
op | String | 是 | 操作,subscribe unsubscribe |
args | Array | 是 | 请求订阅的频道列表 |
> channel | String | 是 | 频道名,books books5 books-l2-tbt books50-l2-tbt |
> instId | String | 是 | 产品ID |
返回示例
{
"event": "subscribe",
"arg": {
"channel": "books",
"instId": "BTC-USD"
}
}
失败示例
{
"event": "error",
"code": "60012",
"msg": "Illegal request: {\"op\": \"subscribe\", \"argss\":[{ \"channel\" : \"books\", \"instId\" : \"BTC-USDC\"}]}"
}
返回参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
event | String | 是 | 事件,subscribe unsubscribe error |
arg | Object | 否 | 订阅的频道 |
> channel | String | 是 | 频道名 |
> instId | String | 是 | 产品ID |
msg | String | 否 | 错误消息 |
code | String | 否 | 错误码 |
推送示例 :全量
{
"arg": {
"channel": "books",
"instId": "BTC-USD"
},
"action": "snapshot",
"data": [{
"asks": [
["8476.98", "415", "0", "13"],
["8477", "7", "0", "2"],
["8477.34", "85", "0", "1"],
["8477.56", "1", "0", "1"],
["8505.84", "8", "0", "1"],
["8506.37", "85", "0", "1"],
["8506.49", "2", "0", "1"],
["8506.96", "100", "0", "2"]
],
"bids": [
["8476.97", "256", "0", "12"],
["8475.55", "101", "0", "1"],
["8475.54", "100", "0", "1"],
["8475.3", "1", "0", "1"],
["8447.32", "6", "0", "1"],
["8447.02", "246", "0", "1"],
["8446.83", "24", "0", "1"],
["8446", "95", "0", "3"]
],
"ts": "1597026383085",
"checksum": -855196043
}]
}
推送示例:增量
{
"arg": {
"channel": "books",
"instId": "BTC-USD"
},
"action": "update",
"data": [{
"asks": [
["8476.98", "415", "0", "13"],
["8477", "7", "0", "2"],
["8477.34", "85", "0", "1"],
["8477.56", "1", "0", "1"],
["8505.84", "8", "0", "1"],
["8506.37", "85", "0", "1"],
["8506.49", "2", "0", "1"],
["8506.96", "100", "0", "2"]
],
"bids": [
["8476.97", "256", "0", "12"],
["8475.55", "101", "0", "1"],
["8475.54", "100", "0", "1"],
["8475.3", "1", "0", "1"],
["8447.32", "6", "0", "1"],
["8447.02", "246", "0", "1"],
["8446.83", "24", "0", "1"],
["8446", "95", "0", "3"]
],
"ts": "1597026383085",
"checksum": -855196043
}]
}
推送数据参数
参数名 | 类型 | 描述 |
---|---|---|
arg | Object | 订阅成功的频道 |
> channel | String | 频道名 |
> instId | String | 产品ID |
action | String | 推送数据动作,增量推送数据还是全量推送数据snapshot :全量 update :增量 |
data | Array | 订阅的数据 |
> asks | Array | 卖方深度 |
> bids | Array | 买方深度 |
> ts | String | 数据更新时间戳,Unix时间戳的毫秒数格式,如 1597026383085 |
> checksum | Integer | 检验和 (下方注解) |
Checksum机制
此机制可以帮助用户校验深度数据的准确性。
深度合并
用户订阅增量推送(如:books
400档)深度频道成功后,首先获取初始全量深度数据,当获取到增量推送数据后,更新本地全量深度数据。
- 如果有相同价格,则比较数量;数量为0删除此深度,数量有变化则替换此数据。
- 如果没有相同价格,则按照价格优劣排序(bid为价格降序,ask为价格升序),将深度信息插入到全量数据中
计算校验和
先用深度合并后前25档bids和asks组成一个字符串(其中ask和bid中的价格和数量以冒号连接),再计算其crc32值(32位有符号整型)。
计算校验和
1.bid和ask超过25档
合并后全量深度数据(在此仅展示2档数据,实际应截取25档数据):
{
"bids": [
["3366.1", "7", "0", "3"],
["3366", "6", "3", "4"]
],
"asks": [
["3366.8", "9", "10", "3"],
["3368", "8", "3", "4"]
]
}
校验字符串:
"3366.1:7:3366.8:9:3366:6:3368:8"
2.bid或ask不足25档
合并后全量深度数据:
{
"bids": [
["3366.1", "7", "0", "3"]
],
"asks": [
["3366.8", "9", "10", "3"],
["3368", "8", "3", "4"],
["3372", "8", "3", "4"]
]
}
校验字符串:
"3366.1:7:3366.8:9:3368:8:3372:8"
- 当bid和ask深度数据超过25档时,截取各自25档数据,要校验的字符串按照bid、ask深度数据交替方式连接。
如:bid[价格:数量]
:ask[价格:数量]
:bid[价格:数量]
:ask[价格:数量]
... - bid或ask深度数据不足25档时,直接忽略缺失的深度。
如:bid[价格:数量]
:ask[价格:数量]
:asks[价格:数量]
:asks[价格:数量]
...
Status 频道
获取系统维护的状态,当系统维护状态改变时推送。首次订阅:”推送最新一条的变化数据“;后续每次有状态变化,推送变化的内容。
请求示例
{
"op": "subscribe",
"args": [{
"channel": "status"
}]
}
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
op | String | 是 | 操作,subscribe unsubscribe |
args | Array | 是 | 请求订阅的频道列表 |
> channel | String | 是 | 频道名, status |
成功返回示例
{
"event": "subscribe",
"arg": {
"channel": "status"
}
}
失败返回示例
{
"event": "error",
"code": "60012",
"msg": "Illegal request: {\"op\": \"subscribe\", \"argss\":[{ \"channel\" : \"statuss\"}]}"
}
返回参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
event | String | 是 | 事件,subscribe unsubscribe error |
arg | Object | 否 | 订阅的频道 |
> channel | String | 是 | 频道名 |
code | String | 否 | 错误码 |
msg | String | 否 | 错误消息 |
推送示例
{
"arg": {
"channel": "status"
},
"data": [{
"title": "Spot System Upgrade",
"state": "scheduled",
"begin": "1610019546",
"href": "",
"end": "1610019546",
"serviceType": "1",
"system": "classic",
"scheDesc": "",
"ts": "1597026383085"
}]
}
推送数据参数
参数名 | 类型 | 描述 |
---|---|---|
arg | Object | 订阅成功的频道 |
> channel | String | 频道名 |
data | Array | 订阅的数据 |
> title | String | 系统维护说明的标题 |
> state | String | 系统的状态,scheduled :等待中 ; ongoing :进行中 ; pre_open :预开放;completed :已完成 canceled : 已取消 当维护时间过长,会存在预开放时间,一般持续10分钟左右。 |
> begin | String | 系统维护的开始时间,Unix时间戳的毫秒数格式 如:1617788463867 |
> end | String | 交易全面开放的时间,Unix时间戳的毫秒数格式 如:1617788463867 在维护完成前,是预期结束时间;维护完成后,会变更为实际结束时间。 |
> preOpenBegin | String | 预开放开始的时间,开放撤单、Post Only 下单和资金转入功能的时间 |
> href | String | 系统维护详情的超级链接,若无返回值,默认值为空,如:“” |
> serviceType | String | 服务类型, 0 :WebSocket ; 1 :经典账户 5 :统一账户;99 :其他(如:停止部分产品交易) |
> system | String | 系统,classic :经典账户,unified :统一账户 |
> scheDesc | String | 改期进度说明,如: 由 2021-01-26T16:30:00.000Z 改期到 2021-01-28T16:30:00.000Z |
> ts | String | 推送时间,Unix时间戳的毫秒数格式,如:1617788463867 |
错误码
REST
REST API 错误码从 50000 到 59999
公共
错误码从 50000 到 53999
通用类
错误码 | HTTP 状态码 | 错误提示 |
---|---|---|
0 | 200 | |
1 | 200 | 操作全部失败 |
2 | 200 | 批量操作部分成功 |
50000 | 400 | body不能为空 |
50001 | 503 | 服务暂时不可用,请稍后重试 |
50002 | 400 | 非法的json数据 |
50004 | 400 | 接口请求超时(不代表请求成功或者失败,请检查请求结果) |
50005 | 410 | 接口已下线或无法使用 |
50006 | 400 | 无效的Content_Type,请使用"application/json"格式 |
50007 | 200 | 用户被冻结 |
50008 | 200 | 用户不存在 |
50009 | 200 | 用户处于爆仓冻结 |
50010 | 200 | 用户ID为空 |
50011 | 429 | 用户请求频率过快,超过该接口允许的限额 |
50012 | 200 | 用户状态无效 |
50013 | 429 | 当前系统繁忙,请稍后重试 |
50014 | 400 | 必填参数{0}不能为空 |
50015 | 400 | 参数{0}和{1}不能同时为空 |
50016 | 400 | 参数{0}和{1}不匹配 |
50024 | 200 | 参数{0}和{1}不能同时存在 |
50025 | 200 | 参数{0}传值个数超过最大限制{1} |
50026 | 500 | 系统错误,请稍后重试 |
50027 | 200 | 当前账户已被限制交易 |
50028 | 200 | 账户异常无法下单 |
50029 | 200 | 你的账户已经触发风控体系,禁止该标的{0}交易,请联系客服进行处理 |
50030 | 200 | 用户没有使用此API接口的权限 |
50032 | 200 | 您的账户已设置禁止该币种交易,请确认后重试 |
50033 | 200 | 您的账户已设置禁止该业务线交易,请确认后重试 |
50035 | 403 | 该接口要求APIKey必须绑定IP |
50036 | 200 | 无效的expTime |
50037 | 200 | 订单已过期 |
50038 | 200 | 该功能模拟盘暂不支持 |
50039 | 200 | 时间戳分页时,不支持使用before参数 |
50041 | 200 | 您当前不在白名单列表,请联系客服 |
API 类
错误码 | HTTP 状态码 | 错误提示 |
---|---|---|
50100 | 400 | Api 已被冻结,请联系客服处理 |
50101 | 401 | APIKey 与当前环境不匹配 |
50102 | 401 | 请求时间戳过期 |
50103 | 401 | 请求头"OK-ACCESS-KEY"不能为空 |
50104 | 401 | 请求头"OK-ACCESS-PASSPHRASE"不能为空 |
50105 | 401 | 请求头"OK-ACCESS-PASSPHRASE"错误 |
50106 | 401 | 请求头"OK-ACCESS-SIGN"不能为空 |
50107 | 401 | 请求头"OK-ACCESS-TIMESTAMP"不能为空 |
50108 | 401 | 券商ID不存在 |
50109 | 401 | 券商域名不存在 |
50110 | 401 | 您的IP{0}不在APIKey绑定IP名单中 (您可以将您的IP加入到APIKey绑定白名单中) |
50111 | 401 | 无效的OK-ACCESS-KEY |
50112 | 401 | 无效的OK-ACCESS-TIMESTAMP |
50113 | 401 | 无效的签名 |
50114 | 401 | 无效的授权 |
50115 | 405 | 无效的请求类型 |
交易类
错误码 | HTTP 状态码 | 错误提示 |
---|---|---|
51000 | 400 | {0}参数错误 |
51001 | 200 | 交易产品ID不存在 |
51003 | 200 | ordId或clOrdId至少填一个 |
51005 | 200 | 委托数量大于单笔上限 |
51006 | 200 | 委托价格不在限价范围内(最高买入价:{0},最低卖出价:{1}) |
51008 | 200 | 委托失败,账户 {0} 可用余额不足 |
51008 | 200 | 委托失败,账户余额不足 |
51009 | 200 | 下单功能被平台冻结 |
51010 | 200 | 当前账户模式不支持此操作 |
51011 | 200 | ordId重复 |
51012 | 200 | 币种不存在 |
51014 | 200 | 指数不存在 |
51015 | 200 | instId和instType不匹配 |
51016 | 200 | clOrdId重复 |
51020 | 200 | 委托数量必须超过单笔下限 |
51023 | 200 | 仓位不存在 |
51024 | 200 | 交易账户冻结 |
51025 | 200 | 委托笔数超限 |
51026 | 200 | 交易产品类型不匹配指数(instType和uly不匹配) |
51030 | 200 | 资金费结算中 |
51031 | 200 | 委托价格不在平仓限价范围内 |
51032 | 200 | 市价全平中 |
51033 | 200 | 币对单笔交易已达限额 |
51037 | 200 | 当前账户风险状态,仅支持降低账户风险方向的IOC订单 |
51038 | 200 | 当前风险模块下已经存在降低账户风险方向的IOC类型订单 |
51044 | 200 | 当前订单类型{0}, {1}不支持设置止盈和止损 |
51046 | 200 | 止盈触发价格应该大于委托价格 |
51047 | 200 | 止损触发价格应该小于委托价格 |
51048 | 200 | 止盈触发价格应该小于委托价格 |
51049 | 200 | 止损触发价格应该大于委托价格 |
51050 | 200 | 止盈触发价格应该大于卖一价 |
51051 | 200 | 止损触发价格应该小于卖一价 |
51052 | 200 | 止盈触发价格应该小于买一价 |
51053 | 200 | 止损触发价格应该大于买一价 |
51054 | 500 | 获取信息超时,请稍候重试 |
51056 | 200 | 当前策略不支持该操作 |
51057 | 200 | 简单交易模式下不可用合约网格 |
51058 | 200 | 该策略无仓位 |
51059 | 200 | 策略当前状态不支持此操作 |
51101 | 200 | 超出单笔最大挂单张数 |
51103 | 200 | 超出标的最大挂单数量 |
51104 | 200 | 超出标的最大挂单张数 |
51106 | 200 | 超出标的最大可开张数 |
51107 | 200 | 超出标的最大持仓张数 |
51109 | 200 | 订单深度中无买一卖一价 |
51110 | 200 | 集合竞价开始后方可下限价单 |
51111 | 200 | 批量下单时,超过最大单数{0} |
51112 | 200 | 平仓张数大于该仓位的可平张数 |
51113 | 429 | 市价全平操作过于频繁 |
51115 | 200 | 市价全平前请先撤销所有平仓单 |
51116 | 200 | 委托价格或触发价格超过{0}美元 |
51117 | 200 | 平仓单挂单单数超过限制 |
51120 | 200 | 下单数量不足{0}张 |
51121 | 200 | 下单张数应为一手张数的倍数 |
51122 | 200 | 委托价格小于最小值{0} |
51124 | 200 | 价格发现期间您只可下限价单 |
51127 | 200 | 仓位可用余额为0 |
51129 | 200 | 持仓及买入订单价值已达到持仓限额,不允许继续买入 |
51131 | 200 | 仓位可用余额不足 |
51132 | 200 | 仓位正资产小于最小交易单位 |
51133 | 200 | 跨币种全仓币币不支持只减仓功能 |
51134 | 200 | 平仓失败,请检查持仓和挂单 |
51135 | 200 | 您的平仓价格已触发限价,最高买入价格为{0} |
51136 | 200 | 您的平仓价格已触发限价,最低卖出价格为{0} |
51137 | 200 | 您的开仓价格已触发限价,最高买入价格为{0} |
51138 | 200 | 您的开仓价格已触发限价,最低卖出价格为{0} |
51139 | 200 | 交易账户下币币不支持只减仓功能 |
51143 | 200 | 您的询价失败,请稍后重试 |
51148 | 200 | 只减仓委托仅允许减少仓位数量,确保你的仓位不会增加 |
51149 | 500 | 下单超时,请稍候重试 |
51150 | 200 | 交易数量或价格的精度超过限制 |
51201 | 200 | 市价委托单笔价值不能超过 1,000,000 USDT |
51202 | 200 | 市价单下单数量超出最大值 |
51203 | 200 | 普通委托数量超出最大限制{0} |
51204 | 200 | 限价委托单价格不能为空 |
51205 | 200 | 不支持只减仓操作 |
51206 | 200 | 请先撤销当前下单产品{0}的只减仓挂单,避免反向开仓 |
51250 | 200 | 策略委托价格不在正确范围内 |
51251 | 200 | 策略委托类型错误 |
51252 | 200 | 策略委托数量不在正确范围内 |
51253 | 200 | 冰山委托单笔均值超限 |
51254 | 200 | 冰山委托单笔均值错误 |
51255 | 200 | 冰山委托单笔委托超限 |
51256 | 200 | 冰山委托深度错误 |
51257 | 200 | 跟踪委托回调服务错误,回调幅度限制为{0}<x<={1}% |
51258 | 200 | 跟踪委托失败,卖单激活价格需大于最新成交价格 |
51259 | 200 | 跟踪委托失败,买单激活价格需小于最新成交价格 |
51260 | 200 | 每个用户最多可同时持有{0}笔未成交的跟踪委托 |
51261 | 200 | 每个用户最多可同时持有{0}笔未成交的止盈止损 |
51262 | 200 | 每个用户最多可同时持有{0}笔未成交的冰山委托 |
51263 | 200 | 每个用户最多可同时持有{0}笔未成交的时间加权单 |
51264 | 200 | 时间加权单笔均值超限 |
51265 | 200 | 时间加权单笔上限错误 |
51267 | 200 | 时间加权扫单比例出错 |
51268 | 200 | 时间加权扫单范围出错 |
51269 | 200 | 时间加权委托间隔错误,应为{0}<=x<={1} |
51270 | 200 | 时间加权委托深度限制为 0<x<=1% |
51271 | 200 | 时间加权委托失败,扫单比例应该为 0<x<=100% |
51272 | 200 | 时间加权委托失败,扫单范围应该为 0<x<=1% |
51273 | 200 | 时间加权委托总量应为大于 0 |
51274 | 200 | 时间加权委托总数量需大于单笔上限 |
51275 | 200 | 止盈止损市价单笔委托数量不能超过最大限制 |
51276 | 200 | 止盈止损市价单不能指定价格 |
51277 | 200 | 止盈触发价格不能大于最新成交价 |
51278 | 200 | 止损触发价格不能小于最新成交价 |
51279 | 200 | 止盈触发价格不能小于最新成交价 |
51280 | 200 | 止损触发价格不能大于最新成交价 |
51281 | 200 | 计划委托不支持使用tgtCcy参数 |
51282 | 200 | 吃单价优于盘口的比例范围 |
51283 | 200 | 时间间隔的范围{0}s~{1}s |
51284 | 200 | 单笔数量的范围{0}~{1} |
51285 | 200 | 委托总量的范围{0}~{1} |
51286 | 200 | 下单金额需大于等于{0} |
51288 | 200 | 策略正在停止中,请勿重复点击 |
51289 | 200 | 策略配置不存在,请稍后再试 |
51290 | 200 | 策略引擎正在升级,请稍后重试 |
51291 | 200 | 策略不存在或已停止 |
51292 | 200 | 策略类型不存在 |
51293 | 200 | 策略不存在 |
51294 | 200 | 该策略暂不能创建,请稍后再试 |
51299 | 200 | 策略委托失败,用户最多可持有{0}笔该类型委托 |
51300 | 200 | 止盈触发价格不能大于标记价格 |
51302 | 200 | 止损触发价格不能小于标记价格 |
51303 | 200 | 止盈触发价格不能小于标记价格 |
51304 | 200 | 止损触发价格不能大于标记价格 |
51305 | 200 | 止盈触发价格不能大于指数价格 |
51306 | 200 | 止损触发价格不能小于指数价格 |
51307 | 200 | 止盈触发价格不能小于指数价格 |
51308 | 200 | 止损触发价格不能大于指数价格 |
51309 | 200 | 集合竞价期间不能创建策略 |
51311 | 200 | 移动止盈止损委托失败,回调幅度限制为{0}<x<={1} |
51312 | 200 | 移动止盈止损委托失败,委托数量范围{0}<x<={1} |
51313 | 200 | 逐仓自主划转模式不支持策略部分 |
51341 | 200 | 当前策略状态下暂不支持平仓 |
51342 | 200 | 已有平仓单,请稍后重试 |
51343 | 200 | 止盈价格需小于区间最低价格 |
51344 | 200 | 止损价格需大于区间最高价格 |
51345 | 200 | 策略类型不是网格策略 |
51346 | 200 | 最高价格不能低于最低价格 |
51347 | 200 | 暂无可提取利润 |
51348 | 200 | 止损价格需小于区间最低价格 |
51349 | 200 | 止盈价格需大于区间最高价格 |
51350 | 200 | 暂无可推荐参数 |
51351 | 200 | 单格收益必须大于0 |
51400 | 200 | 撤单失败,订单不存在 |
51401 | 200 | 撤单失败,订单已撤销 |
51402 | 200 | 撤单失败,订单已完成 |
51403 | 200 | 撤单失败,该委托类型无法进行撤单操作 |
51404 | 200 | 价格发现第二阶段您不可撤单 |
51405 | 200 | 撤单失败,您当前没有未成交的订单 |
51406 | 400 | 撤单数量超过最大允许单数{0} |
51407 | 200 | ordIds 和 clOrdIds 不能同时为空 |
51408 | 200 | 币对 id 或币对名称与订单信息不匹配 |
51409 | 200 | 币对 id 或币对名称不能同时为空 |
51410 | 200 | 撤单失败,订单已处于撤销中 |
51411 | 200 | 用户没有执行mass cancel的权限 |
51412 | 200 | 委托已触发,暂不支持撤单 |
51413 | 200 | 撤单失败,接口不支持该委托类型的撤单 |
51415 | 200 | 下单失败,现货交易仅支持设置最新价为触发价格,请更改触发价格并重试 |
51500 | 200 | 价格和数量不能同时为空 |
51501 | 400 | 修改订单超过最大允许单数{0} |
51503 | 200 | 修改订单失败,订单不存在 |
51506 | 200 | 订单类型不支持改单 |
51508 | 200 | 集合竞价第一阶段和第二阶段不允许改单 |
51509 | 200 | 修改订单失败,订单已撤销 |
51510 | 200 | 修改订单失败,订单已完成 |
51511 | 200 | 操作失败,订单价格不满足Post Only条件 |
51512 | 200 | 批量修改订单失败。同一批量改单请求中不允许包含相同订单。 |
51513 | 200 | 对于正在处理的同一订单,改单请求次数不得超过3次 |
51600 | 200 | 查询订单的状态不存在 |
51601 | 200 | 订单状态和订单id不能同时存在 |
51602 | 200 | 订单状态或订单id必须存在一个 |
51603 | 200 | 查询订单不存在 |
51607 | 200 | 文件正在生成中 |
数据类
错误码 | HTTP 状态码 | 错误提示 |
---|---|---|
52000 | 200 | 没有最新行情信息 |
币币
错误码从 54000 到 54999
错误码 | HTTP 状态码 | 错误提示 |
---|---|---|
54000 | 200 | 暂不支持币币杠杆业务 |
资金类
错误码从 58000 到 58999
错误码 | HTTP 状态码 | 错误提示 |
---|---|---|
58002 | 200 | 请先开通余币宝服务 |
58003 | 200 | 余币宝不支持该币种 |
58004 | 200 | 账户冻结 |
58005 | 200 | 申购/赎回额度不可超过{0} |
58006 | 200 | 币种{0}不支持当前操作 |
58007 | 200 | 资金接口服务异常,请稍后再试。 |
58008 | 200 | 您没有该币种资产 |
58009 | 200 | 币对不存在 |
58010 | 200 | 该链{0}暂不支持 |
58011 | 200 | 抱歉,由于当地法律法规,无法为{region}未认证用户提供服务,请先认证身分以继续使用 |
58012 | 200 | 抱歉,由于当地法律法规,无法为{region}未认证用户提供服务,所以您无法向该用户转账 |
58100 | 200 | 行权或结算中,暂无法转入或转出 |
58101 | 200 | 划转冻结 |
58102 | 429 | 划转过于频繁,请降低划转频率 |
58104 | 200 | 您在法币区的交易异常,现已被限制划转功能,请您联系在线客服以解除限制 |
58105 | 200 | 您在法币区的交易异常,现已被限制划转功能,请您在网页或APP进行法币划 转操作以完成身份验证 |
58112 | 200 | 资金划转失败,请稍后重试 |
58114 | 400 | 转账金额必须大于零(划转接口,金额输入不正确) |
58115 | 200 | 子账户不存在 |
58116 | 200 | 转出数量大于最大可转数量 |
58117 | 200 | 账户资产异常,请先处理负资产后再划转 |
58119 | 200 | {0} 子账户没有转出权限,请先设置 |
58120 | 200 | 划转服务暂不可用,请稍后重试 |
58121 | 200 | 此次划转将导致您的仓位风险水平较高,进而可能引起爆仓。您需要重新调整划转金额,确保仓位处于安全水平后,再进行划转操作。 |
58123 | 200 | from和to不可相同 |
58124 | 200 | 资金划转中,划转id:{trId},请通过接口(GET /api/v5/asset/transfer-state)获取最新状态 |
58200 | 200 | 该币种暂不支持从{0}提现至{1},敬请谅解 |
58201 | 200 | 今日提现金额累计超过每日限额 |
58202 | 200 | NEO最小提现数量为1,且提现数量必须为整数 |
58203 | 200 | 请先添加提现地址 |
58204 | 200 | 提现冻结 |
58205 | 200 | 提现金额大于单笔提现最大金额 |
58206 | 200 | 提现金额小于单笔最小提现金额 |
58207 | 200 | 提币地址不在免认证白名单内 |
58208 | 200 | 提现失败,邮箱未绑定 |
58209 | 200 | 子账户不能充值或提现 |
58210 | 200 | 提现手续费大于最大值(提现接口,提现手续费输入有误) |
58211 | 200 | 提现手续费小于最小值(提现接口,手续费输入有误) |
58212 | 200 | 提现手续费应填写为提币数量的{0}% |
58213 | 200 | 提现前请先设置交易密码 |
58214 | 200 | {chainName}维护中,暂停提币 |
58215 | 200 | 提币申请ID不存在 |
58216 | 200 | 不允许执行该操作 |
58217 | 200 | 您当前的提现地址存在风险,暂时不能提现,详情请联系客服 |
58218 | 200 | 您保存的提现账户已过期 |
58220 | 200 | 提币请求已撤销 |
58221 | 200 | 提币地址需要标签 |
58222 | 200 | 提币地址不合法 |
58224 | 200 | 该类型币种暂不支持链上提币到 地址,请通过内部转账进行提币 |
58225 | 200 | 抱歉,由于当地法律法规,无法为{region}未认证用户提供服务,所以您无法向该用户转账 |
58226 | 200 | {chainName} 已下线,不支持提币 |
58300 | 200 | 创建充值地址超过上限 |
58301 | 200 | 充值地址不存在 |
58302 | 200 | 充值地址需要标签 |
58303 | 200 | 该链{0}充值已关闭 |
58304 | 200 | 创建invoice失败 |
58350 | 200 | 您的余额不足 |
58351 | 200 | invoice已经过期 |
58352 | 200 | invoice无效 |
58353 | 200 | 充币数量需要在限额范围内 |
58354 | 200 | 单日达到生成invoice 10,000 个的上限 |
58355 | 200 | 用户没有使用此API接口的权限,请联系您的客户经理 |
58356 | 200 | 同节点账户不支持闪电网络充币或提币 |
58357 | 200 | 币种{0}不允许创建充值地址 |
58358 | 200 | fromCcy与toCcy不可相同 |
58370 | 200 | 小额兑换功能每日使用次数超限 |
58371 | 200 | 小额资产超过最大限制 |
58372 | 200 | 小额资产不足 |
账户类
错误码从 59000 到 59999
错误码 | HTTP 状态码 | 错误提示 |
---|---|---|
59000 | 200 | 挂单或持仓存在,无法设置 |
59002 | 200 | 子账户挂单、持仓或策略存在,无法设置 |
59004 | 200 | 只支持同一业务线下交易产品ID |
59110 | 200 | 该{0}对应的产品业务线不支持使用tgtCcy参数 |
59200 | 200 | 账户余额不足 |
59201 | 200 | 账户余额是负数 |
59401 | 200 | 持仓价值达到持仓限制 |
59402 | 200 | 查询条件中的instId的交易产品当前不是可交易状态,请填写单个instid逐个查询状态详情 |
59500 | 200 | 仅母账户有操作权限 |
59501 | 200 | 每个账户最多可创建 50个APIKey |
59502 | 200 | 备注名不可以与当前已创建的APIKey备注名重复 |
59503 | 200 | 每个 APIKey 最多可以绑定20个IP地址 |
59504 | 200 | 子账户不支持提币功能 |
59505 | 200 | passphrase 格式不正确,支持6-32位字母和数字组合 (区分大小写,不支持空格符号) |
59506 | 200 | APIKey 不存在 |
59507 | 200 | 转出账户和转入账户必须是同一个母账户下的2个不同的子账户 |
59508 | 200 | {0}该子账户被冻结 |
59510 | 200 | 子账户不存在 |
59601 | 200 | 子账户名称已存在 |
59602 | 200 | 创建的APIkey数量超过上限 |
59603 | 200 | 创建子账户超过上限时 |
59604 | 200 | 仅母账APIkey有操作此接口的权限 |
59605 | 200 | 子账户的APIkey不存在 |
59606 | 200 | 删除失败,请将子账户中的余额划转到母账户 |
59612 | 200 | 时间参数格式转换失败 |
59613 | 200 | 当前未与子账户建立托管关系 |
59614 | 200 | 托管子账户不支持此操作 |
59615 | 200 | 起始日期和结束日期的时间间隔不能超过180天。 |
59616 | 200 | 起始日期不能大于结束日期 |
59617 | 200 | 子账户创建成功,账户等级设置失败 |
59618 | 200 | 创建子账户失败 |
WebSocket
公共
错误码从 60000 到 63999
通用类
错误码 | 错误消息 |
---|---|
60001 | "OK-ACCESS-KEY"不能为空 |
60002 | "OK-ACCESS-SIGN"不能为空 |
60003 | "OK-ACCESS-PASSPHRASE"不能为空 |
60004 | 无效的 OK-ACCESS-TIMESTAMP |
60005 | 无效的 OK-ACCESS-KEY |
60006 | 请求时间戳过期 |
60007 | 无效的签名 |
60008 | 当前服务不支持订阅{0}频道,请检查WebSocket地址 |
60009 | 登录失败 |
60011 | 用户需要登录 |
60012 | 不合法的请求 |
60013 | 无效的参数 args |
60014 | 用户请求频率过快,超过该接口允许的限额 |
60015 | 30秒内没有数据通讯,连接关闭 |
60016 | 缓冲区无法写入数据,连接关闭 |
60017 | 无效的url path |
60018 | 频道不存在 |
60019 | 无效的op{0} |
60020 | 超出最大允许订阅的APIKey数量{0} |
60021 | 该功能不支持多账户登录使用 |
60022 | 批量登录部分成功 |
60023 | 批量登录请求过于频繁 |
60024 | passphrase不正确 |
60025 | 超出最大允许订阅的token数量{0} |
60026 | 不支持APIKey和token同时登录 |
60027 | 参数{0}不可为空 |
60028 | 当前服务不支持交易功能,请检查WebSocket地址 |
60029 | books-l2-tbt深度频道仅支持手续费等级为VIP4及以上的用户订阅使用 |
60030 | books50-l2-tbt深度频道仅支持手续费等级为VIP4及以上的用户订阅使用 |
63999 | 内部系统错误 |