账户和交易接口
[账户和交易接口]模块下的API接口需要身份验证
获取用户所有资产信息
响应示例
{
"success": true,
"code": 0,
"data": [
{
"currency": "BTC",
"positionMargin": 0,
"availableBalance": 0,
"cashBalance": 0,
"frozenBalance": 0,
"equity": 0,
"unrealized": 0,
"bonus": 0
},
{
"currency": "ETH",
"positionMargin": 0,
"availableBalance": 0,
"cashBalance": 0,
"frozenBalance": 0,
"equity": 0,
"unrealized": 0,
"bonus": 0
},
{
"currency": "USDT",
"positionMargin": 0,
"availableBalance": 0.03176562,
"cashBalance": 0.03176562,
"frozenBalance": 0,
"equity": 0.03176562,
"unrealized": 0,
"bonus": 0
}
]
}
- GET
api/v1/private/account/assets
需要权限: 合约交易读取权限
请求参数:
无
响应参数:
参数名 | 类型 | 说明 |
---|---|---|
currency | string | 币种 |
positionMargin | decimal | 仓位保证金 |
frozenBalance | decimal | 冻结余额 |
availableBalance | decimal | 当前可用余额 |
cashBalance | decimal | 可提现余额 |
equity | decimal | 总权益 |
unrealized | decimal | 未实现盈亏 |
获取用户单个币种资产信息
响应示例
{
"success": true,
"code": 0,
"data": {
"currency": "USDT",
"positionMargin": 0,
"availableBalance": 0.03176562,
"cashBalance": 0.03176562,
"frozenBalance": 0,
"equity": 0.03176562,
"unrealized": 0,
"bonus": 0
}
}
- GET
api/v1/private/account/asset/{currency}
需要权限: 合约账户读取权限
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
currency | string | true | 币种 |
响应参数:
参数名 | 类型 | 说明 |
---|---|---|
currency | string | 币种 |
positionMargin | decimal | 仓位保证金 |
frozenBalance | decimal | 冻结余额 |
availableBalance | decimal | 当前可用余额 |
cashBalance | decimal | 可提现余额 |
equity | decimal | 总权益 |
unrealized | decimal | 未实现盈亏 |
获取用户资产划转记录
响应示例
{
"success": true,
"code": 0,
"data": {
"pageSize": 2,
"totalCount": 88,
"totalPage": 44,
"currentPage": 1,
"resultList": [
{
"id": 165230,
"txid": "db13d56ca887429a8f5fe1d1cbc4559c",
"currency": "USDT",
"amount": 0.03176562,
"type": "IN",
"state": "SUCCESS",
"createTime": 1609833219000,
"updateTime": 1609833219000
},
{
"id": 139320,
"txid": "a57ff46de96545839185aff7343f9b7c",
"currency": "USDT",
"amount": 60.53383524,
"type": "OUT",
"state": "SUCCESS",
"createTime": 1608200935000,
"updateTime": 1608200935000
}
]
}
}
- GET
api/v1/private/account/transfer_record
需要权限: 合约账户读取权限
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
currency | string | false | 币种 |
state | string | false | 状态:WAIT 、SUCCESS 、FAILED |
type | string | false | 类型:IN 、OUT |
page_num | int | true | 当前页数,默认为1 |
page_size | int | true | 每页大小,默认20,最大100 |
响应参数:
参数名 | 类型 | 说明 |
---|---|---|
pageSize | int | 页面大小 |
totalCount | int | 总条数 |
totalPage | int | 总页数 |
currentPage | int | 当前页 |
resultList | list | 数据结果集 |
id | long | id |
txid | string | 流水号 |
currency | string | 币种 |
amount | decimal | 转账金额 |
type | string | 类型:IN 、OUT |
state | string | 状态:WAIT 、SUCCESS 、FAILED |
createTime | long | 创建时间 |
updateTime | long | 修改时间 |
获取用户历史持仓信息
响应示例
{
"success": false,
"code": 0,
"message": "",
"data": [{
"positionId": 0,
"symbol": "",
"positionType": 0,
"openType": 0,
"state": 0,
"holdVol": 0.0,
"frozenVol": 0.0,
"closeVol": 0.0,
"holdAvgPrice": 0.0,
"openAvgPrice": 0.0,
"closeAvgPrice": 0.0,
"liquidatePrice": 0.0,
"oim": 0.0,
"im": 0.0,
"holdFee": 0.0,
"realised": 0.0,
"adlLevel": 0,
"leverage": 0,
"createTime": "",
"updateTime": "",
"autoAddIm": false
}]
}
- GET
api/v1/private/position/list/history_positions
需要权限: 合约交易读取权限
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
symbol | string | false | 合约名 |
type | int | false | 仓位类型, 1多 2空 |
page_num | int | true | 当前页数,默认为1 |
page_size | int | true | 每页大小,默认20,最大100 |
响应参数:
参数名 | 类型 | 说明 |
---|---|---|
code | integer | 状态码 |
message | string | 错误描述(如有) |
data | array | |
positionId | long | 持仓id |
symbol | string | 合约名 |
positionType | int | 仓位类型, 1多 2空 |
openType | int | 开仓类型, 1逐仓 2全仓 |
state | int | 仓位状态,1持仓中2系统代持3已平仓 |
holdVol | decimal | 持仓数量 |
frozenVol | decimal | 冻结量 |
closeAvgPrice | decimal | 平仓均价 |
openAvgPrice | decimal | 开仓均价 |
liquidatePrice | decimal | 逐仓时的爆仓价 |
oim | decimal | 原始初始保证金 |
im | decimal | 初始保证金, 逐仓时可以加减此项以调节爆仓价 |
holdFee | decimal | 资金费, 正数表示得到,负数表示支出 |
realised | decimal | 已实现盈亏 |
adlLevel | int | adl等级 |
leverage | int | 杠杆倍数 |
createTime | date | 创建时间 |
updateTime | date | 修改时间 |
autoAddIm | boolean | 是否自动追加保证金 |
获取用户当前持仓
响应示例
{
"success": true,
"code": 0,
"data": [
{
"positionId": 1394650,
"symbol": "ETH_USDT",
"positionType": 1,
"openType": 1,
"state": 1,
"holdVol": 1,
"frozenVol": 0,
"closeVol": 0,
"holdAvgPrice": 1217.3,
"openAvgPrice": 1217.3,
"closeAvgPrice": 0,
"liquidatePrice": 1211.2,
"oim": 0.1290338,
"im": 0.1290338,
"holdFee": 0,
"realised": -0.0073,
"leverage": 100,
"createTime": 1609991676000,
"updateTime": 1609991676000,
"autoAddIm": false
}
]
}
- GET
api/v1/private/position/open_positions
需要权限: 合约交易读取权限
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
symbol | string | false | 合约名 |
响应参数:
参数名 | 类型 | 说明 |
---|---|---|
positionId | long | 持仓id |
symbol | string | 合约名 |
holdVol | decimal | 持仓数量 |
positionType | int | 仓位类型, 1多 2空 |
openType | int | 开仓类型, 1逐仓 2全仓 |
state | int | 仓位状态,1持仓中2系统代持3已平仓 |
frozenVol | decimal | 冻结量 |
closeVol | decimal | 平仓量 |
holdAvgPrice | decimal | 持仓均价 |
closeAvgPrice | decimal | 平仓均价 |
openAvgPrice | decimal | 开仓均价 |
liquidatePrice | decimal | 逐仓时的爆仓价 |
oim | decimal | 原始初始保证金 |
adlLevel | int | adl减仓等级,取值为 1-5,为空时需等待刷新 |
im | decimal | 初始保证金, 逐仓时可以加减此项以调节爆仓价 |
holdFee | decimal | 资金费, 正数表示得到,负数表示支出 |
realised | decimal | 已实现盈亏 |
createTime | date | 创建时间 |
updateTime | date | 修改时间 |
获取用户资金费用明细
响应示例
{
"success": true,
"code": 0,
"data": {
"pageSize": 2,
"totalCount": 73,
"totalPage": 37,
"currentPage": 1,
"resultList": [
{
"id": 328033,
"symbol": "SUSHI_USDT",
"positionType": 1,
"positionValue": 41.8899,
"funding": 0.0837798,
"rate": -0.002,
"settleTime": 1606435200000
},
{
"id": 327194,
"symbol": "SUSHI_USDT",
"positionType": 1,
"positionValue": 34.2654,
"funding": 0.0685308,
"rate": -0.002,
"settleTime": 1606406400000
}
]
}
}
- GET
api/v1/private/position/funding_records
需要权限: 合约交易读取权限
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
symbol | string | false | 合约名 |
position_id | int | false | 仓位id |
page_num | int | true | 当前页数,默认为1 |
page_size | int | true | 每页大小,默认20,最大100 |
响应参数:
参数名 | 类型 | 说明 |
---|---|---|
pageSize | int | 页面大小 |
totalCount | int | 总条数 |
totalPage | int | 总页数 |
currentPage | int | 当前页 |
resultList | list | 数据结果集 |
id | long | id |
symbol | string | 合约名 |
positionId | long | 持仓id |
positionType | int | 1:多仓,2:空仓 |
positionValue | decimal | 仓位价值 |
funding | decimal | 费用 |
rate | decimal | 资金费率 |
settleTime | date | 清算时间 |
获取用户当前未结束订单
响应示例
{
"success": false,
"code": 0,
"message": "",
"data": [{
"orderId": 0,
"symbol": "",
"positionId": 0,
"price": 0.0,
"vol": 0.0,
"leverage": 0,
"side": 0,
"category": 0,
"orderType": 0,
"dealAvgPrice": 0.0,
"dealVol": 0.0,
"orderMargin": 0.0,
"takerFee": 0.0,
"makerFee": 0.0,
"profit": 0.0,
"feeCurrency": "",
"openType": 0,
"state": 0,
"externalOid": "",
"errorCode": 0,
"usedMargin": 0.0,
"createTime": "",
"updateTime": "",
"stopLossPrice": 0.0,
"takeProfitPrice": 0.0
}
]
}
- GET
api/v1/private/order/list/open_orders/{symbol}
需要权限: 合约交易读取权限
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
symbol | string | false | 合约名,不传返回所有 |
page_num | int | true | 当前页数,默认为1 |
page_size | int | true | 每页大小,默认20,最大100 |
响应参数:
参数名 | 类型 | 说明 |
---|---|---|
code | integer | 状态码 |
message | string | 错误描述(如有) |
data | array | |
orderId | long | 订单id |
symbol | string | 合约名 |
positionId | long | 持仓id |
price | decimal | 委托价格 |
vol | decimal | 委托数量 |
leverage | long | 杠杆倍数 |
side | int | 订单方向 1开多,2平空,3开空,4平多 |
category | int | 订单类别:1限价委托,2强平代管委托,4ADL减仓 |
orderType | int | 1:限价单,2:Post Only只做Maker,3:立即成交或立即取消,4:全部成交或者全部取消,5:市价单,6:市价转现价 |
dealAvgPrice | decimal | 成交均价 |
dealVol | decimal | 成交数量 |
orderMargin | decimal | 委托保证金 |
takerFee | decimal | 买单手续费 |
makerFee | decimal | 卖单手续费 |
profit | decimal | 平仓盈亏 |
feeCurrency | string | 收费币种 |
openType | int | 开仓类型,1逐仓,2全仓 |
state | int | 订单状态,1:待报,2未完成,3已完成,4已撤销,5无效 |
externalOid | string | 外部订单号 |
errorCode | int | 错误code,0:正常,1:参数错误,2:账户余额不足,3:仓位不存在,4:仓位可用持仓不足,5:多仓时, 委托价小于了强平价空仓时, 委托价大于了强平价,6:开多时, 强平价小于了合理价开空时, 强平价大于了合理价,7:超过风险限额限制,8:系统撤销,9:仓位模式不匹配,10:因存在其他价格更优订单被撤销单向持仓开仓,撤销平仓订单、双向持仓模式下平仓单已存在更优订单占满可平量,11:合约未启用,12:交割撤单,13:仓位将被强平撤单强平可平张数不够时尝试撤单、尝试追加保证金,撤销所有活跃开仓订单、单向持仓强平时如果有开仓单,需撤销开仓单、全仓撤销所有开仓单,再次判断是否强平,14:ADL撤单,15:黑名单用户下单撤销,16:单向持仓时资金费用结算余额不足时撤单,17:划出保证金撤单,18:IOC订单撤销剩余,19:FOK订单撤销,20:只做Maker撤销,21:市价吃不到任何订单 |
usedMargin | decimal | 已经使用的保证金 |
createTime | date | 创建时间 |
updateTime | date | 修改时间 |
stopLossPrice | decimal | 止损价 |
takeProfitPrice | decimal | 止盈价 |
获取用户所有历史订单
响应示例
{
"success": false,
"code": 0,
"message": "",
"data": [{
"orderId": 0,
"symbol": "",
"positionId": 0,
"price": 0.0,
"vol": 0.0,
"leverage": 0,
"side": 0,
"category": 0,
"orderType": 0,
"dealAvgPrice": 0.0,
"dealVol": 0.0,
"orderMargin": 0.0,
"takerFee": 0.0,
"makerFee": 0.0,
"profit": 0.0,
"feeCurrency": "",
"openType": 0,
"state": 0,
"externalOid": "",
"errorCode": 0,
"usedMargin": 0.0,
"createTime": "",
"updateTime": "",
"stopLossPrice": 0.0,
"takeProfitPrice": 0.0
}
]
}
- GET
api/v1/private/order/list/history_orders
需要权限: 合约交易读取权限
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
symbol | string | false | 合约名 |
states | string | false | 订单状态,1:待报,2未完成,3已完成,4已撤销,5无效;多个用 ',' 隔开 |
category | int | false | 订单类别,1:限价委托,2:强平代管委托,4:ADL减仓 |
start_time | long | false | 开始时间,开始时间和结束时间的跨度一次最大只能查90天,不传时间默认返回最近7天的数据 |
end_time | long | false | 结束时间,开始时间和结束时间的跨度一次最大只能查90天 |
side | int | false | 订单方向 1开多,2平空,3开空,4平多 |
page_num | int | true | 当前页数,默认为1 |
page_size | int | true | 每页大小,默认20,最大100 |
响应参数:
参数名 | 类型 | 说明 |
---|---|---|
code | integer | 状态码 |
message | string | 错误描述(如有) |
orderId | long | 订单id |
symbol | string | 合约名 |
positionId | long | 持仓id |
price | decimal | 委托价格 |
vol | decimal | 委托数量 |
leverage | long | 杠杆倍数 |
side | int | 订单方向 1开多,2平空,3开空,4平多 |
category | int | 订单类别:1限价委托,2强平代管委托,4ADL减仓 |
orderType | int | 1:限价单,2:Post Only只做Maker,3:立即成交或立即取消,4:全部成交或者全部取消,5:市价单,6:市价转现价 |
dealAvgPrice | decimal | 成交均价 |
dealVol | decimal | 成交数量 |
orderMargin | decimal | 委托保证金 |
takerFee | decimal | 买单手续费 |
makerFee | decimal | 卖单手续费 |
profit | decimal | 平仓盈亏 |
feeCurrency | string | 收费币种 |
openType | int | 开仓类型,1逐仓,2全仓 |
state | int | 订单状态,1:待报,2未完成,3已完成,4已撤销,5无效 |
errorCode | int | 错误code,0:正常,1:参数错误,2:账户余额不足,3:仓位不存在,4:仓位可用持仓不足,5:多仓时, 委托价小于了强平价,空仓时, 委托价大于了强平价,6:开多时, 强平价大于了合理价,开空时, 强平价小于了合理价 |
externalOid | string | 外部订单号 |
usedMargin | decimal | 已经使用的保证金 |
createTime | date | 创建时间 |
updateTime | date | 修改时间 |
stopLossPrice | decimal | 止损价 |
takeProfitPrice | decimal | 止盈价 |
注意:本接口返回的price
为平台接管成交价格,若想查询强平订单的强平价格可通过获取用户当前持仓接口查询,发生强平的订单,该价格为平台的接管价格,与强平价或会出现差异,具体可参考:强平与风险限制
根据外部号查询订单
响应示例
{
"success": true,
"code": 0,
"data": {
"orderId": "102015012431820288",
"symbol": "ETH_USDT",
"positionId": 1394917,
"price": 1209.05,
"vol": 1,
"leverage": 0,
"side": 2,
"category": 1,
"orderType": 5,
"dealAvgPrice": 1208.35,
"dealVol": 1,
"orderMargin": 0,
"takerFee": 0.0072501,
"makerFee": 0,
"profit": 0,
"feeCurrency": "USDT",
"openType": 1,
"state": 3,
"externalOid": "_m_f95eb99b061d4eef8f64a04e9ac4dad3",
"errorCode": 0,
"usedMargin": 0,
"createTime": 1609992674000,
"updateTime": 1609992674000
}
}
- GET
api/v1/private/order/external/{symbol}/{external_oid}
需要权限: 合约交易读取权限
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
symbol | string | true | 合约名 |
external_oid | string | true | 外部订单号 |
响应参数:
参数名 | 类型 | 说明 |
---|---|---|
orderId | long | 订单id |
symbol | string | 合约名 |
positionId | long | 持仓id |
price | decimal | 委托价格 |
vol | decimal | 委托数量 |
leverage | long | 杠杆倍数 |
side | int | 订单方向 1开多,2平空,3开空,4平多 |
category | int | 订单类别:1限价委托,2强平代管委托,3代管平仓委托,4ADL减仓 |
orderType | int | 1:限价单,2:Post Only只做Maker,3:立即成交或立即取消,4:全部成交或者全部取消,5:市价单,6:市价转现价 |
dealAvgPrice | decimal | 成交均价 |
dealVol | decimal | 成交数量 |
orderMargin | decimal | 委托保证金 |
takerFee | decimal | 买单手续费 |
makerFee | decimal | 卖单手续费 |
profit | decimal | 平仓盈亏 |
feeCurrency | string | 收费币种 |
openType | int | 开仓类型,1逐仓,2全仓 |
state | int | 订单状态,1:待报,2未完成,3已完成,4已撤销,5无效 |
externalOid | string | 外部订单号 |
createTime | date | 创建时间 |
updateTime | date | 修改时间 |
根据订单号查询订单
响应示例
{
"success": true,
"code": 0,
"data": {
"orderId": "102015012431820288",
"symbol": "ETH_USDT",
"positionId": 1394917,
"price": 1209.05,
"vol": 1,
"leverage": 0,
"side": 2,
"category": 1,
"orderType": 5,
"dealAvgPrice": 1208.35,
"dealVol": 1,
"orderMargin": 0,
"takerFee": 0.0072501,
"makerFee": 0,
"profit": 0,
"feeCurrency": "USDT",
"openType": 1,
"state": 3,
"externalOid": "_m_f95eb99b061d4eef8f64a04e9ac4dad3",
"errorCode": 0,
"usedMargin": 0,
"createTime": 1609992674000,
"updateTime": 1609992674000
}
}
- GET
api/v1/private/order/get/{order_id}
需要权限: 合约交易读取权限
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
order_id | long | true | 订单号 |
响应参数:
参数名 | 类型 | 说明 |
---|---|---|
orderId | long | 订单id |
symbol | string | 合约名 |
positionId | long | 持仓id |
price | decimal | 委托价格 |
vol | decimal | 委托数量 |
leverage | long | 杠杆倍数 |
side | int | 订单方向 1开多,2平空,3开空,4平多 |
category | int | 订单类别:1限价委托,2强平代管委托,3代管平仓委托,4ADL减仓 |
orderType | int | 1:限价单,2:Post Only只做Maker,3:立即成交或立即取消,4:全部成交或者全部取消,5:市价单,6:市价转现价 |
dealAvgPrice | decimal | 成交均价 |
dealVol | decimal | 成交数量 |
orderMargin | decimal | 委托保证金 |
takerFee | decimal | 买单手续费 |
makerFee | decimal | 卖单手续费 |
profit | decimal | 平仓盈亏 |
feeCurrency | string | 收费币种 |
openType | int | 开仓类型,1逐仓,2全仓 |
state | int | 订单状态,1:待报,2未完成,3已完成,4已撤销,5无效 |
externalOid | string | 外部订单号 |
createTime | date | 创建时间 |
updateTime | date | 修改时间 |
根据订单号批量查询订单
- GET
/api/v1/private/order/batch_query
需要权限: 合约交易读取权限
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
order_ids | long | true | 订单号数组,可使用逗号隔开例如:order_ids = 1,2,3(最大50个订单): |
响应参数:
参数名 | 类型 | 说明 |
---|---|---|
orderId | long | 订单id |
symbol | string | 合约名 |
positionId | long | 持仓id |
price | decimal | 委托价格 |
vol | decimal | 委托数量 |
leverage | long | 杠杆倍数 |
side | int | 订单方向 1开多,2平空,3开空,4平多 |
category | int | 订单类别:1限价委托,2强平代管委托,3代管平仓委托,4ADL减仓 |
orderType | int | 1:限价单,2:Post Only只做Maker,3:立即成交或立即取消,4:全部成交或者全部取消,5:市价单,6:市价转现价 |
dealAvgPrice | decimal | 成交均价 |
dealVol | decimal | 成交数量 |
orderMargin | decimal | 委托保证金 |
takerFee | decimal | 买单手续费 |
makerFee | decimal | 卖单手续费 |
profit | decimal | 平仓盈亏 |
feeCurrency | string | 收费币种 |
openType | int | 开仓类型,1逐仓,2全仓 |
state | int | 订单状态,1:待报,2未完成,3已完成,4已撤销,5无效 |
externalOid | string | 外部订单号 |
createTime | date | 创建时间 |
updateTime | date | 修改时间 |
根据订单号获取订单成交明细
响应示例
{
"success": true,
"code": 0,
"data": [
{
"id": "159274416",
"symbol": "ETH_USDT",
"side": 2,
"vol": 1,
"price": 1208.35,
"feeCurrency": "USDT",
"fee": 0.0072501,
"timestamp": 1609992674000,
"profit": 0,
"category": 1,
"orderId": "102015012431820288",
"taker": true
}
]
}
- GET
api/v1/private/order/deal_details/{order_id}
需要权限: 合约交易读取权限
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
order_id | long | true | 订单id |
响应参数:
参数名 | 类型 | 说明 |
---|---|---|
id | long | 成交id |
symbol | string | 合约名 |
side | int | 订单方向 1开多,2平空,3开空,4平多 |
vol | decimal | 成交数量 |
price | decimal | 成交价格 |
fee | decimal | 手续费 |
feeCurrency | string | 收费币种 |
profit | decimal | 盈利 |
isTaker | boolean | 是否为taker单 |
category | int | 订单类别:1限价委托,2强平代管委托,4ADL减仓 |
orderId | long | 订单id |
timestamp | long | 成交时间时间 |
获取用户所有订单成交明细
响应示例
{
"success": false,
"code": 0,
"message": "",
"data": [{
"id": 0,
"symbol": "",
"side": 0,
"vol": 0.0,
"price": 0.0,
"feeCurrency": "",
"fee": 0.0,
"timestamp": "",
"profit": 0.0,
"isTaker": false,
"category": 0,
"orderId": 0,
"opponentOrderId": 0,
}]
}
- GET
api/v1/private/order/list/order_deals
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
symbol | string | true | 合约名 |
start_time | long | false | 开始时间,不传默认为向前推7天的时间,传了时间,最大跨度为90天 |
end_time | long | false | 结束时间,开始和结束时间的跨度为90天 |
page_num | int | true | 当前页数,默认为1 |
page_size | int | true | 每页大小,默认20,最大100 |
响应参数:
参数名 | 类型 | 说明 |
---|---|---|
code | integer | 状态码 |
message | string | 错误描述(如有) |
data | array | |
id | long | 成交订单id |
symbol | string | 合约名 |
side | int | 订单方向 1开多,2平空,3开空,4平多 |
vol | decimal | 成交数量 |
price | decimal | 成交价格 |
fee | decimal | 手续费 |
feeCurrency | string | 收费币种 |
profit | decimal | 盈利 |
isTaker | boolean | 是否为taker单 |
category | int | 订单类别:1限价委托,2强平代管委托,4ADL减仓 |
orderId | long | 订单id |
timestamp | long | 成交时间时间 |
获取计划委托订单列表
响应示例
{
"success": false,
"code": 0,
"message": "",
"data": [{
"id": 0,
"symbol": "",
"leverage": 0,
"side": 0,
"triggerPrice": 0.0,
"price": 0.0,
"vol": 0.0,
"openType": 0,
"triggerType": 0,
"state": 0,
"executeCycle": 0,
"trend": 0,
"orderType": 0,
"orderId": 0,
"errorCode": 0,
"createTime": "",
"updateTime": ""
}
]
}
- GET
api/v1/private/planorder/list/orders
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
symbol | string | false | 合约名 |
states | string | false | 状态,1:未触发,2:已取消,3:已执行,4:已失效,5:执行失败;多个用 ',' 隔开 |
start_time | long | false | 开始时间,开始时间和结束时间的跨度一次最大只能查90天,不传时间默认返回最近7天的数据 |
end_time | long | false | 结束时间,开始时间和结束时间的跨度一次最大只能查90天 |
page_num | int | true | 当前页数,默认为1 |
page_size | int | true | 每页大小,默认20,最大100 |
响应参数:
参数名 | 类型 | 说明 |
---|---|---|
code | integer | 状态码 |
message | string | 错误描述(如有) |
data | array | |
id | int | 计划委托订单id |
symbol | string | 合约名 |
leverage | decimal | 杠杆倍数 |
side | string | 订单方向, 1开多,3开空 |
triggerPrice | decimal | 触发价 |
price | decimal | 执行价格 |
vol | decimal | 下单数量 |
openType | int | 开仓类型,1:逐仓,2:全仓 |
triggerType | int | 触发类型,1:大于等于,2:小于等于 |
state | int | 状态,1:未触发,2:已取消,3:已执行,4:已失效,5:执行失败 |
executeCycle | int | 执行周期,单位:小时 |
trend | int | 触发价格类型,1:最新价,2:合理价,3:指数价 |
errorCode | int | 执行失败时错误码,0:正常 |
orderId | long | 订单id,执行成功时返回 |
orderType | int | 订单类型,1:限价单,2:Post Only只做Maker,3:立即成交或立即取消,4:全部成交或者全部取消,5:市价单 |
createTime | long | 创建时间 |
updateTime | long | 修改时间 |
获取止盈止损订单列表
响应示例
{
"success": false,
"code": 0,
"message": "",
"data": [{
"id": 0,
"orderId": 0,
"symbol": "",
"positionId": 0,
"stopLossPrice": 0.0,
"takeProfitPrice": 0.0,
"state": 0,
"triggerSide": 0,
"positionType": 0,
"vol": 0.0,
"realityVol": 0.0,
"placeOrderId": 0,
"errorCode": 0,
"version": 0,
"isFinished": 0,
"createTime": "",
"updateTime": ""
}]
}
- GET
api/v1/private/stoporder/list/orders
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
symbol | string | false | 合约名 |
is_finished | int | false | 终态标识:0:未完成,1:已完成 |
start_time | long | false | 开始时间,开始时间和结束时间的跨度一次最大只能查90天,不传时间默认返回最近7天的数据 |
end_time | long | false | 结束时间,开始时间和结束时间的跨度一次最大只能查90天 |
page_num | int | true | 当前页数,默认为1 |
page_size | int | true | 每页大小,默认20,最大100 |
响应参数:
参数名 | 类型 | 说明 |
---|---|---|
code | integer | 状态码 |
message | string | 错误描述(如有) |
data | array | |
id | long | 止盈止损委托单id |
symbol | string | 合约名 |
orderId | long | 限价订单id,如果是根据仓位下的,该值为0 |
positionId | long | 仓位id |
stopLossPrice | decimal | 止损价 |
takeProfitPrice | decimal | 止盈价 |
state | int | 状态,1:未触发,2:已取消,3:已执行,4:已失效,5:执行失败 |
triggerSide | int | 触发方向,0:未触发,1:止盈,2:止损 |
positionType | int | 仓位类型,1:多仓,2:空仓 |
vol | decimal | 委托数量 |
realityVol | decimal | 实际下单数量 |
placeOrderId | long | 委托成功后订单id |
errorCode | int | 错误码,0:正常,其他见错误码详情 |
isFinished | int | 订单状态是否为终态标识(用于查询),0.非终态,1.终态 |
version | int | 版本号 |
createTime | long | 创建时间 |
updateTime | long | 修改时间 |
获取止盈止损订单执行明细
- GET
api/v1/private/stoporder/order_details/{stop_order_id}
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
stop_order_id | long | true | 止盈止损订单id |
响应参数:
参数名 | 类型 | 说明 |
---|---|---|
id | long | 明细id |
stopOrderId | long | 止盈止损订单id |
positionId | long | 仓位id |
orderId | long | 限价订单id |
symbol | string | 合约名 |
stopLossPrice | decimal | 止损价 |
takeProfitPrice | decimal | 止盈价 |
state | int | 状态,0:未触发,3:已执行,5:已撤销,6:执行失败 |
vol | decimal | 委托量 |
realityVol | decimal | 实际下单数量 |
triggerPrice | decimal | 触发价(等于止盈为止盈,等于止损为止损,为空未触发) |
placeOrderId | long | 下单id |
errorCode | int | 0:正常,其他参考错误码 |
positionType | int | 仓位类型,1:多仓,2:空仓 |
createTime | long | 创建时间 |
updateTime | long | 修改时间 |
获取风险限额
响应示例
{
"success": true,
"code": 0,
"data": {
"BTC_USDT": [
{
"level": 1,
"maxVol": 150000,
"maxLeverage": 125,
"mmr": 0.004,
"imr": 0.008,
"symbol": "BTC_USDT",
"positionType": 2
},
{
"level": 1,
"maxVol": 150000,
"maxLeverage": 125,
"mmr": 0.004,
"imr": 0.008,
"symbol": "BTC_USDT",
"positionType": 1
}
]
}
}
- GET
api/v1/private/account/risk_limit
需要权限: 合约交易读取权限
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
symbol | string | false | 合约名,不传返回所有 |
响应参数:
参数名 | 类型 | 说明 |
---|---|---|
symbol | string | 合约名 |
positionType | int | 持仓类型 1:多仓,2:空仓 |
level | int | 当前风险等级 |
maxVol | decimal | 最大可持仓数量 |
maxLeverage | int | 最大杠杆倍数 |
mmr | decimal | 维持保证金率 |
imr | decimal | 初始保证金率 |
获取用户当前手续费率
响应示例
{
"success": true,
"code": 0,
"data": {
"level": 0,
"dealAmount": 1786.2594,
"walletBalance": 0.03176562,
"makerFee": 0.0002,
"takerFee": 0.0006,
"makerFeeDiscount": 1,
"takerFeeDiscount": 1
}
}
- GET
api/v1/private/account/tiered_fee_rate
需要权限: 合约交易读取权限
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
symbol | string | true | 合约名 |
响应参数:
参数名 | 类型 | 说明 |
---|---|---|
level | int | 阶梯费率等级 |
dealAmount | int | 近30天成交额 |
walletBalance | int | 昨日钱包余额 |
makerFee | decimal | makerFee |
takerFee | int | takerFee |
makerFeeDiscount | decimal | makerFee折扣 |
takerFeeDiscount | decimal | takerFee折扣 |
增加或减少仓位保证金
响应示例
{
"success": true,
"code": 0
}
- POST
api/v1/private/position/change_margin
需要权限: 合约交易权限
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
positionId | long | true | 仓位id |
amount | decimal | true | 金额 |
type | string | true | 类型,ADD:增加,SUB:减少 |
响应参数:
公共参数,success: true成功,false失败
获取持仓杠杆倍数
- GET
api/v1/private/position/leverage
需要权限: 合约交易权限
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
symbol | string | true | 合约名称 |
响应参数:
参数名 | 类型 | 说明 |
---|---|---|
positionType | int | 仓位类型, 1多 2空 |
level | int | 杠杆风险限额等级 |
imr | decimal | 杠杆风险限额等级对应初始保证金率 |
mmr | decimal | 杠杆风险限额等级对应维持保证金率 |
leverage | int | 杠杆倍数 |
修改杠杆倍数
- POST
api/v1/private/position/change_leverage
需要权限: 合约交易权限
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
positionId | long | false | 仓位id,当存在仓位时,传入 |
leverage | int | true | 杠杆倍数 |
openType | int | false | 当不存在仓位时必需,开仓类型,1:逐仓,2:全仓 |
symbol | string | false | 当不存在仓位时必需,合约名称 |
positionType | int | false | 当不存在仓位时必需, 仓位类型, 1多 2空 |
响应参数:
公共参数,success: true成功,false失败
请求参数示例:
- 有仓位时:
{
"positionId": 1,
"leverage": 20
}
- 无仓位时:
{
"openType": 1,
"leverage": 20,
"symbol": "BTC_USDT",
"positionType": 1
}
获取用户仓位模式
- GET
api/v1/private/position/position_mode
需要权限: 合约交易权限
请求参数:
无
响应参数:
公共参数,success: true成功,false失败 1:双向持仓模式,2:单向持仓模式
请求参数示例:
{"success":true,"code":0,"data":1}
{"success":true,"code":0,"data":2}
修改用户仓位模式
- POST
api/v1/private/position/change_position_mode
需要权限: 合约交易权限
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
positionMode | int | true | 1:双向,2:单向,修改仓位模式必须保证没有活跃订单、计划委托单、未完成仓位,否则无法修改。双向切换单向模式时,风险限额等级会重置为等级1,如需更改调用接口修改 |
响应参数:
公共参数,success: true成功,false失败
请求参数示例:
{"success":true,"code":0}
下单(维护中)
响应示例
{
"success": true,
"code": 0,
"data": 102057569836905984
}
USDT永续合约交易提供了限价单和市价单下单模式。只有当您的账户有足够的资金才能下单。一旦下单,您的账户资金将在订单生命周期内被冻结。被冻结的资金以及数量取决于订单指定的类型和参数。
- POST
api/v1/private/order/submit
需要权限: 合约交易权限
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
symbol | string | true | 合约名 |
price | decimal | true | 价格 |
vol | decimal | true | 数量 |
leverage | int | false | 杠杆倍数,逐仓时杠杆倍数必须传入 |
side | int | true | 订单方向 1开多,2平空,3开空,4平多 |
type | int | true | 订单类型,1:限价单,2:Post Only只做Maker,3:立即成交或立即取消,4:全部成交或者全部取消,5:市价单,6:市价转现价 |
openType | int | true | 开仓类型,1:逐仓,2:全仓 |
positionId | long | false | 仓位id,平仓时建议传入该参数 |
externalOid | string | false | 外部订单号 |
stopLossPrice | decimal | false | 止损价 |
takeProfitPrice | decimal | false | 止盈价 |
positionMode | int | false | 1:双向持仓,2:单向持仓,如果不传,默认为用户当前设置 |
reduceOnly | boolean | false | 默认为false,单向持仓如果需要只减仓时传入true,双向持仓不受理此参数 |
响应参数:
成功时,success =true,data值为订单id,success =false,失败data=null
批量下单(维护中)
示例
[
{
"symbol": "BTC_USD",
"price": 8800,
"vol": 100,
"leverage": 20,
"side": 1,
"type": 1,
"openType": 1,
"externalOid": "order1"
},
{
"symbol": "BTC_USD",
"price": 500,
"vol": 100,
"leverage": 50,
"side": 3,
"type": 1,
"openType": 1,
"externalOid": "order2"
}
]
批量进行合约下单操作。每个合约可批量下50个单。该接口暂未开放给所有用户,需要联系客服开通权限。
- POST
api/v1/private/order/submit_batch
需要权限: 合约交易权限
请求参数:(最大50条)
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
symbol | string | true | 合约名 |
price | decimal | true | 价格 |
vol | decimal | true | 数量 |
leverage | int | false | 杠杆倍数,逐仓时杠杆倍数必须传入 |
side | int | true | 订单方向 1开多,2平空,3开空,4平多 |
type | int | true | 订单类型,1:限价单,2:Post Only只做Maker,3:立即成交或立即取消,4:全部成交或者全部取消,5:市价单,6:市价转现价 |
openType | int | true | 开仓类型,1:逐仓,2:全仓 |
positionId | long | false | 仓位id,平仓时建议传入该参数 |
externalOid | string | false | 外部订单号,如果已存在,返回已存在的订单id |
stopLossPrice | decimal | false | 止损价 |
takeProfitPrice | decimal | false | 止盈价 |
响应参数:
参数名 | 类型 | 说明 |
---|---|---|
externalOid | string | 外部订单号 |
orderId | long | 订单id,失败时为null |
errorMsg | string | 错误信息,失败时不为空 |
errorCode | int | 错误code,默认为0 |
取消订单(维护中)
响应示例
{
"success":true,
"code":0,
"data":[
{
"orderId":101716841474621953,
"errorCode":2040,
"errorMsg":"order not exist"
},
{
"orderId":108885377779302912,
"errorCode":2041,
"errorMsg":"order state cannot be cancelled"
},
{
"orderId":108886241042563584,
"errorCode":0,
"errorMsg":"success"
}
]
}
撤销之前下的未完成订单,每次最多可撤50个单。
- POST
api/v1/private/order/cancel
需要权限: 合约交易权限
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
无 | List<Long> | true | 订单id列表,最大50条 |
响应参数:
参数名 | 类型 | 说明 |
---|---|---|
orderId | long | 订单id |
errorMsg | string | 错误原因 |
errorCode | int | 错误码,非0即是撤单失败 |
根据外部订单号取消订单(维护中)
参数示例
{
"symbol":"BTC_USDT",
"externalOid":"mexc-a-001"
}
根据指定的externalOid撤销某个合约的未完成订单,每次最多可撤1个单。
- POST
api/v1/private/order/cancel_with_external
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
symbol | string | true | 合约名 |
externalOid | string | true | 外部订单号 |
取消某合约下所有订单(维护中)
撤销某个合约下的所有未完成订单。
- POST
api/v1/private/order/cancel_all
需要权限: 合约交易权限
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
symbol | string | false | 合约名,传入symbol只取消该合约下的订单,不传取消所有合约下的订单 |
响应参数:
公共参数,success: true成功,false失败
修改风险等级
- POST api/v1/private/account/change_risk_level
- 已禁用 调用是返回错误码 8817 提示信息:风险限制功能已升级,详情请前往web端查看
计划委托下单(维护中)
- POST
api/v1/private/planorder/place
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
symbol | string | true | 合约名 |
price | decimal | false | 执行价,市价时可不传 |
vol | decimal | true | 数量 |
leverage | int | false | 杠杆倍数,逐仓时杠杆倍数必须传入 |
side | int | true | 订单类型 1开多,2平空,3开空,4平多 |
openType | int | true | 开仓类型 1逐仓,2全仓 |
triggerPrice | decimal | true | 触发价 |
triggerType | int | true | 触发类型,1:大于等于,2:小于等于 |
executeCycle | int | true | 执行周期,1:24小时,2:7天 |
orderType | int | true | 订单类型,1:限价单,2:Post Only只做Maker,3:立即成交或立即取消,4:全部成交或者全部取消,5:市价单 |
trend | int | true | 触发价格类型,1:最新价,2:合理价,3:指数价 |
响应参数:
成功时,success =true,data值为订单id,success =false,失败data=null
取消计划委托订单(维护中)
响应示例:
[
{
"symbol": "BTC_USDT",
"orderId": 1
},
{
"symbol": "ETH_USDT",
"orderId": 2
}
]
- POST
api/v1/private/planorder/cancel
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
无 | List<CancelOrderRequest> | true | 取消订单列表,最大50条 |
CancelOrderRequest:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
symbol | string | true | 合约名 |
orderId | string | true | 订单id |
响应参数:
公共参数,success: true成功,false失败
取消所有计划委托订单(维护中)
- POST
api/v1/private/planorder/cancel_all
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
symbol | string | false | 合约名,传入symbol只取消该合约下的订单,不传取消所有合约下的订单 |
响应参数:
公共参数,success: true成功,false失败
取消止盈止损委托单(维护中)
示例:
[
{
"stopPlanOrderId": 1
},
{
"stopPlanOrderId": 2
}
]
- POST
api/v1/private/stoporder/cancel
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
无 | List<CancelOrderRequest> | true | 取消订单列表,最大50条 |
CancelOrderRequest:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
stopPlanOrderId | long | true | 止盈止损委托单id |
响应参数:
公共参数,success: true成功,false失败
取消所有止盈止损委托单(维护中)
- POST
api/v1/private/stoporder/cancel_all
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
positionId | long | false | 仓位id,传入positionId,只取消对应仓位的委托单,不传则判断symbol |
symbol | string | false | 合约名,传入symbol只取消该合约下的委托单,不传取消所有合约下的委托单 |
响应参数:
公共参数,success: true成功,false失败
修改限价单止盈止损价格
- POST
api/v1/private/stoporder/change_price
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
orderId | long | true | 限价单订单id |
stopLossPrice | decimal | false | 止损价,止盈价和止损价同时为空或者同时为0时,则表示取消订单的止盈止损 |
takeProfitPrice | decimal | false | 止盈价,止盈价和止损价同时为空或者同时为0时,则表示取消订单的止盈止损 |
响应参数:
公共参数,success: true成功,false失败
修改止盈止损委托单止盈止损价格
- POST
api/v1/private/stoporder/change_plan_price
请求参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
stopPlanOrderId | long | true | 止盈止损委托单订单id |
stopLossPrice | decimal | false | 止损价,和止盈价至少有一个不为空,且必须大于0 |
takeProfitPrice | decimal | false | 止盈价,和止损价至少有一个不为空,且必须大于0 |
响应参数:
公共参数,success: true成功,false失败