账户接口
账户信息 (USER_DATA)
GET /api/v3/account
权重: 20
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
omitZeroBalances | BOOLEAN | NO | 如果true ,将隐藏所有零余额。 默认值: false |
recvWindow | DECIMAL | NO | 最大值为 60000 毫秒。 支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。 |
timestamp | LONG | YES |
数据源: 缓存 => 数据库
响应:
{
"makerCommission": 15,
"takerCommission": 15,
"buyerCommission": 0,
"sellerCommission": 0,
"commissionRates": {
"maker": "0.00150000",
"taker": "0.00150000",
"buyer": "0.00000000",
"seller": "0.00000000"
},
"canTrade": true,
"canWithdraw": true,
"canDeposit": true,
"brokered": false,
"requireSelfTradePrevention": false,
"preventSor": false,
"updateTime": 123456789,
"accountType": "SPOT",
"balances": [
{
"asset": "BTC",
"free": "4723846.89208129",
"locked": "0.00000000"
},
{
"asset": "LTC",
"free": "4763368.68006011",
"locked": "0.00000000"
}
],
"permissions": [
"SPOT"
],
"uid": 354937868
}
查询订单 (USER_DATA)
GET /api/v3/order
查询订单状态
权重: 4
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
orderId | LONG | NO | |
origClientOrderId | STRING | NO | |
recvWindow | DECIMAL | NO | 最大值为 60000 毫秒。 支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。 |
timestamp | LONG | YES |
注意:
- 至少需要发送
orderId
与origClientOrderId
中的一个。 - 当同时提供
orderId
和origClientOrderId
两个参数时,系统首先将会使用orderId
来搜索订单。然后, 查找结果中的origClientOrderId
的值将会被用来验证订单。如果两个条件都不满足,则请求将被拒绝。 - 某些订单中
cummulativeQuoteQty
<0,是由于这些订单是cummulativeQuoteQty功能上线之前的订单。
数据源: 缓存 => 数据库
响应:
{
"symbol": "LTCBTC", // 交易对
"orderId": 1, // 系统的订单ID
"orderListId": -1, // 除非此单是订单列表的一部分, 否则此值为 -1
"clientOrderId": "myOrder1", // 客户自己设置的ID
"price": "0.1", // 订单价格
"origQty": "1.0", // 用户设置的原始订单数量
"executedQty": "0.0", // 交易的订单数量
"origQuoteOrderQty": "0.000000",
"cummulativeQuoteQty": "0.0", // 累计交易的金额
"status": "NEW", // 订单状态
"timeInForce": "GTC", // 订单的时效方式
"type": "LIMIT", // 订单类型, 比如市价单,现价单等
"side": "BUY", // 订单方向,买还是卖
"stopPrice": "0.0", // 止损价格
"icebergQty": "0.0", // 冰山数量
"time": 1499827319559, // 订单时间
"updateTime": 1499827319559, // 最后更新时间
"isWorking": true, // 订单是否出现在orderbook中
"workingTime":1499827319559, // 订单添加到 order book 的时间
"origQuoteOrderQty": "0.000000", // 原始的交易金额
"selfTradePreventionMode": "NONE" // 如何处理自我交易模式
}
注意: 上面的 payload 没有显示所有可以出现的字段,更多请看 订单响应中的特定条件时才会出现的字段 部分。
查看账户当前挂单 (USER_DATA)
GET /api/v3/openOrders
请小心使用不带symbol参数的调用
权重: 带symbol: 6 不带: 80
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | NO | |
recvWindow | DECIMAL | NO | 最大值为 60000 毫秒。 支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。 |
timestamp | LONG | YES |
- 不带symbol参数,会返回所有交易对的挂单
数据源: 缓存 => 数据库
响应:
[
{
"symbol": "LTCBTC",
"orderId": 1,
"orderListId": -1, // 除非此单是订单列表的一部分, 否则此值为 -1
"clientOrderId": "myOrder1",
"price": "0.1",
"origQty": "1.0",
"executedQty": "0.0",
"origQuoteOrderQty": "0.000000",
"cummulativeQuoteQty": "0.0",
"status": "NEW",
"timeInForce": "GTC",
"type": "LIMIT",
"side": "BUY",
"stopPrice": "0.0",
"icebergQty": "0.0",
"time": 1499827319559,
"updateTime": 1499827319559,
"isWorking": true,
"origQuoteOrderQty": "0.000000",
"workingTime": 1499827319559,
"selfTradePreventionMode": "NONE"
}
]
注意: 上面的 payload 没有显示所有可以出现的字段,更多请看 订单响应中的特定条件 时才会出现的字段 部分。
查询所有订单(包括历史订单) (USER_DATA)
GET /api/v3/allOrders
权重: 20
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
orderId | LONG | NO | 只返回此orderID之后的订单,缺省返回最近的订单 |
startTime | LONG | NO | |
endTime | LONG | NO | |
limit | INT | NO | 默认值: 500; 最大值: 1000 |
recvWindow | DECIMAL | NO | 最大值为 60000 毫秒。 支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。 |
timestamp | LONG | YES |
注意:
- 如设置
orderId
, 订单量将 >=orderId
。否则将返回最新订单。 - 一些历史订单
cummulativeQuoteQty
< 0, 是指数据此时不存在。 - 如果设置
startTime
和endTime
,orderId
就不需要设置。 startTime
和endTime
之间的时间不能超过 24 小时。
数据源: 数据库
响应:
[
{
"symbol": "LTCBTC",
"orderId": 1,
"orderListId": -1, // 除非此单是订单列表的一部分, 否则此值为 -1
"clientOrderId": "myOrder1",
"price": "0.1",
"origQty": "1.0",
"executedQty": "0.0",
"origQuoteOrderQty": "0.0",
"cummulativeQuoteQty": "0.0",
"status": "NEW",
"timeInForce": "GTC",
"type": "LIMIT",
"side": "BUY",
"stopPrice": "0.0",
"icebergQty": "0.0",
"time": 1499827319559,
"updateTime": 1499827319559,
"isWorking": true,
"origQuoteOrderQty": "0.000000",
"workingTime": 1499827319559,
"selfTradePreventionMode": "NONE"
}
]
注意: 上面的 payload 没有显示所有可以出现的字段,更多请看 订单响应中的特定条件时才会出现的字段 部分。
查询订单列表 (USER_DATA)
GET /api/v3/orderList
根据提供的可选参数检索特定的订单列表。
权重: 4
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
orderListId | LONG | NO* | 通过 orderListId 获取订单列表。 必须提供 orderListId 或 origClientOrderId 。 |
origClientOrderId | STRING | NO* | 通过 listClientOrderId 获取订单列表。必须提供 orderListId 或 origClientOrderId 。 |
recvWindow | DECIMAL | NO | 最大值为 60000 毫秒。 支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。 |
timestamp | LONG | YES |
数据源: 数据库
响应:
{
"orderListId": 27,
"contingencyType": "OCO",
"listStatusType": "EXEC_STARTED",
"listOrderStatus": "EXECUTING",
"listClientOrderId": "h2USkA5YQpaXHPIrkd96xE",
"transactionTime": 1565245656253,
"symbol": "LTCBTC",
"orders": [
{
"symbol": "LTCBTC",
"orderId": 4,
"clientOrderId": "qD1gy3kc3Gx0rihm9Y3xwS"
},
{
"symbol": "LTCBTC",
"orderId": 5,
"clientOrderId": "ARzZ9I00CPM8i3NhmU9Ega"
}
]
}
查询所有订单列表 (USER_DATA)
GET /api/v3/allOrderList
根据提供的可选参数检索所有的订单列表。
请注意,startTime
和endTime
之间的时间不能超过 24 小时。
权重: 20
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
fromId | LONG | NO | 提供该项后, startTime 和 endTime 都不可提供 |
startTime | LONG | NO | |
endTime | LONG | NO | |
limit | INT | NO | 默认值: 500; 最大值: 1000 |
recvWindow | DECIMAL | NO | 最大值为 60000 毫秒。 支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。 |
timestamp | LONG | YES |
数据源: 数据库
响应:
[
{
"orderListId": 29,
"contingencyType": "OCO",
"listStatusType": "EXEC_STARTED",
"listOrderStatus": "EXECUTING",
"listClientOrderId": "amEEAXryFzFwYF1FeRpUoZ",
"transactionTime": 1565245913483,
"symbol": "LTCBTC",
"orders": [
{
"symbol": "LTCBTC",
"orderId": 4,
"clientOrderId": "oD7aesZqjEGlZrbtRpy5zB"
},
{
"symbol": "LTCBTC",
"orderId": 5,
"clientOrderId": "Jr1h6xirOxgeJOUuYQS7V3"
}
]
},
{
"orderListId": 28,
"contingencyType": "OCO",
"listStatusType": "EXEC_STARTED",
"listOrderStatus": "EXECUTING",
"listClientOrderId": "hG7hFNxJV6cZy3Ze4AUT4d",
"transactionTime": 1565245913407,
"symbol": "LTCBTC",
"orders": [
{
"symbol": "LTCBTC",
"orderId": 2,
"clientOrderId": "j6lFOfbmFMRjTYA7rRJ0LP"
},
{
"symbol": "LTCBTC",
"orderId": 3,
"clientOrderId": "z0KCjOdditiLS5ekAFtK81"
}
]
}
]
查询订单列表挂单 (USER_DATA)
GET /api/v3/openOrderList
权重: 6
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recvWindow | DECIMAL | NO | 最大值为 60000 毫秒。 支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。 |
timestamp | LONG | YES |
数据源: 数据库
响应:
[
{
"orderListId": 31,
"contingencyType": "OCO",
"listStatusType": "EXEC_STARTED",
"listOrderStatus": "EXECUTING",
"listClientOrderId": "wuB13fmulKj3YjdqWEcsnp",
"transactionTime": 1565246080644,
"symbol": "LTCBTC",
"orders": [
{
"symbol": "LTCBTC",
"orderId": 4,
"clientOrderId": "r3EH2N76dHfLoSZWIUw1bT"
},
{
"symbol": "LTCBTC",
"orderId": 5,
"clientOrderId": "Cv1SnyPD3qhqpbjpYEHbd2"
}
]
}
]
账户成交历史 (USER_DATA)
GET /api/v3/myTrades
获取某交易对的成交历史
权重:
条件 | 权重 |
---|---|
没有 orderId | 20 |
有 orderId | 5 |
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
orderId | LONG | NO | 必须要和参数symbol 一起使用。 |
startTime | LONG | NO | |
endTime | LONG | NO | |
fromId | LONG | NO | 返回该fromId之后的成交,缺省返回最近的成交 |
limit | INT | NO | 默认值: 500; 最大值: 1000 |
recvWindow | DECIMAL | NO | 最大值为 60000 毫秒。 支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。 |
timestamp | LONG | YES |
备注:
- 如果设置了
fromId
, 会返回ID大于此fromId
的交易. 不然则会返回最近的交易。 startTime
和endTime
设置的时间间隔不能超过24小时。- 支持的所有参数组合:
symbol
symbol
+orderId
symbol
+startTime
symbol
+endTime
symbol
+fromId
symbol
+startTime
+endTime
symbol
+orderId
+fromId
数据源: 数据库
响应:
[
{
"symbol": "BNBBTC",
"id": 28457,
"orderId": 100234,
"price": "4.00000100",
"qty": "12.00000000",
"commission": "10.10000000",
"commissionAsset": "BNB",
"time": 1499865549590,
"isBuyer": true,
"isMaker": false,
"isBestMatch": true
}
]
查询未成交的订单计数 (USER_DATA)
GET /api/v3/rateLimit/order
显示用户在所有时间间隔内的未成交订单计数。
权重: 40
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recvWindow | DECIMAL | NO | 最大值为 60000 毫秒。 支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。 |
timestamp | LONG | YES |
数据源: 缓存
响应:
[
{
"rateLimitType": "ORDERS",
"interval": "SECOND",
"intervalNum": 10,
"limit": 10000,
"count": 0
},
{
"rateLimitType": "ORDERS",
"interval": "DAY",
"intervalNum": 1,
"limit": 20000,
"count": 0
}
]
获取 Prevented Matches (USER_DATA)
GET /api/v3/myPreventedMatches
获取因 STP 而过期的订单列表。
这些是支持的组合:
symbol
+preventedMatchId
symbol
+orderId
symbol
+orderId
+fromPreventedMatchId
(limit
默认为 500)symbol
+orderId
+fromPreventedMatchId
+limit
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
preventedMatchId | LONG | NO | |
orderId | LONG | NO | |
fromPreventedMatchId | LONG | NO | |
limit | INT | NO | 默认值: 500; 最大值: 1000。 |
recvWindow | DECIMAL | NO | 最大值为 60000 毫秒。 支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。 |
timestamp | LONG | YES |
权重:
情况 | 权重 |
---|---|
如果 symbol 是无效的 | 2 |
通过 preventedMatchId 查询 | 2 |
通过 orderId 查询 | 20 |
数据源:
数据库
响应:
[
{
"symbol": "BTCUSDT",
"preventedMatchId": 1,
"takerOrderId": 5,
"makerSymbol": "BTCUSDT",
"makerOrderId": 3,
"tradeGroupId": 1,
"selfTradePreventionMode": "EXPIRE_MAKER",
"price": "1.100000",
"makerPreventedQuantity": "1.300000",
"transactTime": 1669101687094
}
]
查询分配结果 (USER_DATA)
GET /api/v3/myAllocations
检索由 SOR 订单生成引起的分配 结果。
权重: 20
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | Yes | |
startTime | LONG | No | |
endTime | LONG | No | |
fromAllocationId | INT | No | |
limit | INT | No | 默认值: 500; 最大值: 1000 |
orderId | LONG | No | |
recvWindow | DECIMAL | NO | 最大值为 60000 毫秒。 支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。 |
timestamp | LONG | No |
支持的参数组合:
参数 | 响应 |
---|---|
symbol | 按从最旧到最新排序的分配 |
symbol + startTime | 从 startTime 开始的最旧的分配 |
symbol + endTime | 到 endTime 为止的最新的分配 |
symbol + startTime + endTime | 在指定时间范围内的分配 |
symbol + fromAllocationId | 从指定 AllocationId 开始的分配 |
symbol + orderId | 按从最旧到最新排序并和特定订单关联的分配 |
symbol + orderId + fromAllocationId | 从指定 AllocationId 开始并和特定订单关联的分配 |
注意: startTime
和 endTime
之间的时间不能超 过 24 小时。
数据源: 数据库
响应:
[
{
"symbol": "BTCUSDT",
"allocationId": 0,
"allocationType": "SOR",
"orderId": 1,
"orderListId": -1,
"price": "1.00000000",
"qty": "5.00000000",
"quoteQty": "5.00000000",
"commission": "0.00000000",
"commissionAsset": "BTC",
"time": 1687506878118,
"isBuyer": true,
"isMaker": false,
"isAllocator": false
}
]