更新日志
重要文档通知
Binance 推出了全新的 API 文档门户。现有的 GitHub API 文档 已废弃(2024-06-17),并将在用户迁移完成后的几个月内下线;具体日期将在适当时候确定并通知。
在此过渡阶段,两者网站将同时维持。然而,任何新服务将只会在新的门户上发布。
下面是当前和新 API 文档的链接的参考表:
功能 | 当前文档 | 新文档 |
---|---|---|
现货交易 | 当前文档 | 新文档 |
现货Websocket API | 当前文档 | 新文档 |
杠杆交易 | 当前文档 | 新文档 |
U本位合约 | 当前文档 | 新文档 |
币本位合约 | 当前文档 | 新文档 |
欧式期权 | 当前文档 | 新文档 |
统一账户 | 当前文档 | 新文档 |
钱包 | 当前文档 | 新文档 |
子母账户 | 当前文档 | 新文档 |
赚币 | 当前文档 | 新文档 |
双币投资 | 当前文档 | 新文档 |
定投 | 当前文档 | 新文档 |
ETH质押 | 当前文档 | 新文档 |
矿池接口 | 当前文档 | 新文档 |
策略交易 | 当前文档 | 新文档 |
跟单交易 | 当前文档 | 新文档 |
统一账户专业版 | 当前文档 | 新文档 |
法币 | 当前文档 | 新文档 |
C2C | 当前文档 | 新文档 |
VIP借币 | 当前文档 | 新文档 |
质押借币 | 当前文档 | 新文档 |
Pay | 当前文档 | 新文档 |
闪兑 | 当前文档 | 新文档 |
返佣 | 当前文档 | 新文档 |
NFT | 当前文档 | 新文档 |
礼品卡 | 当前文档 | 新文档 |
2024-09-02
- 现货未成交订单计数规则 已更新,解释了如何在下订单时减少未完成的订单数量。
2024-08-16
注意: 以下的变更正在逐步推出,可能需要大约一周的时间才能完成。
常规更改:
* 在市场流动性低的情况下,当提交包含 quoteOrderQty
的市价单(又名反向市价单)被拒绝时,添加了新的错误消息。
2024-07-22
SPOT API
- 修复了 klines 的时间戳不正确的 bug。
- REST API: 带有
timeZone
参数的GET /api/v3/klines
和GET /api/v3/uiKlines
- WebSocket API: 带有
timeZone
参数的klines
和uiKlines
- WebSocket Streams:
<symbol>@kline_<interval>@+08:00
- REST API: 带有
2024-06-11
- 在 6月11日 UTC 时间 05:00, 我们将开始推出新功能
One-Triggers-the-Other
(OTO) 订单和One-Triggers-a-One-Cancels-The-Other
(OTOCO) 订单。(请注意,我们可能需要花几个小时来部署到所有服务器。)有关详细信息,请参阅以下页面: - 在 6月18日 UTC 时间 05:00,我们将会把买方的订单 ID(
b
) 和卖方的订单 ID(a
) 从交易流中删除(i.e<symbol>@trade
)。(请注意,我们可能需要花几个小时来部署到所有服务器。)- Websocket 行情推送 与其相关的文档已经被更改了。
- 要监控您的订单是否是交易的一部分,请订阅 WebSocket 账户接口。
2024-06-06
此功能将在 6月6日 11:59 UTC 前上线。
SPOT API
POST /api/v3/order/cancelReplace
新加可选参数orderRateLimitExceededMode
。
2024-06-04
- 新增跟单交易接口:
GET /sapi/v1/copyTrading/futures/userStatus
: 查询是否为带单员身份GET /sapi/v1/copyTrading/futures/leadSymbol
: 查询带单币种白名单
- 钱包接口调整:对于内部转账,TXID前缀已于2024年5月28日被替换为“Off-chain transfer”。"Internal transfer"标记不再出现在TXID字段中,包括历史交易,以下接口受到影响:
GET /sapi/v1/capital/deposit/hisrec
GET /sapi/v1/capital/withdraw/history
GET /sapi/v1/capital/deposit/subHisrec
2024-05-30
WebSocket Streams
- Kline 新增加了对 UTC+8 时区的支持。(例如,
btcusdt@kline_1d@+08:00
)
2024-05-22
- 更新子账户接口:
GET /sapi/v1/sub-account/transfer/subUserHistory
: 更新返回字段fromAccountType
和toAccountType
. 合约钱包划转时返回USDT_FUTURE/COIN_FUTURE以区分钱包
- 新增钱包接口:
GET /sapi/v1/account/info
: 取得 “VIP 等级”, “是否开启杠杆帐户” 及 “是否开启合约帐户”
2024-04-18
- 新增钱包接口:
GET /sapi/v1/capital/withdraw/address/list
: 获取提现地址列表
2024-04-10
以下更新的生效时间已被推迟到 4月25日 05:00 UTC
- "交易规范信息"响应中的交易对权限信息已从字段
permissions
移至字段permissionSets
。 - 字段
permissions
将为空,并将在未来版本中删除。 - 以前,
"permissions":["SPOT","MARGIN"]
代表如果您的账户具有SPOT
或MARGIN
权限,您就可以在该交易对上下订单。
现在,等效项是"permissionSets":[["SPOT","MARGIN"]]
(请注意额外的方括号)。permissionSets
数组中的每个权限数组称为 "permission set"。 - 交易对的权限现在可以有更多权限类型。
例如,"permissionSets":[["SPOT","MARGIN"],["TRD_GRP_004","TRD_GRP_005"]]
指示除了支持以上提过的权限集,也接受TRD_GRP_004
或TRD_GRP_005
。
交易对的permissionSets
中可以有任意排列组合的权限集。 otoAllowed
现在将出现在GET /api/v3/exchangeInfo
上,指示该交易品种是否支持 One-Triggers-the-Other (OTO) 订单。
SBE
- 已发布新模式 2:0 spot_2_0.xml。 当前模式 1:0 spot_1_0.xml 将被弃用,并从根据我们模式弃用政策,会将在 6 个月内下线。
- 在 REST API 或 WebSocket API 上使用模式 1:0 时,消息
ExchangeInfoResponse
中的组"权限"将始终为空。在升级到模式 2:0后, 您才可以在permissionSets
组中查找权限信息。 - 最新模式仍将支持已弃用的 OCO 请求。
- 请注意,在模式 2:0 实际发布之前尝试使用它会导致错误。
2024-04-08
更新礼品卡接口:
POST /sapi/v1/giftcard/createCode
: 增加返回字段expiredTime
POST /sapi/v1/giftcard/buyCode
: 增加返回字段expiredTime
更新钱包接口:
GET /sapi/v1/capital/config/getall
: 将于5月16日删除返回字段resetAddressStatus
2024-04-02
注意: 以下的变更将逐步推出,并预计需要大约一周的时间完成。
GET /api/v3/account
新加可选参数omitZeroBalances
,如果启用,则会隐藏所有零余额。- 以下请求的权重已从 10 增加到 25 (该规定将于2024年4月4日生效):
GET /api/v3/trades
GET /api/v3/historicalTrades
- REST API 上现已弃用
POST /api/v3/order/oco
接口。从今开始,请使用新的POST /api/v3/orderList/oco
接口(请注意,新接口使用不同的参数)。
User Data Stream
- 如果
listenKey
过期,将在流中发出新事件listenKeyExpired
。
以下内容将于发布日期 大约 一周后生效:
- "交易规范信息"响应中的交易对权限信息已从字段
permissions
移至字段permissionSets
。 - 字段
permissions
将为空,并将在未来版本中删除。 - 以前,
"permissions":["SPOT","MARGIN"]
代表如果您的账户具有SPOT
或MARGIN
权限,您就可以在该交易对上下订单。
现在,等效项是"permissionSets":[["SPOT","MARGIN"]]
(请注意额外的方括号)。permissionSets
数组中的每个权限数组称为 "permission set"。 - 交易对的权限现在可以有更多权限类型。
例如,"permissionSets":[["SPOT","MARGIN"],["TRD_GRP_004","TRD_GRP_005"]]
指示除了支持以上提过的权限集,也接受TRD_GRP_004
或TRD_GRP_005
。
交易对的permissionSets
中可以有任意排列组合的权限集。 otoAllowed
现在将出现在GET /api/v3/exchangeInfo
上,指示该交易品种是否支持 One-Triggers-the-Other (OTO) 订单。
SBE
- 已发布新模式 2:0 spot_2_0.xml。 当前模式 1:0 spot_1_0.xml 将被弃用,并从根据我们模式弃用政策,会将在 6 个月内下线。
- 在 REST API 或 WebSocket API 上使用模式 1:0 时,消息
ExchangeInfoResponse
中的组"权限"将始终为空。在升级到模式 2:0后, 您才可以在permissionSets
组中查找权限信息。 - 最新模式仍将支持已弃用的 OCO 请求。
- 请注意,在模式 2:0 实际发布之前尝试使用它会导致错误。
2024-02-28
将于 2024 年 3 月 5 日生效。
简单二进制编码 (SBE) 将部署到现货的 Rest API 和 WebSocket API 生产系统上。
更多关于SBE的信息, 请参考常见问题解答 (FAQ)。
2024-02-27
根据币安借币(浮动利率)的最新升级 ,
- 币安借币已于 2024-02-27 08:00 (UTC) 添加以下 /v2 SAPI 接口。用户可以使用 v2 SAPI 接口来下单、还款和管理 2024-02-27 08:00 (UTC) 之后创建的 币安借币(浮动利率 新版)订单。
POST /sapi/v2/loan/flexible/borrow
GET /sapi/v2/loan/flexible/ongoing/orders
GET /sapi/v2/loan/flexible/borrow/history
POST /sapi/v2/loan/flexible/repay
GET /sapi/v2/loan/flexible/repay/history
POST /sapi/v2/loan/flexible/adjust/ltv
GET /sapi/v2/loan/flexible/ltv/adjustment/history
GET /sapi/v2/loan/flexible/loanable/data
GET /sapi/v2/loan/flexible/collateral/data
- 此外,币安借币将在以下时间停止维护 /v1 SAPI 接口:
- 在2024-02-27 08:00 (UTC):
POST /sapi/v1/loan/flexible/borrow
GET /sapi/v1/loan/flexible/loanable/data
GET /sapi/v1/loan/flexible/collateral/data
- 在2024-04-24 03:00 (UTC):
GET /sapi/v1/loan/flexible/ongoing/orders
POST /sapi/v1/loan/flexible/repay
POST /sapi/v1/loan/flexible/adjust/ltv
- 币安借币还将继续维护以下 /v1 SAPI 接口,以便用户查看在 2024-02-27 08:00 (UTC) 之前浮动利率的订单历史。
GET /sapi/v1/loan/flexible/borrow/history
GET /sapi/v1/loan/flexible/repay/history
GET /sapi/v1/loan/flexible/ltv/adjustment/history
- 币安借币已于 2024-02-27 08:00 (UTC) 添加以下 /v2 SAPI 接口。用户可以使用 v2 SAPI 接口来下单、还款和管理 2024-02-27 08:00 (UTC) 之后创建的 币安借币(浮动利率 新版)订单。
2024-02-23
- 新增双币投资接口:
GET /sapi/v1/dci/product/list
: 获得双币产品列表POST /sapi/v1/dci/product/subscribe
: 申购双币产品GET /sapi/v1/dci/product/positions
: 获得双币产品持仓状态GET /sapi/v1/dci/product/accounts
: 查询双币产品账户POST /sapi/v1/dci/product/auto_compound/edit-status
: 改变自动复投状态
2024-02-08
现货的 WebSocket API 现在在测试网上支持简单二进制编码(SBE)。
SBE 模式已经更新了 WebSocket API 元数据,但并没有增加 schemaId
或者 version
。
仅在 REST API 上使用 SBE 的用户可以继续使用 SBE 模式
128b94b2591944a536ae427626b795000100cf1d
,或者更新到新提交的 SBE 模式。希望在 WebSocket API 上使用 SBE 的用户,需要更新到最新的 SBE 模式。
SBE 的 FAQ 已经更新。
2024-01-24
- 新增闪兑接口:
POST /sapi/v1/convert/limit/placeOrder
:创建闪兑限价单POST /sapi/v1/convert/limit/cancelOrder
:取消闪兑限价单GET /sapi/v1/convert/limit/queryOpenOrders
:查询闪兑限价单
2024-01-19
根据公告,币安理财将于2024年1月26日12:00(东八区时间)下架以下币安挖矿口:
GET /sapi/v1/bswap/pools
GET /sapi/v1/bswap/liquidity
POST /sapi/v1/bswap/liquidityAdd
POST /sapi/v1/bswap/liquidityRemove
GET /sapi/v1/bswap/liquidityOps
GET /sapi/v1/bswap/quote
POST /sapi/v1/bswap/swap
GET /sapi/v1/bswap/swap
GET /sapi/v1/bswap/poolConfigure
GET /sapi/v1/bswap/addLiquidityPreview
GET /sapi/v1/bswap/removeLiquidityPreview
GET /sapi/v1/bswap/unclaimedRewards
POST /sapi/v1/bswap/claimRewards
GET /sapi/v1/bswap/claimedHistory
-
wss://api.binance.com/sapi/wss
对于Bswap数据流earn_swapprice_<poolid>
和earn_swapprice_all
.
根据公告,币安理财将于2024年1月26日12:00(东八区时间)下架以下Staking SAPI接口:
GET /sapi/v1/staking/productList
POST /sapi/v1/staking/purchase
POST /sapi/v1/staking/redeem
GET /sapi/v1/staking/position
GET /sapi/v1/staking/stakingRecord
POST /sapi/v1/staking/setAutoStaking
GET /sapi/v1/staking/personalLeftQuota
2024-01-15
- 新增钱包接口:
GET /sapi/v1/spot/delist-schedule
:查询现货币对的下架计划
- 更新钱包接口:
GET /sapi/v1/asset/dribblet
:增加参数accountType
POST /sapi/v1/asset/dust-btc
:增加参数accountType
POST /sapi/v1/asset/dust
:增加参数accountType
2024-01-09
根据公告,币安杠杆将于2024年03月31日12:00(东八区时间)下架以下SAPI接口,请及时更换为对应替代接口:
- 将下架
POST /sapi/v1/margin/transfer
,应替换为POST /sapi/v1/asset/transfer
万能划转 - 将下架
POST /sapi/v1/margin/isolated/transfer
,应替换为POST /sapi/v1/asset/transfer
万能划转 - 将下架
POST /sapi/v1/margin/loan
,应替换为POST /sapi/v1/margin/borrow-repay
借还款接口(新增) - 将下架
POST /sapi/v1/margin/repay
,应替换为POST /sapi/v1/margin/borrow-repay
借还款接口(新增) - 将下架
GET /sapi/v1/margin/isolated/transfer
,应替换为GET /sapi/v1/margin/transfer
获取全仓杠杆划转历史 - 将下架
GET /sapi/v1/margin/asset
,应替换为GET /sapi/v1/margin/allAssets
- 将下架
GET /sapi/v1/margin/pair
,应替换为GET /sapi/v1/margin/allPairs
- 将下架
GET /sapi/v1/margin/isolated/pair
,应替换为GET /sapi/v1/margin/isolated/allPairs
- 将下架
GET /sapi/v1/margin/loan
,应替换为GET /sapi/v1/margin/borrow-repay
- 将下架
GET /sapi/v1/margin/repay
,应替换为GET /sapi/v1/margin/borrow-repay
- 将下架
GET /sapi/v1/margin/dribblet
,应替换为GET /sapi/v1/asset/dribblet
- 将下架
GET /sapi/v1/margin/dust
,应替换为POST /sapi/v1/asset/dust-btc
- 将下架
POST /sapi/v1/margin/dust
,应替换为POST /sapi/v1/asset/dust
- 将下架
新增杠杆交易接口:
POST /sapi/v1/margin/borrow-repay
:杠杆账户借贷/还款GET /sapi/v1/margin/borrow-repay
:查询借贷/还款记录
更新3个杠杆交易接口:
GET /sapi/v1/margin/transfer
:新增参数isolatedSymbol
,新增响应信息GET /sapi/v1/margin/allAssets
:新增参数asset
,新增响应信息GET /sapi/v1/margin/allPairs
:新增参数symbol
GET /sapi/v1/margin/isolated/allPairs
:新增参数symbol
2023-12-22
更新staking接口:
GET /sapi/v1/eth-staking/eth/history/wbethRewardsHistory
: 新增接口以查询WBETH收益记录POST /sapi/v2/eth-staking/eth/stake
: 新增接口质押ETH获得WBETH。 现有v1接口POST /sapi/v1/eth-staking/eth/stake
将被弃用, 具体时间待定GET /sapi/v2/eth-staking/account
: 新增接口查询已质押ETH的对应持仓和30天收益。现有v1接口GET /sapi/v1/eth-staking/account
将被弃用, 具体时间待定POST /sapi/v1/eth-staking/wbeth/unwrap
: 移除本接口。POST /sapi/v1/eth-staking/eth/redeem
已经支持相同功能POST /sapi/v1/eth-staking/eth/redeem
: 新增入参asset
, 新增返回字段ethAmount
,conversionRatio
。GET /sapi/v1/eth-staking/eth/history/stakingHistory
: 新增返回字段distributeAsset
,distributeAmount
,conversionRatio
GET /sapi/v1/eth-staking/eth/history/redemptionHistory
新增返回字段asset
,distributeAsset
,distributeAmount
,conversionRatio
POST /sapi/v1/eth-staking/wbeth/wrap
: 新增返回字段wbethAmount
,exchangeRate
新增杠杆交易Websocket:
- 新的base url为
wss://margin-stream.binance.com
,推送两类事件:负债变化事件和Margin Call事件
- 新的base url为
2023-12-08
简单二进制编码 (SBE) 已经在现货测试网上线。 生产系统会在随后支持。 更多关于SBE的信息, 请参考常见问题解答 (FAQ)
2023-12-04
注意: 以下的变更将逐步推出,并预计需要大约一周的时间完成。
- 错误消息
Precision is over the maximum defined for this asset.
被改为Parameter '%s' has too much precision.
- 当参数的精度超出允许范围时,将返回此错误消息。例如,如果“基础资产”(
base asset
)精度为6,但是设置“quantity=0.1234567”,则会出现此错误消息。 - 这会影响所有具有以下参数的请求:
quantity
quoteOrderQty
icebergQty
limitIcebergQty
stopIcebergQty
price
stopPrice
stopLimitPrice
- 当参数的精度超出允许范围时,将返回此错误消息。例如,如果“基础资产”(
- 现在,请求查询OCO开单时会正确返回升序的结果。这会影响以下请求:
- REST API:
GET /api/v3/openOrderList
- REST API:
- 现在,当指定
startTime
或fromId
时,请求查询所有 OCO 订单会正确返回升序的结果。这会影响以下请求:- REST API:
GET /api/v3/allOrderList
- REST API:
- 修复了一个错误。订单查询请求不再会对新下的订单错误返回
-2026 ORDER_ARCHIVED
错误。- REST API:
GET /api/v3/order
- REST API:
REST API
- 新接口
GET /api/v3/account/commission
- 新接口
GET /api/v3/ticker/tradingDay
GET /api/v3/avgPrice
新加字段closeTime
, 用于显示最后交易时间。GET /api/v3/klines
和/api/v3/uiKlines
新加可选参数timeZone
.POST /api/v3/order/test
和POST /api/v3/sor/order/test
新加可选参数computeCommissionRates
.- 关于发送无效接口的变动:
- 以前,如果查询一个不存在的端点(例如
curl -X GET "https://api.binance.com/api/v3/exchangie"
),你会收到 HTTP 404 状态码,以及响应 "<html><body><h2>404 Not found</h2></body></html>
"。 - 从现在开始,只有当接受请求头中包含
text/html
时,HTML响应才会出现在这种情况下。HTTP状态码将保持不变。
- 以前,如果查询一个不存在的端点(例如
WebSocket Streams
- 新数据流
<symbol>@avgPrice
- 请求中的
id
现在支持和 WebSocket API 里id
一样的值:- 64位有符号整数 (之前是无符号整数)
- 字母数字字符串;最大长度36
null
- 修复了一个错误,之前在发送 ping 之前未经请求发送的 pongs 会导致断开连接。
User Data Streams
- 当事件类型为executionReport,而执行类型(x)为
TRADE_PREVENTION
时,字段l
、L
和Y
现在将始终为0。新增字段pl
、pL
和pY
将描述被阻止执行的数量、被阻止执行的价格和被阻止执行的名义金额。这些新字段显示了如果接收方订单没有启用自成交防止功能时,l
、L
和Y
会是什么值。
以下将在发布日期后大约一周后生效:
- 交易对权限将仅影响下单,而不影响取消订单。
permissions
仍然适用于撤消挂单再下单(Cancel-Replace orders)(比如,如果您的账户有使用此请求下单的权限,则将不允许取消操作)。
2023-11-21
- 新增钱包接口:
GET /sapi/v1/capital/deposit/address/list
: 根据网络币种或币种获取充值地址列表
- 更新杠杆接口
POST /sapi/v1/margin/order
: 参数sideEffectType
增加AUTO_BORROW_REPAY
选项POST /sapi/v1/margin/order/oco
: 参数sideEffectType
增加AUTO_BORROW_REPAY
选项GET /sapi/v1/margin/available-inventory
: 响应增加返回参数 updateTime ,表示放贷库存的获取时间
2023-11-17
- 新增杠杠接口支持全仓Pro模式FAQ:
GET /sapi/v1/margin/leverageBracket
: 查询全仓杠杆Pro模式下的负债币种杠杆与保证金率
- 更新杠杠接口:
POST /sapi/v1/margin/max-leverage
: 增加maxLeverage
入参10以支持全仓Pro模式GET /sapi/v1/margin/account
: 新增响应字段accountType
,MARGIN_2
以支持全仓Pro模式
2023-11-02
- 钱包接口更新:
GET /sapi/v1/account/apiRestrictions
: 新增相应字段enablePortfolioMarginTrading
2023-10-19
从 2023-10-19 00:00 UTC 开始生效
调高如下接口的请求权重:
SPOT API | 条件 | 之前的权重 | 调整后权重 |
---|---|---|---|
GET /api/v3/trades |
N/A | 2 | 10 |
GET /api/v3/depth |
Limit 1-100 | 2 | 5 |
Limit 101-500 | 10 | 25 | |
Limit 501-1000 | 20 | 50 | |
Limit 1001-5000 | 100 | 250 |
2023-10-16
- 新增杠杆接口:
GET /sapi/v1/margin/available-inventory
: 杠杆可用放贷库存查询POST /sapi/v1/margin/manual-liquidation
: 杠杆手动强平
2023-10-11
- 新增VIP借币:
GET /sapi/v1/loan/vip/request/interestRate
: 查询借币利率
2023-10-03
- 下单量的退回(
Order decrement
)功能在 06:15 UTC上线. - 此功能的更详细信息, 请参考 FAQ
2023-09-25
新增合约接口:
GET /sapi/v1/futures/histDataLink
: 查询订单薄历史数据下载链接
删除合约已下线混合保证金业务接口:
GET /sapi/v1/futures/loan/borrow/history
GET /sapi/v1/futures/loan/repay/history
GET /sapi/v2/futures/loan/wallet
GET /sapi/v1/futures/loan/adjustCollateral/history
GET /sapi/v1/futures/loan/liquidationHistory
GET /sapi/v1/futures/loan/interestHistory
2023-09-22
新增钱包接口:
GET /sapi/v1/asset/wallet/balance
: 查询用户钱包余额GET /sapi/v1/asset/custody/transfer-history
: 查询用户委托资金历史(适用主账户)
VIP借币接口改动:
GET /sapi/v1/loan/vip/loanable/data
: 新增返回字段_flexibleDailyInterestRate
,_flexibleYearlyInterestRate
GET /sapi/v1/loan/vip/ongoing/orders
: 新增返回字段loanDate
,loanRate
,loanTerm
,expirationTime
统一账户专业版接口更新:
POST /sapi/v1/portfolio/repay
: 新增入参from
2023-09-18
新增定投接口:
GET /sapi/v1/lending/auto-invest/index/info
: 查询指数信息GET /sapi/v1/lending/auto-invest/index/user-summary
: 查询指数关连计划详情POST /sapi/v1/lending/auto-invest/one-off
: 单次申购GET /sapi/v1/lending/auto-invest/one-off/status
:单次申购交易结果查询POST /sapi/v1/lending/auto-invest/redeem
:指数关连计划赎回交易GET /sapi/v1/lending/auto-invest/redeem/history
:指数关连计划赎回交易历史查询GET /sapi/v1/lending/auto-invest/rebalance/history
: 指数关连计划调仓历史记录
VIP借币接口改动:
- 新增入参
type
- 移除入参
transFrom
,transTo
- 新增入参
2023-09-14
- 新增统一账户专业版接口:
GET /sapi/v1/portfolio/margin-asset-leverage
: 查询统一账户资产支持杠杆倍数
- 使用下列接口API key权限从
允许现货及杠杆交易
更改为允许万向划转
:POST /sapi/v1/portfolio/auto-collection
POST /sapi/v1/portfolio/asset-collection
POST /sapi/v1/portfolio/bnb-transfer
2023-09-04
- 钱包接口限频调整:
GET /sapi/v1/capital/withdraw/history
: Weight(UID)调整为18000,每秒最多请求10次。请查看接口描述获得更详细内容
2023-08-31
- 新增杠杆接口:
/sapi/v1/margin/capital-flow
: 查询全仓/逐仓资金流水
2023-08-26
- 更新赚币接口:
GET /sapi/v1/simple-earn/flexible/history/subscriptionRecord
: 在响应中增加字段:sourceAccount
,amtFromSpot
,amtFromFunding
GET /sapi/v1/simple-earn/locked/history/subscriptionRecord
:在响应中增加字段:sourceAccount
,amtFromSpot
,amtFromFunding
GET /sapi/v1/simple-earn/flexible/history/redemptionRecord
:在响应中增加字段:destAccount
POST /sapi/v1/simple-earn/flexible/subscribe
: 新增参数sourceAccount
POST /sapi/v1/simple-earn/locked/subscribe
: 新增参数sourceAccount
POST /sapi/v1/simple-earn/flexible/redeem
: 新增参数destAccount
- 新增质押借币接口:
POST /sapi/v1/loan/flexible/borrow
: 活期借币借贷GET /sapi/v1/loan/flexible/ongoing/orders
: 查询活期借款中订单列表GET /sapi/v1/loan/flexible/borrow/history
: 查询活期借币历史记录POST /sapi/v1/loan/flexible/repay
: 活期借币还款POST /sapi/v1/loan/flexible/repay/history
: 查询活期借币还款记录历史POST /sapi/v1/loan/flexible/adjust/ltv
: 调整活期借币质押率GET /sapi/v1/loan/flexible/ltv/adjustment/history
: 查询活期借币质押率调整历史GET /sapi/v1/loan/flexible/loanable/data
: 查询活期借币可借币种数据GET /sapi/v1/loan/flexible/collateral/data
: 查询活期借币抵押币种数据
2023-08-25
下面的变更会在UTC时间 2023-08-25 00:00 上线
- REST API 中的
REQUEST_WEIGHT
调整为每分钟6,000. - REST API 中的
RAW_REQUESTS
调整为每5分钟61,000. - 如下现货接口的权重有所调整, 具体细节请参考此表格:
请求接口 | 之前请求权重 | 新请求权重 |
---|---|---|
GET /api/v3/order |
2 | 4 |
GET /api/v3/orderList |
2 | 4 |
GET /api/v3/openOrders - 带 symbol |
3 | 6 |
GET /api/v3/openOrders - 不带 symbol |
40 | 80 |
GET /api/v3/openOrderList |
3 | 6 |
GET /api/v3/allOrders |
10 | 20 |
GET /api/v3/allOrderList |
10 | 20 |
GET /api/v3/myTrades |
10 | 20 |
GET /api/v3/myAllocations |
10 | 20 |
GET /api/v3/myPreventedMatches - 使用 preventedMatchId |
1 | 2 |
GET /api/v3/myPreventedMatches - 使用 orderId |
10 | 20 |
GET /api/v3/account |
10 | 20 |
GET /api/v3/rateLimit/order |
20 | 40 |
GET /api/v3/exchangeInfo |
10 | 20 |
GET /api/v3/depth - Limit 1-100 |
1 | 2 |
GET /api/v3/depth - Limit 101-500 |
5 | 10 |
GET /api/v3/depth - Limit 501-1000 |
10 | 20 |
GET /api/v3/depth - Limit 1001-5000 |
50 | 100 |
GET /api/v3/aggTrades |
1 | 2 |
GET /api/v3/trades |
1 | 2 |
GET /api/v3/historicalTrades |
5 | 10 |
GET /api/v3/klines |
1 | 2 |
GET /api/v3/uiKlines |
1 | 2 |
GET /api/v3/ticker/bookTicker - 带 symbol |
1 | 2 |
GET /api/v3/ticker/bookTicker - 不带 symbol 或者 带 symbols |
2 | 4 |
GET /api/v3/ticker/price - 带 symbol |
1 | 2 |
GET /api/v3/ticker/price - 不带 symbol 或者 带 symbols |
2 | 4 |
GET /api/v3/ticker/24hr - 带 symbol or 带 symbols 1-20 交易对 |
1 | 2 |
GET /api/v3/ticker/24hr - 带 symbols 21-100 交易对 |
20 | 40 |
GET /api/v3/ticker/24hr - 不带 symbol 或者 symbols 包括101个或者更多交易对 |
40 | 80 |
GET /api/v3/avgPrice |
1 | 2 |
GET /api/v3/ticker |
2 | 4 |
GET /api/v3/ticker - 请求的最大权重 |
100 | 200 |
POST /api/v3/userDataStream |
1 | 2 |
PUT /api/v3/userDataStream |
1 | 2 |
DELETE /api/v3/userDataStream |
1 | 2 |
2023-08-18
- 更新VIP借币接口:
POST /sapi/v1/loan/vip/borrow
: 增加参数isFlexibleRate
以支持浮动利率借贷
2023-08-08
智能订单路由(Smart Order Routing:SOR)添加到 API 中。您可以在SOR 常见问题文档中找到更多详细信息。 具体上线时间请关注相关公告。
REST API
GET /api/v3/exchangeInfo
变动:- 返回数据中添加新字段:
sors
, 用于描述交易中是否使用了 SOR。
- 返回数据中添加新字段:
GET /api/v3/myPreventedMatches
变动:- 对于所有的 Prevented Matches, 返回数据中添加新字段
makerSymbol
。
- 对于所有的 Prevented Matches, 返回数据中添加新字段
- 为了在下单时使用 SOR 而添加的新接口:
POST /api/v3/sor/order
POST /api/v3/sor/order/test
- 添加新接口:
GET /api/v3/myAllocations
USER DATA STREAM
executionReport
变动:- 以下这些字段只适用于下单时使用 SOR 的情况:
- 新字段
b
代表matchType
- 新字段
a
代表allocId
- 新字段
k
代表workingFloor
- 新字段
- 这个字段只适用于订单因为触发 STP 而将过期的情况:
- 新字段
Cs
代表counterSymbol
- 新字段
- 以下这些字段只适用于下单时使用 SOR 的情况:
2023-08-02
- 自 2023 年 8 月 21 日起,创建礼品卡将增收 1% 的服务费。下列接口受影响:
POST /sapi/v1/giftcard/createCode
POST /sapi/v1/giftcard/buyCode
2023-07-20
- 根据此公告,自 2023 年 7 月 20 日起,创建功能仅允许已通过 KYB 的企业帐户使用。下列接口受影响:
POST /sapi/v1/giftcard/createCode
POST /sapi/v1/giftcard/buyCode
- 新增统一账户专业版接口:
POST /sapi/v1/portfolio/asset-collection
: 特定资产账户资金归集
2023-07-18
- 现在支持使用 Ed25519 类型的 API key ( UI 会在本周发布更新支持 )
- Ed25519 API keys 是 RSA API keys 的替代品,使用非对称加密技术来验证您的 API 请求。
- 我们建议切换到 Ed25519 以提高性能和安全性。
详情请参考API Key 类型。
- 文档已更新,包括了有关如何使用 Ed25519 key 对有效载荷进行签名的说明。
2023-07-14
- 新增统一账户专业版接口:
POST /sapi/v1/portfolio/repay-futures-switch
: 更改自动清还合约负余额模式GET /sapi/v1/portfolio/repay-futures-switch
: 查询自动清还合约负余额模式POST /sapi/v1/portfolio/repay-futures-negative-balance
: 清还合约负余额
- 新增VIP借币接口:
POST /sapi/v1/loan/vip/renew
: VIP 借币续期
2023-07-11
注意: 所有更改都将逐步推出,可能需要一周时间才能完成。
错误消息的变动:
- 之前当发送重复交易对时,会返回错误信息: "Mandatory parameter symbols was not sent, was empty/null, or malformed."
- 现在则返回消息: "Symbol is present multiple times in the list", with a new error code
-1151
- 受影响的接口:
GET /api/v3/exchangeInfo
GET /api/v3/ticker/24hr
GET /api/v3/ticker/price
GET/api/v3/ticker/bookTicker
修复一个bug,当查询没有被存档的订单时候,可能返回错误消息称已经被存档。
GET /api/v3/account
变动:- 返回数据中添加新字段
preventSor
. - 返回数据中添加用户ID的新字段
uid
.
- 返回数据中添加新字段
GET /api/v3/historicalTrades
变动:- 鉴权类型从
MARKET_DATA
变更为NONE
. - 不需要设置
X-MBX-APIKEY
到请求的header中.
- 鉴权类型从
修改了几个bugs: 当下单时设置
type=MARKET
和quoteOrderQty
, 也被称为“反向市价单”:- 当处于极端市场情况下, 订单不会返回部分成交,或者成交的数量为0甚至是负数.
- 当这种反向市价单的成交数量超过交易对的
maxQty
, 订单会因为违反MARKET_LOT_SIZE
过滤器而被拒绝.
修复一个OCO订单的bug: 当使用
trailingDelta
时候, 当任何leg被触发时,trailingTime
值可能不正确.这些接口的返回数据中添加新字段
transactTime
:DELETE /api/v3/order
POST /api/v3/order/cancelReplace
DELETE /api/v3/openOrders
DELETE /api/v3/orderList
2023-07-07
- 新增杠杆接口:
POST /sapi/v1/margin/max-leverage
: 调整全仓最大杠杆倍数
2023-06-29
- Staking接口中新增一系列ETH Staking相关接口
- 新增杠杆接口:
GET /sapi/v1/margin/dust
: 获取可以转换成 BNB 的小额资产列表POST /sapi/v1/margin/dust
: 把小额资产转换成BNB
- 新增VIP借币接口(2023-06-30生效):
POST /sapi/v1/loan/vip/borrow
: VIP借币借款GET /sapi/v1/loan/vip/loanable/data
: 查询VIP借币可借币种数据GET /sapi/v1/loan/vip/collateral/data
: 查询VIP借币抵押币种数据GET /sapi/v1/loan/vip/request/data
: 查询申请状态
2023-06-22
- 新增子母账户接口:
POST /sapi/v1/sub-account/eoptions/enable
:为子账户开通期权GET /sapi/v1/managed-subaccount/query-trans-log
:查询托管子账户的划转记录(适用交易团队子账户)
- 更新杠杆接口:
POST /sapi/v1/margin/order
:增加参数autoRepayAtCancel
和selfTradePreventionMode
POST /sapi/v1/margin/order/oco
: 增加参数selfTradePreventionMode
- 新增一系列赚币接口
- 删除借币接口:
GET /sapi/v1/lending/daily/product/list
GET /sapi/v1/lending/daily/userLeftQuota
POST /sapi/v1/lending/daily/purchase
GET /sapi/v1/lending/daily/userRedemptionQuota
POST /sapi/v1/lending/daily/redeem
GET /sapi/v1/lending/daily/token/position
GET /sapi/v1/lending/union/account
GET /sapi/v1/lending/union/purchaseRecord
GET /sapi/v1/lending/union/redemptionRecord
GET /sapi/v1/lending/union/interestHistory
2023-06-20
- 新增定投接口:
GET /sapi/v1/lending/auto-invest/target-asset/list
:查询定投允许申购的币种列表GET /sapi/v1/lending/auto-invest/target-asset/roi/list
:申购币种投资回报率接口GET /sapi/v1/lending/auto-invest/all/asset
:查询定投申购币种和投资币种列表GET /sapi/v1/lending/auto-invest/source-asset/list
:查询定投投资的币种列表POST /sapi/v1/lending/auto-invest/plan/add
:创建定投计划POST/sapi/v1/lending/auto-invest/plan/edit
:编辑定投计划POST /sapi/v1/lending/auto-invest/plan/edit-status
:计划管理定投状态GET /sapi/v1/lending/auto-invest/plan/list
:查询定投计划列表GET /sapi/v1/lending/auto-invest/plan/id
:查询计划持仓详情GET /sapi/v1/lending/auto-invest/history/list
:查询申购历史
- 新增杠杆接口:
GET /sapi/v1/margin/delist-schedule
:查询全仓和逐仓的币种或币对的下架计划
2023-06-09
- 以下改动仅对 统一账户专业版/统一账户 生效,改动会在2023-06-22发布: 往统一账户的资金划转仅能通过全仓杠杆账户。 对
POST /sapi/v1/asset/transfer
,统一账户专业版/统一账户仅支持以下参数: MAIN_PORTFOLIO_MARGIN 和 PORTFOLIO_MARGIN_MAIN- 统一账户专业版/统一账户从UM/CM划转到非统一账户将不再支持,对
POST /sapi/v1/asset/transfer
,统一账户专业版/统一账户将不支持以下参数:- MAIN_UMFUTURE
- MAIN_CMFUTURE
- UMFUTURE_MAIN
- UMFUTURE_MARGIN
- CMFUTURE_MARGIN
- MARGIN_UMFUTURE
- MARGIN_CMFUTURE
- FUNDING_UMFUTURE
- UMFUTURE_FUNDING
- FUNDING_CMFUTURE
- CMFUTURE_FUNDING
- UMFUTURE_OPTION
- OPTION_UMFUTURE
POST /sapi/v1/sub-account/futures/internalTransfer
不支持POST /sapi/v1/sub-account/futures/transfer
不支持POST /sapi/v1/futures/transfer
不支持POST /sapi/v1/sub-account/universalTransfer
不再支持以下划转:- 从SPOT划转到USDT_FUTURE, COIN_FUTURE
- USDT_FUTURE, COIN_FUTURE划转到SPOT
- 统一账户专业版/统一账户从UM/CM划转到非统一账户将不再支持,对
- 新增统一账户专业版接口(6月9日生效):
POST /sapi/v1/portfolio/auto-collection
:账户资金归集,将除BNB外资产从合约账户划转到杠杆账户POST /sapi/v1/portfolio/bnb-transfer
:BNB在杠杆账户和UM期货账户划转
2023-06-06
- 为了提供系统的冗余能力,新加一个API接入网址: https://api-gcp.binance.com/
- 此网址利用了 GCP (Google Cloud Platform) 的CDN,可能在性能上比
api1
-api4
要慢.
- 此网址利用了 GCP (Google Cloud Platform) 的CDN,可能在性能上比
2023-06-01
- 新增挖矿接口WEBSOCKET:
- 新的base url为
wss://api.binance.com/sapi/wss
对于Bswap数据流earn_swapprice_<poolid>
和earn_swapprice_all
.
- 新的base url为
2023-05-30
- 更新Pay接口:
GET /sapi/v1/pay/transactions
:在fundsDetail
中增加多个内容
2023-05-26
注意: 所有更改都将逐步推出到我们的所有服务器,并可能需要一周时间才能完成。
- 以下基本接口可能会提供比 https://api.binance.com 更好的性能但其稳定性略为逊色:
- https://api1.binance.com
- https://api2.binance.com
- https://api3.binance.com
- https://api4.binance.com
2023-05-24
- 以前的市场数据 URL 已不建议使用。请立即更新您的代码,以防止来自我们的服务被中断。
- 来自
data.binance.com
的 API 市场数据现在可以从data-api.binance.vision
访问。 - 来自
data-stream.binance.com
的 Websocket 市场数据现在可以从data-stream.binance.vision
访问。
- 来自
GET /sapi/v1/portfolio/interest-rate
已被停用,用户可用GET /sapi/v1/margin/interestRateHistory
获取利率信息。
2023-05-18
- 新增钱包接口:
POST /sapi/v1/capital/deposit/credit-apply
:申请充值到过期地址的一键上账
2023-05-09
- 新增统一账户接口:
GET /sapi/v1/portfolio/asset-index-price
:查询统一账户资产价格指数
- 更新钱包接口:
POST /sapi/v1/asset/transfer
:增加枚举类型MAIN_PORTFOLIO_MARGIN
和PORTFOLIO_MARGIN_MAIN
2023-04-20
- 新增子母账户接口:
GET /sapi/v1/managed-subaccount/deposit/address
:支持获取投资人之托管子账户充值地址
- 更新VIP借币接口:
GET /sapi/v1/loan/vip/ongoing/orders
:增加字段totalCollateralValueAfterHaircut
和lockedCollateralValue
2023-04-18
- 新增现货策略交易接口:
POST /sapi/v1/algo/spot/newOrderTwap
以支持现货策略下单DELETE /sapi/v1/algo/spot/order
以支持现货策略委托撤单GET /sapi/v1/algo/spot/openOrders
以支持查询现货策略当前委托GET /sapi/v1/algo/spot/historicalOrders
以支持查询现货策略历史订单GET /sapi/v1/algo/spot/subOrders
以支持查询现货策略子订单
2023-03-23
- 更新子母账户接口:
GET /sapi/v1/managed-subaccount/queryTransLogForInvestor
: 响应出参增加字段tranId
GET /sapi/v1/managed-subaccount/queryTransLogForTradeParent
: 响应出参增加字段tranId
- 添加子母账户接口:
GET /sapi/v1/managed-subaccount/info
: 查询托管子账户列表GET /sapi/v1/sub-account/transaction-statistics
: 查询子账户交易量统计列表
2023-03-13
注意: 所有更改都将逐步推出到我们的所有服务器,并可能需要一周时间才能完成。
- 某些问题的错误消息已经改进,以便更轻松地进行解决。
情况 | 之前的错误消息 | 新错误消息 |
---|---|---|
由于交易权限被禁用,账户无法下订单或取消订单。 | This action is disabled on this account. | This account may not place or cancel orders. |
当配置在交易对上的权限与账户上的权限不匹配时。 | This symbol is not permitted for this account. | |
当账户在其没有权限的交易对上下订单时。 | This symbol is restricted for this account. | |
当 symbol 不在 TRADING 时下订单。 | Unsupported order combination. | This order type is not possible in this trading phase. |
在不支持 IOC 或 FOK 的交易阶段上使用 timeinForce = IOC 或 FOK 下订单时。 | Limit orders require GTC for this phase. |
- 更正了查询归档订单的错误消息:
- 之前,如果查询了一个归档订单(即状态为
CANCELED
或EXPIRED
,executedQty
== 0 而且最后的更新在 90 天以前),错误消息将是:{"code": -2013,"msg": "Order does not exist."}
- 现在,错误消息为:
{"code": -2026,"msg": "Order was canceled or expired with no executed qty over 90 days ago and has been archived."}
- 之前,如果查询了一个归档订单(即状态为
API 请求使用
startTime
和endTime
的行为:- 之前,如果
startTime
==endTime
,一些请求会失败。 - 现在,所有接受
startTime
和endTime
的 API 请求会允许这些参数相等。这适用于以下接口:- Rest API
GET /api/v3/aggTrades
GET /api/v3/klines
GET /api/v3/allOrderList
GET /api/v3/allOrders
GET /api/v3/myTrades
- Websocket API
trades.aggregate
klines
allOrderList
allOrders
myTrades
- Rest API
- 之前,如果
如果用户的IP地址因违反 IP 速率限制(状态码为
418
)而被禁止,那么连接到 WebSocket API 的用户将被断开连接。
虽然以下更改将在发布日期后 大约一周内生效,但是与其相关的文档已经被更改了:
- 过滤器评估的更改:
- 之前的行为:
LOT_SIZE
和MARKET_LOT_SIZE
要求 (quantity
-minQty
) %stepSize
== 0. - 新行为: 现在已更改为 (
quantity
%stepSize
) == 0。
- 之前的行为:
- 使用
quoteOrderQty
的MARKET
订单的错误修复:- 之前的行为: 订单的状态将始终为
FILLED
,即使订单没有完全成交。 - 新行为: 如果订单由于流动性不足而没有完全成交,则订单状态将为
EXPIRED
,仅当订单完全成交时状态为FILLED
。
- 之前的行为: 订单的状态将始终为
现货 API
DELETE /api/v3/order
和POST /api/v3/order/cancelReplace
的更改:- 新的可选参数
cancelRestrictions
,该参数用于决定是否能成功取消状态为NEW
或PARTIALLY_FILLED
的订单。 - 如果由于
cancelRestrictions
而取消订单失败,错误将是:{"code": -2011,"msg": "Order was not canceled due to cancel restrictions."}
- 新的可选参数
2023-02-27
- 新增杠杆接口:
/sapi/v1/margin/next-hourly-interest-rate
: 查询用户币种预估下小时利率
- 新增统一账户接口:
GET /sapi/v1/portfolio/interest-history
: 查询统一账户期货负余额收息历史GET /sapi/v1/portfolio/interest-rate
: 查询统一账户期货负余额利率水平
2023-02-21
- 修改质押借币接口:
POST /sapi/v1/loan/borrow
: 参数loanTerm
仅可传7或30
2023-02-17
WebSocket频率限制变动
Websocket Stream
现在限制每个IP地址、每5分钟可以发送连接请求的上限是300次。
2023-02-13
- 添加子母账户接口:
GET /sapi/v4/sub-account/assets
: 查询子账户资产
2023-02-02
- 添加杠杆接口:
GET /sapi/v1/margin/exchange-small-liability
: 查询可小额负债转换的资产POST /sapi/v1/margin/exchange-small-liability
: 全仓杠杆小额负债转换GET /sapi/v1/margin/exchange-small-liability-history
: 查询全仓杠杆小额负债转换历史
- 更新钱包接口:
- 万能划转
POST /sapi/v1/asset/transfer
支持期权
- 万能划转
2023-01-26
根据此公告,Self-Trade Prevention 将在 2023-01-26 08:00 UTC 发布。
2023-01-23
- 添加了新的 API 集群 https://api4.binance.com
2023-01-23
实际发布日期待定
新功能:Self-Trade Prevention(STP)会添加到系统中。此功能将阻止订单与来自同一账户或者同一 tradeGroupId
账户的订单交易。
请使用现货 REST API 的 GET /api/v3/exchangeInfo
或 Websocket API 的 exchangeInfo
看 STP 的状态。
现货 API
"defaultSelfTradePreventionMode": "NONE", // selfTradePreventionMode 的默认值
"allowedSelfTradePreventionModes": [ // selfTradePrevention 的可用模式
"NONE",
"EXPIRE_TAKER",
"EXPIRE_BOTH",
"EXPIRE_MAKER"
]
- 新的订单状态:
EXPIRED_IN_MATCH
- 订单由于 STP 触发而过期。 - 新的接口:
GET /api/v3/myPreventedMatches
- 获取由于 STP 触发而过期的订单。
- 新的可选参数
selfTradePreventionMode
已添加到以下的接口:POST /api/v3/order
POST /api/v3/order/oco
POST /api/v3/order/cancelReplace
- 如果有预防自我交易(Prevented Match),所有下单相关的接口会出现新字段:
tradeGroupId
- 仅当账户配置为tradeGroupId
时才会出现。preventedQuantity
- 被防止交易的订单数量。preventedMatches
数组会有以下的字段:preventedMatchId
makerOrderId
price
takerPreventedQuantity
- 仅当selfTradePreventionMode
设置为EXPIRE_TAKER
或EXPIRE_BOTH
时才会出现。makerPreventedQuantity
- 仅当selfTradePreventionMode
设置为EXPIRE_MAKER
或EXPIRE_BOTH
时才会出现。
- 如果订单因 STP 触发而过期,以下查询订单接口的响应中可以出现新的字段
preventedMatchId
和preventedQuantity
:GET /api/v3/order
GET /api/v3/openOrders
GET /api/v3/allOrders
Websocket 账户信息推送
- 新的执行类型:
TRADE_PREVENTION
。 executionReport
的新字段(这些字段只会在订单因 STP 触发而过期时出现):u
-tradeGroupId
v
-preventedMatchId
U
-counterOrderId
A
-preventedQuantity
B
-lastPreventedQuantity
2023-01-13
- 以下接口将于1月 13, 2023 6:00 AM UTC停止使用:
POST /sapi/v1/sub-account/subAccountApi/ipRestriction
以支持母账户为子账户API Key开启或关闭IP白名单POST /sapi/v1/sub-account/subAccountApi/ipRestriction/ipList
以支持母账户为子账户API Key添加IP白名单地址列表
- 添加子母账户接口:
GET /sapi/v1/managed-subaccount/fetch-future-asset
: Investor can use this api to query managed sub account futures asset detailsGET /sapi/v1/managed-subaccount/marginAsset
: Investor can use this api to query managed sub account margin asset details
- 添加杠杆账户接口:
GET /sapi/v1/margin/crossMarginCollateralRatio
: 获取全仓币种质押率信息
2023-01-05
- 添加子母账户接口:
GET /sapi/v1/managed-subaccount/queryTransLogForInvestor
: 投资人可以根据此接口查询其托管子账户划转记录GET /sapi/v1/managed-subaccount/queryTransLogForTradeParent
: 交易团队可以根据此接口查询其托管子账户划转记录
2022-12-26
- 添加钱包接口:
GET /sapi/v1/capital/contract/convertible-coins
: 查询用户充值/提现时候稳定币与 BUSD 互转的设置POST /sapi/v1/capital/contract/convertible-coins
: 修改哪些稳定币可与 BUSD 互相转换
2022-12-15
- 添加新的RSA签名验证方式
- 添加了有关于如何创建 RSA keys 的信息。
- 出于安全原因,我们建议在生成 API key 时使用 RSA keys。
- 我们接受 PKCS#8(BEGIN PUBLIC KEY)。
- 稍后将添加有关如何上传 RSA public key 的更多详细信息。
2022-12-13
REST API
错误代码 -1003
的一些错误消息改动:
- 之前的错误消息:
Too much request weight used; current limit is %s request weight per %s %s. Please use the websocket for live updates to avoid polling the API.
改成了:
Too much request weight used; current limit is %s request weight per %s. Please use WebSocket Streams for live updates to avoid polling the API.
- 之前的错误消息:
Way too much request weight used; IP banned until %s. Please use the websocket for live updates to avoid bans.
改成了:
Way too much request weight used; IP banned until %s Please use WebSocket Streams for live updates to avoid bans.
2022-12-05
备注: 这些更新正在逐步部署到我们所有的服务器,大约需要一周时间才能完成。
WEBSOCKET
!bookTicker
在 2022-12-07 下线。 请改用按 symbol 的最优挂单信息的数据流(<symbol>@bookTicker
)。- 可以通过一个连接订阅多个
<symbol>@bookTicker
数据流。 (例如wss://stream.binance.com:9443/stream?streams=btcusdt@bookTicker/bnbbtc@bookTicker
)
- 可以通过一个连接订阅多个
REST API
- 新的错误代码
-1135
- 如果参数是无效的 JSON 格式,则会出现此错误代码。
- 新的错误代码
-1108
- 如果发送的参数的值太长,可能会导致溢出,则会发生此错误。
- 此错误代码可能出现在以下接口:
POST /api/v3/order
POST /api/v3/order/cancelReplace
POST /api/v3/order/oco
GET /api/v3/aggTrades
更新- 之前的规则:
startTime
和endTime
必须结合使用,并且只能相隔一个小时。 - 新的规则:
startTime
和endTime
可以单独使用,一个小时的限制已被取消。- 仅使用 startTime 时,如果limit的值为N, 将返回从此时间开始的N条交易。
- 仅使用 endTime 时,如果limit的值为N, 将返回到此时间的N条交易。
- 如果不提供
limit
,无论是组合使用还是单独发送,服务器端点都将使用默认的limit
。
- 之前的规则:
GET /api/v3/myTrades
更新- 修复了在不提供
limit
时,symbol
+orderId
组合可以返回交易数量超过limit
默认值500条的错误 之前的行为: API 将根据发送的参数组合发送特定的错误消息。 例如:
{ "code": -1106, "msg": "Parameter X was sent when not required." }
新的行为: 如果接口不支持可选参数组合,那么服务器会返回一般性的错误:
{ "code": -1128, "msg": "Combination of optional parameters invalid." }
添加一个新的参数组合:
symbol
+orderId
+fromId
.下面的参数组合不再支持:
symbol
+fromId
+startTime
symbol
+fromId
+endTime
symbol
+fromId
+startTime
+endTime
当前支持的所有参数组合:
symbol
symbol
+orderId
symbol
+startTime
symbol
+endTime
symbol
+fromId
symbol
+startTime
+endTime
symbol
+orderId
+fromId
- 修复了在不提供
备注: 这些新字段将在发布日期后大约一周出现。
GET /api/v3/exchangeInfo
更新- 新字段
defaultSelfTradePreventionMode
和allowedSelfTradePreventionModes
- 新字段
- 下单,查询订单和撤销订单接口的更新:
- 响应中会出现新的字段
selfTradePreventionMode
。 - 以下接口会受到影响:
POST /api/v3/order
POST /api/v3/order/oco
POST /api/v3/order/cancelReplace
GET /api/v3/order
DELETE /api/v3/order
DELETE /api/v3/orderList
- 响应中会出现新的字段
GET /api/v3/account
更新- 响应中会出现新的字段
requireSelfTradePrevention
.
- 响应中会出现新的字段
- 以下接口的响应中会出现新字段
workingTime
(指示订单何时添加到了订单薄):POST /api/v3/order
GET /api/v3/order
POST /api/v3/order/cancelReplace
POST /api/v3/order/oco
GET /api/v3/order
GET /api/v3/openOrders
GET /api/v3/allOrders
- 如果
trailingDelta
作为参数提供给了TAKE_PROFIT
,TAKE_PROFIT_LIMIT
,STOP_LOSS
或STOP_LOSS_LIMIT
的订单,那么下面接口中会出现trailingTime
, 用来表示追踪单被激活和跟踪价格变化的时间:POST /api/v3/order
GET /api/v3/order
GET /api/v3/openOrders
GET /api/v3/allOrders
POST /api/v3/order/cancelReplace
DELETE /api/v3/order
- 字段
commissionRates
会在GET /api/v3/acccount
的响应中出现。
USER DATA STREAM
- eventType
executionReport
有新的字段V
-selfTradePreventionMode
D
-trailing_time
(追踪单被激活会出现)W
-workingTime
(如果isWorking
=true
会出现)
2022-12-02
- 新增一个用于访问市场信息的RESTful API URL:
https://data.binance.com
. - 新增一个用于访问市场信息的WebSocket URL:
wss://data-stream.binance.com
.
2022-11-29
- 添加VIP借币接口:
GET /sapi/v1/loan/vip/collateral/account
: 查询VIP子账户冻结抵押物金额
2022-11-22
- 新增闪兑接口:
GET /sapi/v1/convert/exchangeInfo
: 查询可交易的币对的信息,以及它们分别所支持交易金额的上下限。GET /sapi/v1/convert/assetInfo
: 查询每个可交易币种的精度信息。POST /sapi/v1/convert/getQuote
: 对所需的币对发送获取报价请求。POST /sapi/v1/convert/acceptQuote
: 通过 quote ID 来接受报价。GET /sapi/v1/convert/orderStatus
: 通过 order ID 来查询订单状态。
2022-11-18
- 新增钱包接口:
GET /sapi/v1/asset/ledger-transfer/cloud-mining/queryByPage
: 云算力支付和退款历史分页查询
- 新增子母账户接口:
POST /sapi/v2/sub-account/subAccountApi/ipRestriction
: 为子账户API Key更新IP白名单
2022-11-14
- 添加VIP借币接口:
GET /sapi/v1/loan/vip/ongoing/orders
:查询VIP借币借款中订单POST /sapi/v1/loan/vip/repay
:VIP借币还款GET /sapi/v1/loan/vip/repay/history
:查询VIP借币还款记录历史
2022-11-02
- 更新钱包接口:
POST /sapi/v1/capital/withdraw/apply
: 权重改至 Weight(UID) 600。
2022-11-01
- 添加质押借币接口:
GET /sapi/v1/loan/loanable/data
: 获取可借币种的利率和借贷限额。借入限额以美元价值显示。GET /sapi/v1/loan/collateral/data
: 获取抵押币种质押率信息和质押限额。质押限额以美元价值显示。GET /sapi/v1/loan/repay/collateral/rate
: 获取抵押物还款时,抵押/借贷币种的汇率价格。汇率价格有效时间为8秒。POST /sapi/v1/loan/customize/margin_call
: 质押借币自定义补仓质押率,仅可针对进行中订单,自定义补仓质押率。
2022-10-28
- 更新钱包接口:
POST /sapi/v1/asset/convert-transfer
: 增加accountType
参数POST /sapi/v1/asset/convert-transfer/queryByPage
: 改为GET
请求方式,增加clientTranId
参数
2022-10-15
- 添加币安码接口:
POST /sapi/v1/giftcard/buyCode
:用于购买一个币安码GET /sapi/v1/giftcard/buyCode/token-limit
:用来查看你所支付的数字货币,可以购买的面额与数量限制
2022-09-30
- 删除合约混合保证金接口:
POST /sapi/v1/futures/loan/borrow
POST /sapi/v1/futures/loan/repay
GET /sapi/v1/futures/loan/configs
GET /sapi/v2/futures/loan/configs
GET /sapi/v1/futures/loan/calcAdjustLevel
GET /sapi/v2/futures/loan/calcAdjustLevel
GET /sapi/v1/futures/loan/calcMaxAdjustAmount
GET /sapi/v2/futures/loan/calcMaxAdjustAmount
POST /sapi/v1/futures/loan/adjustCollateral
POST /sapi/v2/futures/loan/adjustCollateral
GET /sapi/v1/futures/loan/collateralRepayLimit
GET /sapi/v1/futures/loan/collateralRepay
POST /sapi/v1/futures/loan/collateralRepay
GET /sapi/v1/futures/loan/collateralRepayResult
2022-09-30
!bookTicker
的WebSocket推送的变更.
- 全市场最优挂单信息推送(
!bookTicker
)计划在2022年11月下线, 具体下线的时间会在后面通告. - 请使用按Symbol的最优挂单信息推送(
<symbol>@bookTicker
). - 多个
<symbol>@bookTicker
可以订阅在一个WebSocket连接上.- 比如
wss://stream.binance.com:9443/stream?streams=btcusdt@bookTicker/bnbbtc@bookTicker
- 比如
2022-09-29
- 添加钱包接口:
POST /sapi/v1/asset/convert-transfer
: 稳定币自动兑换划转POST /sapi/v1/asset/convert-transfer/queryByPage
: 稳定币自动兑换划转查询
2022-09-22
- 更新子母账户接口:
POST /sapi/v1/sub-account/subAccountApi/ipRestriction
:添加一个新的参数thirdParty
POST /sapi/v1/sub-account/subAccountApi/ipRestriction/ipList
:添加一个新的参数thirdPartyName
DELETE /sapi/v1/sub-account/subAccountApi/ipRestriction/ipList
:添加一个新的参数thirdPartyName
- 添加频次限制:
GET /sapi/v1/bswap/liquidity
:每个账户每个池子最多每秒三次GET /sapi/v1/bswap/quote
:每个账户每个池子最多每秒三次POST /sapi/v1/lending/daily/purchase
:每个账户最多三秒一次POST /sapi/v1/lending/customizedFixed/purchase
:每个账户最多三秒一次POST /sapi/v1/staking/purchase
:每个账户最多三秒一次
2022-09-16
- 添加杠杆账户接口:
GET /sapi/v1/margin/tradeCoeff
:获取用户个人杠杆账户信息汇总
2022-09-15
- 添加质押借币接口:
POST /sapi/v1/loan/borrow
:借币 - 质押借币借贷GET /sapi/v1/loan/borrow/history
:借币 - 查询质押借币历史记录GET/sapi/v1/loan/ongoing/orders
:借币 - 查询借款中订单列表POST/sapi/v1/loan/repay
:还款 - 质押借币还款GET/sapi/v1/loan/repay/history
:还款 - 查询还款记录历史POST/sapi/v1/loan/adjust/ltv
:调整质押率 - 质押借币调整质押率GET/sapi/v1/loan/ltv/adjustment/history
:调整质押率 - 查询质押率调整历史
2022-09-15
这些变动会是滚动发布,可能需要几天才会部署到所有服务器.
- 接口
GET /api/v3/exchangeInfo
的变动- 添加一个新的参数
permissions
, 用于查询适用于相应权限的所有交易对. - 如果查询时不提供此参数, 则默认值是
["SPOT","MARGIN"]
.- 这表示如果请求
GET /api/v3/exchangeInfo
时候没有任何参数, 则会返回拥有权限是SPOT
,MARGIN
的交易对. - 如果要查询其他交易权限, 比如
TRD_GRP_004
等, 需要在查询参数里设置(比如permissions
=TRD_GRP_004
).
- 这表示如果请求
- 此参数不可以同时和
symbol
或者symbols
使用.
- 添加一个新的参数
2022-09-12
- 更新子母账户接口:
GET /sapi/v1/sub-account/subAccountApi/ipRestriction
: 以支持母账户为子账户API Key查询三方IP白名单
2022-09-05
- 删除期货接口:
GET /sapi/v1/futures/loan/wallet
2022-08-23
这些变动会是滚动发布,可能需要几天才会部署到所有服务器.
- 接口
GET /api/v3/ticker
与GET /api/v3/ticker/24hr
变动- 添加新可选参数
type
type
可接受的参数值有FULL
与MINI
FULL
是默认值, 也是原来接口所返回的响应MINI
省略了以下字段:priceChangePercent
,weightedAvgPrice
,bidPrice
,bidQty
,askPrice
,askQty
与lastQty
- 添加新可选参数
- 添加新错误代码
-1008
- 每当服务器的请求超载时都会发送此消息
- 此错误代码只会在 SPOT API 里出现
- 接口
GET /api/v3/account
添加新参数brokered
- 添加新接口:
GET /api/v3/uiKlines
- 添加新k线间隔:
1s
2022-08-18
- 更新闪兑接口:
GET /sapi/v1/convert/tradeFlow
: 权重自 Weight(IP) 3000改至 Weight(UID) 3000。
2022-08-08
REST API
- 接口
POST /api/v3/order
与POST /api/v3/order/cancelReplace
变动- 添加新可选参数
strategyId
是用于将订单标识为某策略的参数。 - 添加新可选参数
strategyType
是用于标识在执行的策略。(例如:如果所有订单属于现货网格策略,订单可设置为strategyType=1000000
)
- 添加新可选参数
- 接口
POST /api/v3/order/oco
变动- 添加新可选参数
limitStrategyId
,limitStrategyType
,stopStrategyId
,stopStrategyType
- 这些是OCO订单里两个leg的策略元数据
limitStrategyType
和stopStrategyType
都不能低于1000000
- 添加新可选参数
- 接口
GET /api/v3/order
,GET /api/v3/openOrders
与GET /api/v3/allOrders
变动- 新增参数
strategyId
与strategyType
必须在下单时填上字段才会在回应JSON里返回
- 新增参数
- 接口
DELETE /api/v3/order
与DELETE /api/v3/openOrders
变动- 新增参数
strategyId
与strategyType
必须在下单时填上字段才会在回应JSON里返回
- 新增参数
USER DATA STREAM
- eventType
executionReport
新增参数j
代表strategyId
J
代表strategyType
- 必须在下单时填上字段才会在回应里返回
2022-08-05
- 更新闪兑接口:
GET /sapi/v1/convert/tradeFlow
: 权重自 Weight(IP) 100改至 Weight(IP) 3000。
2022-07-21
- 添加新统一账户接口:
GET /sapi/v1/portfolio/pmLoan
查询统一账户穿仓借贷记录。POST /sapi/v1/portfolio/repay
偿还统一账户穿仓负债。
2022-07-18
- 添加新统一账户接口:
GET /sapi/v1/portfolio/collateralRate
获取统一账户资产质押率。
2022-07-01
- 添加新钱包接口:
POST /sapi/v3/asset/getUserAsset
获取用户持仓。
- 添加新杠杆账户接口:
GET /sapi/v1/margin/dribblet
查询用户杠杆账户小额资产转换BNB历史信息。
- 更新闪兑接口:
GET /sapi/v1/convert/tradeFlow
:权重自3000改至100。
- 更新杠杆账户接口:
GET /sapi/v1/margin/repay
: 响应出参增加字段rawAsset,表示原始币种。
2022-06-20
接口 GET /api/v3/ticker
变动
- 权重从每
symbol
5 降低到 2. - 每次请求最多可以有100个交易对.
- 如果
symbols
请求超过100个交易对, 会收到如下错误信息:
- 如果
{
"code": -1101,
"msg": "Too many values sent for parameter 'symbols', maximum allowed up to 100."
}
- 单请求的权重上限为100.
- 比如,如果请求的交易对超过50个,请求的权重是100.
2022-06-15
注意: 此变动不会立刻可用, 会在后面几天上线。
SPOT API
- 添加新接口
GET /api/v3/ticker
- 基于
windowSize
返回最近的价格变动。 - 无需像
GET /api/v3/ticker/24hr
提供symbols参数。 - 如果不提供
windowSize
参数,默认值是1d
。 - 响应和
GET /api/v3/ticker/24hr
相似,但不包括以下数据:prevClosePrice
,lastQty
,bidPrice
,bidQty
,askPrice
,askQty
- 基于
- 添加新接口
POST /api/v3/order/cancelReplace
- 撤消当前的挂单并在同样的交易对上下新订单。
- 过滤器会在撤单前做判断。
- 例如,
MAX_NUM_ORDERS
是 10,如果目前挂单也是10,调用POST /api/v3/order/cancelReplace
会失败。撤单与下单的操作都不会被执行。
- 例如,
- 更新将在几天后上线,升级完毕后才会开启此功能。
GET /api/v3/exchangeInfo
在symbols
列表里返回新数据cancelReplaceAllowed
。- 添加新的过滤器
NOTIONAL
- 基于
minNotional
与maxNotional
值来限制名义价值 (price * quantity
)
- 基于
- 添加新的过滤器
EXCHANGE_MAX_NUM_ICEBERG_ORDERS
- 账号最大冰山挂单数
WEBSOCKETS
- 新的symbol ticker流, 可以选择
1h
或者4h
时间窗口:- 单个交易对:
<symbol>@ticker_<window-size>
- 市场所有交易对:
!ticker_<window-size>@arr
- 单个交易对:
2022-06-02
- 更新子母账户接口:
GET /sapi/v1/sub-account/sub/transfer/history
:fromEmail及toEmail可以是母账户email。
2022-05-27
- 更新法币接口:
GET /sapi/v1/fiat/orders
: 权重自 UID(3000) 改至 UID(90000)
- 更新Pay接口:
GET /sapi/v1/pay/transactions
:参数 名称改变: startTimestamp -> startTime; endTimestamp -> endTime
2022-05-26
- 更新法币接口:
GET /sapi/v1/fiat/orders
: 权重自 IP(1) 改至 UID(3000)
- 更新杠杆账户接口: 查询时间范围最大不得超过30天:
GET /sapi/v1/margin/transfer
GET /sapi/v1/margin/loan
GET /sapi/v1/margin/repay
GET /sapi/v1/margin/isolated/transfer
GET /sapi/v1/margin/interestHistory
2022-05-23
- Order Book 深度的变动
- 之前深度的数量在一些极端情况下会出现负数.
- 之后深度数量不会溢出, 而是限制在64位的最大值, 这表示深度的数量达到,或者超过了最大值. 最大值和交易对的
base asset
的精度有关. 比如如果精度是8位小数,最大值则为92,233,720,368.54775807. - 原有的深度价位, 在修复上线后, 需要价位上有变动, 才能体现新的修复.
哪里有影响?
- 现货深度接口
GET /api/v3/depth
- Websocket Streams
<symbol>@depth
<symbol>@depth@100ms
<symbol>@depth<levels>
<symbol>@depth<levels>@100ms
- 现货深度接口
MAX_POSITION
的更新- 如果一个订单的数量(
quantity
) 可能导致持有仓位溢出, 会触发过滤器MAX_POSITION
.
- 如果一个订单的数量(
2022-05-19
- 更新矿池接口參數:
GET /sapi/v1/mining/pub/algoList
及GET /sapi/v1/mining/pub/coinList
:不需要参数
- 新增统一帐户相关错误代码(21xxx): -21001, -21002, -21003
2022-05-17
GET api/v3/aggTrades
更新- 如果同时提供
startTime
和endTime
, 旧的记录会返回.
- 如果同时提供
- 如果接口
GET /api/v3/myTrades
中没有提供参数symbol
, 错误消息变为:
{
"code": -1102,
"msg": "Mandatory parameter 'symbol' was not sent, was empty/null, or malformed."
}
下面的接口提供参数
symbols
用于查询多个symbol.GET /api/v3/ticker/24hr
GET /api/v3/ticker/price
GET /api/v3/ticker/bookTicker
上面接口的权重取决于请求
symbols
的数量, 具体请看下面的列表:
接口 | Symbols的数量 | 权重 |
---|---|---|
GET /api/v3/ticker/price |
Any | 2 |
GET /api/v3/ticker/bookTicker |
Any | 2 |
GET /api/v3/ticker/24hr |
1-20 | 1 |
GET /api/v3/ticker/24hr |
21-100 | 20 |
GET /api/v3/ticker/24hr |
>= 101 | 40 |
2022-05-05
- 新增Binance Code接口:
GET /sapi/v1/giftcard/cryptography/rsa-public-key
,以查询RSA public key。
- 更新Binance Code接口:
POST /sapi/v1/giftcard/redeemCode
: 新增参数externalUid
。每个外部用户 ID 代表合作伙伴平台上的某个用户。该功能帮助您识别不同用户的兑现行为。
2022-04-28
- 新增Staking接口:
GET /sapi/v1/staking/productList
以查询Staking可锁仓产品列表POST /sapi/v1/staking/purchase
以锁仓Staking产品POST /sapi/v1/staking/redeem
以赎回Staking产品GET /sapi/v1/staking/position
以查询Staking产品的持仓GET /sapi/v1/staking/stakingRecord
以查询锁仓产品的历史记录POST /sapi/v1/staking/setAutoStaking
以设置Staking产品的自动续期GET /sapi/v1/staking/personalLeftQuota
以查询个人锁仓限额
2022-04-27
- 新增合约策略交易接口:
POST /sapi/v1/algo/futures/newOrderTwap
以支持合约Twap策略下单
FAQ: 时间加权平均价格策略(Twap) 介绍
2022-04-26
- 新增接口
GET /sapi/v1/margin/rateLimit/order
- 回传用户在当前时间区间内的杠杆账户下单总数
2022-04-20
- 新增统一账户接口:
GET /sapi/v1/portfolio/account
以支持查询统一账户信息
FAQ: 币安合约统一账户总览
目前仅对特定用户开放此功能,详情:加入统一账户计划
2022-04-19
- 更新币安宝接口:
- 新增返回参数
avgAnnualInterestRate
和tierAnnualInterestRate
于接口GET /sapi/v1/lending/daily/product/list
和GET /sapi/v1/lending/daily/token/position
以支持查询阶梯利率
- 新增返回参数
2022-04-13
- 新增合约策略交易接口:
POST /sapi/v1/algo/futures/newOrderVp
以支持合约vp策略下单DELETE /sapi/v1/algo/futures/order
以支持合约策略委托撤单GET /sapi/v1/algo/futures/openOrders
以支持查询合约策略当前委托GET /sapi/v1/algo/futures/historicalOrders
以支持查询合约策略历史订单GET /sapi/v1/algo/futures/subOrders
以支持查询合约策略子订单
FAQ: 成交量份额参与算法(VP) 介绍
2022-04-13
支持追踪止损订单
REST API
- 现货交易支持追踪止损(Trailing Stop)订单.
- 追踪止损通过一个新的参数
trailingDelta
来设置基于市场价的一个自动触发价格. - 只适用于订单类型:
STOP_LOSS
,STOP_LOSS_LIMIT
,TAKE_PROFIT
,TAKE_PROFIT_LIMIT
. - 参数
trailingDelta
的单位为基点(BIPS).- 比如一个
STOP_LOSS
卖单设置trailingDelta
为100, 那么订单会在当前市场价格从下单后的最高点下降1%的时候被触发。(100 / 10,000 => 0.01 => 1%)
- 比如一个
- 用于OCO订单的时候, 如果市场变动触发了
STOP_LOSS
订单, 那么此止损订单变成追踪止损订单. - 当参数
trailingDelta
和stopPrice
一起使用时, 一旦stopPrice
条件被触发,系统会开始追踪当前的价格变动. 从stopPrice
价格开始,到基于trailingDelta
值之间变动. - 如果没有提供
stopPrice
, 系统开始追踪价格从最新价到基于trailingDelta
值之间变动.
- 追踪止损通过一个新的参数
POST /api/v3/order
变动- 添加新可选参数
trailingDelta
- 添加新可选参数
POST /api/v3/order/test
变动- 添加新可选参数
trailingDelta
- 添加新可选参数
POST /api/v3/order/oco
变动- 添加新可选参数
trailingDelta
- 添加新可选参数
- 添加新的过滤器
TRAILING_DELTA
- 用于限定
trailingDelta
的最大和最小值.
- 用于限定
USER DATA STREAM
- User Data Stream 的
executionReport
添加新参数- "d" 代表
trailingDelta
- "d" 代表
2022-04-12
Note: 下面的变更会在后面几天上线.
GET api/v3/allOrders
如果没有提供symbol
, 则返回错误信息:{ "code": -1102, "msg": "Mandatory parameter 'symbol' was not sent, was empty/null, or malformed." }
- 修复一个错误信息中的拼写错误。 如果账号被禁用了相应的权限(比如提款,交易等), 则服务器返回错误:
"This action is disabled on this account."
- 在市场数据(market data)审计中,发现了一些现货的聚合交易数据(aggTrades)中的问题.
- 丢失的记录已经被补回.
- 重复的记录被标记成无效,具体的值设置成如下:
- p = '0' // price
- q = '0' // qty
- f = -1 // first_trade_id
- l = -1 // last_trade_id
2022-3-29
以下更新于3月 31, 2022 08:00 AM UTC生效
- 更新子母账户接口:
GET /sapi/v1/sub-account/universalTransfer
接口查询时间窗口缩短为30天;若startTime
和endTime
没传,则默认返回最近30天数据。
2022-03-25
- 更新子母账户接口:
- 新增接口
GET /sapi/v1/managed-subaccount/accountSnapshot
以支持投资人母账户查询托管子账户资产快照
- 新增接口
2022-03-08
- 更新子母账户接口:
- 新增划转类型
MARGIN
,ISOLATED_MARGIN
以及传参symbol
于子母账户万能划转接口POST /sapi/v1/sub-account/universalTransfer
以支持母账户现货账户划转到子账户杠杆全仓账户和杠杆逐仓账户
- 新增划转类型
2022-02-28
- 在接口
GET /api/v3/exchangeInfo
中添加新字段allowTrailingStop
.
2022-02-22**
现货API
- 现货规则
PRICE_FILTER
里面的(price-minPrice) % tickSize == 0
改成price % tickSize == 0
- 新添加了一个规则
PERCENT_PRICE_BY_SIDE
. - 接口
GET api/v3/depth
的变动:limit
原先必须是固定值(比如 5, 10, 20, 50, 100, 500, 1000, 5000), 现在可以是在1-5000之间的任意的正整数, 服务器会返回指定的limit数量。(比如如果设置limit=3, 会返回前3个最好的卖价和买价)- 如果
limit
超过5000, 服务器也最多返回5000条记录. - 相应的, 此接口的权重变成:
Limit | Request Weight |
---|---|
1-100 | 1 |
101-500 | 5 |
501-1000 | 10 |
1001-5000 | 50 |
- GET
api/v3/aggTrades
接口的变动:- 当同时提供参数
startTime
和endTime
, 最旧的订单会优先返回.
- 当同时提供参数
2022-2-18
- 更新子母账户接口:
- 新增响应参数
isManagedSubAccount
和isAssetManagementSubAccount
于接口GET /sapi/v1/sub-account/list
以支持查询子账户是否是托管子账户或资产管理子账户
- 新增响应参数
font size=4>2022-2-17
以下更新于2月 24, 2022 08:00 AM UTC生效
- 更新钱包接口:
GET /sapi/v1/accountSnapshot
接口查询范围缩短为仅支持查询最近一个月数据,即startTime不支持选定最近1个月之外的时间。
2022-2-09
- 新增钱包接口:
POST /sapi/v1/asset/dust-btc
以获取可以转换成BNB的小额资产
2022-1-25
- 自1月 28, 2022 4:00 AM UTC起,您需要使用开通
允许现货和杠杆交易
权限的API Key调用以下接口:POST /sapi/v1/asset/dust
小额资产转换POST /sapi/v1/lending/daily/purchase
申购币安宝活期产品POST /sapi/v1/lending/daily/redeem
赎回币安宝活期产品POST /sapi/v1/lending/customizedFixed/purchase
申购币安宝定期/活动产品POST /sapi/v1/lending/positionChanged
币安宝定期/活动持仓转活期持仓POST /sapi/v1/bswap/liquidityAdd
币安挖矿添加流动性POST /sapi/v1/bswap/liquidityRemove
币安挖矿移除流动性POST /sapi/v1/bswap/swap
币安挖矿交易POST /sapi/v1/bswap/claimRewards
币安挖矿领取奖励
2022-1-21
- 新增币安码接口:
POST /sapi/v1/giftcard/createCode
以支持创建币安码POST /sapi/v1/giftcard/redeemCode
以支持兑现币安码GET /sapi/v1/giftcard/verify
以支持验证币安码
2022-1-4
新增矿池接口:
GET /sapi/v1/mining/payment/uid
以获取矿池账户收益列表
新增币安挖矿接口:
GET /sapi/v1/bswap/unclaimedRewards
以查询未领取的奖励数量POST /sapi/v1/bswap/claimRewards
以领取奖励GET /sapi/v1/bswap/claimedHistory
以获取已领取奖励记录
2021-12-30
更新杠杆接口:
- 获取杠杆利率历史接口
GET /sapi/v1/margin/interestRateHistory
移除参数limit
,查询时间间隔更改为最大1个月
- 获取杠杆利率历史接口
更新钱包接口:
- 由于矿池钱包合并于资金账户钱包,用户万向划转接口
POST /sapi/v1/asset/transfer
的以下划转类型 MAIN_MINING, MINING_MAIN, MINING_UMFUTURE, MARGIN_MINING,和 MINING_MARGIN将于 1月 05, 2022 08:00 AM UTC 停止使用
- 由于矿池钱包合并于资金账户钱包,用户万向划转接口
2021-12-29
- 移除交易对类型枚举
- 新增权限枚举
2021-12-24
- 更新子母账户接口:
- 新增传参
clientTranId
于子母账户万能划转接口POST /sapi/v1/sub-account/universalTransfer
和查询子母账户万能划转历史接口GET /sapi/v1/sub-account/universalTransfer
以支持用户自定义划转id
- 新增传参
2021-12-03
新增杠杆接口:
- 新增接口
GET /sapi/v1/margin/crossMarginData
以获取全仓杠杆利率及限额 - 新增接口
GET /sapi/v1/margin/isolatedMarginData
以获取逐仓杠杆利率及限额 - 新增接口
GET /sapi/v1/margin/isolatedMarginTier
以获取逐仓档位信息
- 新增接口
新增NFT接口:
- 新增接口
GET /sapi/v1/nft/history/transactions
以支持用户查询NFT资金流水历史记录 - 新增接口
GET /sapi/v1/nft/history/deposit
以支持用户查询NFT充值历史记录 - 新增接口
GET /sapi/v1/nft/history/withdraw
以支持用户查询NFT提现历史记录 - 新增接口
GET /sapi/v1/nft/user/getAsset
以支持用户查询NFT资产
- 新增接口
2021-11-30
新增闪兑接口:
- 新增接口
GET /sapi/v1/convert/tradeFlow
以支持用户查询闪兑交易历史记录
- 新增接口
更新返佣接口:
- 新增接口
GET /sapi/v1/rebate/taxQuery
以支持用户查询现货返佣历史记录
- 新增接口
2021-11-19
新增Pay接口:
- 新增接口
GET /sapi/v1/pay/transactions
以支持用户查询Pay交易历史记录
- 新增接口
更新钱包接口:
- 新增响应参数
info
于接口GET /sapi/v1/capital/withdraw/history
以显示提币失败原因
- 新增响应参数
2021-11-18
以下更新于11月 25, 2021 08:00 AM UTC生效
- 更新钱包接口:
GET /sapi/v1/accountSnapshot
接口查询范围缩短为仅支持查询最近半年内的数据,即startTime不支持选定最近6个月之外的时间。若您没有传入startTime和endTime,则默认返回最近7天的数据
2021-11-17
- 以下接口将于11月 17, 2021 13:00 PM UTC停止使用:
POST /sapi/v1/account/apiRestrictions/ipRestriction
以支持用户为API Key开启或关闭IP白名单POST /sapi/v1/account/apiRestrictions/ipRestriction/ipList
以支持用户为API Key添加IP白名单地址列表GET /sapi/v1/account/apiRestrictions/ipRestriction
以支持用户为API Key查询IP白名单DELETE /sapi/v1/account/apiRestrictions/ipRestriction/ipList
以支持用户为API Key删除IP白名单地址列表
2021-11-16
- 新增子母账户接口:
POST /sapi/v1/sub-account/subAccountApi/ipRestriction
以支持母账户为子账户API Key开启或关闭IP白名单POST /sapi/v1/sub-account/subAccountApi/ipRestriction/ipList
以支持母账户为子账户API Key添加IP白名单地址列表GET /sapi/v1/sub-account/subAccountApi/ipRestriction
以支持母账户为子账户API Key查询IP白名单DELETE /sapi/v1/sub-account/subAccountApi/ipRestriction/ipList
以支持母账户为子账户API Key删除IP白名单地址列表
2021-11-09
- 新增钱包接口:
POST /sapi/v1/account/apiRestrictions/ipRestriction
以支持用户为API Key开启或关闭IP白名单POST /sapi/v1/account/apiRestrictions/ipRestriction/ipList
以支持用户为API Key添加IP白名单地址列表GET /sapi/v1/account/apiRestrictions/ipRestriction
以支持用户为API Key查询IP白名单DELETE /sapi/v1/account/apiRestrictions/ipRestriction/ipList
以支持用户为API Key删除IP白名单地址列表
2021-11-08
- 新增质押借币接口:
- 新增查询质押借币资金流水接口
GET /sapi/v1/loan/income
以支持用户查询质押借币资金流水历史
- 新增查询质押借币资金流水接口
2021-11-05
- 更新钱包接口:
- 新增参数
walletType
于提币接口POST /sapi/v1/capital/withdraw/apply
以支持用户选择从现货钱包
或资金钱包
进行提币
- 新增参数
2021-11-04
以下更新于11月 11, 2021 08:00 AM UTC生效
- 更新接口:
GET /sapi/v1/asset/transfer
GET /sapi/v1/futures/transfer
接口查询范围缩短为仅支持查询最近半年内的数据,即startTime不支持选定最近6个月之外的时间。若您没有传入startTime和endTime,则默认返回最近7天的数据
2021-11-01
- 新增接口
GET /api/v3/rateLimit/order
- 回传用户在当前时间区间内的下单总数
- 此接口的权重为 20
2021-10-22
- 钱包接口更新:
- 新增划转类型
MAIN_FUNDING
,FUNDING_MAIN
,FUNDING_UMFUTURE
,UMFUTURE_FUNDING
,MARGIN_FUNDING
,FUNDING_MARGIN
,FUNDING_CMFUTURE
andCMFUTURE_FUNDING
于用户万向划转接口POST /sapi/v1/asset/transfer
和GET /sapi/v1/asset/transfer
以支持资金账户和现货账户,杠杆全仓账户,U本位合约账户,币本位合约账户之间相互划转 - 由于C2C账户,币安支付、币安卡等业务合并至资金账户,用户万向划转接口
POST /sapi/v1/asset/transfer
和GET /sapi/v1/asset/transfer
的以下划转类型MAIN_C2C
,C2C_MAIN
,C2C_UMFUTURE
,C2C_MINING
,UMFUTURE_C2C
,MINING_C2C
,MARGIN_C2C
,C2C_MARGIN
,MAIN_PAY
和PAY_MAIN
将于11月 04, 2021 08:00 AM UTC 停止使用
- 新增划转类型
2021-10-14
- 以下杠杆账户接口更新返回数据的时间范围,
startTime
与endTime
时间跨度不能超过30天,如果不传时间参数默认返回最近7天数据,如果archived
参数为true
,则默认返回6个月以前的最后7天数据:GET /sapi/v1/margin/transfer
GET /sapi/v1/margin/loan
GET /sapi/v1/margin/repay
GET /sapi/v1/margin/isolated/transfer
GET /sapi/v1/margin/interestHistory
2021-09-18
- 新增币安挖矿接口:
- 新增接口
GET /sapi/v1/bswap/poolConfigure
以支持查询币对池的配置信息 - 新增接口
GET /sapi/v1/bswap/addLiquidityPreview
以支持查询添加流动性的试算 - 新增接口
GET /sapi/v1/bswap/removeLiquidityPreview
以查询移除流动性的试算
- 新增接口
2021-09-17
- 访问限制介绍中新增
/api/*
和/sapi/*
相关接口限频说明
2021-09-08
新增以下杠杆账户接口支持杠杆逐仓账户启用限制:
- 新增接口
DELETE /sapi/v1/margin/isolated/account
以支持杠杆逐仓账户停用 - 新增接口
POST /sapi/v1/margin/isolated/account
以支持杠杆逐仓账户启用 - 新增接口
GET /sapi/v1/margin/isolated/accountLimit
以查询杠杆逐仓账户上限
- 新增接口
查询杠杆逐仓账户信息接口
GET /sapi/v1/margin/isolated/account
响应加入字段 "enabled" 判断账户是否启用
2021-09-03
- 更新钱包接口:
- 新增响应内容
sameAddress
,depositDust
和specialWithdrawTips
于GET /sapi/v1/capital/config/getall
sameAddress
表示需要输入memo的币种depositDust
表示最小可上帐金额specialWithdrawTips
表示提现时的特殊说明 - 新增响应内容
confirmNo
于GET /sapi/v1/capital/withdraw/history
以支持查询提现确认数
- 新增响应内容
2021-08-27
- 更新钱包接口:
- 新增参数
withdrawOrderId
于GET /sapi/v1/capital/withdraw/history
以支持查询指定withdrawOrderId
的提币历史记录 - 新增响应内容
unlockConfirm
于GET /sapi/v1/capital/deposit/hisrec
以支持查询解锁需要的网络确认次数
- 新增参数
2021-08-23
- 新增杠杆账户 OCO 接口:
POST /sapi/v1/margin/order/oco
DELETE /sapi/v1/margin/orderList
GET /sapi/v1/margin/orderList
GET /sapi/v1/margin/allOrderList
GET /sapi/v1/margin/openOrderList
用法与现货账户 OCO 相同
2021-08-20
- 更新钱包接口:
- 新增参数
fromSymbol
,toSymbol
和新增划转类型ISOLATEDMARGIN_MARGIN
,MARGIN_ISOLATEDMARGIN
,ISOLATEDMARGIN_ISOLATEDMARGIN
于接口POST /sapi/v1/asset/transfer
和GET /sapi/v1/asset/transfer
以支持杠杆逐仓钱包与杠杆全仓钱包之前相互划转
- 新增参数
2021-08-12
- GET
api/v3/myTrades
添加新的参数orderId
2021-08-05
- 新增C2C接口:
GET /sapi/v1/c2c/orderMatch/listUserOrderHistory
以查询用户C2C交易历史记录
2021-08-05
- 币安宝接口更新:
GET /sapi/v1/lending/union/purchaseRecord
GET /sapi/v1/lending/union/redemptionRecord
GET /sapi/v1/lending/union/interestHistory
以上接口查询范围更改为:仅支持startTime
和endTime
查询最大间隔为30天,若startTime
和 endTime
均未发送,则默认返回最近30天记录
2021-07-29
- 子母账户接口更新:
GET /sapi/v1/sub-account/transfer/subUserHistory
如果startTime
和endTime
均未发送,默认只返回最近30天数据
2021-07-27
- 新增法币接口:
GET /sapi/v1/fiat/orders
以查询用户法币充值和提币历史记录GET /sapi/v1/fiat/payments
以查询用户法币支付(买卖)历史记录
2021-07-16
- 新增钱包接口:
GET /sapi/v1/account/apiRestrictions
以查询用户API Key权限
2021-07-09
- 新增钱包接口:
POST /sapi/v1/asset/get-funding-asset
以查询资金账户资产,目前支持查询的业务为:Binance Pay, Binance Card, Binance Gift Card, Stock Token
2021-06-24
- 钱包接口更新:
GET /sapi/v1/capital/withdraw/history
现有的limit
参数增加默认值1000,最大值1000的限制GET /sapi/v1/capital/deposit/hisrec
现有的limit
参数增加默认值1000,最大值1000的限制
2021-06-17
- 币安宝接口更新:
GET /sapi/v1/lending/daily/product/list
增加新参数current
和size
2021-06-15
- 新增子母账户接口:
POST /sapi/v1/managed-subaccount/deposit
以支持投资人账户为托管子账户充值资产(仅投资人账户方使用)GET /sapi/v1/managed-subaccount/asset
以支持投资人账户查询托管子账户资产(仅投资人账户方使用)POST /sapi/v1/managed-subaccount/withdraw
以支持投资人账户为托管子账户提币资产(仅投资人账户方使用)
2021-06-04
从 八月 01, 2021 02:00 AM UTC 开始,以下WAPI接口将停止使用:
GET /wapi/v3/systemStatus.html
POST /wapi/v3/withdraw.html
GET /wapi/v3/depositHistory.html
GET /wapi/v3/withdrawHistory.html
GET /wapi/v3/depositAddress.html
GET /wapi/v3/accountStatus.html
GET /wapi/v3/apiTradingStatus.html
GET /wapi/v3/userAssetDribbletLog.html
GET /wapi/v3/assetDetail.html
GET /wapi/v3/tradeFee.html
GET /wapi/v3/sub-account/list.html
GET /wapi/v3/sub-account/transfer/history.html
POST /wapi/v3/sub-account/transfer.html
GET /wapi/v3/sub-account/assets.html
目前WAPI已从API文档中移除,为了保证您的所有交易策略顺利执行,强烈建议所有API用户尽快更新交易程序,替换成现有的SAPI接口
2021-05-26
- 更新钱包接口:
- 用户万向划转接口
POST /sapi/v1/asset/transfer
和GET /sapi/v1/asset/transfer
新增划转类型MAIN_PAY
,PAY_MAIN
以支持现货和支付账户之间相互划转
- 用户万向划转接口
2021-05-12
- 在文档中添加接口的数据来源说明
- 在每个接口中添加相应的数据源
- GET
api/v3/exchangeInfo
现在支持单或多交易对查询
2021-04-28
从 May 15, 2021 08:00 UTC 开始, 以下创建逐仓杠杆账户接口将关闭:
POST /sapi/v1/margin/isolated/create
后续,用户可通过逐仓杠杆账户划转 POST /sapi/v1/margin/isolated/transfer
直接完成逐仓杠杆账户的创建与交易准备,无需调用接口创建账户
2021-04-26
从 April 28, 2021 00:00 UTC 开始,下面接口的权重有如下变动:
GET /api/v3/order
权重改为 2GET /api/v3/openOrders
权重改为 3GET /api/v3/allOrders
权重改为 10GET /api/v3/orderList
权重改为 2GET /api/v3/openOrderList
权重改为 3GET /api/v3/account
权重改为 10GET /api/v3/myTrades
权重改为 10GET /api/v3/exchangeInfo
权重改为 10
2021-04-08
- 子母账户接口更新:
GET /sapi/v1/sub-account/futures/accountSummary
和GET /sapi/v2/sub-account/futures/accountSummary
接口返回字段asset
更新为以USD计价的资产汇总,即子账户USDT,BUSD等保证金总和
2021-04-02
- 新增钱包接口:
GET /sapi/v1/system/status
以获取系统状态GET /sapi/v1/account/status
以获取账户状态-
GET /sapi/v1/account/apiTradingStatus
以获取账户API交易状态 -
GET /sapi/v1/asset/dribblet
以获取小额资产转换BNB历史 -
GET /sapi/v1/asset/assetDetail
以获取上架资产详情 -
GET /sapi/v1/asset/tradeFee
以获取交易手续费率查询
- 新增子母账户接口:
GET /sapi/v3/sub-account/assets
以查询子账户资产
2021-04-01
- 子母账户接口更新:
GET /sapi/v1/sub-account/transfer/subUserHistory
新增返回字段fromAccountType
和toAccountType
为用户转出账户类型和转入账户类型
2021-03-31
- 子母账户接口更新:
GET /wapi/v3/sub-account/transfer/history.html
新增参数fromEmail
和toEmail
,原有参数email
将默认查询fromEmail
的记录
2021-03-08
- 新增子母账户接口:
-
POST /sapi/v1/sub-account/virtualSubAccount
以支持母账户创建虚拟子账户 -
GET /sapi/v1/sub-account/list
以支持查询子账户列表
-
2021-03-05
- 新增杠杆接口:
-
GET /sapi/v1/margin/interestRateHistory
以支持杠杆利率历史查询
-
2021-02-08
- 新增合约接口:
-
GET /sapi/v2/futures/loan/wallet
混合保证金钱包 V2 接口,以支持 BUSD 借款查询 -
GET /sapi/v2/futures/loan/configs
混合保证金信息 V2 接口,以支持 BUSD 借款查询 -
GET /sapi/v2/futures/loan/calcAdjustLevel
计算调整后的混合保证金质押率 V2 接口,以支持 BUSD 借款查询 -
GET /sapi/v2/futures/loan/calcMaxAdjustAmount
可供调整混合保证金质押率的最大额 V2 接口,以支持 BUSD 借款质押率的调整 -
POST /sapi/v2/futures/loan/adjustCollateral
调整混合保证金质押率 V2 接口,以支持 BUSD 借款质押率的调整
-
- 更新合约接口:
-
GET /sapi/v1/futures/loan/adjustCollateral/history
混合保证金调整质押率历史接口,加入参数与响应字段loanCoin
以支持 BUSD 借款查询 -
GET /sapi/v1/futures/loan/liquidationHistory
混合保证金强平历史历史接口,加入参数与响应字段loanCoin
以支持 BUSD 借款查询
-
2021-02-04
- 更新钱包接口:
- 用户万向划转接口
POST /sapi/v1/asset/transfer
和GET /sapi/v1/asset/transfer
新增划转类型MARGIN_MINING
,MINING_MARGIN
,MARGIN_C2C
,C2C_MARGIN
,MARGIN_CMFUTURE
,CMFUTURE_MARGIN
以支持全仓杠杆,矿池,C2C,币本位合约账户间划转。
- 用户万向划转接口
2021-01-15
- 杠杆交易添加新接口
DELETE /sapi/v1/margin/openOrders
- 此接口便于用户撤销单一交易对的所有挂单, 包括OCO的挂单。
2021-01-10
- 矿池接口
GET /sapi/v1/mining/payment/list
新增可选参数pageSize
矿池接口
GET /sapi/v1/mining/payment/list
新增返回字段:- "type" 表示收益类型
- "hashTransfer" 表示已转让算力
- "transferAmount" 表示已转让收益
新增矿池接口:
GET /sapi/v1/mining/payment/other
GET /sapi/v1/mining/hash-transfer/config/details
GET /sapi/v1/mining/hash-transfer/config/details/list
GET /sapi/v1/mining/hash-transfer/profit/details
POST /sapi/v1/mining/hash-transfer/config
POST /sapi/v1/mining/hash-transfer/config/cancel
2021-01-01
USER DATA STREAM
- 移除
outboundAccountInfo
事件.
2020-12-30
- 新增钱包接口:
POST /sapi/v1/asset/transfer
用户万向划转接口,以支持现货,全仓杠杆,合约,C2C,矿池账户间划转。-
GET /sapi/v1/asset/transfer
以支持查询用户万向划转历史记录。
2020-12-22
- 新增子母账户接口:
GET /sapi/v1/sub-account/sub/transfer/history
以支持查询子母账户现货资金划转历史。
2020-12-11
- 更新合约混合保证金接口:
- 接口
GET /sapi/v1/futures/loan/wallet
新增返回参数interestFreeLimit
表示混合保证金总免息额度,interestFreeLimitUsed
表示占用混合保证金免息额度。 - 接口
GET /sapi/v1/futures/loan/interestHistory
新增返回参数interestFreeLimitUsed
表示占用混合保证金免息额度。
- 接口
2020-12-02
- 新增子母账户接口:
GET /sapi/v2/sub-account/futures/account
以支持查询子账户USDT合约和币本位合约账户详情。GET /sapi/v2/sub-account/futures/accountSummary
以支持查询子账户USDT合约和币本位合约账户汇总。GET /sapi/v2/sub-account/futures/positionRisk
以支持查询子账户USDT合约和币本位合约持仓信息。
2020-12-01
- 更新杠杆交易接口:
POST /sapi/v1/margin/order
加入参数quoteOrderQty
支持"报价总额市价单"。
2020-11-27
为了优化性能,除了当前的api.binance.com
,新加了一些API的集群。如果访问api.binance.com
有性能问题,也可以尝试访问:
- https://api1.binance.com/api/v3/*
- https://api2.binance.com/api/v3/*
- https://api3.binance.com/api/v3/*
2020-11-16
- 更新杠杆接口加入
archived
参数以支持查询6个月以前数据:GET /sapi/v1/margin/loan
GET /sapi/v1/margin/repay
GET /sapi/v1/margin/interestHistory
2020-11-13
- 新增子母账户接口:
POST /sapi/v1/sub-account/universalTransfer
以支持子母账户,现货和合约账户之间相互划转。GET /sapi/v1/sub-account/universalTransfer
以查询划转记录。
2020-11-10
- 新增BNB抵扣开关接口:
POST /sapi/v1/bnbBurn
BNB现货交易和杠杆利息抵扣开关。GET /sapi/v1/bnbBurn
获取BNB抵扣开关状态。
2020-11-09
- 新增返回字段
tranId
于子母账户接口:GET /sapi/v1/sub-account/futures/internalTransfer
GET /sapi/v1/sub-account/transfer/subUserHistory
2020-11-03
更新合约接口:
- 接口
GET /sapi/v1/futures/loan/repay/history
新增返回参数repayType
(NORMAL
为混合保证金普通还款,COLLATERAL
为抵押物还款),price
(抵押物还款兑换比率),repayCollateral
(还款所用抵押物数量)。 - 接口
GET /sapi/v1/futures/loan/wallet
新增返回参数totalInterest
(混合保证金总利息),principalForInterest
(混合保证金计息本金),interest
(混合保证金利息)。 - 接口
GET /sapi/v1/futures/loan/configs
新增返回参数interestRate
(混合保证金利率),interestGracePeriod
(混合保证金免息天数)。
- 接口
新增合约接口:
- 接口
GET /sapi/v1/futures/loan/collateralRepayLimit
以查询混合保证金抵押物还款上下限。 - 接口
GET /sapi/v1/futures/loan/collateralRepay
以获取混合保证金抵押物还款兑换比率。 - 接口
POST /sapi/v1/futures/loan/collateralRepay
混合保证金以抵押物还款。 - 接口
GET /sapi/v1/futures/loan/collateralRepayResult
以查询混合保证金以抵押物还款结果。 - 接口
GET /sapi/v1/futures/loan/interestHistory
以查询混合保证金利息收取历史。
- 接口
2020-10-14
- 合约接口更新:
POST /sapi/v1/futures/loan/borrow
与GET /sapi/v1/futures/loan/borrow/history
返回新字段borrowId
为用户混合保证金借款唯一 ID。POST /sapi/v1/futures/loan/repay
与GET /sapi/v1/futures/loan/repay/history
返回新字段repayId
为用户混合保证金还款唯一 ID。
2020-10-10
- 子母账户接口
POST /sapi/v1/sub-account/futures/transfer
新增划转类型type
以支持子账户现货账户和币本位合约账户间相互划转。
2020-09-30
- 杠杆账户接口更新:
GET /sapi/v1/margin/maxBorrowable
返回新字段borrowLimit
为用户账户借贷限额。
2020-09-28
新增币安宝接口:
POST /sapi/v1/lending/positionChanged
以支持定期/活动持仓转成活期持仓。
以下币安宝接口,lendingType里参数
ACTIVITY
替换REGULAR
以代表币安宝活动产品:GET /sapi/v1/lending/project/list
POST /sapi/v1/lending/customizedFixed/purchase
GET /sapi/v1/lending/project/position/list
GET /sapi/v1/lending/union/purchaseRecord
GET /sapi/v1/lending/union/interestHistory
2020-09-23
- 新增币安挖矿接口:
- 接口
GET /sapi/v1/bswap/pools
以从某个资金池移除流动性。 - 接口
GET /sapi/v1/bswap/liquidity
以获取流动资金池具体信息。 - 接口
POST /sapi/v1/bswap/liquidityAdd
以添加流动性。 - 接口
POST /sapi/v1/bswap/liquidityRemove
以移除流动性。 - 接口
GET /sapi/v1/bswap/liquidityOps
以获取流动性操作记录。 - 接口
GET /sapi/v1/bswap/quote
以获取报价。 - 接口
POST /sapi/v1/bswap/swap
以交易。 - 接口
GET /sapi/v1/bswap/swap
以获取交易记录。
- 接口
2020-09-09
用户数据 STREAM
outboundAccountInfo
事件不再推荐使用。outboundAccountInfo
事件以后会被删除(具体时间未定) 请使用outboundAccountPosition
事件.outboundAccountInfo
只推送余额不为0,以及余额刚变成0的资产。
2020-09-03
- 新增子母账户接口
POST /sapi/v1/sub-account/futures/internalTransfer
以执行子账户合约资金直接划转。 - 新增子母账户接口
GET /sapi/v1/sub-account/futures/internalTransfer
以查询子账户合约资金直接划转历史。
2020-09-01
- 子母账户接口
GET /sapi/v1/sub-account/spotSummary
返回内容中新增字段masterAccountTotalAsset
以获取BTC计价的母账户资产。
2020-08-27
- 新增接口
GET /sapi/v1/sub-account/spotSummary
以获取BTC计价的子账户现货资产汇总。
2020-08-26
- 逐仓杠杆接口
GET /sapi/v1/margin/isolated/account
新增可选参数symbols
, 以支持查询至多5个指定symbol的杠杆逐仓资产。
2020-07-28
逐仓杠杆相关接口
以下接口新增可选参数"isIsolated", 并在返回内容中新增字段 "symbol":
POST /sapi/v1/margin/loan
POST /sapi/v1/margin/repay
以下接口新增可选参数"isIsolated", 并在返回内容中新增字段 "isIsolated":
POST /sapi/v1/margin/order
DELETE /sapi/v1/margin/order
GET /sapi/v1/margin/order
GET /sapi/v1/margin/openOrders
GET /sapi/v1/margin/allOrders
GET /sapi/v1/margin/myTrades
以下接口新增可选参数"isolatedSymbol", 并在返回内容中新增字段 "isolatedSymbol":
GET /sapi/v1/margin/loan
GET /sapi/v1/margin/repay
GET /sapi/v1/margin/interestHistory
接口
GET /sapi/v1/margin/forceLiquidationRec
新增可选参数"isolatedSymbol", 并在返回内容中新增字段 "isIsolated"以下接口新增可选参数"isolatedSymbol":
GET /sapi/v1/margin/maxBorrowable
GET /sapi/v1/margin/maxTransferable
新增以下逐仓杠杆功能接口:
POST /sapi/v1/margin/isolated/create
POST /sapi/v1/margin/isolated/transfer
GET /sapi/v1/margin/isolated/transfer
GET /sapi/v1/margin/isolated/account
GET /sapi/v1/margin/isolated/pair
GET /sapi/v1/margin/isolated/allPairs
新增以下接口,管理逐仓杠杆账户listenKey:
POST /sapi/v1/userDataStream/isolated
PUT /sapi/v1/userDataStream/isolated
DELETE /sapi/v1/userDataStream/isolated
2020-07-20
- 接口
GET /sapi/v1/margin/allOrders
参数"limit"的可传最大值更新为500.
2020-07-17
- 接口
GET /sapi/v1/margin/allOrders
增加访问限制为每个IP最多每分钟60次
2020-07-13
- 新增合约混合保证金相关的SAPI接口:
POST /sapi/v1/futures/loan/borrow
GET /sapi/v1/futures/loan/borrow/history
POST /sapi/v1/futures/loan/repay
GET /sapi/v1/futures/loan/repay/history
GET /sapi/v1/futures/loan/wallet
GET /sapi/v1/futures/loan/configs
GET /sapi/v1/futures/loan/calcAdjustLevel
GET /sapi/v1/futures/loan/calcMaxAdjustAmount
POST /sapi/v1/futures/loan/adjustCollateral
GET /sapi/v1/futures/loan/adjustCollateral/history
GET /sapi/v1/futures/loan/liquidationHistory
2020-06-28
- 服务于合约的相关SAPI接口内容转移至本文档:
POST /sapi/v1/futures/transfer
GET /sapi/v1/futures/transfer
2020-05-06
- 新增矿池接口:
GET /sapi/v1/mining/pub/algoList
GET /sapi/v1/mining/pub/coinList
GET /sapi/v1/mining/worker/detail
GET /sapi/v1/mining/worker/list
GET /sapi/v1/mining/payment/list
GET /sapi/v1/mining/statistics/user/status
GET /sapi/v1/mining/statistics/user/list
2020-05-01
- 从2020-05-01 UTC 00:00开始, 所有交易对都会有最多200个挂单的限制, 体现在过滤器MAX_NUM_ORDERS上.
- 已经存在的挂单不会被移除或者撤销。
- 单交易对(
symbol
)的挂单数量达到或超过200的账号, 无法在此交易对上下新的订单, 除非挂单数量低于200。 - OCO订单在被触发成
LIMIT
订单, 或者被触发成STOP_LOSS
(或者STOP_LOSS_LIMIT
)前, 被认为是2个挂单量. 一旦OCO订单被触发, 就只被算作一个挂单。
2020-04-25
现货 API
- 添加新字段
permissions
- 这个字段定义了对于账户、交易对(
symbol
)的交易权限。 permissions
是个enum数组, 可能的值:SPOT
MARGIN
- 在未来的版本(v4)中,
permissions
将会在GET api/v3/exchangeInfo
中替换isSpotTradingAllowed
和isMarginTradingAllowed
。 - 如果账户想在一个交易对下做交易, 账户和交易对必须同时拥有对应的权限。
- 这个字段定义了对于账户、交易对(
- 接口
GET api/v3/exchangeInfo
的更新- 添加新字段
permissions
。 - 添加新字段
quoteAssetPrecision
。此字段和quotePrecision
重复。在未来的版本(v4)中quotePrecision
会被移除。
- 添加新字段
- 接口
GET api/v3/account
的更新- 添加新字段
permissions
。
- 添加新字段
- 添加新接口
DELETE api/v3/openOrders
- 此接口便于用户撤销单一交易对的所有挂单, 包括OCO的挂单。
- 如果交易对处于
BREAK
或者HALT
状态, 挂单也可以被撤销。
用户数据 STREAM
OutboundAccountInfo
消息会显示一个新字段P
, 用来显示账户的交易权限。
2020-04-23
WEB SOCKET 连接限制
- Websocket服务器每秒最多接受5个消息。消息包括:
- PING帧
- PONG帧
- JSON格式的消息, 比如订阅, 断开订阅.
- 如果用户发送的消息超过限制,连接会被断开连接。反复被断开连接的IP有可能被服务器屏蔽。
- 单个连接最多可以订阅 1024 个Streams。
2020-04-16
币安宝接口
GET /sapi/v1/lending/daily/token/position
返回内容新增字段:todayPurchasedAmount
表示用户今日申购的活期产品数量
新增以下币安宝接口用以支持灵活定期产品:
GET /sapi/v1/lending/project/list
POST /sapi/v1/lending/customizedFixed/purchase
GET /sapi/v1/lending/project/position/list
2020-04-02
- 接口
GET /sapi/v1/capital/config/getall
返回内容新增字段:minConfirm
表示资产上账所需的最小确认数unLockConfirm
表示资产解锁需所需确认数
2020-03-24
添加过滤器
MAX_POSITION
.- 这个过滤器定义账户允许的基于
base asset
的最大仓位。一个用户的仓位可以定义为如下资产的总和:base asset
的可用余额base asset
的锁定余额- 所有处于open的买单的数量总和
- 如果用户的仓位大于最大的允许仓位,买单会被拒绝。
- 这个过滤器定义账户允许的基于
2020-03-13
- 新增可选参数
transactionFeeFlag
于以下提币接口:POST /sapi/v1/capital/withdraw/apply
POST /wapi/v3/withdraw.html
2020-02-05
- 新增子账户相关接口:
POST /sapi/v1/sub-account/futures/transfer
: 对子账户实施futures账户划转POST /sapi/v1/sub-account/margin/transfer
: 对子账户实施margin账户划转POST /sapi/v1/sub-account/transfer/subToSub
: 向兄弟子账户划转POST /sapi/v1/sub-account/transfer/subToMaster
: 向母账户划转GET /sapi/v1/sub-account/transfer/subUserHistory
: 子账户获取自身划转历史
2020-01-15
接口
POST /wapi/v3/withdraw.html
新增参数withdrawOrderId
: 用户自定义提币id接口
GET /wapi/v3/withdrawHistory.html
返回内容新增字段withdrawOrderId
: 该笔提币的用户自定义id
2019-12-25
新增币安宝接口:
GET /sapi/v1/lending/daily/product/list
GET /sapi/v1/lending/daily/userLeftQuota
POST /sapi/v1/lending/daily/purchase
GET /sapi/v1/lending/daily/userRedemptionQuota
POST /sapi/v1/lending/daily/redeem
GET /sapi/v1/lending/daily/token/position
GET /sapi/v1/lending/union/account
GET /sapi/v1/lending/union/purchaseRecord
GET /sapi/v1/lending/union/redemptionRecord
GET /sapi/v1/lending/union/interestHistory
新增请求时间间隔于以下接口
GET /sapi/v1/capital/withdraw/history
,
GET /wapi/v3/withdrawHistory.html
,
GET /sapi/v1/capital/deposit/hisrec
and
GET /wapi/v3/depositHistory.html
:- 默认
startTime
为当前时间起90天前, 默认endTime
为当前时间; - 请注意
startTime
与endTime
的默认时间戳,保证请求时间间隔不超过90天; - 同时提交
startTime
与endTime
间隔不得超过90天.
- 默认
2019-12-18
- 新增接口用以获取账户每日资产快照:
GET /sapi/v1/accountSnapshot
2019-11-30
接口
POST /sapi/v1/margin/order (HMAC SHA256)
新增参数sideEffectType
,可选内容如下:NO_SIDE_EFFECT
: 普通交易订单;MARGIN_BUY
: 自动借款交易订单;AUTO_REPAY
: 自动还款交易订单.
New field
marginBuyBorrowAmount
andmarginBuyBorrowAsset
inFULL
response toPOST /sapi/v1/margin/order (HMAC SHA256)
2019-11-28
- 新增SAPI接口用以关闭账户站内划转功能:
POST /sapi/v1/account/disableFastWithdrawSwitch (HMAC SHA256)
- 新增SAPI接口用以开启账户站内划转功能:
POST /sapi/v1/account/enableFastWithdrawSwitch (HMAC SHA256)
2019-11-22
- "报价总额市价单"作为新的市价单方式已在各交易对投入使用。
- "报价总额市价单" 允许用户在市价单
MARKET
中设置总的购买投入金额或卖出预计回收金额quoteOrderQty
。 - "报价总额市价单"不会突破
LOT_SIZE
的限制规则; 报单会按给定的quoteOrderQty
尽可能接近地被执行。 - 以
BNBBTC
交易对为例:- On the
BUY
side, the order will buy as many BNB asquoteOrderQty
BTC can. - 买单: 给定
quoteOrderQty
的BTC会被用来市价买入尽可能多的BNB。 - On the
SELL
side, the order will sell as much BNB as needed to receivequoteOrderQty
BTC. - 卖单: 持有BNB会被尽可能多地以市价卖出以获取给定
quoteOrderQty
的BTC。
- On the
- "报价总额市价单" 允许用户在市价单
2019-11-19
GET /sapi/v1/sub-account/margin/account
返回内容新增:marginTradeCoeffVo
其中包括forceLiquidationBar
: 强平风险率;marginCallBar
: 补仓风险率;normalBar
: 初始风险率
2019-11-13
Rest API
- "api/v3/exchangeInfo" 新增内容:
quoteOrderQtyMarketAllowed
baseCommissionPrecision
quoteCommissionPrecision
MARKET
orders (市价单)新增可选参数:quoteOrderQty
指定买入或卖出的报价数量,不可与quantity
(数量)同时使用.- 能够有效配合该参数使用
MARKET
orders(市价单)的确切时间和进一步详细信息将由后续声明予以通告。
- 能够有效配合该参数使用
- 所有订单查询接口增加新的返回内容:
origQuoteOrderQty
(e.g. GET api/v3/allOrders)
{
"code": -1128,
"msg": "Combination of optional parameters invalid. Recommendation: 'stopLimitTimeInForce' should also be sent."
}
错误代码更新: -1128
- 发送
OCO
订单中有stopLimitPrice
但是没有stopLimitTimeInForce
,将会受到错误信息:
- 发送
错误代码更新: -1003, 明确了使用请求权重作为限制而不是请求数量。
v1 接口将被弃用:
2020年一季度末,以下接口将被移除。目前文档已经将这些接口更新为v3版本。
- GET api/v1/depth
- GET api/v1/historicalTrades
- GET api/v1/aggTrades
- GET api/v1/klines
- GET api/v1/ticker/24hr
- GET api/v1/ticker/price
- GET api/v1/exchangeInfo
- POST api/v1/userDataStream
- PUT api/v1/userDataStream
- GET api/v1/ping
- GET api/v1/time
- GET api/v1/ticker/bookTicker
以下接口将不会移植到v3版本,请使用新接口予以替换
旧的 V1 接口 | 新的 V3 接口 |
---|---|
GET api/v1/ticker/allPrices | GET api/v3/ticker/price |
GET api/v1/ticker/allBookTickers | GET api/v3/ticker/bookTicker |
USER DATA STREAM
事件
executionReport
(订单更新)更新内容:- 如果 C 值为空, 将返回
null
, 而不是"null"
. - 新增返回值 Q, 表示
quoteOrderQty
.
- 如果 C 值为空, 将返回
新增事件类型
balanceUpdate
(余额更新)- 当资金存入或从帐户中提取时,发生余额更新。
WEB SOCKET STREAM
- WSS 现在支持实时订阅和取消数据流。
2019-11-08
- 新增以下sapi接口用以管理子账户的杠杆与期货:
GET /sapi/v1/sub-account/status (HMAC SHA256)
POST /sapi/v1/sub-account/margin/enable (HMAC SHA256)
GET /sapi/v1/sub-account/margin/account (HMAC SHA256)
GET /sapi/v1/sub-account/margin/accountSummary (HMAC SHA256)
POST /sapi/v1/sub-account/futures/enable (HMAC SHA256)
GET /sapi/v1/sub-account/futures/account (HMAC SHA256)
GET /sapi/v1/sub-account/futures/accountSummary (HMAC SHA256)
GET /sapi/v1/sub-account/futures/positionRisk (HMAC SHA256)
2019-11-04
- 新增管理子账户充值功能相关的sapi接口
GET /sapi/v1/capital/deposit/subAddress (HMAC SHA256))
: 获取子账户充值地址。GET /sapi/v1/capital/deposit/subHisrec (HMAC SHA256))
: 获取子账户充值记录。
2019-10-29
- 新增钱包提币功能相关的sapi接口
POST /sapi/v1/capital/withdraw/apply (HMAC SHA256)
: 提币。Get /sapi/v1/capital/withdraw/history (HMAC SHA256)
: 获取提币历史(支持多网络)。
2019-10-14
- 新增钱包功能相关的sapi接口
GET /sapi/v1/capital/config/getall (HMAC SHA256)
: 获取针对用户的所有币种信息。GET /sapi/v1/capital/deposit/hisrec (HMAC SHA256)
: 获取充值历史(支持多网络)。GET /sapi/v1/capital/deposit/address (HMAC SHA256)
: 获取充值地址(支持多网络).
2019-10-11
POST /wapi/v3/withdraw.html
,增加参数network
,支持多网络提币。
2019-09-09
- 新增bookTicker行情流:
<symbol>@bookTicker
与!bookTicker
.
2019-09-03
- 更新频率达到100ms的更快的 order book 信息流选项:
<symbol>@depth@100ms
和<symbol>@depth#@100ms
Websocket Market Streams
增加Update Speed
更新速度
2019-08-16
10000
限额
的接口已被临时删除: GET api/v1/depth在2017年第四季度,以下接口已被弃用并将其从API文档中删除。 从此版本开始,以下接口已从API中永久删除。 对于原始变更日志如有遗漏,我们深表歉意:
- GET api/v1/order
- GET api/v1/openOrders
- POST api/v1/order
- DELETE api/v1/order
- GET api/v1/allOrders
- GET api/v1/account
- GET api/v1/myTrades
在此存储库的文档中描述的流、接口、参数、有效负载等均被 官方认证 且 得到支持。 任何其他流、接口、参数或有效负载等的使用不受支持, 自行使用的风险将由您自己承担,没有任何保证。
2019-09-15
Rest API
新订单类型: OCO ("One Cancels the Other")
- 一个 OCO 有 2 个订单: (在财务术语中也称为 legs)
STOP_LOSS
或STOP_LOSS_LIMIT
legLIMIT_MAKER
leg
- 价格限制:
SELL Orders
: 限价 > 成交价>止损价BUY Orders
: 限价<成交价<止损价- 如前所述,价格必须"横跨"交易品种的最后交易价格。 例如:如果最后价格是10:
- 卖出OCO的限制价格必须大于10,止损价格小于10。
- 买入OCO的限制价格必须小于10,止损价格大于10。
- 数量限制:
- 两个 legs 的数量必须相同。
- 但是,
ICEBERG
的数量不必相同。
- 执行顺序:
- 如果触发了
LIMIT_MAKER
,则在取消止损leg之前将首先执行限价支路。 - 如果市场价格移动到将触发"STOP_LOSS"或"STOP_LOSS_LIMIT",则在执行"STOP_LOSS"支路之前,限价单支路将被取消。
- 如果触发了
- 取消一个 OCO 订单
- 取消任一订单的 leg 将取消整个 OCO 订单.
- 可通过
orderListId
或listClientOrderId
取消整个 OCO 订单。
- OCO的新枚举:
ListStatusType
RESPONSE
- 当ListStatus响应失败的操作时使用。 (下单或取消订单)EXEC_STARTED
- 在下订单列表或列表状态更新时使用。ALL_DONE
- 当订单清单完成执行且不再有效时使用。
ListOrderStatus
EXECUTING
- 在下订单列表或列表状态更新时使用。ALL_DONE
- 当订单清单完成执行且不再有效时使用。REJECT
- 当ListStatus响应失败的操作时使用。 (下单或取消订单)
ContingencyType
OCO
- 指定订单列表的类型。
- 新的接口:
- POST api/v3/order/oco
- DELETE api/v3/orderList
- GET api/v3/orderList
- 一个 OCO 有 2 个订单: (在财务术语中也称为 legs)
recvWindow
cannot exceed 60000.New
intervalLetter
values for headers:- SECOND => S
- MINUTE => M
- HOUR => H
- DAY => D
新标头"X-MBX-USED-WEIGHT-(intervalNum)(intervalLetter)"将为(intervalNum)(intervalLetter)速率限制器提供您当前使用的请求权重。 例如,如果设置了一分钟的请求速率权重限制器,则响应中将获得一个"X-MBX-USED-WEIGHT-1M"标头。 旧标头X-MBX-USED-WEIGHT仍将返回,并代表一分钟请求速率权重限制的当前使用权重。
新标头"X-MBX-ORDER-COUNT-(intervalNum)(intervalLetter)"会在任何有效的订单位置上更新,并跟踪该间隔的当前订单数; 拒绝/不成功的订单不保证在响应中具有
X-MBX-ORDER-COUNT-**
标头。- 例如: "X-MBX-ORDER-COUNT-1S"用于"每1秒钟的订单",
X-MBX-ORDER-COUNT-1D
用于"每1天的订单"
- 例如: "X-MBX-ORDER-COUNT-1S"用于"每1秒钟的订单",
GET api / v1 / depth现在支持
limit
5000和10000; 权重分别是50和100。GET api / v1 / exchangeInfo具有一个新参数" ocoAllowed"。
用户数据流
executionReport
事件现在包含具有orderListId
`的"g"; 对于非OCO订单,它将设置为-1。- 新事件类型
listStatus
;listStatus
是在更新任何OCO订单时发送的。 - 新事件类型
outboundAccountPosition
; 每当帐户余额发生变化时,就会发送outboundAccountPosition
,并包含可能导致余额发生变化的事件(存款,提款,交易,下单或取消)更改的资产。
新的错误码
- -1131 BAD_RECV_WINDOW
recvWindow
必须小于 60000
- -1099未被找到,被认证或被授权 *替换错误代码-1999
新的-2011错误内容
- OCO_BAD_ORDER_PARAMS
- 其中一个订单的参数不正确。
- OCO_BAD_PRICES
- 订单价格之间的关系不正确。
- UNSUPPORTED_ORD_OCO
- 此交易对不支持OCO订单。
2019-03-12
Rest API
- X-MBX-USED-WEIGHT标头已添加到Rest API响应中。
- Retry-After标头已添加到Rest API 418和429响应中。
- 取消Rest API时,如果交易对的"状态"不是" TRADING",则现在可以返回"errorCode" -1013或-2011。
api/v1/depth
不再具有被忽略和为空的[[]。 *
api/v3/myTrades现在返回
quoteQty`; 价格交易数量。
Websocket 流
<symbol>@depth
和<symbol>@depthX
流不再具有被忽略且为空的"[]"。
系统改进
- 匹配引擎稳定性/可靠性改进。
- Rest API性能改进。
2018-11-13
Rest API
- 现在可以在限制交易期间通过Rest API取消订单。
- 新的过滤器:
PERCENT_PRICE
,MARKET_LOT_SIZE
,MAX_NUM_ICEBERG_ORDERS
。 - 添加了
RAW_REQUESTS
速率限制。 限制取决于X
分钟内的请求数量(不考虑重量)。 - 无交易对查询的
/api/v3/ticker/price
权重增加到2。 /api/v3/ticker/bookTicker
对于无符号查询增加了2的权重。DELETE /api/v3/order
现在将返回订单最终状态的执行报告。MIN_NOTIONAL
过滤器有两个新参数:applyToMarket
(过滤器是否应用于MARKET订单)avgPriceMins
(平均价格的分钟数)。
intervalNum
已添加到/api/v1/exchangeInfo
限制中。intervalNum
描述间隔的数量。 例如:intervalNum
5,带有interval
分钟,表示"每5分钟"。
平均价格的计算规则解释:
[过去5分钟所有订单的数量*价格求和] / 过去5分钟所有订单的数量
如果最近5分钟内没有交易,则以5分钟窗口外发生的第一笔交易为准。 例如,如果最后一次交易是在20分钟前,则该交易的价格为5分钟的平均值。
如果代码上没有交易,则没有平均价格,因此无法下达市价单。对于在MIN_NOTIONAL过滤器上启用了applyToMarket的新交易对,除非有至少一笔交易,才能下达市价单。
当前的平均价格可以在这里查看:
https://api.binance.com/api/v3/avgPrice?symbol=<symbol>
例如:https://api.binance.com/api/v3/avgPrice?symbol=BNBUSDT
用户数据流
- 将"最后报价资产交易量"(作为变量" Y")添加到执行报告中。 代表
lastPrice
lastQty
(L
*l
)。
2018-07-18
Rest API
- 新的过滤器:
ICEBERG_PARTS
post api/v3/order
为newOrderRespType`的新默认值。 ACK,RESULT或FULL; "MARKET"和"LIMIT"订单类型默认为"FULL",所有其他订单默认为"ACK"。- POST api/v3 order
RESULT
和FULL
响应现在具有"cummulativeQuoteQty" - GET/api/v3/ openOrders的交易对权重减少到40。
- GET/api/v3/ ticker / 24hr,且交易对权重未降低至40。
- GET/api/v1/ trades的最大交易量增加到1000。
- GET/api/v1/ historicalTrades的最大交易量增加到1000。
- GET/api/v1/ aggTrades的最大总交易量增加到1000。
- GET/api/v1/ klines的最大总交易量增加到1000。
- 剩余的API订单查询现在返回
updateTime
,它代表订单的最后更新时间; time是订单创建时间。 - 订单查找接口现在将返回"cummulativeQuoteQty"。如果"cummulativeQuoteQty"小于0,则表示该时间该数据不可用。
- REQUESTS速率限制类型更改为REQUEST_WEIGHT。从逻辑上讲,此限制始终是请求权重,并且其先前的名称引起混乱。
用户数据流
- 在订单响应和执行报告中添加了"cummulativeQuoteQty"字段(作为变量"Z")。 表示已花费(使用"买入"订单)或已收到(使用"卖出"订单)的"报价"的累计金额。 历史订单在该字段中的值将小于0,这表明该数据目前不可用。 "cummulativeQuoteQty"除以"cummulativeQty"将得出订单的平均价格。
O
(订单创建时间)添加到执行报告中
2018-01-23
- GET/api/v1/ historicalTrades权重降低到5
- GET/api/v1/ aggTrades权重降至1
- GET/api/v1/ klines权重降至1
- GET/api/v1/ticker / 24hr,所有交易品种的权重降低到交易交易品种的数量/ 2
- GET/api/v3/ allOrders权重降低到5
- GET/api/v3/ myTrades权重降低到5
- GET/api/v3/帐户权重降低到5
- GET/api/v1/深度限制= 500重量减少到5
- GET/api/v1/深度限制= 1000重量减少到10
- -1003错误消息已更新,可将用户定向到websocket
2018-01-20
- GET/api/v1/ticker / 24hr单个符号权重降至1
- GET/api/v3/ openOrders所有交易对权重下降至交易交易品种数量/ 2
- GET/api/v3/allOrders权重降低到15
- GET/api/v3/ myTrades权重降低到15
- GET/api/v3/订单权重降至1
- myTrades现在将返回自交易/清洗交易的双方
2018-01-14
- GET/api/v1/aggTrades权重更改为2
- GET/api/v1/klines权重更改为2
- GET/api/v3/订单权重更改为2
- GET/api/v3/ allOrders权重更改为20
- GET/api/v3/帐户权重更改为20
- GET/api/v3/ myTrades权重更改为20
- GET/api/v3/ historicalTrades权重更改为20
介绍
API Key 设置
- 很多接口需要API Key才可以访问. 请参考这个页面来设置API Key.
- 设置API Key的同时,为了安全,建议设置IP访问白名单.
- 永远不要把你的API key/secret告诉给任何人
API Key 权限设置
- 新创建的API的默认权限是
只读
。 - 如果需要通过API提款, 需要在UI修改权限, 选中
允许提现
。
账户
现货账户
新注册的币安账号都会有一个现货(SPOT
)账号。
杠杆账户
为了开设杠杆(MARGIN
)账户, 可以参考Binance杠杆交易账户设置指南
现货测试网
用户可以使用现货的测试网来体验SPOT
交易. 现在只能通过API来交易。
更多信息请参考现货测试网。
API 代码库
Connectors
以下有一些轻量级的代码库,使不同语言的用户能够直接调用现货的 Binance 公共 API:
- Python https://github.com/binance/binance-connector-python
- Node.js https://github.com/binance/binance-connector-node
- Ruby https://github.com/binance/binance-connector-ruby
- DotNET C# https://github.com/binance/binance-connector-dotnet
- Java https://github.com/binance/binance-connector-java
- Rust https://github.com/binance/binance-spot-connector-rust
- PHP https://github.com/binance/binance-connector-php
- Go https://github.com/binance/binance-connector-go
- Typescript https://github.com/binance/binance-connector-typescript
Postman Collections
Postman 集合现已推出。推荐给寻求快速和轻松地开始使用 API 的新用户。
https://github.com/binance/binance-api-postman
Swagger
以下有提供包含 RESTful API 的 OpenAPI 规范的 YAML 文件,以及可供参考的 Swagger UI 页面。
https://github.com/binance/binance-api-swagger
联系我们
- 币安API电报群
- 咨询关于API或者Websockets性能方面的问题.
- 咨询文档中没有提及的API问题.
- 币安开发者社区
- 咨询关于API/Websockets代码实现,或者任何API/Websockets的问题.
- 币安客服
- 咨询关于账户,钱包,2FA等.
基本信息
API 基本信息
- 接口可能需要用户的 API Key,如何创建API-KEY请参考这里
- 本篇列出接口的 base URL 有:
- https://api.binance.com
- https://api-gcp.binance.com
- https://api1.binance.com
- https://api2.binance.com
- https://api3.binance.com
- https://api4.binance.com
- 上述列表的最后4个接口 (
api1
-api4
) 可能会提供更好的性能,但其稳定性略为逊色。因此,请务必使用最适合您现有配置的那款。 - 所有接口的响应都是 JSON 格式。
- 响应中如有数组,数组元素以时间升序排列,越早的数据越提前。
- 所有时间、时间戳均为UNIX时间,单位为毫秒。
- 对于仅发送公开市场数据的 API,您可以使用 base URL https://data-api.binance.vision 。
- GET /api/v3/aggTrades
- GET /api/v3/avgPrice
- GET /api/v3/depth
- GET /api/v3/exchangeInfo
- GET /api/v3/klines
- GET /api/v3/ping
- GET /api/v3/ticker
- GET /api/v3/ticker/24hr
- GET /api/v3/ticker/bookTicker
- GET /api/v3/ticker/price
- GET /api/v3/time
- GET /api/v3/trades
- GET /api/v3/uiKlines
HTTP 返回代码
- HTTP
4XX
错误码用于指示错误的请求内容、行为、格式。问题在于请求者。 - HTTP
403
错误码表示违反WAF限制(Web应用程序防火墙)。 - HTTP
409
错误码表示重新下单(cancelReplace)的请求部分成功。(比如取消订单失败,但是下单成功了) - HTTP
429
错误码表示警告访问频次超限,即将被封IP。 - HTTP
418
表示收到429后继续访问,于是被封了。 - HTTP
5XX
错误码用于指示Binance服务侧的问题。
接口错误代码
- 使用接口
/api/v3
, 以及/sapi/v1/margin
时, 每个接口都有可能抛出异常;
API 与 SAPI 的错误代码返回形式如下:
{
"code": -1121,
"msg": "Invalid symbol."
}
- 具体的错误码及其解释在 错误代码.
接口的基本信息
GET
方法的接口, 参数必须在query string
中发送。POST
,PUT
, 和DELETE
方法的接口,参数可以在内容形式为application/x-www-form-urlencoded
的query string
中发送,也可以在request body
中发送。 如果你喜欢,也可以混合这两种方式发送参数。- 对参数的顺序不做要求。
- 但如果同一个参数名在query string和request body中都有,query string中的会被优先采用。
访问限制
访问限制基本信息
以下 是
intervalLetter
作为头部值:- SECOND => S
- MINUTE => M
- HOUR => H
- DAY => D
在
/api/v3/exchangeInfo
rateLimits
数组中包含与交易的有关RAW_REQUESTS,REQUEST_WEIGHT和ORDERS速率限制相关的对象。这些在限制种类 (rateLimitType)
下的枚举定义
部分中进一步定义。违反任何一个速率限制时(访问频次限制或下单速率限制),将返回429。
IP 访问限制
- 每个请求将包含一个
X-MBX-USED-WEIGHT-(intervalNum)(intervalLetter)
的头,其中包含当前IP所有请求的已使用权重。 - 每一个接口均有一个相应的权重(weight),有的接口根据参数不同可能拥有不同的权重。越消耗资源的接口权重就会越大。
- 收到429时,您有责任停止发送请求,不得滥用API。
- 收到429后仍然继续违反访问限制,会被封禁IP,并收到418错误码
- 频繁违反限制,封禁时间会逐渐延长,从最短2分钟到最长3天。
Retry-After
的头会与带有418或429的响应发送,并且会给出以秒为单位的等待时长(如果是429)以防止禁令,或者如果是418,直到禁令结束。- 访问限制是基于IP的,而不是API Key
未成交订单计数
- 每个成功的订单响应都将包含一个
X-MBX-ORDER-COUNT-(intervalNum)(intervalLetter)
报文头,用于标识您在该时间间隔内下了多少订单。
如果您想要对此进行监控,请参阅GET api/v3/rateLimit/order
。 - 被拒绝/不成功的订单不保证在响应中有
X-MBX-ORDER-COUNT-**
报文头。 - 如果超过此值,您将收到一个 429 错误,而且不带
Retry-After
报文头。 - 请注意,如果您的订单一直顺利完成交易,您可以通过 API 持续下订单。更多信息,请参见 现货未成交订单计数规则。
- 未成交订单数量是按照每个账户来统计的。
WEB SOCKET 连接限制
- Websocket服务器每秒最多接受5个消息。消息包括:
- PING帧
- PONG帧
- JSON格式的消息, 比如订阅, 断开订阅.
- 如果用户发送的消息超过限制,连接会被断开连接。反复被断开连接的IP有可能被服务器屏蔽。
- 单个连接最多可以订阅 1024 个Streams。
- 每IP地址、每5分钟最多可以发送300次连接请求。
/api/ 与 /sapi/ 接口限频说明
/api/*
接口和 /sapi/*
接口采用两套不同的访问限频规则, 两者互相独立。
/api/*
的接口相关:- 按IP和按UID(account)两种模式分别统计, 两者互相独立。
- 以
/api/*
开头的接口按IP限频,且所有接口共用每分钟6,000限制。 - 每个请求将包含一个
X-MBX-USED-WEIGHT-(intervalNum)(intervalLetter)
的头,包含当前IP所有请求的已使用权重。 - 每个成功的下单回报将包含一个
X-MBX-ORDER-COUNT-(intervalNum)(intervalLetter)
的头,其中包含当前账户已用的下单限制数量。
/sapi/*
的接口相关:- 按IP和按UID(account)两种模式分别统计, 两者互相独立。
- 以
/sapi/*
开头的接口采用单接口限频模式。按IP统计的权重单接口权重总额为每分钟12000;按照UID统计的单接口权重总额是每分钟180000。 - 每个接口会标明是按照IP或者按照UID统计, 以及相应请求一次的权重值。
- 按照IP统计的接口, 请求返回头里面会包含
X-SAPI-USED-IP-WEIGHT-1M=<value>
或X-SAPI-USED-IP-WEIGHT-1S=<value>
, 包含当前IP所有请求已使用权重。 - 按照UID统计的接口, 请求返回头里面会包含
X-SAPI-USED-UID-WEIGHT-1M=<value>
或X-SAPI-USED-UID-WEIGHT-1S=<value>
, 包含当前账户所有已用的UID权重。
数据来源
- 因为API系统是异步的, 所以返回的数据有延时很正常, 也在预期之中。
- 在每个接口中,列出了其数据的来源,可以用于理解数据的时效性。
系统一共有3个数据来源,按照更新速度的先后排序。排在前面的数据最新,在后面就有可能存在延迟。
- 撮合引擎 - 表示数据来源于撮合引擎
- 缓存 - 表示数据来源于内部或者外部的缓存
- 数据库 - 表示数据直接来源于数据库
接口鉴权类型
- 每个接口都有自己的鉴权类型,鉴权类型决定了访问时应当进行何种鉴权。
- 鉴权类型会在本文档中各个接口名称旁声明,如果没有特殊声明即默认为
NONE
。 - 如果需要 API-keys,应当在HTTP头中以
X-MBX-APIKEY
字段传递。 - API-keys 与 secret-keys 是大小写敏感的。
- API-keys可以被配置为只拥有访问一些接口的权限。 例如, 一个 API-key 仅可用于发送交易指令, 而另一个 API-key 则可访问除交易指令外的所有路径。
- 默认 API-keys 可访问所有鉴权路径.
鉴权类型 | 描述 |
---|---|
NONE | 不需要鉴权的接口 |
TRADE | 需要有效的 API-Key 和签名 |
MARGIN | 需要有效的 API-Key 和签名 |
USER_DATA | 需要有效的 API-Key 和签名 |
USER_STREAM | 需要有效的 API-Key |
MARKET_DATA | 需要有效的 API-Key |
TRADE
,MARGIN
和USER_DATA
接口是 签名(SIGNED)接口.
SIGNED (TRADE、USER_DATA AND MARGIN) Endpoint security
- 调用
SIGNED
接口时,除了接口本身所需的参数外,还需要在query string
或request body
中传递signature
, 即签名参数。 签名
大小写不敏感.- 各种签名方式(比如 HMAC, RSA, Ed25519),请参考下面的签名的示例。
时间同步安全
- 签名接口均需要传递
timestamp
参数,其值应当是请求发送时刻的unix时间戳(毫秒)。 - 服务器收到请求时会判断请求中的时间戳,如果是5000毫秒之前发出的,则请求会被认为无效。这个时间空窗值可以通过发送可选参数
recvWindow
来定义。
逻辑伪代码如下:
if (timestamp < (serverTime + 1000) && (serverTime - timestamp) <= recvWindow)
{
// process request
}
else
{
// reject request
}
关于交易时效性 互联网状况并不完全稳定可靠,因此你的程序本地到币安服务器的时延会有抖动。这是我们设置recvWindow
的目的所在,如果你从事高频交易,对交易时效性有较高的要求,可以灵活设置recvWindow
以达到你的要求。
POST /api/v3/order 的示例 - HMAC Keys
以下是在 linux bash 环境下使用 echo openssl 和 curl 工具实现的一个调用接口下单的示例 apikey、secret仅供示范
Key | Value |
---|---|
apiKey | vmPUZE6mv9SD5VNHk4HlWFsOr6aKE2zvsw0MuIgwCIPy6utIco14y7Ju91duEh8A |
secretKey | NhqPtmdSJYdKjVHjA7PZj4Mge3R5YNiP1e3UZjInClVN65XAbvqqM6A7H5fATj0j |
参数 | 取值 |
---|---|
symbol | LTCBTC |
side | BUY |
type | LIMIT |
timeInForce | GTC |
quantity | 1 |
price | 0.1 |
recvWindow | 5000 |
timestamp | 1499827319559 |
示例 1: 所有参数通过 request body 发送
示例 1
HMAC SHA256 signature:
$ echo -n "symbol=LTCBTC&side=BUY&type=LIMIT&timeInForce=GTC&quantity=1&price=0.1&recvWindow=5000×tamp=1499827319559" | openssl dgst -sha256 -hmac "NhqPtmdSJYdKjVHjA7PZj4Mge3R5YNiP1e3UZjInClVN65XAbvqqM6A7H5fATj0j"
(stdin)= c8db56825ae71d6d79447849e617115f4a920fa2acdcab2b053c4b2838bd6b71
curl command:
(HMAC SHA256)
$ curl -H "X-MBX-APIKEY: vmPUZE6mv9SD5VNHk4HlWFsOr6aKE2zvsw0MuIgwCIPy6utIco14y7Ju91duEh8A" -X POST 'https://api.binance.com/api/v3/order' -d 'symbol=LTCBTC&side=BUY&type=LIMIT&timeInForce=GTC&quantity=1&price=0.1&recvWindow=5000×tamp=1499827319559&signature=c8db56825ae71d6d79447849e617115f4a920fa2acdcab2b053c4b2838bd6b71'
- requestBody:
symbol=LTCBTC
&side=BUY
&type=LIMIT
&timeInForce=GTC
&quantity=1
&price=0.1
&recvWindow=5000
×tamp=1499827319559
示例 2: 所有参数通过 query string 发送
示例 2
HMAC SHA256 signature:
$ echo -n "symbol=LTCBTC&side=BUY&type=LIMIT&timeInForce=GTC&quantity=1&price=0.1&recvWindow=5000×tamp=1499827319559" | openssl dgst -sha256 -hmac "NhqPtmdSJYdKjVHjA7PZj4Mge3R5YNiP1e3UZjInClVN65XAbvqqM6A7H5fATj0j"
(stdin)= c8db56825ae71d6d79447849e617115f4a920fa2acdcab2b053c4b2838bd6b71
curl command:
(HMAC SHA256)
$ curl -H "X-MBX-APIKEY: vmPUZE6mv9SD5VNHk4HlWFsOr6aKE2zvsw0MuIgwCIPy6utIco14y7Ju91duEh8A" -X POST 'https://api.binance.com/api/v3/order?symbol=LTCBTC&side=BUY&type=LIMIT&timeInForce=GTC&quantity=1&price=0.1&recvWindow=5000×tamp=1499827319559&signature=c8db56825ae71d6d79447849e617115f4a920fa2acdcab2b053c4b2838bd6b71'
- queryString:
symbol=LTCBTC
&side=BUY
&type=LIMIT
&timeInForce=GTC
&quantity=1
&price=0.1
&recvWindow=5000
×tamp=1499827319559
示例 3: 混合使用 query string 和 request body
示例 3
HMAC SHA256 signature:
$ echo -n "symbol=LTCBTC&side=BUY&type=LIMIT&timeInForce=GTCquantity=1&price=0.1&recvWindow=5000×tamp=1499827319559" | openssl dgst -sha256 -hmac "NhqPtmdSJYdKjVHjA7PZj4Mge3R5YNiP1e3UZjInClVN65XAbvqqM6A7H5fATj0j"
(stdin)= 0fd168b8ddb4876a0358a8d14d0c9f3da0e9b20c5d52b2a00fcf7d1c602f9a77
curl command:
(HMAC SHA256)
$ curl -H "X-MBX-APIKEY: vmPUZE6mv9SD5VNHk4HlWFsOr6aKE2zvsw0MuIgwCIPy6utIco14y7Ju91duEh8A" -X POST 'https://api.binance.com/api/v3/order?symbol=LTCBTC&side=BUY&type=LIMIT&timeInForce=GTC' -d 'quantity=1&price=0.1&recvWindow=5000×tamp=1499827319559&signature=0fd168b8ddb4876a0358a8d14d0c9f3da0e9b20c5d52b2a00fcf7d1c602f9a77'
- queryString:
symbol=LTCBTC&side=BUY&type=LIMIT&timeInForce=GTC
- requestBody:
quantity=1&price=0.1&recvWindow=5000×tamp=1499827319559
请注意,签名与示例3不同。 "GTC"和"quantity = 1"之间没有&。
POST /api/v3/order 的示例 - RSA Keys
- 这将逐步介绍如何通过有效的签名发送 payload。
- 我们接受
PKCS#8
格式的 RSA Key。 - 要获取 API Key,您需要在您的账户上上传您的 RSA Public Key。
对于这个例子,Private Key 将被引用为test-prv-key.pem
。
Key | Value |
---|---|
apiKey | CAvIjXy3F44yW6Pou5k8Dy1swsYDWJZLeoK2r8G4cFDnE9nosRppc2eKc1T8TRTQ |
参数 | 取值 |
---|---|
symbol | BTCUSDT |
side | SELL |
type | LIMIT |
timeInForce | GTC |
quantity | 1 |
price | 0.2 |
recvWindow | 5000 |
timestamp | 1668481559918 |
有列出参数的签名 payload:
symbol=BTCUSDT&side=SELL&type=LIMIT&timeInForce=GTC&quantity=1&price=0.2×tamp=1668481559918&recvWindow=5000
第1步: Payload
将参数列表排列成一个 string。 用 &
分隔每个参数。对于上述参数,签名 payload 如右所示。
第2步: 计算签名
2.1 - 将签名有效负载编码为 ASCII 数据。
第2.2步
$ echo -n 'symbol=BTCUSDT&side=SELL&type=LIMIT&timeInForce=GTC&quantity=1&price=0.2×tamp=1668481559918&recvWindow=5000' | openssl dgst -sha256 -sign ./test-prv-key.pem
2.2 - 使用带有 SHA-256 hash 函数的 RSASSA-PKCS1-v1_5 算法对 payload 进行签名。
第2.3步
$ echo -n 'symbol=BTCUSDT&side=SELL&type=LIMIT&timeInForce=GTC&quantity=1&price=0.2×tamp=1668481559918&recvWindow=5000' | openssl dgst -sha256 -sign ./test-prv-key.pem | openssl enc -base64 -A
HZ8HOjiJ1s/igS9JA+n7+7Ti/ihtkRF5BIWcPIEluJP6tlbFM/Bf44LfZka/iemtahZAZzcO9TnI5uaXh3++lrqtNonCwp6/245UFWkiW1elpgtVAmJPbogcAv6rSlokztAfWk296ZJXzRDYAtzGH0gq7CgSJKfH+XxaCmR0WcvlKjNQnp12/eKXJYO4tDap8UCBLuyxDnR7oJKLHQHJLP0r0EAVOOSIbrFang/1WOq+Jaq4Efc4XpnTgnwlBbWTmhWDR1pvS9iVEzcSYLHT/fNnMRxFc7u+j3qI//5yuGuu14KR0MuQKKCSpViieD+fIti46sxPTsjSemoUKp0oXA==
2.3 - 将输出编码为 base64 string。
第2.4步
HZ8HOjiJ1s%2FigS9JA%2Bn7%2B7Ti%2FihtkRF5BIWcPIEluJP6tlbFM%2FBf44LfZka%2FiemtahZAZzcO9TnI5uaXh3%2B%2BlrqtNonCwp6%2F245UFWkiW1elpgtVAmJPbogcAv6rSlokztAfWk296ZJXzRDYAtzGH0gq7CgSJKfH%2BXxaCmR0WcvlKjNQnp12%2FeKXJYO4tDap8UCBLuyxDnR7oJKLHQHJLP0r0EAVOOSIbrFang%2F1WOq%2BJaq4Efc4XpnTgnwlBbWTmhWDR1pvS9iVEzcSYLHT%2FfNnMRxFc7u%2Bj3qI%2F%2F5yuGuu14KR0MuQKKCSpViieD%2BfIti46sxPTsjSemoUKp0oXA%3D%3D
2.4 - 由于签名可能包含 /
和 =
,这可能会导致发送请求时出现问题。 所以签名必须是 URL 编码的。
第2.5步
curl -H "X-MBX-APIKEY: CAvIjXy3F44yW6Pou5k8Dy1swsYDWJZLeoK2r8G4cFDnE9nosRppc2eKc1T8TRTQ" -X POST 'https://api.binance.com/api/v3/order?symbol=BTCUSDT&side=SELL&type=LIMIT&timeInForce=GTC&quantity=1&price=0.2×tamp=1668481559918&recvWindow=5000&signature=HZ8HOjiJ1s%2FigS9JA%2Bn7%2B7Ti%2FihtkRF5BIWcPIEluJP6tlbFM%2FBf44LfZka%2FiemtahZAZzcO9TnI5uaXh3%2B%2BlrqtNonCwp6%2F245UFWkiW1elpgtVAmJPbogcAv6rSlokztAfWk296ZJXzRDYAtzGH0gq7CgSJKfH%2BXxaCmR0WcvlKjNQnp12%2FeKXJYO4tDap8UCBLuyxDnR7oJKLHQHJLP0r0EAVOOSIbrFang%2F1WOq%2BJaq4Efc4XpnTgnwlBbWTmhWDR1pvS9iVEzcSYLHT%2FfNnMRxFc7u%2Bj3qI%2F%2F5yuGuu14KR0MuQKKCSpViieD%2BfIti46sxPTsjSemoUKp0oXA%3D%3D'
2.5 - curl 命令
Bash 脚本
#!/usr/bin/env bash
# 设置身份验证:
API_KEY="替换成您的 API Key"
PRIVATE_KEY_PATH="test-prv-key.pem"
# 设置您的请求:
API_METHOD="POST"
API_CALL="api/v3/order"
API_PARAMS="symbol=BTCUSDT&side=SELL&type=LIMIT&timeInForce=GTC&quantity=1&price=0.2"
# 计算签名:
timestamp=$(date +%s000)
api_params_with_timestamp="$API_PARAMS×tamp=$timestamp"
signature=$(echo -n "$api_params_with_timestamp" \
| openssl dgst -sha256 -sign "$PRIVATE_KEY_PATH" \
| openssl enc -base64 -A)
# 发送请求:
curl -H "X-MBX-APIKEY: $API_KEY" -X "$API_METHOD" \
"https://api.binance.com/$API_CALL?$api_params_with_timestamp" \
--data-urlencode "signature=$signature"
右边有示例 Bash 脚本执行上述类似的步骤.
POST /api/v3/order 的示例 - Ed25519 Keys
参数 | 取值 |
---|---|
symbol | BTCUSDT |
side | SELL |
type | LIMIT |
timeInForce | GTC |
quantity | 1 |
price | 0.2 |
timestamp | 1668481559918 |
Python 脚本
#!/usr/bin/env python3
import base64
import requests
import time
from cryptography.hazmat.primitives.serialization import load_pem_private_key
# 设置身份验证:
API_KEY='替换成您的 API Key'
PRIVATE_KEY_PATH='test-prv-key.pem'
# 加载 private key。
# 在这个例子中,private key 没有加密,但我们建议使用强密码以提高安全性。
with open(PRIVATE_KEY_PATH, 'rb') as f:
private_key = load_pem_private_key(data=f.read(), password=None)
# 设置请求参数:
params = {
'symbol': 'BTCUSDT',
'side': 'SELL',
'type': 'LIMIT',
'timeInForce': 'GTC',
'quantity': '1.0000000',
'price': '0.20',
}
# 参数中加时间戳:
timestamp = int(time.time() * 1000) # 以毫秒为单位的 UNIX 时间戳
params['timestamp'] = timestamp
# 参数中加签名:
payload = '&'.join([f'{param}={value}' for param, value in params.items()])
signature = base64.b64encode(private_key.sign(payload.encode('ASCII')))
params['signature'] = signature
# 发送请求:
headers = {
'X-MBX-APIKEY': API_KEY,
}
response = requests.post(
'https://api.binance.com/api/v3/order',
headers=headers,
data=params,
)
print(response.json())
右边有 Python 脚本来示例如何使用 Ed25519 key 签名。
公开 API 参数
术语
这里的术语适用于全部文档,建议特别是新手熟读,也便于理解。
base asset
指一个交易对的交易对象,即写在靠前部分的资产名, 比如BTCUSDT
,BTC
是base asset
。quote asset
指一个交易对的定价资产,即写在靠后部分的资产名, 比如BTCUSDT
,USDT
是quote asset
。
枚举定义
交易对状态 (状态 status):
PRE_TRADING
交易前TRADING
交易中POST_TRADING
交易后END_OF_DAY
HALT
AUCTION_MATCH
BREAK
交易对类型:
SPOT
现货MARGIN
杠杆TRD_GRP_002
交易组 002TRD_GRP_003
交易组 003TRD_GRP_004
交易组 004TRD_GRP_005
交易组 005TRD_GRP_006
交易组 006TRD_GRP_007
交易组 007TRD_GRP_008
交易组 008TRD_GRP_009
交易组 009TRD_GRP_010
交易组 010TRD_GRP_011
交易组 011TRD_GRP_012
交易组 012TRD_GRP_013
交易组 013TRD_GRP_014
交易组 014TRD_GRP_015
交易组 015TRD_GRP_016
交易组 016TRD_GRP_017
交易组 017TRD_GRP_018
交易组 018TRD_GRP_019
交易组 019TRD_GRP_020
交易组 020TRD_GRP_021
交易组 021TRD_GRP_022
交易组 022TRD_GRP_023
交易组 023TRD_GRP_024
交易组 024TRD_GRP_025
交易组 025
订单状态 (状态 status):
状态 | 描述 |
---|---|
NEW |
订单被交易引擎接 |
PARTIALLY_FILLED |
部分订单被成交 |
FILLED |
订单完全成交 |
CANCELED |
用户撤销了订单 |
PENDING_CANCEL |
撤销中(目前并未使用) |
REJECTED |
订单没有被交易引擎接受,也没被处理 |
EXPIRED |
订单被交易引擎取消,比如: LIMIT FOK 订单没有成交 市价单没有完全成交 强平期间被取消的订单 交易所维护期间被取消的订单 |
EXPIRED_IN_MATCH |
表示订单由于 STP 触发而过期 (e.g. 带有 EXPIRE_TAKER 的订单与订单簿上属于同账户或同 tradeGroupId 的订单撮合) |
订单列表状态 (状态类型集 listStatusType):
状态 | 描述 |
---|---|
RESPONSE |
当ListStatus响应失败的操作时使用。 (订单列表完成或取消订单列表) |
EXEC_STARTED |
当订单列表已经下单或者订单列表有更新时。 |
ALL_DONE |
当订单列表执行结束或者不在激活状态。。 |
订单列表的订单状态 (订单状态集 listOrderStatus):
状态 | 描述 |
---|---|
EXECUTING |
当已经下单或者订单有更新时 |
ALL_DONE |
当订单执行结束或者不在激活状态 |
REJECT |
当订单状态响应失败(订单完成或取消订单) |
指定订单的类型
OCO
选择性委托订单OTO
OTO订单
分配类型 (allocationtype, type):
SOR
智能订单路由
工作平台:
EXCHANGE
- 常规交易SOR
- 智能订单路由
订单类型 (orderTypes, type):
LIMIT
限价单MARKET
市价单STOP_LOSS
止损单STOP_LOSS_LIMIT
限价止损单TAKE_PROFIT
止盈单TAKE_PROFIT_LIMIT
限价止盈单LIMIT_MAKER
限价只挂单
订单返回类型 (newOrderRespType):
ACK
RESULT
FULL
订单方向 (方向 side):
BUY
买入SELL
卖出
有效方式 (timeInForce):
这里定义了订单多久能够失效
状态 | 描述 |
---|---|
GTC |
成交为止 订单会一直有效,直到被成交或者取消。 |
IOC |
无法立即成交的部分就撤销 订单在失效前会尽量多的成交。 |
FOK |
无法全部立即成交就撤销 如果无法全部成交,订单会失效。 |
K线间隔:
s -> 秒; m -> 分钟; h -> 小时; d -> 天; w -> 周; M -> 月
- 1s
- 1m
- 3m
- 5m
- 15m
- 30m
- 1h
- 2h
- 4h
- 6h
- 8h
- 12h
- 1d
- 3d
- 1w
- 1M
限制种类 (rateLimitType):
REQUEST_WEIGHT
{
"rateLimitType": "REQUEST_WEIGHT",
"interval": "MINUTE",
"intervalNum": 1,
"limit": 6000
}
ORDERS
{
"rateLimitType": "ORDERS",
"interval": "SECOND",
"intervalNum": 10,
"limit": 100
},
{
"rateLimitType": "ORDERS",
"interval": "DAY",
"intervalNum": 1,
"limit": 200000
}
RAW_REQUESTS
{
"rateLimitType": "RAW_REQUESTS",
"interval": "MINUTE",
"intervalNum": 5,
"limit": 5000
}
REQUEST_WEIGHT 单位时间请求权重之和上限
ORDERS 单位时间下单次数限制
RAW_REQUESTS 单位时间请求次数上限
限制间隔 (interval)
- SECOND 秒
- MINUTE 分
- DAY 天
STP 模式:
NONE
EXPIRE_MAKER
EXPIRE_TAKER
EXPIRE_BOTH
过滤器
过滤器,即Filter,定义了一系列交易规则。 共有两类,分别是针对交易对的过滤器symbol filters
,和针对整个交易所的过滤器 exchange filters
交易对过滤器
PRICE_FILTER 价格过滤器
/exchangeInfo 响应中的格式:
{
"filterType": "PRICE_FILTER",
"minPrice": "0.00000100",
"maxPrice": "100000.00000000",
"tickSize": "0.00000100"
}
价格过滤器
用于检测订单中 price
参数的合法性。包含以下三个部分:
minPrice
定义了price
/stopPrice
允许的最小值。maxPrice
定义了price
/stopPrice
允许的最大值。tickSize
定义了price
/stopPrice
的步进间隔,即price必须等于minPrice+(tickSize的整数倍)
以上每一项均可为0,为0时代表这一项不再做限制。
逻辑伪代码如下:
price
>=minPrice
price
<=maxPrice
price
%tickSize
== 0
PERCENT_PRICE 价格振幅过滤器
/exchangeInfo 响应中的格式:
{
"filterType": "PERCENT_PRICE",
"multiplierUp": "5",
"multiplierDown": "0.2",
"avgPriceMins": 5
}
PERCENT_PRICE
过滤器基于先前交易的平均值来定义价格的有效范围。
avgPriceMins
是计算平均价格的分钟数。 0表示使用最后的价格。
为了通过"价格百分比","价格"必须符合以下条件:
price
<=weightedAveragePrice
*multiplierUp
price
> =weightedAveragePrice
*multiplierDown
PERCENT_PRICE_BY_SIDE 基于买卖方向的价格振幅过滤器
ExchangeInfo format:
{
"filterType": "PERCENT_PRICE_BY_SIDE",
"bidMultiplierUp": "1.2",
"bidMultiplierDown": "0.2",
"askMultiplierUp": "5",
"askMultiplierDown": "0.8",
"avgPriceMins": 1
}
PERCENT_PRICE_BY_SIDE
过滤器定义了基于交易对平均价格的合法价格范围. 取决于BUY
或者SELL
, 价格范围可能有所不同.
avgPriceMins
是用来计算平均价格的分钟数. 0 表示用最新价(last price).
买向订单需要满足:
Order price
<=weightedAveragePrice
*bidMultiplierUp
Order price
>=weightedAveragePrice
*bidMultiplierDown
卖向订单需要满足:
Order Price
<=weightedAveragePrice
*askMultiplierUp
Order Price
>=weightedAveragePrice
*askMultiplierDown
LOT_SIZE 订单尺寸
/exchangeInfo 响应中的格式:
{
"filterType": "LOT_SIZE",
"minQty": "0.00100000",
"maxQty": "100000.00000000",
"stepSize": "0.00100000"
}
Lots是拍卖术语,LOT_SIZE
过滤器对订单中的 quantity
也就是数量参数进行合法性检查。包含三个部分:
minQty
表示quantity
/icebergQty
允许的最小值。maxQty
表示quantity
/icebergQty
允许的最大值。stepSize
表示quantity
/icebergQty
允许的步进值。
逻辑伪代码如下:
quantity
>=minQty
quantity
<=maxQty
quantity
%stepSize
== 0
MIN_NOTIONAL 最小名义价值(成交额)
/exchangeInfo 响应中的格式:
{
"filterType": "MIN_NOTIONAL",
"minNotional": "0.00100000",
"applyToMarket": true,
"avgPriceMins": 5
}
MIN_NOTIONAL过滤器定义了交易对订单所允许的最小名义价值(成交额)。
订单的名义价值是价格
*数量
。
如果是高级订单(比如止盈止损订单STOP_LOSS_LIMIT
),名义价值会按照stopPrice
* quantity
来计算。
如果是冰山订单,名义价值会按照price
* icebergQty
来计算。
applyToMarket
确定 MIN_NOTIONAL
过滤器是否也将应用于MARKET
订单。
由于MARKET
订单没有价格,因此会在最后avgPriceMins
分钟内使用平均价格。
avgPriceMins
是计算平均价格的分钟数。 0表示使用最后的价格。
NOTIONAL 名义价值
/exchangeInfo 响应中的格式:
{
"filterType": "NOTIONAL",
"minNotional": "10.00000000",
"applyMinToMarket": false,
"maxNotional": "10000.00000000",
"applyMaxToMarket": false,
"avgPriceMins": 5
}
名义价值过滤器(NOTIONAL
)定义了订单在一个交易对上可以下单的名义价值区间.
applyMinToMarket
定义了 minNotional
是否适用于市价单(MARKET
)
applyMaxToMarket
定义了 maxNotional
是否适用于市价单(MARKET
).
要通过此过滤器, 订单的名义价值 (单价 x 数量, price * quantity
) 需要满足如下条件:
price * quantity
<=maxNotional
price * quantity
>=minNotional
对于市价单(MARKET
), 用于计算的价格采用的是在 avgPriceMins
定义的时间之内的平均价.
如果 avgPriceMins
为 0, 则采用最新的价格.
ICEBERG_PARTS 冰山订单拆分数
/exchangeInfo 响应中的格式:
{
"filterType": "ICEBERG_PARTS",
"limit": 10
}
ICEBERG_PARTS
代表冰山订单最多可以拆分成多少个小订单。
计算方法为 向上取整(qty / icebergQty)
。
MARKET_LOT_SIZE 市价订单尺寸
**/exchangeInfo 响应中的格式:*
{
"filterType": "MARKET_LOT_SIZE",
"minQty": "0.00100000",
"maxQty": "100000.00000000",
"stepSize": "0.00100000"
}
MARKET_LOT_SIZE
过滤器为交易对上的MARKET
订单定义了数量
(即拍卖中的"手数")规则。 共有3部分:
minQty
定义了允许的最小quantity
。maxQty
定义了允许的最大数量。stepSize
定义了可以增加/减少数量的间隔。
为了通过market lot size
,quantity
必须满足以下条件:
quantity
>=minQty
quantity
<=maxQty
quantity
%stepSize
== 0
MAX_NUM_ORDERS 最多订单数
/exchangeInfo 响应中的格式:
{
"filterType": "MAX_NUM_ORDERS",
"maxNumOrders": 25
}
定义了某个交易对最多允许的挂单数量(不包括已关闭的订单)
普通订单与条件订单均计算在内
MAX_NUM_ALGO_ORDERS 最多条件单数
/exchangeInfo 响应中的格式:
{
"filterType": "MAX_NUM_ALGO_ORDERS",
"maxNumAlgoOrders": 5
}
MAX_NUM_ALGO_ORDERS
过滤器定义允许账户在交易对上开设的"algo"订单的最大数量。
"Algo"订单是STOP_LOSS
,STOP_LOSS_LIMIT
,TAKE_PROFIT
和TAKE_PROFIT_LIMIT
止盈止损单。
MAX_NUM_ICEBERG_ORDERS 最多冰山单数
MAX_NUM_ICEBERG_ORDERS
过滤器定义了允许在交易对上开设账户的ICEBERG
订单的最大数量。
ICEBERG
订单是icebergQty大于0的任何订单。.
/exchangeInfo 响应中的格式:
{
"filterType": "MAX_NUM_ICEBERG_ORDERS",
"maxNumIcebergOrders": 5
}
MAX_POSITION 过滤器
这个过滤器定义账户允许的基于base asset
的最大仓位。一个用户的仓位可以定义为如下资产的总和:
1. base asset
的可用余额
1. base asset
的锁定余额
1. 所有处于open的买单的数量总和
如果用户的仓位大于最大的允许仓位,买单会被拒绝。
如果一个订单的数量(quantity
) 可能导致持有仓位溢出, 会触发过滤器 MAX_POSITION
.
/exchangeInfo 响应中的格式:
{
"filterType": "MAX_POSITION",
"maxPosition": "10.00000000"
}
TRAILING_DELTA
ExchangeInfo format:
{
"filterType": "TRAILING_DELTA",
"minTrailingAboveDelta": 10,
"maxTrailingAboveDelta": 2000,
"minTrailingBelowDelta": 10,
"maxTrailingBelowDelta": 2000
}
此过滤器定义了参数trailingDelta
的最大和最小值.
下追踪止损订单, 需要满足条件:
对于 STOP_LOSS BUY
, STOP_LOSS_LIMIT_BUY
, TAKE_PROFIT SELL
和 TAKE_PROFIT_LIMIT SELL
订单:
trailingDelta
>=minTrailingAboveDelta
trailingDelta
<=maxTrailingAboveDelta
对于 STOP_LOSS SELL
, STOP_LOSS_LIMIT SELL
, TAKE_PROFIT BUY
, 和 TAKE_PROFIT_LIMIT BUY
订单:
trailingDelta
>=minTrailingBelowDelta
trailingDelta
<=maxTrailingBelowDelta
交易所级别过滤器
EXCHANGE_MAX_NUM_ORDERS 最多订单数
/exchangeInfo 响应中的格式:
{
"filterType": "EXCHANGE_MAX_NUM_ORDERS",
"maxNumOrders": 1000
}
EXCHANGE_MAX_NUM_ORDERS
过滤器定义了允许在交易对上开设账户的最大订单数。
请注意,此过滤器同时计算"algo"订单和常规订单。
EXCHANGE_MAX_ALGO_ORDERS 交易最大ALGO订单数
/exchangeInfo 响应中的格式:
{
"filterType": "EXCHANGE_MAX_ALGO_ORDERS",
"maxNumAlgoOrders": 200
}
EXCHANGE_MAX_ALGO_ORDERS
过滤器定义了允许在交易上开设账户的"algo"订单的最大数量。
"Algo"订单是STOP_LOSS
,STOP_LOSS_LIMIT
,TAKE_PROFIT
和TAKE_PROFIT_LIMIT
订单。
EXCHANGE_MAX_NUM_ICEBERG_ORDERS 冰山订单的最大订单数
此过滤器定义了允许账号持有的最大冰山订单数量.
/exchangeInfo 响应中的格式:
{
"filterType": "EXCHANGE_MAX_NUM_ICEBERG_ORDERS",
"maxNumIcebergOrders": 10000
}
钱包接口
系统状态(System)
响应
{
"status": 0, // 0: 正常,1:系统维护
"msg": "normal" // "normal", "system_maintenance"
}
GET /sapi/v1/system/status
获取系统状态。
权重(IP): 1
获取所有币信息 (USER_DATA)
获取针对用户的所有(Binance支持充提操作的)币种信息。
响应
[
{
"coin": "BTC",
"depositAllEnable": true,
"free": "0.08074558",
"freeze": "0.00000000",
"ipoable": "0.00000000",
"ipoing": "0.00000000",
"isLegalMoney": false,
"locked": "0.00000000",
"name": "Bitcoin",
"networkList": [
{
"addressRegex": "^(bnb1)[0-9a-z]{38}$",
"coin": "BTC",
"depositDesc": "Wallet Maintenance, Deposit Suspended", // 仅在充值关闭时返回
"depositEnable": false,
"isDefault": false,
"memoRegex": "^[0-9A-Za-z\\-_]{1,120}$",
"minConfirm": 1, // 上账所需的最小确认数
"name": "BEP2",
"network": "BNB",
"specialTips": "Both a MEMO and an Address are required to successfully deposit your BEP2-BTCB tokens to Binance.",
"unLockConfirm": 0, // 解锁需要的确认数
"withdrawDesc": "Wallet Maintenance, Withdrawal Suspended", // 仅在提现关闭时返回
"withdrawEnable": false,
"withdrawFee": "0.00000220",
"withdrawIntegerMultiple": "0.00000001",
"withdrawMax": "9999999999.99999999",
"withdrawMin": "0.00000440",
"sameAddress": true, // 是否需要memo
"estimatedArrivalTime": 25,
"busy": false,
"contractAddressUrl": "https://bscscan.com/token/",
"contractAddress": "0x7130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c"
},
{
"addressRegex": "^[13][a-km-zA-HJ-NP-Z1-9]{25,34}$|^(bc1)[0-9A-Za-z]{39,59}$",
"coin": "BTC",
"depositEnable": true,
"isDefault": true,
"memoRegex": "",
"minConfirm": 1, // 上账所需的最小确认数
"name": "BTC",
"network": "BTC",
"specialTips": "",
"unLockConfirm": 0, // 解锁需要的确认数
"withdrawEnable": true,
"withdrawFee": "0.00050000",
"withdrawIntegerMultiple": "0.00000001",
"withdrawMax": "750",
"withdrawMin": "0.00100000",
"sameAddress": false,
"estimatedArrivalTime": 25,
"busy": false,
"contractAddressUrl": "",
"contractAddress": ""
}
],
"storage": "0.00000000",
"trading": true,
"withdrawAllEnable": true,
"withdrawing": "0.00000000"
}
]
GET /sapi/v1/capital/config/getall
权重(IP): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recvWindow | LONG | NO | |
timestamp | LONG | YES |
查询每日资产快照 (USER_DATA)
响应
{
"code":200, // 200表示返回正确,否则即为错误码
"msg":"", // 与错误码对应的报错信息
"snapshotVos":[
{
"data":{
"balances":[
{
"asset":"BTC",
"free":"0.09905021",
"locked":"0.00000000"
},
{
"asset":"USDT",
"free":"1.89109409",
"locked":"0.00000000"
}
],
"totalAssetOfBtc":"0.09942700"
},
"type":"spot",
"updateTime":1576281599000
}
]
}
或
{
"code":200, // 200表示返回正确,否则即为错误码
"msg":"", // 与错误码对应的报错信息
"snapshotVos":[
{
"data":{
"marginLevel":"2748.02909813",
"totalAssetOfBtc":"0.00274803",
"totalLiabilityOfBtc":"0.00000100",
"totalNetAssetOfBtc":"0.00274750",
"userAssets":[
{
"asset":"XRP",
"borrowed":"0.00000000",
"free":"1.00000000",
"interest":"0.00000000",
"locked":"0.00000000",
"netAsset":"1.00000000"
}
]
},
"type":"margin",
"updateTime":1576281599000
}
]
}
或
{
"code":200, // 200表示返回正确,否则即为错误码
"msg":"", // 与错误码对应的报错信息
"snapshotVos":[
{
"data":{
"assets":[
{
"asset":"USDT",
"marginBalance":"118.99782335", // 不会实时更新,可以忽略
"walletBalance":"120.23811389"
}
],
"position":[
{
"entryPrice":"7130.41000000",
"markPrice":"7257.66239673",
"positionAmt":"0.01000000",
"symbol":"BTCUSDT",
"unRealizedProfit":"1.24029054" // 只显示开仓当时的未实现盈亏,不会实时更新,可以忽略
}
]
},
"type":"futures",
"updateTime":1576281599000
}
]
}
GET /sapi/v1/accountSnapshot
权重(IP): 2400
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
type | STRING | YES | "SPOT", "MARGIN", "FUTURES" |
startTime | LONG | NO | |
endTime | LONG | NO | |
limit | INT | NO | min 7, max 30, default 7 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 查询时间范围最大不得超过30天
- 仅支持查询最近 1 个月数据
- 若startTime和endTime没传,则默认返回最近7天数据
关闭站内划转 (USER_DATA)
响应
{}
POST /sapi/v1/account/disableFastWithdrawSwitch
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recvWindow | LONG | NO | |
timestamp | LONG | YES |
注意:
此请求会关闭您账户的站内快速划转。您需要为api-key开通"trade"权限才能发送此请求。
开启站内划转 (USER_DATA)
响应
{}
POST /sapi/v1/account/enableFastWithdrawSwitch
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 此请求会开启您账户的站内快速划转。您需要为api-key开通"trade"权限才能发送此请求。
- 开启以后, 如果收款方为币安账户地址,转账费用为0, 速度快, 不需要提交上链请求。
提币 (USER_DATA)
响应
{
"id":"7213fea8e94b4a5593d507237e5a555b"
}
POST /sapi/v1/capital/withdraw/apply
Submit a withdraw request.
权重(UID): 600
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
coin | STRING | YES | |
withdrawOrderId | STRING | NO | 自定义提币ID |
network | STRING | NO | 提币网络 |
address | STRING | YES | 提币地址 |
addressTag | STRING | NO | 某些币种例如 XRP,XMR 允许填写次级地址标签 |
amount | DECIMAL | YES | 数量 |
transactionFeeFlag | BOOLEAN | NO | 当站内转账时免手续费, true : 手续费归资金转入方; false : 手续费归资金转出方; . 默认 false . |
name | STRING | NO | 地址的备注,填写该参数后会加入该币种的提现地址簿。地址簿上限为200,超出后会造成提现失败。地址中的空格需要encode成%20 |
walletType | INTEGER | NO | 表示出金使用的钱包,0为现货钱包,1为资金钱包。默认walletType为"充币账户"是您设置在钱包->现货账户或资金账户->充值。 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 如果不发送
network
, 将按该币种默认网络返回结果; - 可以在接口
Get /sapi/v1/capital/config/getall (HMAC SHA256)
的返回值中某币种的networkList
获取network
网络字段和isDefault
是否为默认网络。
获取充值历史(支持多网络) (USER_DATA)
响应
[
{
"id": "769800519366885376",
"amount": "0.001",
"coin": "BNB",
"network": "BNB",
"status": 0,
"address": "bnb136ns6lfw4zs5hg4n85vdthaad7hq5m4gtkgf23",
"addressTag": "101764890",
"txId": "98A3EA560C6B3336D348B6C83F0F95ECE4F1F5919E94BD006E5BF3BF264FACFC",
"insertTime": 1661493146000,
"transferType": 0,
"confirmTimes": "1/1",
"unlockConfirm": 0,
"walletType": 0
},
{
"id": "769754833590042625",
"amount":"0.50000000",
"coin":"IOTA",
"network":"IOTA",
"status":1,
"address":"SIZ9VLMHWATXKV99LH99CIGFJFUMLEHGWVZVNNZXRJJVWBPHYWPPBOSDORZ9EQSHCZAMPVAPGFYQAUUV9DROOXJLNW",
"addressTag":"",
"txId":"ESBFVQUTPIWQNJSPXFNHNYHSQNTGKRVKPRABQWTAXCDWOAKDKYWPTVG9BGXNVNKTLEJGESAVXIKIZ9999",
"insertTime":1599620082000,
"transferType":0,
"confirmTimes": "1/1",
"unlockConfirm": 0,
"walletType": 0
}
]
GET /sapi/v1/capital/deposit/hisrec
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
includeSource | Boolean | NO | 默认 false ,如果为true 时会返回sourceAddress 字段 |
coin | STRING | NO | |
status | INT | NO | 0(0:pending,6: credited but cannot withdraw,7=Wrong Deposit,8=Waiting User confirm,1:success) |
startTime | LONG | NO | 默认当前时间90天前的时间戳 |
endTime | LONG | NO | 默认当前时间戳 |
offset | INT | NO | 默认:0 |
limit | INT | NO | 默认:1000,最大1000 |
recvWindow | LONG | NO | |
timestamp | LONG | YES | |
txId | STRING | NO |
- 请注意
startTime
与endTime
的默认时间戳,保证请求时间间隔不超过90天. - 同时提交
startTime
与endTime
间隔不得超过90天. - 请注意,由于网络特定的特性,返回的源地址可能不准确。 如果找到多个源地址,则仅返回第一个地址
获取提币历史 (支持多网络) (USER_DATA)
响应
[
{
"id": "b6ae22b3aa844210a7041aee7589627c", // 该笔提现在币安的id
"amount": "8.91000000", // 提现转出金额
"transactionFee": "0.004", // 手续费
"coin": "USDT",
"status": 6,
"address": "0x94df8b352de7f46f64b01d3666bf6e936e44ce60",
"txId": "0xb5ef8c13b968a406cc62a93a8bd80f9e9a906ef1b3fcf20a2e48573c17659268" // 提现交易id
"applyTime": "2019-10-12 11:12:02", // UTC 时间
"network": "ETH",
"transferType": 0 // 1: 站内转账, 0: 站外转账
"withdrawOrderId": "WITHDRAWtest123", // 自定义ID, 如果没有则不返回该字段
"info": "The address is not valid. Please confirm with the recipient", // 提币失败原因
"confirmNo":3, // 提现确认数
"walletType": 1, //1: 资金钱包 0:现货钱包
"txKey": "",
"completeTime": "2023-03-23 16:52:41" // 提现完成,成功下账时间(UTC)
},
{
"id": "156ec387f49b41df8724fa744fa82719",
"amount": "0.00150000",
"transactionFee": "0.004",
"coin": "BTC",
"status": 6,
"address": "1FZdVHtiBqMrWdjPyRPULCUceZPJ2WLCsB",
"txId": "60fd9007ebfddc753455f95fafa808c4302c836e4d1eebc5a132c36c1d8ac354"
"applyTime": "2019-09-24 12:43:45",
"network": "BTC",
"transferType": 0,
"info": "",
"confirmNo": 2,
"walletType": 1,
"txKey": "",
"completeTime": "2023-03-23 16:52:41"
}
]
GET /sapi/v1/capital/withdraw/history
权重(UID): 18000
- 本接口特别采用每秒UID速率限制,用户的总秒级 UID 速率限制为180000/秒。从该接口收到的响应包含key X-SAPI-USED-UID-WEIGHT-1S,该key定义了当前 UID 使用的权重
请求限制: 每秒10次
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
coin | STRING | NO | |
withdrawOrderId | STRING | NO | |
status | INT | NO | 0(0:已发送确认Email,1:已被用户取消 2:等待确认 3:被拒绝 4:处理中 5:提现交易失败 6 提现完成) |
offset | INT | NO | |
limit | INT | NO | 默认:1000, 最大:1000 |
startTime | LONG | NO | 默认当前时间90天前的时间戳 |
endTime | LONG | NO | 默认当前时间戳 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 支持多网络提币前的历史记录可能不会返回
network
字段. - 请注意
startTime
与endTime
的默认时间戳,保证请求时间间隔不得超过90天. - 同时提交
startTime
与endTime
间隔不得超过90天. - 若传了
withdrawOrderId
,则请求的startTime
与endTime
的时间间隔不得超过7天. - 若传了
withdrawOrderId
,没传startTime
与endTime
,则默认返回最近7天数据.
获取充值地址 (支持多网络) (USER_DATA)
响应
{
"address": "1HPn8Rx2y6nNSfagQBKy27GB99Vbzg89wv",
"coin": "BTC",
"tag": "",
"url": "https://btc.com/1HPn8Rx2y6nNSfagQBKy27GB99Vbzg89wv"
}
GET /sapi/v1/capital/deposit/address
权重(IP): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
coin | STRING | YES | |
network | STRING | NO | |
amount | DECIMAL | NO | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 如果不发送
network
, 将按该币种默认网络返回结果; - 可以在接口
Get /sapi/v1/capital/config/getall (HMAC SHA256)
的返回值中某币种的networkList
获取network
网络字段和isDefault
是否为默认网络。 - 使用LIGHTNING网络时,
amount
必须传
账户状态 (USER_DATA)
响应
{
"data": "Normal"
}
GET /sapi/v1/account/status
获取账户状态详情。
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recvWindow | LONG | NO | |
timestamp | LONG | YES |
账户API交易状态(USER_DATA)
响应
{
"data": { // 账户API交易状态详情
"isLocked": false, // API交易功能是否被锁
"plannedRecoverTime": 0, // API交易功能被锁情况下的预计恢复时间
"triggerCondition": {
"GCR": 150, // Number of GTC orders
"IFER": 150, // Number of FOK/IOC orders
"UFR": 300 // Number of orders
},
"updateTime": 1547630471725
}
}
GET /sapi/v1/account/apiTradingStatus
获取 api 账户交易状态详情。
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recvWindow | LONG | NO | |
timestamp | LONG | YES |
小额资产转换BNB历史 (USER_DATA)
响应
{
"total": 8, //共计发生过的转换笔数
"userAssetDribblets": [
{
"operateTime": 1615985535000,
"totalTransferedAmount": "0.00132256", //本次转换所得BNB
"totalServiceChargeAmount": "0.00002699", //本次转换手续费(BNB)
"transId": 45178372831,
"userAssetDribbletDetails": [ //本次转换的细节
{
"transId": 4359321,
"serviceChargeAmount": "0.000009",
"amount": "0.0009",
"operateTime": 1615985535000,
"transferedAmount": "0.000441",
"fromAsset": "USDT"
},
{
"transId": 4359321,
"serviceChargeAmount": "0.00001799",
"amount": "0.0009",
"operateTime": 1615985535000,
"transferedAmount": "0.00088156",
"fromAsset": "ETH"
}
]
},
{
"operateTime":1616203180000,
"totalTransferedAmount": "0.00058795",
"totalServiceChargeAmount": "0.000012",
"transId": 4357015,
"userAssetDribbletDetails": [
{
"transId": 4357015,
"serviceChargeAmount": "0.00001"
"amount": "0.001",
"operateTime": 1616203180000,
"transferedAmount": "0.00049",
"fromAsset": "USDT"
},
{
"transId": 4357015,
"serviceChargeAmount": "0.000002"
"amount": "0.0001",
"operateTime": 1616203180000,
"transferedAmount": "0.00009795",
"fromAsset": "ETH"
}
]
}
]
}
}
GET /sapi/v1/asset/dribblet
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
accountType | STRING | NO | SPOT 或MARGIN ,默认SPOT |
startTime | LONG | NO | |
endTime | LONG | NO | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 只返回最近100条记录
- 只返回 2020/12/01 之后记录
获取可以转换成BNB的小额资产 (USER_DATA)
响应
{
"details": [
{
"asset": "ADA", //资产名
"assetFullName": "ADA", //资产全称
"amountFree": "6.21", //可转换数量
"toBTC": "0.00016848", //等值BTC
"toBNB": "0.01777302", //可转换BNB(未扣除手续费)
"toBNBOffExchange": "0.01741756", //可转换BNB(已扣除手续费)
"exchange": "0.00035546" //手续费
}
],
"totalTransferBtc": "0.00016848",//全部资产等值BTC
"totalTransferBNB": "0.01777302",//总共可以转换的BNB数量
"dribbletPercentage": "0.02" //转换手续费
}
POST /sapi/v1/asset/dust-btc
获取可以转换成 BNB 的小额资产列表.
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
accountType | STRING | NO | SPOT 或MARGIN ,默认SPOT |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
小额资产转换 (USER_DATA)
响应
{
"totalServiceCharge":"0.02102542",
"totalTransfered":"1.05127099",
"transferResult":[
{
"amount":"0.03000000",
"fromAsset":"ETH",
"operateTime":1563368549307,
"serviceChargeAmount":"0.00500000",
"tranId":2970932918,
"transferedAmount":"0.25000000"
},
{
"amount":"0.09000000",
"fromAsset":"LTC",
"operateTime":1563368549404,
"serviceChargeAmount":"0.01548000",
"tranId":2970932918,
"transferedAmount":"0.77400000"
},
{
"amount":"248.61878453",
"fromAsset":"TRX",
"operateTime":1563368549489,
"serviceChargeAmount":"0.00054542",
"tranId":2970932918,
"transferedAmount":"0.02727099"
}
]
}
POST /sapi/v1/asset/dust
把小额资产转换成 BNB.
权重(UID): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
asset | ARRAY | YES | 正在转换的资产。 例如:asset=BTC,USDT |
accountType | STRING | NO | SPOT 或MARGIN ,默认SPOT |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 您需要为API Key开通
允许现货和杠杆交易
权限才能发送此请求
资产利息记录 (USER_DATA)
响应
{
"rows":[
{
"id":1637366104,
"amount":"10.00000000",
"asset":"BHFT",
"divTime":1563189166000,
"enInfo":"BHFT distribution",
"tranId":2968885920
},
{
"id": 1631750237,
"amount":"10.00000000",
"asset":"BHFT",
"divTime":1563189165000,
"enInfo":"BHFT distribution",
"tranId":2968885920
}
],
"total":2
}
GET /sapi/v1/asset/assetDividend
获取资产利息记录。
权重(IP): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
asset | STRING | NO | |
startTime | LONG | NO | |
endTime | LONG | NO | |
limit | INT | NO | Default 20, max 500 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
startTime
与endTime
之间最多只可以相差180天。
上架资产详情 (USER_DATA)
响应
{
"CTR": {
"minWithdrawAmount": "70.00000000", //最小提现数量
"depositStatus": false, //是否可以充值(只有所有网络都关闭充值才为false)
"withdrawFee": 35, // 提现手续费
"withdrawStatus": true, //是否开放提现(只有所有网络都关闭提币才为false)
"depositTip": "Delisted, Deposit Suspended" //暂停充值的原因(如果暂停才有这一项)
},
"SKY": {
"minWithdrawAmount": "0.02000000",
"depositStatus": true,
"withdrawFee": 0.01,
"withdrawStatus": true
}
}
GET /sapi/v1/asset/assetDetail
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
asset | STRING | NO | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 充提币信息,建议查询
GET /sapi/v1/capital/config/getall
获取详情。
交易手续费率查询 (USER_DATA)
响应
[
{
"symbol": "ADABNB",
"makerCommission": "0.001",
"takerCommission": "0.001"
},
{
"symbol": "BNBBTC",
"makerCommission": "0.001",
"takerCommission": "0.001"
}
]
GET /sapi/v1/asset/tradeFee
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | NO | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
用户万向划转 (USER_DATA)
响应:
{
"tranId":13526853623
}
POST /sapi/v1/asset/transfer
您需要开通api key 允许万向划转
权限来调用此接口。
权重(UID)): 900
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
type | ENUM | YES | |
asset | STRING | YES | |
amount | DECIMAL | YES | |
fromSymbol | STRING | NO | |
toSymbol | STRING | NO | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
-
fromSymbol
必须要发送,当类型为 ISOLATEDMARGIN_MARGIN 和 ISOLATEDMARGIN_ISOLATEDMARGIN toSymbol
必须要发送,当类型为 MARGIN_ISOLATEDMARGIN 和 ISOLATEDMARGIN_ISOLATEDMARGIN目前支持的type划转类型:
- MAIN_UMFUTURE 现货钱包转向U本位合约钱包
- MAIN_CMFUTURE 现货钱包转向币本位合约钱包
- MAIN_MARGIN 现货钱包转向杠杆全仓钱包
- UMFUTURE_MAIN U本位合约钱包转向现货钱包
- UMFUTURE_MARGIN U本位合约钱包转向杠杆全仓钱包
- CMFUTURE_MAIN 币本位合约钱包转向现货钱包
- MARGIN_MAIN 杠杆全仓钱包转向现货钱包
- MARGIN_UMFUTURE 杠杆全仓钱包转向U本位合约钱包
- MARGIN_CMFUTURE 杠杆全仓钱包转向币本位合约钱包
- CMFUTURE_MARGIN 币本位合约钱包转向杠杆全仓钱包
- ISOLATEDMARGIN_MARGIN 杠杆逐仓钱包转向杠杆全仓钱包
- MARGIN_ISOLATEDMARGIN 杠杆全仓钱包转向杠杆逐仓钱包
- ISOLATEDMARGIN_ISOLATEDMARGIN 杠杆逐仓钱包转向杠杆逐仓钱包
- MAIN_FUNDING 现货钱包转向资金钱包
- FUNDING_MAIN 资金钱包转向现货钱包
- FUNDING_UMFUTURE 资金钱包转向U本位合约钱包
- UMFUTURE_FUNDING U本位合约钱包转向资金钱包
- MARGIN_FUNDING 杠杆全仓钱包转向资金钱包
- FUNDING_MARGIN 资金钱包转向杠杆全仓钱包
- FUNDING_CMFUTURE 资金钱包转向币本位合约钱包
- CMFUTURE_FUNDING 币本位合约钱包转向资金钱包
- MAIN_OPTION 现货钱包转向期权钱包
- OPTION_MAIN 期权钱包转向现货钱包
- UMFUTURE_OPTION U本位合约钱包转向期权钱包
- OPTION_UMFUTURE 期权钱包转向U本位合约钱包
- MARGIN_OPTION 杠杆全仓钱包转向期权钱包
- OPTION_MARGIN 期权全仓钱包转向杠杆钱包
- FUNDING_OPTION 资金钱包转向期权钱包
- OPTION_FUNDING 期权钱包转向资金钱包
- MAIN_PORTFOLIO_MARGIN 现货钱包转向统一账户钱包
- PORTFOLIO_MARGIN_MAIN 统一账户钱包转向现货钱包
- MAIN_ISOLATED_MARGIN 现货钱包转向逐仓账户钱包
- ISOLATED_MARGIN_MAIN 逐仓钱包转向现货账户钱包
- MAIN_UMFUTURE 现货钱包转向U本位合约钱包
查询用户万向划转历史 (USER_DATA)
响应:
{
"total":2,
"rows":[
{
"asset":"USDT",
"amount":"1",
"type":"MAIN_UMFUTURE"
"status": "CONFIRMED", // status: CONFIRMED / FAILED / PENDING
"tranId": 11415955596,
"timestamp":1544433328000
},
{
"asset":"USDT",
"amount":"2",
"type":"MAIN_UMFUTURE",
"status": "CONFIRMED",
"tranId": 11366865406,
"timestamp":1544433328000
}
]
}
GET /sapi/v1/asset/transfer
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
type | ENUM | YES | |
startTime | LONG | NO | |
endTime | LONG | NO | |
current | INT | NO | 默认 1 |
size | INT | NO | 默认 10, 最大 100 |
fromSymbol | STRING | NO | |
toSymbol | STRING | NO | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
-
fromSymbol
必须要发送,当类型为 ISOLATEDMARGIN_MARGIN 和 ISOLATEDMARGIN_ISOLATEDMARGIN -
toSymbol
必须要发送,当类型为 MARGIN_ISOLATEDMARGIN 和 ISOLATEDMARGIN_ISOLATEDMARGIN - 仅支持查询最近半年(6个月)数据
- 若
startTime
和endTime
没传,则默认返回最近7天数据
资金账户 (USER_DATA)
响应
[
{
"asset": "USDT",
"free": "1", // 可用余额
"locked": "0", // 锁定资金
"freeze": "0", //冻结资金
"withdrawing": "0", // 提币
"btcValuation": "0.00000091" // btc估值
}
]
POST /sapi/v1/asset/get-funding-asset
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
asset | STRING | NO | |
needBtcValuation | STRING | NO | true or false |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 目前仅支持查询以下业务资产:Binance Pay, Binance Card, Binance Gift Card, Stock Token
用户持仓 (USER_DATA)
响应
[
{
"asset": "AVAX",
"free": "1",
"locked": "0",
"freeze": "0",
"withdrawing": "0",
"ipoable": "0",
"btcValuation": "0"
},
{
"asset": "BCH",
"free": "0.9",
"locked": "0",
"freeze": "0",
"withdrawing": "0",
"ipoable": "0",
"btcValuation": "0"
},
{
"asset": "BNB",
"free": "887.47061626",
"locked": "0",
"freeze": "10.52",
"withdrawing": "0.1",
"ipoable": "0",
"btcValuation": "0"
},
{
"asset": "BUSD",
"free": "9999.7",
"locked": "0",
"freeze": "0",
"withdrawing": "0",
"ipoable": "0",
"btcValuation": "0"
},
{
"asset": "SHIB",
"free": "532.32",
"locked": "0",
"freeze": "0",
"withdrawing": "0",
"ipoable": "0",
"btcValuation": "0"
},
{
"asset": "USDT",
"free": "50300000001.44911105",
"locked": "0",
"freeze": "0",
"withdrawing": "0",
"ipoable": "0",
"btcValuation": "0"
},
{
"asset": "WRZ",
"free": "1",
"locked": "0",
"freeze": "0",
"withdrawing": "0",
"ipoable": "0",
"btcValuation": "0"
}
]
POST /sapi/v3/asset/getUserAsset
获取用户持仓,仅返回>0的数据。
权重(IP): 5
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
asset | STRING | NO | 如果资产为空,则查询用户所有的正资产。 |
needBtcValuation | BOOLEAN | NO | 是否需要返回兑换成BTC的估值 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
稳定币自动兑换划转 (TRADE)
响应
{
"tranId": 118263407119,
"status": "S"
}
POST /sapi/v1/asset/convert-transfer
稳定币和BUSD之间的自动划转
权重(UID): 5
参数
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
clientTranId | STRING | YES | 用户自定义流水号,唯一标志,限制最短长度为20 |
asset | STRING | YES | 当前资产 |
amount | BigDecimal | YES | 数量必须为正数 |
targetAsset | String | YES | 目标资产 |
accountType | String | NO | 仅支持MAIN和CARD,如果为空,默认查询主账户MAIN |
- 如果clientTranId你之前使用过,不会进行第二次自动转化,而是把之前划转的结果返回
稳定币自动兑换划转查询 (USER_DATA)
响应
{
"total":3,
"rows":
[
{
"tranId":118263615991,
"type":244,
"time":1664442078000,
"deductedAsset":"BUSD",
"deductedAmount":"1",
"targetAsset":"USDC",
"targetAmount":"1",
"status":"S",
"accountType":"MAIN"
},{
"tranId":118263598801,
"type":244,
"time":1664442061000,
"deductedAsset":"BUSD",
"deductedAmount":"1",
"targetAsset":"USDC",
"targetAmount":"1",
"status":"S",
"accountType":"MAIN"
},{
"tranId":118263407119,
"type":244,
"time":1664441820000,
"deductedAsset":"BUSD",
"deductedAmount":"1",
"targetAsset":"USDC",
"targetAmount":"1",
"status":"S",
"accountType":"MAIN"
}
]
}
GET /sapi/v1/asset/convert-transfer/queryByPage
权重(UID): 5
参数
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
tranId | LONG | NO | 流水号 |
clientTranId | STRING | NO | 用户自定义流水号 |
asset | STRING | NO | 不传或者空字符串查全部, 匹配扣除币种和目标币种 |
startTime | LONG | YES | 开始时间(包含),单位:毫秒 |
endTime | LONG | YES | 结束时间(不包含),单位:毫秒 |
accountType | STRING | NO | 账户类型: MAIN-主账户。CARD-资金账户。如果传入则仅返回对应wallet的记录,不传或者传null则返回该用户spot和card钱包的记录。 |
current | INTEGER | NO | 当前页面,默认1,最小值为1 |
size | INTEGER | NO | 页面大小,默认10,最大值为100 |
- types类型:
- 244 sapi请求兑换
- 11 入金自动兑换
- 32 提现自动兑换
- 34 提现失败
- 254 busd自动兑换任务
云算力历史记录分页查询 (USER_DATA)
响应:
{
"total":5,
"rows":[
{"createTime":1667880112000,"tranId":121230610120,"type":248,"asset":"USDT","amount":"25.0068","status":"S"},
{"createTime":1666776366000,"tranId":119991507468,"type":249,"asset":"USDT","amount":"0.027","status":"S"},
{"createTime":1666764505000,"tranId":119977966327,"type":248,"asset":"USDT","amount":"0.027","status":"S"},
{"createTime":1666758189000,"tranId":119973601721,"type":248,"asset":"USDT","amount":"0.018","status":"S"},
{"createTime":1666757278000,"tranId":119973028551,"type":248,"asset":"USDT","amount":"0.018","status":"S"}
]
}
GET /sapi/v1/asset/ledger-transfer/cloud-mining/queryByPage
云算力支付和退款历史分页查询
权重(UID): 600
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
tranId | LONG | NO | 流水号 |
clientTranId | STRING | NO | 外部唯一流水号 |
asset | STRING | NO | 不传或者空字符串查全部 |
startTime | LONG | YES | 开始时间(包含),单位:毫秒 |
endTime | LONG | YES | 结束时间(不包含),单位:毫秒 |
current | INTEGER | NO | 当前页面,默认1,最小值为1 |
size | INTEGER | NO | 页面大小,默认10,最大值为100 |
- 仅返回支付和退款成功的记录。
- 对于响应来说,type = 248 代表着支付记录,type = 249 代表着退款记录, status =S 代表成功。
查询用户API Key权限 (USER_DATA)
响应
{
"ipRestrict": false, // 是否限制ip访问
"createTime": 1623840271000, // 创建时间
"enableInternalTransfer": true, // 此选项授权此密钥在您的母账户和子账户之间划转资金
"enableFutures": false, // 合约交易权限,需注意开通合约账户之前创建的API Key不支持合约API功能
"enablePortfolioMarginTrading":true, // 统一账户交易权限
"enableVanillaOptions": false, // 欧式期权交易权限
"permitsUniversalTransfer": true, // 授权该密钥可用于专用的万向划转接口,用以操作其支持的多种类型资金划转。各业务自身的划转接口使用权限,不受本授权影响
"enableReading": true,
"enableSpotAndMarginTrading": false, // 现货和杠杆交易权限
"enableWithdrawals": false, // 此选项允许通过此api提现。开启提现选项必须添加IP访问限制过滤器
"enableMargin": false // 此选项在全仓账户完成划转后可编辑
}
GET /sapi/v1/account/apiRestrictions
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recvWindow | LONG | NO | |
timestamp | LONG | YES |
查询用户稳定币与 BUSD 互相转换的设置 (USER_DATA)
响应:
{
"convertEnabled": true,
"coins": [
"USDC",
"USDP",
"TUSD"
],
"exchangeRates": {
"USDC": "1",
"TUSD": "1",
"USDP": "1"
}
}
GET /sapi/v1/capital/contract/convertible-coins
查询用户充值/提现时候稳定币与 BUSD 互转的设置
权重(UID): 600
参数: None
修改哪些稳定币可与 BUSD 互相转换(USER_DATA)
响应: 成功返回 200,无 body
POST /sapi/v1/capital/contract/convertible-coins
修改哪些稳定币可与 BUSD 互相转换
权重(UID): 600
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
coin | STRING | YES | USDC、USDP、TUSD 中的一个 |
enable | BOOLEAN | YES | true: 打开转换。false: 关闭转换 |
- 参数应在POST BODY
一键上账 (充值到过期地址) (USER_DATA)
响应:
{
"code": "000000",
"message": "success",
"data":true,
"success": true
}
POST /sapi/v1/capital/deposit/credit-apply
申请充值到过期地址的一键上账.
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
depositId | LONG | NO | 充值记录Id,优先使用 |
txId | STRING | NO | 充值txId,当depositId没指定时使用 |
subAccountId | LONG | NO | Cloud的子账户ID |
subUserId | LONG | NO | 母账户的子账户userId |
- 参数应在POST BODY
查询充值地址列表(USER_DATA)
响应:
[
{
"coin": "ETH",
"address": "0xD316E95Fd9E8E237Cb11f8200Babbc5D8D177BA4",
"tag":"",
"isDefault": 0
},
{
"coin": "ETH",
"address": "0xD316E95Fd9E8E237Cb11f8200Babbc5D8D177BA4",
"tag":"",
"isDefault": 0
},
{
"coin": "ETH",
"address": "0x00003ada75e7da97ba0db2fcde72131f712455e2",
"tag":"",
"isDefault": 1
}
]
GET /sapi/v1/capital/deposit/address/list
根据网络币种或币种获取充值地址列表
权重(IP): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
coin | STRING | YES | coin 是网络的地址空间名称 |
network | STRING | NO | 网络 |
timestamp | LONG | YES | 时间戳 |
- 如果没传网络,会返回网络对应的默认网络。
- 可以通过后面的接口,来获取网络和 isDefault 字段,在返回的响应里
Get /sapi/v1/capital/config/getall
.
查询用户钱包余额 (USER_DATA)
响应:
[
{
"activate": true,
"balance": "0",
"walletName": "Spot"
},
{
"activate": true,
"balance": "0",
"walletName": "Funding"
},
{
"activate": true,
"balance": "0",
"walletName": "Cross Margin"
},
{
"activate": true,
"balance": "0",
"walletName": "Isolated Margin"
},
{
"activate": true,
"balance": "0.71842752",
"walletName": "USDⓈ-M Futures"
},
{
"activate": true,
"balance": "0",
"walletName": "COIN-M Futures"
},
{
"activate": true,
"balance": "0",
"walletName": "Earn"
},
{
"activate": false,
"balance": "0",
"walletName": "Options"
}
]
GET /sapi/v1/asset/wallet/balance
查询用户钱包余额
权重(IP): 60
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 您需要打开 API Key 的 Permits Universal Transfer 权限以使用此接口
查询用户委托资金历史(适用主账户)(USER_DATA)
响应:
{
"total": 3316,
"rows": [
{
"clientTranId": "293915932290879488",
"transferType": "Undelegate",
"asset": "ETH",
"amount": "1",
"time": 1695205406000
},
{
"clientTranId": "293915892281413632",
"transferType": "Delegate",
"asset": "ETH",
"amount": "1",
"time": 1695205396000
}
]
}
GET /sapi/v1/asset/custody/transfer-history
查询用户委托资金历史
权重(IP): 60
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | ||
startTime | LONG | YES | |
endTime | LONG | YES | |
type | ENUM | NO | Delegate/Undelegate |
asset | STRING | NO | |
current | INTEGER | NO | 默认 1 |
size | INTEGER | NO | 默认 10, 最大 100 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 您需要打开 API Key 的 Enable Spot & Margin Trading 权限以使用此接口
查询现货币对的下架计划 (MARKET_DATA)
GET /sapi/v1/spot/delist-schedule
查询现货币对的下架计划
响应:
[
{
"delistTime": 1686161202000,
"symbols": [
"ADAUSDT",
"BNBUSDT"
]
},
{
"delistTime": 1686222232000,
"symbols": [
"ETHUSDT"
]
}
]
权重(IP): 100
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recvWindow | LONG | NO | |
timestamp | LONG | YES |
查询提现地址簿 (USER_DATA)
GET /sapi/v1/capital/withdraw/address/list
查询提现地址簿
响应:
[
{
"address": "string",
"addressTag": "string",
"coin": "string",
"name": "string",
"network": "string",
"origin": "string",
"originType": "string",
"whiteStatus": true
}
]
权重(IP): 10
帐户信息 (USER_DATA)
GET /sapi/v1/account/info
获取帐户信息详情。
响应:
{
"vipLevel": 0,
"isMarginEnabled": true,
"isFutureEnabled": true
}
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recvWindow | LONG | NO | |
timestamp | LONG | YES |
子母账户接口
创建虚拟子账户(适用主账户)
响应:
{
"email":"addsdd_virtual@aasaixwqnoemail.com"
}
POST /sapi/v1/sub-account/virtualSubAccount
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
subAccountString | STRING | YES | 请输入字符串,我们将为您创建一个虚拟邮箱进行注册 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 该请求会为您的母账户生成一个虚拟子账户
- 您需要为母账户apikey开通"允许现货及杠杆交易" 权限调用此接口
查询子账户列表(适用主账户)
响应:
{
"subAccounts":[
{
"email":"testsub@gmail.com",
"isFreeze":false,
"createTime":1544433328000,
"isManagedSubAccount": false,
"isAssetManagementSubAccount": false
},
{
"email":"virtual@oxebmvfonoemail.com",
"isFreeze":false,
"createTime":1544433328000,
"isManagedSubAccount": false,
"isAssetManagementSubAccount": false
}
]
}
GET /sapi/v1/sub-account/list
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | NO | Sub-account email | |
isFreeze | STRING | NO | true or false |
page | INT | NO | 默认: 1 |
limit | INT | NO | 默认: 1, 最大: 200 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
查询子账户现货资金划转历史 (适用主账户)
响应:
[
{
"from":"aaa@test.com",
"to":"bbb@test.com",
"asset":"BTC",
"qty":"10",
"status": "SUCCESS",
"tranId": 6489943656,
"time":1544433328000
},
{
"from":"bbb@test.com",
"to":"ccc@test.com",
"asset":"ETH",
"qty":"2",
"status": "SUCCESS",
"tranId": 6489938713,
"time":1544433328000
}
]
GET /sapi/v1/sub-account/sub/transfer/history
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
fromEmail | STRING | NO | |
toEmail | STRING | NO | |
startTime | LONG | NO | |
endTime | LONG | NO | |
page | INT | NO | 默认: 1 |
limit | INT | NO | 默认: 500 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- fromEmail 和 toEmail 不可以同时发送
- 若 fromEmail 和 toEmail 都未传,默认返回fromEmail 为母账户的记录。
查询子账户合约资金划转历史 (适用主账户)
响应
{
"success":true,
"futuresType": 2,
"transfers":[
{
"from":"aaa@test.com",
"to":"bbb@test.com",
"asset":"BTC",
"qty":"1",
"tranId":11897001102,
"time":1544433328000
},
{
"from":"bbb@test.com",
"to":"ccc@test.com",
"asset":"ETH",
"qty":"2",
"tranId":11631474902,
"time":1544433328000
}
]
}
GET /sapi/v1/sub-account/futures/internalTransfer
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | 子账户邮箱 备注 | |
futuresType | LONG | YES | 1:USDT合约,2: 币本位合约 |
startTime | LONG | NO | 默认返回100天内历史记录 |
endTime | LONG | NO | 默认返回100天内历史记录 |
page | INT | NO | 默认值: 1 |
limit | INT | NO | 默认值: 50, 最大值:500 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
执行子账户合约资金划转 (适用主账户)
响应
{
"success":true,
"txnId":"2934662589"
}
POST /sapi/v1/sub-account/futures/internalTransfer
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
fromEmail | STRING | YES | 发送者邮箱 备注 |
toEmail | STRING | YES | 接收者邮箱 备注 |
futuresType | LONG | YES | 1:USDT合约, 2: 币本位合约 |
asset | STRING | YES | |
amount | DECIMAL | YES | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 每个母账户每分钟上限2000次
- 您期货钱包中须有足够保证金余额才能执行转账
查询子账户资产 (适用主账户)
响应
{
"balances":[
{
"asset":"ADA",
"free":10000,
"locked":0
},
{
"asset":"BNB",
"free":10003,
"locked":0
},
{
"asset":"BTC",
"free":11467.6399,
"locked":0
},
{
"asset":"ETH",
"free":10004.995,
"locked":0
},
{
"asset":"USDT",
"free":11652.14213,
"locked":0
}
],
}
GET /sapi/v3/sub-account/assets
权重(UID): 60
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | 子账户邮箱 备注 | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
查询子账户现货资产汇总 (适用主账户)
响应:
{
"totalCount":2,
"masterAccountTotalAsset":"0.23231201",
"spotSubUserAssetBtcVoList":[
{
"email":"sub123@test.com",
"totalAsset":"9999.00000000"
},
{
"email":"test456@test.com",
"totalAsset":"0.00000000"
}
]
}
获取BTC计价的子账户现货资产汇总。
GET /sapi/v1/sub-account/spotSummary
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | NO | 子账户邮箱 | |
page | LONG | NO | 分页,默认 1 |
size | LONG | NO | 单页条目数, 默认 10, 最大 20 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
获取子账户充值地址 (适用主账户)
响应
{
"address":"TDunhSa7jkTNuKrusUTU1MUHtqXoBPKETV",
"coin":"USDT",
"tag":"",
"url":"https://tronscan.org/#/address/TDunhSa7jkTNuKrusUTU1MUHtqXoBPKETV"
}
GET /sapi/v1/capital/deposit/subAddress (HMAC SHA256)
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | 子账户邮箱 备注 | |
coin | STRING | YES | |
network | STRING | NO | |
amount | DECIMAL | NO | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 使用LIGHTNING网络时,
amount
必须传
获取子账户充值记录 (适用主账户)
响应
[
{
"id": "769800519366885376",
"amount": "0.001",
"coin": "BNB",
"network": "BNB",
"status": 0,
"address": "bnb136ns6lfw4zs5hg4n85vdthaad7hq5m4gtkgf23",
"addressTag": "101764890",
"txId": "98A3EA560C6B3336D348B6C83F0F95ECE4F1F5919E94BD006E5BF3BF264FACFC",
"insertTime": 1661493146000,
"transferType": 0,
"confirmTimes": "1/1",
"unlockConfirm": 0,
"walletType": 0
},
{
"id": "769754833590042625",
"amount":"0.50000000",
"coin":"IOTA",
"network":"IOTA",
"status":1,
"address":"SIZ9VLMHWATXKV99LH99CIGFJFUMLEHGWVZVNNZXRJJVWBPHYWPPBOSDORZ9EQSHCZAMPVAPGFYQAUUV9DROOXJLNW",
"addressTag":"",
"txId":"ESBFVQUTPIWQNJSPXFNHNYHSQNTGKRVKPRABQWTAXCDWOAKDKYWPTVG9BGXNVNKTLEJGESAVXIKIZ9999",
"insertTime":1599620082000,
"transferType":0,
"confirmTimes": "1/1",
"unlockConfirm": 0,
"walletType": 0
}
]
GET /sapi/v1/capital/deposit/subHisrec
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | 子账户邮箱 备注 | |
coin | STRING | NO | |
status | INT | NO | 0(0:pending,6: credited but cannot withdraw,7:Wrong Deposit,8:Waiting User confirm,1:success) |
startTime | LONG | NO | |
endTime | LONG | NO | |
limit | INT | NO | |
offset | INT | NO | default:0 |
recvWindow | LONG | NO | |
timestamp | LONG | YES | |
txId | STRING | NO |
查询子账户Margin/Futures状态 (适用主账户)
响应
[
{
"email":"123@test.com", // user email
"isSubUserEnabled": true, // true or false
"isUserActive": true, // true or false
"insertTime": 1570791523523, // sub account create time
"isMarginEnabled": true, // true or false for margin
"isFutureEnabled": true, // true or false for futures.
"mobile": 1570791523523 // user mobile number
}
]
GET /sapi/v1/sub-account/status
权重(IP): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | NO | 子账户邮箱 备注 | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 如果不提交子账户email,返回所有子账户情况。
为子账户开通Margin (适用主账户)
响应
{
"email":"123@test.com",
"isMarginEnabled": true
}
POST /sapi/v1/sub-account/margin/enable
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | 子账户邮箱 备注 | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
查询子账户Margin账户详情 (适用主账户)
响应
{
"email":"123@test.com",
"marginLevel": "11.64405625",
"totalAssetOfBtc": "6.82728457",
"totalLiabilityOfBtc": "0.58633215",
"totalNetAssetOfBtc": "6.24095242",
"marginTradeCoeffVo":
{
"forceLiquidationBar": "1.10000000", // 强平风险率
"marginCallBar": "1.50000000", // 补仓风险率
"normalBar": "2.00000000" // 初始风险率
},
"marginUserAssetVoList": [
{
"asset": "BTC",
"borrowed": "0.00000000",
"free": "0.00499500",
"interest": "0.00000000",
"locked": "0.00000000",
"netAsset": "0.00499500"
},
{
"asset": "BNB",
"borrowed": "201.66666672",
"free": "2346.50000000",
"interest": "0.00000000",
"locked": "0.00000000",
"netAsset": "2144.83333328"
},
{
"asset": "ETH",
"borrowed": "0.00000000",
"free": "0.00000000",
"interest": "0.00000000",
"locked": "0.00000000",
"netAsset": "0.00000000"
},
{
"asset": "USDT",
"borrowed": "0.00000000",
"free": "0.00000000",
"interest": "0.00000000",
"locked": "0.00000000",
"netAsset": "0.00000000"
}
]
}
GET /sapi/v1/sub-account/margin/account
权重(IP): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | 子账户邮箱 备注 | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
查询子账户Margin账户汇总 (适用主账户)
响应
{
"totalAssetOfBtc": "4.33333333",
"totalLiabilityOfBtc": "2.11111112",
"totalNetAssetOfBtc": "2.22222221",
"subAccountList":[
{
"email":"123@test.com",
"totalAssetOfBtc": "2.11111111",
"totalLiabilityOfBtc": "1.11111111",
"totalNetAssetOfBtc": "1.00000000"
},
{
"email":"345@test.com",
"totalAssetOfBtc": "2.22222222",
"totalLiabilityOfBtc": "1.00000001",
"totalNetAssetOfBtc": "1.22222221"
}
]
}
GET /sapi/v1/sub-account/margin/accountSummary
权重(IP): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recvWindow | LONG | NO | |
timestamp | LONG | YES |
为子账户开通Futures (适用主账户)
响应
{
"email":"123@test.com",
"isFuturesEnabled": true // true or false
}
POST /sapi/v1/sub-account/futures/enable
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | 子账户邮箱 备注 | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
查询子账户Futures账户详情 (适用主账户)
响应
{
"email": "abc@test.com",
"asset": "USDT",
"assets":[
{
"asset": "USDT",
"initialMargin": "0.00000000",
"maintenanceMargin": "0.00000000",
"marginBalance": "0.88308000",
"maxWithdrawAmount": "0.88308000",
"openOrderInitialMargin": "0.00000000",
"positionInitialMargin": "0.00000000",
"unrealizedProfit": "0.00000000",
"walletBalance": "0.88308000"
}
],
"canDeposit": true,
"canTrade": true,
"canWithdraw": true,
"feeTier": 2,
"maxWithdrawAmount": "0.88308000",
"totalInitialMargin": "0.00000000",
"totalMaintenanceMargin": "0.00000000",
"totalMarginBalance": "0.88308000",
"totalOpenOrderInitialMargin": "0.00000000",
"totalPositionInitialMargin": "0.00000000",
"totalUnrealizedProfit": "0.00000000",
"totalWalletBalance": "0.88308000",
"updateTime": 1576756674610
}
GET /sapi/v1/sub-account/futures/account
权重(IP): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | 子账户邮箱 备注 | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
查询子账户Futures账户汇总 (适用主账户)
响应
{
"totalInitialMargin": "9.83137400",
"totalMaintenanceMargin": "0.41568700",
"totalMarginBalance": "23.03235621",
"totalOpenOrderInitialMargin": "9.00000000",
"totalPositionInitialMargin": "0.83137400",
"totalUnrealizedProfit": "0.03219710",
"totalWalletBalance": "22.15879444",
"asset": "USD",
"subAccountList":[
{
"email": "123@test.com",
"totalInitialMargin": "9.00000000",
"totalMaintenanceMargin": "0.00000000",
"totalMarginBalance": "22.12659734",
"totalOpenOrderInitialMargin": "9.00000000",
"totalPositionInitialMargin": "0.00000000",
"totalUnrealizedProfit": "0.00000000",
"totalWalletBalance": "22.12659734",
"asset": "USD"
},
{
"email": "345@test.com",
"totalInitialMargin": "0.83137400",
"totalMaintenanceMargin": "0.41568700",
"totalMarginBalance": "0.90575887",
"totalOpenOrderInitialMargin": "0.00000000",
"totalPositionInitialMargin": "0.83137400",
"totalUnrealizedProfit": "0.03219710",
"totalWalletBalance": "0.87356177",
"asset": "USD"
}
]
}
GET /sapi/v1/sub-account/futures/accountSummary
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recvWindow | LONG | NO | |
timestamp | LONG | YES |
查询子账户合约持仓信息 (仅适用主账户)
响应
[
{
"entryPrice": "9975.12000",
"leverage": "50", // current initial leverage
"maxNotional": "1000000", // notional value limit of current initial leverage
"liquidationPrice": "7963.54",
"markPrice": "9973.50770517",
"positionAmount": "0.010",
"symbol": "BTCUSDT",
"unrealizedProfit": "-0.01612295"
}
]
GET /sapi/v1/sub-account/futures/positionRisk
权重(IP): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | 子账户邮箱 备注 | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
子账户Futures划转 (仅适用主账户)
响应
{
"txnId":"2966662589"
}
POST /sapi/v1/sub-account/futures/transfer
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | 子账户邮箱 备注 | |
asset | STRING | YES | 划转资产, e.g., USDT |
amount | DECIMAL | YES | 划转数量 |
type | INT | YES | 1: 由子账户的现货账户划转至其USDT本位合约账户; 2: 由子账户的USDT本位合约账户划转至其现货账户; 3:由子账户现货账户划转至其COIN本位合约账户;4: 由子账户COIN本位合约账户划转至其现货账户 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 您需要打开 API Key 的 Spot & Margin Trading 权限以使用此接口。
子账户Margin划转 (仅适用主账户)
响应
{
"txnId":"2966662589"
}
POST /sapi/v1/sub-account/margin/transfer
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | 子账户邮箱 备注 | |
asset | STRING | YES | 划转资产, e.g., USDT |
amount | DECIMAL | YES | 划转数量 |
type | INT | YES | 1: 由子账户的现货账户划转至其杠杆账户; 2: 由子账户的杠杆账户划转至其现货账户 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 您需要打开 API Key 的 Spot & Margin Trading 权限以使用此接口。
向共同主账户下的子账户主动划转 (仅适用子账户)
响应
{
"txnId":"2966662589"
}
POST /sapi/v1/sub-account/transfer/subToSub
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
toEmail | STRING | YES | 接收者子邮箱地址 备注 |
asset | STRING | YES | |
amount | DECIMAL | YES | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 您需要打开 API Key 的 Spot & Margin Trading 权限以使用此接口。
向主账户主动划转 (仅适用子账户)
响应
{
"txnId":"2966662589"
}
POST /sapi/v1/sub-account/transfer/subToMaster
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
asset | STRING | YES | |
amount | DECIMAL | YES | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 您需要打开 API Key 的 Spot & Margin Trading 权限以使用此接口。
查询子账户划转历史 (仅适用子账户)
响应
[
{
"counterParty":"master",
"email":"master@test.com",
"type":1, // 1 for transfer in , 2 for transfer out
"asset":"BTC",
"qty":"1",
"fromAccountType":"SPOT",
"toAccountType":"SPOT",
"status":"SUCCESS", // status: PROCESS / SUCCESS / FAILURE
"tranId":11798835829,
"time":1544433325000
},
{
"counterParty": "subAccount",
"email": "sub2@test.com",
"type": 1,
"asset":"ETH",
"qty":"2",
"fromAccountType":"SPOT",
"toAccountType":"COIN_FUTURE",
"status":"SUCCESS",
"tranId":11798829519,
"time":1544433326000
}
]
GET /sapi/v1/sub-account/transfer/subUserHistory
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
asset | STRING | NO | 如不提供,返回所有asset 划转记录 |
type | INT | NO | 1: transfer in, 2: transfer out; 如不提供,返回transfer out方向划转记录 |
startTime | LONG | NO | |
endTime | LONG | NO | |
limit | INT | NO | 默认值: 500 |
returnFailHistory | BOOLEAN | NO | 默认False ,返回PROCESS和SUCCESS状态的数据;如果传True 返回PROCESS、SUCCESS、FAILURE状态的数据 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 如果startTime和endTime均未发送,默认只返回最近30天数据
子母账户万能划转 (适用主账户)
响应
{
"tranId":11945860693,
"clientTranId":"test"
}
POST /sapi/v1/sub-account/universalTransfer
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
fromEmail | STRING | NO | |
toEmail | STRING | NO | |
fromAccountType | STRING | YES | "SPOT","USDT_FUTURE","COIN_FUTURE","MARGIN"(Cross),"ISOLATED_MARGIN" |
toAccountType | STRING | YES | "SPOT","USDT_FUTURE","COIN_FUTURE","MARGIN"(Cross),"ISOLATED_MARGIN" |
clientTranId | STRING | NO | 不可重复 |
symbol | STRING | NO | 仅在ISOLATED_MARGIN类型下使用 |
asset | STRING | YES | |
amount | DECIMAL | YES | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 需要开启母账户apikey“允许子母账户划转”权限。
- 若 fromEmail 未传,默认从母账户转出。
- 若 toEmail 未传,默认转入母账户。
- 最少指定fromEmail和toEmail 其中之一。
- 该接口支持的划转操作有:
现货账户
划转到现货账户
、U本位合约账户
、币本位合约账户
(无论母账户或子账户)现货账户
、U本位合约账户
、币本位合约账户
划转到现货账户
(无论母账户或子账户)- 母账户
现货账户
划转到子账户杠杆全仓账户
、杠杆逐仓账户
- 子账户
杠杆全仓账户
、杠杆逐仓账户
划转到母账户现货账户
- 子账户
杠杆全仓账户
划转到子账户杠杆全仓账户
查询子母账户万能划转历史 (适用主账户)
响应
{
"result": [
{
"tranId": 92275823339,
"fromEmail": "abctest@gmail.com",
"toEmail": "deftest@gmail.com",
"asset": "BNB",
"amount": "0.01",
"createTimeStamp": 1640317374000,
"fromAccountType": "USDT_FUTURE",
"toAccountType": "SPOT",
"status": "SUCCESS",
"clientTranId": "test"
}
],
"totalCount": 1
}
GET /sapi/v1/sub-account/universalTransfer
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
fromEmail | STRING | NO | |
toEmail | STRING | NO | |
clientTranId | STRING | NO | |
startTime | LONG | NO | |
endTime | LONG | NO | |
page | INT | NO | 默认 1 |
limit | INT | NO | 默认 500, 最大 500 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 本查询接口只可以单边查询,fromEmail 和 toEmail 不能同时传入。
- 若 fromEmail 和 toEmail 都未传,默认返回 fromEmail 为母账户的划转记录。
- 若 startTime 和 endTime 都未传,则只可查询最近30天的记录。
- 查询时间范围最大不得超过30天。
查询子账户Futures账户详情V2 (适用主账户)
响应
USDT Margined Futures:
{
"futureAccountResp": {
"email": "abc@test.com",
"assets":[
{
"asset": "USDT",
"initialMargin": "0.00000000",
"maintenanceMargin": "0.00000000",
"marginBalance": "0.88308000",
"maxWithdrawAmount": "0.88308000",
"openOrderInitialMargin": "0.00000000",
"positionInitialMargin": "0.00000000",
"unrealizedProfit": "0.00000000",
"walletBalance": "0.88308000"
}
],
"canDeposit": true,
"canTrade": true,
"canWithdraw": true,
"feeTier": 2,
"maxWithdrawAmount": "0.88308000",
"totalInitialMargin": "0.00000000",
"totalMaintenanceMargin": "0.00000000",
"totalMarginBalance": "0.88308000",
"totalOpenOrderInitialMargin": "0.00000000",
"totalPositionInitialMargin": "0.00000000",
"totalUnrealizedProfit": "0.00000000",
"totalWalletBalance": "0.88308000",
"updateTime": 1576756674610
}
COIN Margined Futures:
{
"deliveryAccountResp": {
"email": "abc@test.com",
"assets":[
{
"asset": "BTC",
"initialMargin": "0.00000000",
"maintenanceMargin": "0.00000000",
"marginBalance": "0.88308000",
"maxWithdrawAmount": "0.88308000",
"openOrderInitialMargin": "0.00000000",
"positionInitialMargin": "0.00000000",
"unrealizedProfit": "0.00000000",
"walletBalance": "0.88308000"
}
],
"canDeposit": true,
"canTrade": true,
"canWithdraw": true,
"feeTier": 2,
"updateTime": 1598959682001
}
}
GET /sapi/v2/sub-account/futures/account
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | 子账户邮箱 备注 | |
futuresType | INT | YES | 1:USDT Margined Futures, 2:COIN Margined Futures |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
查询子账户Futures账户汇总V2 (适用主账户)
响应
USDT Margined Futures:
{
"futureAccountSummaryResp": {
"totalInitialMargin": "9.83137400",
"totalMaintenanceMargin": "0.41568700",
"totalMarginBalance": "23.03235621",
"totalOpenOrderInitialMargin": "9.00000000",
"totalPositionInitialMargin": "0.83137400",
"totalUnrealizedProfit": "0.03219710",
"totalWalletBalance": "22.15879444",
"asset": "USD",
"subAccountList":[
{
"email": "123@test.com",
"totalInitialMargin": "9.00000000",
"totalMaintenanceMargin": "0.00000000",
"totalMarginBalance": "22.12659734",
"totalOpenOrderInitialMargin": "9.00000000",
"totalPositionInitialMargin": "0.00000000",
"totalUnrealizedProfit": "0.00000000",
"totalWalletBalance": "22.12659734",
"asset": "USD"
},
{
"email": "345@test.com",
"totalInitialMargin": "0.83137400",
"totalMaintenanceMargin": "0.41568700",
"totalMarginBalance": "0.90575887",
"totalOpenOrderInitialMargin": "0.00000000",
"totalPositionInitialMargin": "0.83137400",
"totalUnrealizedProfit": "0.03219710",
"totalWalletBalance": "0.87356177",
"asset": "USD"
}
]
}
COIN Margined Futures:
{
"deliveryAccountSummaryResp": {
"totalMarginBalanceOfBTC": "25.03221121",
"totalUnrealizedProfitOfBTC": "0.12233410",
"totalWalletBalanceOfBTC": "22.15879444",
"asset": "BTC",
"subAccountList":[
{
"email": "123@test.com",
"totalMarginBalance": "22.12659734",
"totalUnrealizedProfit": "0.00000000",
"totalWalletBalance": "22.12659734",
"asset": "BTC"
},
{
"email": "345@test.com",
"totalMarginBalance": "0.90575887",
"totalUnrealizedProfit": "0.03219710",
"totalWalletBalance": "0.87356177",
"asset": "BTC"
}
]
}
}
GET /sapi/v2/sub-account/futures/accountSummary
权重(IP): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
futuresType | INT | YES | 1:USDT Margined Futures, 2:COIN Margined Futures |
page | INT | NO | default:1 |
limit | INT | NO | default:10, max:20 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
查询子账户合约持仓信息V2 (仅适用主账户)
响应
USDT Margined Futures:
{
"futurePositionRiskVos": [
{
"entryPrice": "9975.12000",
"leverage": "50", // current initial leverage
"maxNotional": "1000000", // notional value limit of current initial leverage
"liquidationPrice": "7963.54",
"markPrice": "9973.50770517",
"positionAmount": "0.010",
"symbol": "BTCUSDT",
"unrealizedProfit": "-0.01612295"
}
]
}
COIN Margined Futures:
{
"deliveryPositionRiskVos": [
{
"entryPrice": "9975.12000",
"markPrice": "9973.50770517",
"leverage": "20",
"isolated": "false",
"isolatedWallet": "9973.50770517",
"isolatedMargin": "0.00000000",
"isAutoAddMargin": "false",
"positionSide": "BOTH",
"positionAmount": "1.230",
"symbol": "BTCUSD_201225",
"unrealizedProfit": "-0.01612295"
}
]
}
GET /sapi/v2/sub-account/futures/positionRisk
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | 子账户邮箱 备注 | |
futuresType | INT | YES | 1:USDT Margined Futures, 2:COIN Margined Futures |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
查询子账户API Key IP白名单 (适用母账户)
响应:
{
"ipRestrict": "true",
"ipList": [
"69.210.67.14",
"8.34.21.10"
],
"updateTime": 1636371437000,
"apiKey": "k5V49ldtn4tszj6W3hystegdfvmGbqDzjmkCtpTvC0G74WhK7yd4rfCTo4lShf"
}
GET /sapi/v1/sub-account/subAccountApi/ipRestriction
权重(UID): 3000
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | Sub-account email | |
subAccountApiKey | STRING | YES | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
删除子账户API Key IP白名单 (适用母账户)
响应:
{
"ipRestrict": "true",
"ipList": [
"69.210.67.14",
"8.34.21.10"
],
"updateTime": 1636371437000,
"apiKey": "k5V49ldtn4tszj6W3hystegdfvmGbqDzjmkCtpTvC0G74WhK7yd4rfCTo4lShf"
}
DELETE /sapi/v1/sub-account/subAccountApi/ipRestriction/ipList
权重(UID): 3000
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | Sub-account email | |
subAccountApiKey | STRING | YES | |
ipAddress | STRING | NO | 可批量删除,用逗号分隔 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 调用此端口前需要在api管理页开启允许现货及杠杆交易选项
为子账户API Key增加IP白名单 (适用母账户)
响应:
{
"status": "2",
"ipList": [
"69.210.67.14",
"8.34.21.10", //只当您有开启IP白名单且添加了IP白名单地址时才返回
],
"updateTime": 1636371437000,
"apiKey": "k5V49ldtn4tszj6W3hystegdfvmGbqDzjmkCtpTvC0G74WhK7yd4rfCTo4lShf"
}
POST /sapi/v2/sub-account/subAccountApi/ipRestriction
权重(UID): 3000
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | Sub-account email | |
subAccountApiKey | STRING | YES | |
status | STRING | YES | IP限制状态。1或不填入(null) = IP未受限。2 = 仅限受信任IP访问。 |
ipAddress | STRING | NO | 可批量填入IP,以逗号区隔 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 调用此端口前需要在api管理页开启允许现货及杠杆交易选项
投资人账户为托管子账户充值资产 (适用投资人母账户)
响应
{
"tranId":66157362489
}
POST /sapi/v1/managed-subaccount/deposit
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
toEmail | STRING | YES | |
asset | STRING | YES | |
amount | DECIMAL | YES | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 您需要开通API Key
允许现货和杠杆交易
权限
投资人账户查询托管子账户资产 (适用投资人母账户)
响应
[
{
"coin": "INJ", //币种
"name": "Injective Protocol", //名称
"totalBalance": "0", //总资产
"availableBalance": "0", //可用资产
"inOrder": "0", //下单冻结
"btcValue": "0" //btc估值
},
{
"coin": "FILDOWN",
"name": "FILDOWN",
"totalBalance": "0",
"availableBalance": "0",
"inOrder": "0",
"btcValue": "0"
}
]
GET /sapi/v1/managed-subaccount/asset
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | ||
recvWindow | LONG | NO | |
timestamp | LONG | YES |
投资人账户为托管子账户提币资产 (适用投资人母账户)
响应
{
"tranId":66157362489
}
POST /sapi/v1/managed-subaccount/withdraw
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
fromEmail | STRING | YES | |
asset | STRING | YES | |
amount | DECIMAL | YES | |
transferDate | LONG | NO | 提币会自动发生在选择的日期(UTC0),如果没有选择日期,提币会立即生效 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 您需要开通API Key
允许现货和杠杆交易
权限
查询托管子账户资产快照 (适用投资人母账户)
响应
{
"code":200, // 200表示返回正确,否则即为错误码
"msg":"", // 与错误码对应的报错信息
"snapshotVos":[
{
"data":{
"balances":[
{
"asset":"BTC",
"free":"0.09905021",
"locked":"0.00000000"
},
{
"asset":"USDT",
"free":"1.89109409",
"locked":"0.00000000"
}
],
"totalAssetOfBtc":"0.09942700"
},
"type":"spot",
"updateTime":1576281599000
}
]
}
或
{
"code":200, // 200表示返回正确,否则即为错误码
"msg":"", // 与错误码对应的报错信息
"snapshotVos":[
{
"data":{
"marginLevel":"2748.02909813",
"totalAssetOfBtc":"0.00274803",
"totalLiabilityOfBtc":"0.00000100",
"totalNetAssetOfBtc":"0.00274750",
"userAssets":[
{
"asset":"XRP",
"borrowed":"0.00000000",
"free":"1.00000000",
"interest":"0.00000000",
"locked":"0.00000000",
"netAsset":"1.00000000"
}
]
},
"type":"margin",
"updateTime":1576281599000
}
]
}
或
{
"code":200, // 200表示返回正确,否则即为错误码
"msg":"", // 与错误码对应的报错信息
"snapshotVos":[
{
"data":{
"assets":[
{
"asset":"USDT",
"marginBalance":"118.99782335",
"walletBalance":"120.23811389"
}
],
"position":[
{
"entryPrice":"7130.41000000",
"markPrice":"7257.66239673",
"positionAmt":"0.01000000",
"symbol":"BTCUSDT",
"unRealizedProfit":"1.24029054" //只显示开仓当时的未实现盈亏,不会实时更新,可以忽略
}
]
},
"type":"futures",
"updateTime":1576281599000
}
]
}
GET /sapi/v1/managed-subaccount/accountSnapshot
权重(IP): 2400
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | ||
type | STRING | YES | "SPOT"(现货), "MARGIN"(全仓), "FUTURES"(U本位合约) |
startTime | LONG | NO | |
endTime | LONG | NO | |
limit | INT | NO | min 7, max 30, default 7 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 查询时间范围最大不得超过30天
- 仅支持查询最近 1 个月数据
- 若startTime和endTime没传,则默认返回最近7天数据
查询托管子账户的划转记录(适用投资人母账户) (USER_DATA)
响应
{
managerSubTransferHistoryVos: [
{
fromEmail: "test_0_virtual@kq3kno9imanagedsub.com"
fromAccountType: "SPOT"
toEmail: "wdywl0lddakh@test.com"
toAccountType: "SPOT"
asset: "BNB"
amount: "0.01"
scheduledData: 1679416673000
createTime: 1679416673000
status: "SUCCESS"
tranId: 91077779
},
{
fromEmail: "wdywl0lddakh@test.com"
fromAccountType: "SPOT"
toEmail: "test_0_virtual@kq3kno9imanagedsub.com"
toAccountType: "SPOT"
asset: "BNB"
amount: "1"
scheduledData: 1679416616000
createTime: 1679416616000
status: "SUCCESS"
tranId: 91077676
}
]
count: 2
}
GET /sapi/v1/managed-subaccount/queryTransLogForInvestor
投资人可以根据此接口查询其托管子账户划转记录。此接口可供托管子账户的投资者使用。托管子账户是为重视资产配置与账户应用灵活性,并同时将交易委托专业交易团队的投资者的子账户类型。 请参阅链接
权重(UID): 60
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | 托管子账户邮箱 | |
startTime | LONG | YES | 开始时间 |
endTime | LONG | YES | 结束时间(开始时间结束时间间隔不能超过半年) |
page | INT | YES | 页数 |
limit | INT | YES | 每页数量 (最大值: 500) |
transfers | STRING | NO | 划转方向 (from/to) |
transferFunctionAccountType | STRING | NO | 划转账户类型 (SPOT/MARGIN/ISOLATED_MARGIN/USDT_FUTURE/COIN_FUTURE) |
查询托管子账户的划转记录(适用交易团队母账户)(USER_DATA)
响应
{
managerSubTransferHistoryVos: [
{
fromEmail: "test_0_virtual@kq3kno9imanagedsub.com"
fromAccountType: "SPOT"
toEmail: "wdywl0lddakh@test.com"
toAccountType: "SPOT"
asset: "BNB"
amount: "0.01"
scheduledData: 1679416673000
createTime: 1679416673000
status: "SUCCESS"
tranId: 91077779
},
{
fromEmail: "wdywl0lddakh@test.com"
fromAccountType: "SPOT"
toEmail: "test_0_virtual@kq3kno9imanagedsub.com"
toAccountType: "SPOT"
asset: "BNB"
amount: "1"
scheduledData: 1679416616000
createTime: 1679416616000
status: "SUCCESS"
tranId: 91077676
}
]
count: 2
}
GET /sapi/v1/managed-subaccount/queryTransLogForTradeParent
交易团队可以根据此接口查询其托管子账户划转记录。此接口可供托管子账户的交易团队使用。托管子账户是为重视资产配置与账户应用灵活性,并同时将交易委托专业交易团队的投资者的子账户类型。 请参阅链接
权重(UID): 60
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | 托管子账户邮箱 | |
startTime | LONG | YES | 开始时间 |
endTime | LONG | YES | 结束时间(开始时间结束时间间隔不能超过半年) |
page | INT | YES | 页数 |
limit | INT | YES | 每页数量 (最大值: 500) |
transfers | STRING | NO | 划转方向 (FROM/TO) |
transferFunctionAccountType | STRING | NO | 划转账户类型 (SPOT/MARGIN/ISOLATED_MARGIN/USDT_FUTURE/COIN_FUTURE) |
投资人账户查询托管子账户期货资产 (适用投资人母账户) (USER_DATA)
响应
{
"code": "200",
"message": "OK",
"snapshotVos": [
{
"type": "FUTURES",
"updateTime": 1672893855394,
"data": {
"assets": [
{
"asset": "USDT",
"marginBalance": 100,
"walletBalance": 120
}
],
"position": [
{
"symbol": "BTCUSDT",
"entryPrice": 17000,
"markPrice": 17000,
"positionAmt": 0.0001
}
]
}
}
]
}
GET /sapi/v1/managed-subaccount/fetch-future-asset
投资人可以根据此接口查询其托管子账户期货资产
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | 托管子账户邮箱 |
投资人账户查询托管子账户杠杆资产 (适用投资人母账户) (USER_DATA)
响应
{
marginLevel:"999"
totalAssetOfBtc:"0"
totalLiabilityOfBtc:"0"
totalNetAssetOfBtc:"0"
userAssets:[
0:{
asset:"MATIC"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
1:{
asset:"VET"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
2:{
asset:"BAKE"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
3:{
asset:"SHIB"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
4:{
asset:"USDT"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
5:{
asset:"DOGE"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
6:{
asset:"AAVE"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
7:{
asset:"ONT"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
8:{
asset:"XRP"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
9:{
asset:"XLM"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
10:{
asset:"LINK"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
11:{
asset:"QTUM"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
12:{
asset:"ETHW"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
13:{
asset:"XTZ"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
14:{
asset:"LUNA"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
15:{
asset:"EUR"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
16:{
asset:"IOST"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
17:{
asset:"BCH"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
18:{
asset:"BTC"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
19:{
asset:"IOTA"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
20:{
asset:"CREAM"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
21:{
asset:"BAT"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
22:{
asset:"BNB"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
23:{
asset:"ETH"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
24:{
asset:"ZEC"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
25:{
asset:"USDC"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
26:{
asset:"LTC"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
27:{
asset:"BUSD"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
28:{
asset:"ZIL"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
29:{
asset:"THETA"
borrowed:"0"
free:"0"
interest:"0"
locked:"0"
netAsset:"0"
}
]
}
GET /sapi/v1/managed-subaccount/marginAsset
投资人可以根据此接口查询其托管子账户杠杆资产
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | 托管子账户邮箱 |
查询子账户资产(适用主账户)(USER_DATA)
响应
{
"balances":[
{
"asset":"ADA",
"free":"10000",
"locked":"0"
},
{
"asset":"BNB",
"free":"10003",
"locked":"0"
},
{
"asset":"BTC",
"free":"11467.6399",
"locked":"0"
}
]
}
GET /sapi/v4/sub-account/assets
获取子账户资产
权重(UID): 60
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | 托管子账户邮箱 | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
查询托管子账户列表 (适用投资人母账户)(USER_DATA)
响应
{
"total": 3,
"managerSubUserInfoVoList": [
{
"rootUserId": 1000138475670,
"managersubUserId": 1000137842513,
"bindParentUserId": 1000138475669,
"email": "test_0_virtual@kq3kno9imanagedsub.com",
"insertTimeStamp": 1678435149000,
"bindParentEmail": "wdyw8xsh8pey@test.com",
"isSubUserEnabled": true,
"isUserActive": true,
"isMarginEnabled": false,
"isFutureEnabled": false,
"isSignedLVTRiskAgreement": false
},
{
"rootUserId": 1000138475670,
"managersubUserId": 1000137842514,
"bindParentUserId": 1000138475669,
"email": "test_1_virtual@4qd2u7zxmanagedsub.com",
"insertTimeStamp": 1678435152000,
"bindParentEmail": "wdyw8xsh8pey@test.com",
"isSubUserEnabled": true,
"isUserActive": true,
"isMarginEnabled": false,
"isFutureEnabled": false,
"isSignedLVTRiskAgreement": false
},
{
"rootUserId": 1000138475670,
"managersubUserId": 1000137842515,
"bindParentUserId": 1000138475669,
"email": "test_2_virtual@akc05o8hmanagedsub.com",
"insertTimeStamp": 1678435153000,
"bindParentEmail": "wdyw8xsh8pey@test.com",
"isSubUserEnabled": true,
"isUserActive": true,
"isMarginEnabled": false,
"isFutureEnabled": false,
"isSignedLVTRiskAgreement": false
}
]
}
GET /sapi/v1/managed-subaccount/info
获取投资人之托管子账户列表
权重(UID): 60
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | NO | 托管子账户邮箱 | |
page | INT | NO | 默认值: 1 |
limit | INT | NO | 默认值: 20, 最大值: 20 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
查询子账户交易量统计列表 (适用母账户)(USER_DATA)
响应
{
"recent30BtcTotal": "0",
"recent30BtcFuturesTotal": "0",
"recent30BtcMarginTotal": "0",
"recent30BusdTotal": "0",
"recent30BusdFuturesTotal": "0",
"recent30BusdMarginTotal": "0",
"tradeInfoVos": []
}
{
"recent30BtcTotal": "0",
"recent30BtcFuturesTotal": "0",
"recent30BtcMarginTotal": "0",
"recent30BusdTotal": "0",
"recent30BusdFuturesTotal": "0",
"recent30BusdMarginTotal": "0",
"tradeInfoVos": [
{
"userId": 1000138138384,
"btc": 0,
"btcFutures": 0,
"btcMargin": 0,
"busd": 0,
"busdFutures": 0,
"busdMargin": 0,
"date": 1676851200000
},
{
"userId": 1000138138384,
"btc": 0,
"btcFutures": 0,
"btcMargin": 0,
"busd": 0,
"busdFutures": 0,
"busdMargin": 0,
"date": 1676937600000
},
{
"userId": 1000138138384,
"btc": 0,
"btcFutures": 0,
"btcMargin": 0,
"busd": 0,
"busdFutures": 0,
"busdMargin": 0,
"date": 1677024000000
}
]
}
GET /sapi/v1/sub-account/transaction-statistics
查询子账户交易量统计列表 (适用母账户)
权重(UID): 60
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | Yes | 子账户邮箱 | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
获取托管子账户充值地址 (适用投资人母账户)(USER_DATA)
响应
{
"coin": "USDT",
"address": "0x206c22d833bb0bb2102da6b7c7d4c3eb14bcf73d",
"tag": "",
"url": "https://etherscan.io/address/0x206c22d833bb0bb2102da6b7c7d4c3eb14bcf73d"
}
GET /sapi/v1/managed-subaccount/deposit/address
获取投资人之托管子账户充值地址
权重(UID): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | 托管子账户邮箱 | |
coin | STRING | YES | |
network | STRING | NO | 网络可以在GET /sapi/v1/capital/deposit/address 获取 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
network
不传时,返回该coin
默认的network
.
为子账户开通期权(适用主账户)(USER_DATA)
响应
{
"email":"123@test.com",
"isEOptionsEnabled": true // true or false
}
POST /sapi/v1/sub-account/eoptions/enable
为子账户开通期权 (适用主账户)
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
STRING | YES | 托管子账户邮箱 | |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
查询托管子账户的划转记录(适用交易团队子账户)(USER_DATA)
响应
{
"managerSubTransferHistoryVos": [
{
"fromEmail": "test_0_virtual@kq3kno9imanagedsub.com",
"fromAccountType": "SPOT",
"toEmail": "wdywl0lddakh@test.com",
"toAccountType": "SPOT",
"asset": "BNB",
"amount": "0.01",
"scheduledData": 1679416673000,
"createTime": 1679416673000,
"status": "SUCCESS",
"tranId": 91077779
},
{
"fromEmail": "wdywl0lddakh@test.com",
"fromAccountType": "SPOT",
"toEmail": "test_0_virtual@kq3kno9imanagedsub.com",
"toAccountType": "SPOT",
"asset": "BNB",
"amount": "1",
"scheduledData": 1679416616000,
"createTime": 1679416616000,
"status": "SUCCESS",
"tranId": 91077676
}
],
"count": 2
}
GET /sapi/v1/managed-subaccount/query-trans-log
查询托管子账户的划转记录(适用交易团队子账户)
权重(UID): 60
参数:
Name | Type | Mandatory | Description |
---|---|---|---|
startTime | LONG | YES | 开始时间 |
endTime | LONG | YES | 结束时间(开始时间结束时间间隔不能超过半年) |
page | INT | YES | 页数 |
limit | INT | YES | 每页数量 (最大值: 500) |
transfers | STRING | NO | 划转方向 (FROM/TO) |
transferFunctionAccountType | STRING | NO | 划转账户类型 (SPOT/MARGIN/ISOLATED_MARGIN/USDT_FUTURE/COIN_FUTURE) |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
行情接口
测试服务器连通性
响应
{}
GET /api/v3/ping
测试能否联通 Rest API。
权重(IP): 1
参数:
NONE
数据源: 缓存
获取服务器时间
响应
{
"serverTime": 1499827319559
}
GET /api/v3/time
测试能否联通 Rest API 并 获取服务器时间。
权重(IP): 1
参数:
NONE
数据源: 缓存
交易规范信息
响应
{
"timezone": "UTC",
"serverTime": 1565246363776,
"rateLimits": [
{
//这些在"限制种类 (rateLimitType)"下的"枚举定义"部分中定义
//所有限制都是可选的
}
],
"exchangeFilters": [
//这些是"过滤器"部分中定义的过滤器
//所有限制都是可选的
],
"symbols": [
{
"symbol": "ETHBTC",
"status": "TRADING",
"baseAsset": "ETH",
"baseAssetPrecision": 8,
"quoteAsset": "BTC",
"quotePrecision": 8,
"quoteAssetPrecision": 8,
"orderTypes": [
"LIMIT",
"LIMIT_MAKER",
"MARKET",
"STOP_LOSS",
"STOP_LOSS_LIMIT",
"TAKE_PROFIT",
"TAKE_PROFIT_LIMIT"
],
"icebergAllowed": true,
"ocoAllowed": true,
"quoteOrderQtyMarketAllowed": false,
"allowTrailingStop": false,
"isSpotTradingAllowed": true,
"isMarginTradingAllowed": true,
"cancelReplaceAllowed": false,
"filters": [
//这些在"过滤器"部分中定义
//所有限制都是可选的
],
"permissions": [],
"permissionSets": [
[
"SPOT",
"MARGIN"
]
],
"defaultSelfTradePreventionMode": "NONE",
"allowedSelfTradePreventionModes": [
"NONE"
]
}
]
}
GET /api/v3/exchangeInfo
获取交易规则和交易对信息。
权重(IP): 20
参数:
有四种用法
用法 | 举例 |
---|---|
不需要交易对 | curl -X GET "https://api.binance.com/api/v3/exchangeInfo" |
单个交易对 | curl -X GET "https://api.binance.com/api/v3/exchangeInfo?symbol=BNBBTC" |
多个交易对 | curl -X GET "https://api.binance.com/api/v3/exchangeInfo?symbols=%5B%22BNBBTC%22,%22BTCUSDT%22%5D" 或者 curl -g -X GET 'https://api.binance.com/api/v3/exchangeInfo?symbols=["BTCUSDT","BNBBTC"]' |
交易权限 | curl -X GET "https://api.binance.com/api/v3/exchangeInfo?permissions=SPOT" 或者 curl -X GET "https://api.binance.com/api/v3/exchangeInfo?permissions=%5B%22MARGIN%22%2C%5D" 或者 curl -g -X GET 'https://api.binance.com/api/v3/exchangeInfo?permissions=["MARGIN",]' |
备注:
- 如果参数
symbol
或者symbols
提供的交易对不存在, 系统会返回错误并提示交易对不正确. - 所有的参数都是可选的.
permissions
支持单个或者多个值, 比如SPOT
,["MARGIN"]
.- 如果
permissions
值没有提供, 其默认值为["SPOT","MARGIN"]
.- 如果想显示所有交易权限,需要分别指定(比如,
["SPOT","MARGIN",...]
). 从 账户与交易对权限 查看交易权限列表.
- 如果想显示所有交易权限,需要分别指定(比如,
解释响应中的 permissionSets
:
[["A","B"]]
- 有权限"A"或权限"B"的账户可以下订单。[["A"],["B"]]
- 有权限"A"和权限"B"的账户可以下订单。[["A"],["B","C"]]
- 有权限"A"和权限"B"或权限"C"的账户可以下订单。(此处应用的是包含或,而不是排除或,因此账户可以同时拥有权限"B"和权限"C"。)
数据源: 缓存
深度信息
响应
{
"lastUpdateId": 1027024,
"bids": [
[
"4.00000000", // 价位
"431.00000000" // 挂单量
]
],
"asks": [
[
"4.00000200",
"12.00000000"
]
]
}
GET /api/v3/depth
权重(IP):
基于限制调整:
限制 | 权重 |
---|---|
1-100 | 5 |
101-500 | 25 |
501-1000 | 50 |
1001-5000 | 250 |
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
limit | INT | NO | 默认 100; 最大 5000. 可选值:[5, 10, 20, 50, 100, 500, 1000, 5000] 如果 limit > 5000, 最多返回5000条数据. |
数据源: 缓存
近期成交列表
响应
[
{
"id": 28457,
"price": "4.00000100",
"qty": "12.00000000",
"time": 1499865549590, // 交易成交时间, 和websocket中的T一致.
"isBuyerMaker": true,
"isBestMatch": true
}
]
GET /api/v3/trades
获取近期成交
权重(IP): 25
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
limit | INT | NO | 默认 500; 最大值 1000. |
数据源: 缓存
查询历史成交
响应
[
{
"id": 28457,
"price": "4.00000100",
"qty": "12.00000000",
"quoteQty": "48.000012",
"time": 1499865549590,
"isBuyerMaker": true,
"isBestMatch": true
}
]
GET /api/v3/historicalTrades
获取历史成交。
权重(IP): 25
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
limit | INT | NO | 默认 500; 最大值 1000. |
fromId | LONG | NO | 从哪一条成交id开始返回. 缺省返回最近的成交记录。 |
数据源: 数据库
近期成交(归集)
响应
[
{
"a": 26129, // 归集成交ID
"p": "0.01633102", // 成交价
"q": "4.70443515", // 成交量
"f": 27781, // 被归集的首个成交ID
"l": 27781, // 被归集的末个成交ID
"T": 1498793709153, // 成交时间
"m": true, // 是否为主动卖出单
"M": true // 是否为最优撮合单(可忽略,目前总为最优撮合)
}
]
GET /api/v3/aggTrades
归集交易与逐笔交易的区别在于,同一价格、同一方向、同一时间的trade会被聚合为一条
权重(IP): 2
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
fromId | LONG | NO | 从包含fromId的成交id开始返回结果 |
startTime | LONG | NO | 从该时刻之后的成交记录开始返回结果 |
endTime | LONG | NO | 返回该时刻为止的成交记录 |
limit | INT | NO | 默认 500; 最大 1000. |
- 如果没有发送任何筛选参数(fromId, startTime,endTime),默认返回最近的成交记录
- 如果一个trade有下面的值,表示这是一个重复的记录,并被标记为无效(invalid):
- p = '0' // price
- q = '0' // qty
- f = -1 // first_trade_id
- l = -1 // last_trade_id
数据源: 数据库
K线数据
响应
[
[
1499040000000, // k线开盘时间
"0.01634790", // 开盘价
"0.80000000", // 最高价
"0.01575800", // 最低价
"0.01577100", // 收盘价(当前K线未结束的即为最新价)
"148976.11427815", // 成交量
1499644799999, // k线收盘时间
"2434.19055334", // 成交额
308, // 成交笔数
"1756.87402397", // 主动买入成交量
"28.46694368", // 主动买入成交额
"17928899.62484339" // 请忽略该参数
]
]
GET /api/v3/klines
每根K线代表一个交易对。
每根K线的开盘时间可视为唯一ID
权重(IP): 2
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
interval | ENUM | YES | 详见枚举定义:K线间隔 |
startTime | LONG | NO | |
endTime | LONG | NO | |
timeZone | STRING | NO | 默认: 0 (UTC) |
limit | INT | NO | 默认 500; 最大 1000. |
- 如果未发送 startTime 和 endTime ,默认返回最近的交易。
timeZone
支持的值包括:- 小时和分钟(例如
-1:00
,05:45
) - 仅小时(例如
0
,8
,4
) - 接受的值范围严格为 [-12:00 到 +14:00](包括边界)
- 小时和分钟(例如
- 如果提供了
timeZone
,K线间隔将在该时区中解释,而不是在UTC中。 - 请注意,无论
timeZone
如何,startTime
和endTime
始终以UTC时区解释。
数据源: 数据库
当前平均价格
响应
{
"mins": 5,
"price": "9.35751834",
"closeTime": 1694061154503
}
GET /api/v3/avgPrice
权重(IP): 2
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES |
数据源: 缓存
UIK线数据
响应
[
[
1499040000000, // k线开盘时间
"0.01634790", // 开盘价
"0.80000000", // 最高价
"0.01575800", // 最低价
"0.01577100", // 收盘价(当前K线未结束的即为最新价)
"148976.11427815", // 成交量
1499644799999, // k线收盘时间
"2434.19055334", // 成交额
308, // 成交笔数
"1756.87402397", // 主动买入成交量
"28.46694368", // 主动买入成交额
"0" // 请忽略该参数
]
]
GET /api/v3/uiKlines
请求参数与响应和k线接口相同。
uiKlines
返回修改后的k线数据,针对k线图的呈现进行了优化。
权重(IP): 2
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
interval | ENUM | YES | |
startTime | LONG | NO | |
endTime | LONG | NO | |
timeZone | STRING | NO | Default: 0 (UTC) |
limit | INT | NO | 默认 500; 最大 1000. |
- 如果未发送 startTime 和 endTime ,默认返回最近的交易。
timeZone
支持的值包括:- 小时和分钟(例如
-1:00
,05:45
) - 仅小时(例如
0
,8
,4
) - 接受的值范围严格为 [-12:00 到 +14:00](包括边界)
- 小时和分钟(例如
- 如果提供了
timeZone
,K线间隔将在该时区中解释,而不是在UTC中。 - 请注意,无论
timeZone
如何,startTime
和endTime
始终以UTC时区解释。
数据源: 数据库
24hr 价格变动情况
响应 - FULL
{
"symbol": "BNBBTC",
"priceChange": "-94.99999800",
"priceChangePercent": "-95.960",
"weightedAvgPrice": "0.29628482",
"prevClosePrice": "0.10002000",
"lastPrice": "4.00000200",
"lastQty": "200.00000000",
"bidPrice": "4.00000000",
"bidQty": "100.00000000",
"askPrice": "4.00000200",
"askQty": "100.00000000",
"openPrice": "99.00000000",
"highPrice": "100.00000000",
"lowPrice": "0.10000000",
"volume": "8913.30000000",
"quoteVolume": "15.30000000",
"openTime": 1499783499040,
"closeTime": 1499869899040,
"firstId": 28385, // 首笔成交id
"lastId": 28460, // 末笔成交id
"count": 76 // 成交笔数
}
OR
[
{
"symbol": "BNBBTC",
"priceChange": "-94.99999800",
"priceChangePercent": "-95.960",
"weightedAvgPrice": "0.29628482",
"prevClosePrice": "0.10002000",
"lastPrice": "4.00000200",
"lastQty": "200.00000000",
"bidPrice": "4.00000000",
"bidQty": "100.00000000",
"askPrice": "4.00000200",
"askQty": "100.00000000",
"openPrice": "99.00000000",
"highPrice": "100.00000000",
"lowPrice": "0.10000000",
"volume": "8913.30000000",
"quoteVolume": "15.30000000",
"openTime": 1499783499040,
"closeTime": 1499869899040,
"firstId": 28385,
"lastId": 28460,
"count": 76
}
]
Response - MINI
{
"symbol": "BNBBTC", // 交易对
"openPrice": "99.00000000", // 间隔开盘价
"highPrice": "100.00000000", // 间隔最高价
"lowPrice": "0.10000000", // 间隔最低价
"lastPrice": "4.00000200", // 间隔收盘价
"volume": "8913.30000000", // 总交易量 (base asset)
"quoteVolume": "15.30000000", // 总交易量 (quote asset)
"openTime": 1499783499040, // ticker间隔的开始时间
"closeTime": 1499869899040, // ticker间隔的结束时间
"firstId": 28385, // 统计时间内的第一笔trade id
"lastId": 28460, // 统计时间内的最后一笔trade id
"count": 76 // 统计时间内交易笔数
}
OR
[
{
"symbol": "BNBBTC",
"openPrice": "99.00000000",
"highPrice": "100.00000000",
"lowPrice": "0.10000000",
"lastPrice": "4.00000200",
"volume": "8913.30000000",
"quoteVolume": "15.30000000",
"openTime": 1499783499040,
"closeTime": 1499869899040,
"firstId": 28385,
"lastId": 28460,
"count": 76
},
{
"symbol": "LTCBTC",
"openPrice": "0.07000000",
"highPrice": "0.07000000",
"lowPrice": "0.07000000",
"lastPrice": "0.07000000",
"volume": "11.00000000",
"quoteVolume": "0.77000000",
"openTime": 1656908192899,
"closeTime": 1656994592899,
"firstId": 0,
"lastId": 10,
"count": 11
}
]
GET /api/v3/ticker/24hr
24 小时滚动窗口价格变动数据。 请注意,不携带symbol参数会返回全部交易对数据,不仅数据庞大,而且权重极高
权重(IP):
参数 | 提供Symbol数量 | 权重 |
---|---|---|
symbol | 1 | 2 |
不提供symbol | 80 | |
symbols | 1-20 | 2 |
21-100 | 40 | |
>= 101 | 80 | |
不提供symbol | 80 |
参数:
名称 | 类型 | 是否强制要求 | 详情 |
---|---|---|---|
symbol | STRING | NO | 参数 `symbol` 和 `symbols` 不可以一起使用 如果都不提供, 所有symbol的ticker数据都会返回. symbols参数可接受的格式: ["BTCUSDT","BNBUSDT"] 或 %5B%22BTCUSDT%22,%22BNBUSDT%22%5D |
symbols | STRING | NO | |
type | ENUM | NO | 可接受的参数: FULL 或 MINI. 如果不提供, 默认值为 FULL |
数据源: 缓存
交易日行情(Ticker)
响应 - FULL
{
"symbol": "BTCUSDT",
"priceChange": "-83.13000000", // 绝对价格变动
"priceChangePercent": "-0.317", // 相对价格变动百分比
"weightedAvgPrice": "26234.58803036", // 报价成交量 / 成交量
"openPrice": "26304.80000000",
"highPrice": "26397.46000000",
"lowPrice": "26088.34000000",
"lastPrice": "26221.67000000",
"volume": "18495.35066000", // 基础资产的成交量
"quoteVolume": "485217905.04210480", // 报价资产的成交量
"openTime": 1695686400000,
"closeTime": 1695772799999,
"firstId": 3220151555, // 区间内的第一个交易的交易ID
"lastId": 3220849281, // 区间内的最后一个交易的交易ID
"count": 697727 // 区间内的交易数量
}
或者
[
{
"symbol": "BTCUSDT",
"priceChange": "-83.13000000",
"priceChangePercent": "-0.317",
"weightedAvgPrice": "26234.58803036",
"openPrice": "26304.80000000",
"highPrice": "26397.46000000",
"lowPrice": "26088.34000000",
"lastPrice": "26221.67000000",
"volume": "18495.35066000",
"quoteVolume": "485217905.04210480",
"openTime": 1695686400000,
"closeTime": 1695772799999,
"firstId": 3220151555,
"lastId": 3220849281,
"count": 697727
},
{
"symbol": "BNBUSDT",
"priceChange": "2.60000000",
"priceChangePercent": "1.238",
"weightedAvgPrice": "211.92276958",
"openPrice": "210.00000000",
"highPrice": "213.70000000",
"lowPrice": "209.70000000",
"lastPrice": "212.60000000",
"volume": "280709.58900000",
"quoteVolume": "59488753.54750000",
"openTime": 1695686400000,
"closeTime": 1695772799999,
"firstId": 672397461,
"lastId": 672496158,
"count": 98698
}
]
响应: - MINI
{
"symbol": "BTCUSDT",
"openPrice": "26304.80000000",
"highPrice": "26397.46000000",
"lowPrice": "26088.34000000",
"lastPrice": "26221.67000000",
"volume": "18495.35066000", // 基础资产的成交量
"quoteVolume": "485217905.04210480", // 报价资产的成交量
"openTime": 1695686400000,
"closeTime": 1695772799999,
"firstId": 3220151555, // 区间内的第一个交易的交易ID
"lastId": 3220849281, // 区间内的最后一个交易的交易ID
"count": 697727 // 区间内的交易数量
}
或者
[
{
"symbol": "BTCUSDT",
"openPrice": "26304.80000000",
"highPrice": "26397.46000000",
"lowPrice": "26088.34000000",
"lastPrice": "26221.67000000",
"volume": "18495.35066000",
"quoteVolume": "485217905.04210480",
"openTime": 1695686400000,
"closeTime": 1695772799999,
"firstId": 3220151555,
"lastId": 3220849281,
"count": 697727
},
{
"symbol": "BNBUSDT",
"openPrice": "210.00000000",
"highPrice": "213.70000000",
"lowPrice": "209.70000000",
"lastPrice": "212.60000000",
"volume": "280709.58900000",
"quoteVolume": "59488753.54750000",
"openTime": 1695686400000,
"closeTime": 1695772799999,
"firstId": 672397461,
"lastId": 672496158,
"count": 98698
}
]
GET /api/v3/ticker/tradingDay
交易日价格变动统计。
权重:
每个交易对占用4个权重.
当请求中的交易对数量超过50,此请求的权重将限制在200。
参数:
参数名 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | symbol 或者 symbols 必须提供之一 symbols 可以接受的格式: ["BTCUSDT","BNBUSDT"] 或者 %5B%22BTCUSDT%22,%22BNBUSDT%22%5D symbols 最多可以发送100个 |
symbols | |||
timeZone | STRING | NO | Default: 0 (UTC) |
type | ENUM | NO | 可接受值: FULL 或 MINI 默认值: FULL |
注意:
timeZone
支持的值包括:- 小时和分钟(例如
-1:00
,05:45
) - 仅小时(例如
0
,8
,4
)
- 小时和分钟(例如
数据源: 数据库
最新价格
响应
{
"symbol": "LTCBTC",
"price": "4.00000200"
}
OR
[
{
"symbol": "LTCBTC",
"price": "4.00000200"
},
{
"symbol": "ETHBTC",
"price": "0.07946600"
}
]
GET /api/v3/ticker/price
获取交易对最新价格
权重(IP):
参数 | Symbols数量 | 权重 |
---|---|---|
symbol | 1 | 2 |
不提供symbol | 4 | |
symbols | 不限 | 4 |
参数:
参数名 | 类型 | 是否强制 | 详情 |
---|---|---|---|
symbol | STRING | NO | 参数 `symbol` 和 `symbols` 不可以一起使用 如果都不提供, 所有`symbol`的价格数据都会返回 `symbols`参数可接受的格式: ["BTCUSDT","BNBUSDT"] 或 %5B%22BTCUSDT%22,%22BNBUSDT%22%5D |
symbols | STRING | NO |
- 不发送交易对参数,则会返回所有交易对信息
数据源: 缓存
当前最优挂单
响应
{
"symbol": "LTCBTC",
"bidPrice": "4.00000000",
"bidQty": "431.00000000",
"askPrice": "4.00000200",
"askQty": "9.00000000"
}
OR
[
{
"symbol": "LTCBTC",
"bidPrice": "4.00000000",
"bidQty": "431.00000000",
"askPrice": "4.00000200",
"askQty": "9.00000000"
},
{
"symbol": "ETHBTC",
"bidPrice": "0.07946700",
"bidQty": "9.00000000",
"askPrice": "100000.00000000",
"askQty": "1000.00000000"
}
]
GET /api/v3/ticker/bookTicker
返回当前最优的挂单(最高买单,最低卖单)
权重(IP):
参数 | Symbols数量 | 权重 |
---|---|---|
symbol | 1 | 2 |
不提供symbol | 4 | |
symbols | 不限 | 4 |
参数:
参数名 | 类型 | 是否强制 | 详情 |
---|---|---|---|
symbol | STRING | NO | 参数 `symbol` 和 `symbols` 不可以一起使用 如果都不提供, 所有symbol的价格数据都会返回. symbols参数可接受的格式: ["BTCUSDT","BNBUSDT"] 或 %5B%22BTCUSDT%22,%22BNBUSDT%22%5D |
symbols | STRING | NO |
数据源: 缓存
滚动窗口价格变动统计
响应 - FULL
{
"symbol": "BNBBTC",
"priceChange": "-8.00000000", // 价格变化
"priceChangePercent": "-88.889", // 价格变化百分比
"weightedAvgPrice": "2.60427807",
"openPrice": "9.00000000",
"highPrice": "9.00000000",
"lowPrice": "1.00000000",
"lastPrice": "1.00000000",
"volume": "187.00000000",
"quoteVolume": "487.00000000",
"openTime": 1641859200000, // ticker的开始时间
"closeTime": 1642031999999, // ticker的结束时间
"firstId": 0, // 统计时间内的第一笔trade id
"lastId": 60,
"count": 61 // 统计时间内交易笔数
}
或者
[
{
"symbol": "BTCUSDT",
"priceChange": "-154.13000000",
"priceChangePercent": "-0.740",
"weightedAvgPrice": "20677.46305250",
"openPrice": "20825.27000000",
"highPrice": "20972.46000000",
"lowPrice": "20327.92000000",
"lastPrice": "20671.14000000",
"volume": "72.65112300",
"quoteVolume": "1502240.91155513",
"openTime": 1655432400000,
"closeTime": 1655446835460,
"firstId": 11147809,
"lastId": 11149775,
"count": 1967
},
{
"symbol": "BNBBTC",
"priceChange": "0.00008530",
"priceChangePercent": "0.823",
"weightedAvgPrice": "0.01043129",
"openPrice": "0.01036170",
"highPrice": "0.01049850",
"lowPrice": "0.01033870",
"lastPrice": "0.01044700",
"volume": "166.67000000",
"quoteVolume": "1.73858301",
"openTime": 1655432400000,
"closeTime": 1655446835460,
"firstId": 2351674,
"lastId": 2352034,
"count": 361
}
]
响应 - MINI
{
"symbol": "LTCBTC",
"openPrice": "0.10000000",
"highPrice": "2.00000000",
"lowPrice": "0.10000000",
"lastPrice": "2.00000000",
"volume": "39.00000000",
"quoteVolume": "13.40000000", // 此k线内所有交易的price(价格) x volume(交易量)的总和
"openTime": 1656986580000, // ticker窗口的开始时间
"closeTime": 1657001016795, // ticker窗口的结束时间
"firstId": 0, // 首笔成交id
"lastId": 34,
"count": 35 // 统计时间内交易笔数
}
OR
[
{
"symbol": "BNBBTC",
"openPrice": "0.10000000",
"highPrice": "2.00000000",
"lowPrice": "0.10000000",
"lastPrice": "2.00000000",
"volume": "39.00000000",
"quoteVolume": "13.40000000", // 此k线内所有交易的price(价格) x volume(交易量)的总和
"openTime": 1656986880000, // ticker窗口的开始时间
"closeTime": 1657001297799, // ticker窗口的结束时间
"firstId": 0, // 首笔成交id
"lastId": 34,
"count": 35 // 统计时间内交易笔数
},
{
"symbol": "LTCBTC",
"openPrice": "0.07000000",
"highPrice": "0.07000000",
"lowPrice": "0.07000000",
"lastPrice": "0.07000000",
"volume": "33.00000000",
"quoteVolume": "2.31000000",
"openTime": 1656986880000,
"closeTime": 1657001297799,
"firstId": 0,
"lastId": 32,
"count": 33
}
]
GET /api/v3/ticker
注意: 此接口和 GET /api/v3/ticker/24hr
有所不同.
此接口统计的时间范围比请求的windowSize
多不超过59999ms.
接口的 openTime
是某一分钟的起始,而结束是当前的时间. 所以实际的统计区间会比请求的时间窗口多不超过59999ms.
比如, 结束时间 closeTime
是 1641287867099 (January 04, 2022 09:17:47:099 UTC) , windowSize
为 1d
. 那么开始时间 openTime
则为 1641201420000 (January 3, 2022, 09:17:00 UTC)
权重(IP):
4/交易对。
如果symbols
请求的交易对超过50, 上限是200。
参数
Name | Type | Mandatory | Description |
---|---|---|---|
symbol | STRING | YES | 提供 symbol 或者 symbols 其中之一 symbols 可以传入的格式: ["BTCUSDT","BNBUSDT"] 或 %5B%22BTCUSDT%22,%22BNBUSDT%22%5D symbols 允许最多100个交易对 |
symbols | |||
windowSize | ENUM | NO | 默认为 1d windowSize 支持的值: 如果是分钟: 1m, 2m, ..., 59m 如果是小时: 1h, 2h, ..., 23h 如果是天: 1d, ..., 7d 不可以组合使用,比如 1d2h |
type | ENUM | NO | 可接受的参数: FULL 或 MINI 如果不提供, 默认值为 FULL |
数据源: 数据库
Websocket 行情推送
- 本篇所列出的所有 wss 接口的 base URL 为: wss://stream.binance.com:9443 或者 wss://stream.binance.com:443
- Streams 有单一原始 stream 或组合 stream。
- 用户可以侦听/订阅数个数据流。
- 单一原始 streams 格式为 /ws/<streamName>
- 组合 streams 的 URL 格式为 /stream?streams=<streamName1>/<streamName2>/<streamName3>
- 订阅组合 streams 时,事件 payload 会以这样的格式封装: {"stream":"<streamName>","data":<rawPayload>}
- stream 名称中所有交易对均为 小写。
- 每个到 stream.binance.com 的链接有效期不超过24小时,请妥善处理断线重连。
- Websocket 服务器每3分钟发送Ping消息。
- 如果Websocket服务器在10分钟之内没有收到Pong消息应答,连接会被断开。
- 当客户收到ping消息,必需尽快回复pong消息,同时payload需要和ping消息一致。
- 未经请求的pong消息是被允许的,但是不会保证连接不断开。对于这些pong消息,建议payload为空
- wss://data-stream.binance.vision 可以用来订阅仅有市场信息的数据流。账户信息无法从此 URL 获得。
实时订阅/取消数据流
- 以下数据可以通过websocket发送以实现订阅或取消订阅数据流。示例如下。
- 请求中的
id
被用作唯一标识来区分来回传递的消息。以下格式被接受:- 64位有符号整数
- 字母数字字符串;最大长度36
null
- 如果相应内容中的
result
为null
,表示请求发送成功。
订阅一个信息流
响应
{
"result": null,
"id": 1
}
请求
{
"method": "SUBSCRIBE",
"params":
[
"btcusdt@aggTrade",
"btcusdt@depth"
],
"id": 1
}
取消订阅一个信息流
响应
{
"result": null,
"id": 312
}
- 请求
{
"method": "UNSUBSCRIBE",
"params":
[
"btcusdt@depth"
],
"id": 312
}
已订阅信息流
响应
{
"result": [
"btcusdt@aggTrade"
],
"id": 3
}
- 请求
{
"method": "LIST_SUBSCRIPTIONS",
"id": 3
}
设定属性
当前,唯一可以设置的属性是设置是否启用combined
("组合")信息流。
当使用/ws/
("原始信息流")进行连接时,combined属性设置为false
,而使用 /stream/
进行连接时则将属性设置为true
。
响应
{
"result": null,
"id": 5
}
- 请求
{
"method": "SET_PROPERTY",
"params":
[
"combined",
true
],
"id": 5
}
检索属性
响应
{
"result": true, // Indicates that combined is set to true.
"id": 2
}
- 请求
{
"method": "GET_PROPERTY",
"params":
[
"combined"
],
"id": 2
}
错误信息
错误信息 | 描述 |
---|---|
{"code": 0, "msg": "Unknown property"} | SET_PROPERTY 或 GET_PROPERTY 中应用的参数无效 |
{"code": 1, "msg": "Invalid value type: expected Boolean", "id": '%s'} | 仅接受true 或false |
{"code": 2, "msg": "Invalid request: property name must be a string"} | 提供的属性名无效 |
{"code": 2, "msg": "Invalid request: request ID must be an unsigned integer"} | 参数id 未提供或id 值是无效类型 |
{"code": 2, "msg": "Invalid request: unknown variant %s, expected one of SUBSCRIBE , UNSUBSCRIBE , LIST_SUBSCRIPTIONS , SET_PROPERTY , GET_PROPERTY at line 1 column 28"} |
错字提醒,或提供的值不是预期类型 |
{"code": 2, "msg": "Invalid request: too many parameters"} | 数据中提供了不必要参数 |
{"code": 2, "msg": "Invalid request: property name must be a string"} | 未提供属性名 |
{"code": 2, "msg": "Invalid request: missing field method at line 1 column 73"} |
数据未提供method |
{"code":3,"msg":"Invalid JSON: expected value at line %s column %s"} | JSON 语法有误. |
归集交易流
Payload:
{
"e": "aggTrade", // 事件类型
"E": 1672515782136, // 事件时间
"s": "BNBBTC", // 交易对
"a": 12345, // 归集交易ID
"p": "0.001", // 成交价格
"q": "100", // 成交数量
"f": 100, // 被归集的首个交易ID
"l": 105, // 被归集的末次交易ID
"T": 1672515782136, // 成交时间
"m": true, // 买方是否是做市方。如true,则此次成交是一个主动卖出单,否则是一个主动买入单。
"M": true // 请忽略该字段
}
归集交易 stream 推送交易信息,是对单一订单的集合。
Stream 名称: <symbol>@aggTrade
更新速度: 实时
逐笔交易
Payload:
{
"e": "trade", // 事件类型
"E": 1672515782136, // 事件时间
"s": "BNBBTC", // 交易对
"t": 12345, // 交易ID
"p": "0.001", // 成交价格
"q": "100", // 成交数量
"T": 1672515782136, // 成交时间
"m": true, // 买方是否是做市方。如true,则此次成交是一个主动卖出单,否则是一个主动买入单。
"M": true // 请忽略该字段
}
Stream 名称: <symbol>@trade
逐笔交易推送每一笔成交的信息。 成交(或者说交易)的定义是仅有一个吃单者与一个挂单者相互交易。
更新速度: 实时
UTC K线 Streams
Payload:
{
"e": "kline", // 事件类型
"E": 1672515782136, // 事件时间
"s": "BNBBTC", // 交易对
"k": {
"t": 123400000, // 这根K线的起始时间
"T": 123460000, // 这根K线的结束时间
"s": "BNBBTC", // 交易对
"i": "1m", // K线间隔
"f": 100, // 这根K线期间第一笔成交ID
"L": 200, // 这根K线期间末一笔成交ID
"o": "0.0010", // 这根K线期间第一笔成交价
"c": "0.0020", // 这根K线期间末一笔成交价
"h": "0.0025", // 这根K线期间最高成交价
"l": "0.0015", // 这根K线期间最低成交价
"v": "1000", // 这根K线期间成交量
"n": 100, // 这根K线期间成交笔数
"x": false, // 这根K线是否完结(是否已经开始下一根K线)
"q": "1.0000", // 这根K线期间成交额
"V": "500", // 主动买入的成交量
"Q": "0.500", // 主动买入的成交额
"B": "123456" // 忽略此参数
}
}
K线stream逐秒推送所请求的K线种类(最新一根K线)的更新。此更新是基于 UTC+0
时区的。
Stream 名称: <symbol>@kline_<interval>
更新速度: 1s
1000ms,其它间隔 2000ms
K线图间隔参数:
s -> 秒; m -> 分钟; h -> 小时; d -> 天; w -> 周; M -> 月
- 1s
- 1m
- 3m
- 5m
- 15m
- 30m
- 1h
- 2h
- 4h
- 6h
- 8h
- 12h
- 1d
- 3d
- 1w
- 1M
带有时区偏移量的K线
Payload:
{
"e": "kline", // 事件类型
"E": 1672515782136, // 事件时间
"s": "BNBBTC", // 交易对
"k": {
"t": 123400000, // 这根K线的起始时间
"T": 123460000, // 这根K线的结束时间
"s": "BNBBTC", // 交易对
"i": "1m", // K线间隔
"f": 100, // 这根K线期间第一笔成交ID
"L": 200, // 这根K线期间末一笔成交ID
"o": "0.0010", // 这根K线期间第一笔成交价
"c": "0.0020", // 这根K线期间末一笔成交价
"h": "0.0025", // 这根K线期间最高成交价
"l": "0.0015", // 这根K线期间最低成交价
"v": "1000", // 这根K线期间成交量
"n": 100, // 这根K线期间成交笔数
"x": false, // 这根K线是否完结(是否已经开始下一根K线)
"q": "1.0000", // 这根K线期间成交额
"V": "500", // 主动买入的成交量
"Q": "0.500", // 主动买入的成交额
"B": "123456" // 忽略此参数
}
}
K线stream逐秒推送所请求的K线种类(最新一根K线)的更新。此更新是基于 UTC+8
时区的。
UTC+8 时区偏移量:
- K线间隔的开始和结束时间会基于
UTC+8
时区。例如,1d
K线将在UTC+8
当天开始,并在UTC+8
当日完结时随之结束。 - 请注意,Payload中的
E
(event time),t
(start time)和T
(close time)是 Unix 时间戳,它们始终以 UTC 格式解释。
Stream 名称: <symbol>@kline_<interval>@+08:00
更新速度: 1s
1000ms,其它间隔 2000ms
按 Symbol 的精简Ticker
Payload:
{
"e": "24hrMiniTicker", // 事件类型
"E": 1672515782136, // 事件时间
"s": "BNBBTC", // 交易对
"c": "0.0025", // 最新成交价格
"o": "0.0010", // 24小时前开始第一笔成交价格
"h": "0.0025", // 24小时内最高成交价
"l": "0.0010", // 24小时内最低成交价
"v": "10000", // 成交量
"q": "18" // 成交额
}
按Symbol刷新的最近24小时精简ticker信息
Stream 名称: <symbol>@miniTicker
更新速度: 1000ms
全市场所有Symbol的精简Ticker
Payload:
[
{
// 数组每一个元素对应一个交易对,内容与 \<symbol\>@miniTicker相同
}
]
同上,只是推送所有交易对.需要注意的是,只有更新的ticker才会被推送.
Stream 名称: !miniTicker@arr
更新速度: 1000ms
按Symbol的完整Ticker
Payload:
{
"e": "24hrTicker", // 事件类型
"E": 1672515782136, // 事件时间
"s": "BNBBTC", // 交易对
"p": "0.0015", // 24小时价格变化
"P": "250.00", // 24小时价格变化(百分比)
"w": "0.0018", // 平均价格
"x": "0.0009", // 整整24小时之前,向前数的最后一次成交价格
"c": "0.0025", // 最新成交价格
"Q": "10", // 最新成交交易的成交量
"b": "0.0024", // 目前最高买单价
"B": "10", // 目前最高买单价的挂单量
"a": "0.0026", // 目前最低卖单价
"A": "100", // 目前最低卖单价的挂单量
"o": "0.0010", // 整整24小时前,向后数的第一次成交价格
"h": "0.0025", // 24小时内最高成交价
"l": "0.0010", // 24小时内最低成交价
"v": "10000", // 24小时内成交量
"q": "18", // 24小时内成交额
"O": 0, // 统计开始时间
"C": 86400000, // 统计结束时间
"F": 0, // 24小时内第一笔成交交易ID
"L": 18150, // 24小时内最后一笔成交交易ID
"n": 18151 // 24小时内成交数
}
每秒推送单个交易对的过去24小时滚动窗口标签统计信息。
Stream 名称: <symbol>@ticker
更新速度: 1000ms
全市场所有交易对的完整Ticker
Payload:
[
{
// Same as <symbol>@ticker payload
}
]
Stream 名称: !ticker@arr
更新速度: 1000ms
推送全市场所有交易对刷新的24小时完整ticker信息。需要注意的是,没有更新的ticker不会被推送。
按Symbol的最优挂单信息
Payload:
{
"u":400900217, // order book updateId
"s":"BNBUSDT", // 交易对
"b":"25.35190000", // 买单最优挂单价格
"B":"31.21000000", // 买单最优挂单数量
"a":"25.36520000", // 卖单最优挂单价格
"A":"40.66000000" // 卖单最优挂单数量
}
实时推送指定交易对最优挂单信息
多个 <symbol>@bookTicker
可以订阅在一个WebSocket连接上.
Stream 名称: <symbol>@bookTicker
更新速度: 1ms
平均价格
Payload:
{
"e": "avgPrice", // Event type
"E": 1693907033000, // Event time
"s": "BTCUSDT", // Symbol
"i": "5m", // Average price interval
"w": "25776.86000000", // Average price
"T": 1693907032213 // Last trade time
}
平均价格流推送在固定时间间隔内的平均价格变动。
Stream 名称: <symbol>@avgPrice
更新速度: 1000ms
有限档深度信息
Payload:
{
"lastUpdateId": 160, // Last update ID
"bids": [ // Bids to be updated
[
"0.0024", // Price level to be updated
"10" // Quantity
]
],
"asks": [ // Asks to be updated
[
"0.0026", // Price level to be updated
"100" // Quantity
]
]
}
每秒或每100毫秒推送有限档深度信息。levels表示几档买卖单信息, 可选 5/10/20档
Stream 名称: <symbol>@depth<levels>
或 <symbol>@depth<levels>@100ms
.
更新速度: 1000ms 或 100ms
增量深度信息
Payload:
{
"e": "depthUpdate", // 事件类型
"E": 1672515782136, // 事件时间
"s": "BNBBTC", // 交易对
"U": 157, // 从上次推送至今新增的第一个 update Id
"u": 160, // 从上次推送至今新增的最后一个 update Id
"b": [ // 变动的买单深度
[
"0.0024", // 变动的价格档位
"10" // 数量
]
],
"a": [ // 变动的卖单深度
[
"0.0026", // 变动的价格档位
"100" // 数量
]
]
}
每秒或每100毫秒推送orderbook的变化部分(如果有)
Stream 名称: <symbol>@depth
或 <symbol>@depth@100ms
更新速度: 1000ms 或 100ms
按Symbol的滚动窗口统计
Payload:
{
"e": "1hTicker", // Event type
"E": 1672515782136, // Event time
"s": "BNBBTC", // Symbol
"p": "0.0015", // Price change
"P": "250.00", // Price change percent
"o": "0.0010", // Open price
"h": "0.0025", // High price
"l": "0.0010", // Low price
"c": "0.0025", // Last price
"w": "0.0018", // Weighted average price
"v": "10000", // Total traded base asset volume
"q": "18", // Total traded quote asset volume
"O": 0, // Statistics open time
"C": 86400000, // Statistics close time
"F": 0, // First trade ID
"L": 18150, // Last trade Id
"n": 18151 // Total number of trades
}
单个symbol的滚动窗口统计, 支持多个时间窗口。
Stream 名称: <symbol>@ticker_<window_size>
Window Sizes: 1h, 4h,1d
更新速度: 1000ms
注意:
- 该数据流和 <symbol>@ticker
不一样。
- O
(open time
) 会在每分钟整点开始, 而 C
(closing time
)是当前更新时间。
- 实际统计的时间范围会比<window_size>
多不超过59999ms。
全市场滚动窗口统计
Payload:
[
{
// 同 <symbol>@ticker_<window-size> payload,
// 间隔内更新的每个symbol。
}
]
全市场symbols的滚动窗口ticker统计,计算于多个窗口。
注意:有变动的ticker才会推送。
Stream 名称: !ticker_<window-size>@arr
Window Size: 1h, 4h,1d
更新速度: 1000ms
如何正确在本地维护一个orderbook副本
- 订阅 wss://stream.binance.com:9443/ws/bnbbtc@depth
- 开始缓存收到的更新。同一个价位,后收到的更新覆盖前面的。
- 访问Rest接口 https://api.binance.com/api/v3/depth?symbol=BNBBTC&limit=1000 获得一个1000档的深度快照
- 将目前缓存到的信息中
u
<= 步骤3中获取到的快照中的lastUpdateId
的部分丢弃(丢弃更早的信息,已经过期)。 - 将深度快照中的内容更新到本地orderbook副本中,并从websocket接收到的第一个
U
<=lastUpdateId
+1 且u
>=lastUpdateId
+1 的event开始继续更新本地副本。 - 每一个新event的
U
应该恰好等于上一个event的u
+1,否则可能出现了丢包,请从step3重新进行初始化。 - 每一个event中的挂单量代表这个价格目前的挂单量绝对值,而不是相对变化。
- 如果某个价格对应的挂单量为0,表示该价位的挂单已经撤单或者被吃,应该移除这个价位。
注意: 因为深度快照对价格档位数量有限制,初始快照之外的价格档位并且没有数量变化的价格档位不会出现在增量深度的更新信息内。因此,即使应用来自增量深度的所有更新,这些价格档位也不会在本地 order book 中可见,所以本地的 order book 与真实的 order book 可能会有一些差异。 不过对于大多数用例,5000 的深度限制足以有效地了解市场和交易。
现货交易接口
测试下单 (TRADE)
响应
{}
或者
{
"standardCommissionForOrder": { // 订单交易的标准佣金率
"maker": "0.00000112",
"taker": "0.00000114",
},
"taxCommissionForOrder": { // 订单交易的税率
"maker": "0.00000112",
"taker": "0.00000114",
},
"discount": { // 以BNB支付时的标准佣金折扣。
"enabledForAccount": true,
"enabledForSymbol": true,
"discountAsset": "BNB",
"discount": "0.25000000" // 当用BNB支付佣金时,在标准佣金上按此比率打折
}
}
POST /api/v3/order/test
用于测试订单请求,但不会提交到撮合引擎
权重:
条件 | 请求权重 |
---|---|
没有 computeCommissionRates |
1 |
有 computeCommissionRates |
20 |
参数:
除了 POST /api/v3/order
所有参数,
下面参数也支持:
参数名 | 类型 | 是否必需 | 描述 |
---|---|---|---|
computeCommissionRates | BOOLEAN | NO | 默认值: false |
数据源: 缓存
下单 (TRADE)
Response ACK:
{
"symbol": "BTCUSDT",
"orderId": 28,
"orderListId": -1, // 订单列表ID,否则为 -1
"clientOrderId": "6gCrw2kRUAF9CvJDGP16IP",
"transactTime": 1507725176595
}
Response RESULT:
{
"symbol": "BTCUSDT",
"orderId": 28,
"orderListId": -1, // 订单列表ID,否则为 -1
"clientOrderId": "6gCrw2kRUAF9CvJDGP16IP",
"transactTime": 1507725176595,
"price": "0.00000000",
"origQty": "10.00000000",
"executedQty": "10.00000000",
"cummulativeQuoteQty": "10.00000000",
"status": "FILLED",
"timeInForce": "GTC",
"type": "MARKET",
"side": "SELL",
"workingTime": 1507725176595,
"selfTradePreventionMode": "NONE"
}
Response FULL:
{
"symbol": "BTCUSDT", // 交易对
"orderId": 28, // 系统的订单ID
"orderListId": -1, // 订单列表ID,否则为 -1
"clientOrderId": "6gCrw2kRUAF9CvJDGP16IP", // 客户自己设置的ID
"transactTime": 1507725176595, // 交易的时间戳
"price": "0.00000000", // 订单价格
"origQty": "10.00000000", // 用户设置的原始订单数量
"executedQty": "10.00000000", // 交易的订单数量
"cummulativeQuoteQty": "10.00000000", // 累计交易的金额
"status": "FILLED", // 订单状态
"timeInForce": "GTC", // 订单的时效方式
"type": "MARKET", // 订单类型, 比如市价单,现价单等
"side": "SELL", // 订单方向,买还是卖
"workingTime": 1507725176595, // 订单添加到 order book 的时间
"selfTradePreventionMode": "NONE", // 自我交易预防模式
"fills": [ // 订单中交易的信息
{
"price": "4000.00000000", // 交易的价格
"qty": "1.00000000", // 交易的数量
"commission": "4.00000000", // 手续费金额
"commissionAsset": "USDT", // 手续费的币种
"tradeId": 56 // 交易ID
},
{
"price": "3999.00000000",
"qty": "5.00000000",
"commission": "19.99500000",
"commissionAsset": "USDT",
"tradeId": 57
},
{
"price": "3998.00000000",
"qty": "2.00000000",
"commission": "7.99600000",
"commissionAsset": "USDT",
"tradeId": 58
},
{
"price": "3997.00000000",
"qty": "1.00000000",
"commission": "3.99700000",
"commissionAsset": "USDT",
"tradeId": 59
},
{
"price": "3995.00000000",
"qty": "1.00000000",
"commission": "3.99500000",
"commissionAsset": "USDT",
"tradeId": 60
}
]
}
POST /api/v3/order
发送下单。
权重(UID): 1 权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
side | ENUM | YES | 详见枚举定义:订单方向 |
type | ENUM | YES | 详见枚举定义:订单类型 |
timeInForce | ENUM | NO | 详见枚举定义:有效方式 |
quantity | DECIMAL | NO | |
quoteOrderQty | DECIMAL | NO | |
price | DECIMAL | NO | |
newClientOrderId | STRING | NO | 客户自定义的唯一订单ID。 如果未发送,则自动生成。 |
stopPrice | DECIMAL | NO | 仅 STOP_LOSS , STOP_LOSS_LIMIT , TAKE_PROFIT 和 TAKE_PROFIT_LIMIT 需要此参数。 |
trailingDelta | LONG | NO | 用于 STOP_LOSS , STOP_LOSS_LIMIT , TAKE_PROFIT 和 TAKE_PROFIT_LIMIT 类型的订单。更多追踪止盈止损订单细节, 请参考 追踪止盈止损(Trailing Stop)订单常见问题。 |
icebergQty | DECIMAL | NO | 仅使用 LIMIT , STOP_LOSS_LIMIT , 和 TAKE_PROFIT_LIMIT 创建新的 iceberg 订单时需要此参数。 |
newOrderRespType | ENUM | NO | 设置响应JSON 。ACK ,RESULT 或 FULL ;MARKET 和 LIMIT 订单类型默认为 FULL ,所有其他订单默认为 ACK 。 |
selfTradePreventionMode | ENUM | NO | 允许的 ENUM 取决于交易对的配置。支持的值有 EXPIRE_TAKER ,EXPIRE_MAKER ,EXPIRE_BOTH ,NONE 。 |
strategyId | INT | NO | |
strategyType | INT | NO | 不能低于 1000000 |
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
基于订单 type
不同,强制要求某些参数:
类型 | 强制要求的参数 |
---|---|
LIMIT |
timeInForce , quantity , price |
MARKET |
quantity 或者 quoteOrderQty |
STOP_LOSS |
quantity , stopPrice 或者 trailingDelta |
STOP_LOSS_LIMIT |
timeInForce , quantity , price , stopPrice 或者 trailingDelta |
TAKE_PROFIT |
quantity , stopPrice 或者 trailingDelta |
TAKE_PROFIT_LIMIT |
timeInForce , quantity , price , stopPrice 或者 trailingDelta |
LIMIT_MAKER |
quantity , price |
其他信息:
LIMIT_MAKER
是LIMIT
订单,如果它们立即匹配并成为吃单方将被拒绝。- 当触发
stopPrice
时,STOP_LOSS
和TAKE_PROFIT
将执行MARKET
订单。 - 任何
LIMIT
或LIMIT_MAKER
类型的订单都可以通过发送icebergQty
而成为iceberg
订单。 - 任何带有
icebergQty
的订单都必须将timeInForce
设置为GTC
。 - 使用
quantity
的市价单MARKET
明确的是用户想用市价单买入或卖出的数量。- 比如在
BTCUSDT
上下一个市价单,quantity
用户指明能够买进或者卖出多少BTC。
- 比如在
- 使用
quoteOrderQty
的市价单MARKET
明确的是通过买入(或卖出)想要花费(或获取)的报价资产数量; 此时的正确报单数量将会以市场流动性和quoteOrderQty
被计算出来。- 以
BTCUSDT
为例,quoteOrderQty=100
:- 下买单的时候, 订单会尽可能的买进价值100USDT的BTC.
- 下卖单的时候, 订单会尽可能的卖出价值100USDT的BTC.
- 以
- 使用
quoteOrderQty
的市价单MARKET
不会突破LOT_SIZE
的限制规则; 报单会按给定的quoteOrderQty
尽可能接近地被执行。 - 除非之前的订单已经成交, 不然设置了相同的
newClientOrderId
订单会被拒绝。 - 对于
STOP_LOSS
,STOP_LOSS_LIMIT
,TAKE_PROFIT_LIMIT
和TAKE_PROFIT
订单,trailingDelta
可以和stopPrice
一起使用.
MARKET版本和LIMIT版本针对市场价格触发订单价格规则:
- 价格高于市价:
止损
买入
,获利
卖出
- 价格低于市价:
止损
卖出
,获利
买入
关于 newOrderRespType
的三种选择
- Response ACK: 返回速度最快,不包含成交信息,信息量最少
- Response RESULT:返回速度居中,返回吃单成交的少量信息
- Response FULL: 返回速度最慢,返回吃单成交的详细信息
订单响应中的特定条件时才会出现的字段
订单响应中的有一些字段仅在满足特定条件时才会出现。这些订单响应可以来自下订单,查询订单或取消订单,并且可以包括订单列表类型。 下面列出了这些字段:
名称 | 描述 | 显示的条件 | 示例 |
---|---|---|---|
icebergQty |
冰山订单的数量。 | 只有在请求中发送 icebergQty 参数时才会出现。 |
"icebergQty": "0.00000000" |
preventedMatchId |
与 symbol 结合使用时,可用于查询因为 STP 导致订单失效的过期订单。 |
只有在因为 STP 导致订单失效时可见。 | "preventedMatchId": 0 |
preventedQuantity |
因为 STP 导致订单失效的数量。 | 只有在因为 STP 导致订单失效时可见。 | "preventedQuantity": "1.200000" |
stopPrice |
用于设置逻辑订单中的触发价。 | STOP_LOSS ,TAKE_PROFIT ,STOP_LOSS_LIMIT 和 TAKE_PROFIT_LIMIT 订单时可见。 |
"stopPrice": "23500.00000000" |
strategyId |
策略单ID; 用以关联此订单对应的交易策略。 | 如果在请求中添加了参数,则会出现。 | "strategyId": 37463720 |
strategyType |
策略单类型; 用以显示此订单对应的交易策略。 | 如果在请求中添加了参数,则会出现。 | "strategyType": 1000000 |
trailingDelta |
用以定义追踪止盈止损订单被触发的价格差。 | 出现在追踪止损订单中。 | "trailingDelta": 10 |
trailingTime |
追踪单被激活和跟踪价格变化的时间。 | 出现在追踪止损订单中。 | "trailingTime": -1 |
撤销订单 (TRADE)
响应
{
"symbol": "LTCBTC",
"origClientOrderId": "myOrder1",
"orderId": 4,
"orderListId": -1, // 订单列表ID,否则为 -1
"clientOrderId": "cancelMyOrder1",
"transactTime": 1684804350068,
"price": "2.00000000",
"origQty": "1.00000000",
"executedQty": "0.00000000",
"cummulativeQuoteQty": "0.00000000",
"status": "CANCELED",
"timeInForce": "GTC",
"type": "LIMIT",
"side": "BUY",
"selfTradePreventionMode": "NONE"
}
DELETE /api/v3/order
取消有效订单。
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
orderId | LONG | NO | |
origClientOrderId | STRING | NO | |
newClientOrderId | STRING | NO | 用户自定义的本次撤销操作的ID(注意不是被撤销的订单的自定义ID)。如无指定会自动赋值。 |
cancelRestrictions | ENUM | NO | 支持的值: ONLY_NEW - 如果订单状态为 NEW ,订单取消将成功。ONLY_PARTIALLY_FILLED - 如果订单状态为 PARTIALLY_FILLED ,订单取消将成功。 |
recvWindow | LONG | NO | 赋值不得大于 60000 |
timestamp | LONG | YES |
orderId
或 origClientOrderId
必须至少发送一个
数据源: 撮合引擎
关于 cancelRestrictions
- 如果
cancelRestrictions
值不是任何受支持的值,则错误将是:{"code": -1145,"msg": "Invalid cancelRestrictions"}
- 如果订单没有通过
cancelRestrictions
的条件,错误将是:{"code": -2011,"msg": "Order was not canceled due to cancel restrictions."}
注意: 响应示例没有显示所有可以出现的字段,更多请看 "订单响应中的特定条件时才会出现的字段" 部分。
撤销单一交易对的所有挂单 (TRADE)
响应
[
{
"symbol": "BTCUSDT",
"origClientOrderId": "E6APeyTJvkMvLMYMqu1KQ4",
"orderId": 11,
"orderListId": -1,
"clientOrderId": "pXLV6Hz6mprAcVYpVMTGgx",
"transactTime": 1684804350068,
"price": "0.089853",
"origQty": "0.178622",
"executedQty": "0.000000",
"cummulativeQuoteQty": "0.000000",
"status": "CANCELED",
"timeInForce": "GTC",
"type": "LIMIT",
"side": "BUY",
"selfTradePreventionMode": "NONE"
},
{
"symbol": "BTCUSDT",
"origClientOrderId": "A3EF2HCwxgZPFMrfwbgrhv",
"orderId": 13,
"orderListId": -1,
"clientOrderId": "pXLV6Hz6mprAcVYpVMTGgx",
"transactTime": 1684804350068,
"price": "0.090430",
"origQty": "0.178622",
"executedQty": "0.000000",
"cummulativeQuoteQty": "0.000000",
"status": "CANCELED",
"timeInForce": "GTC",
"type": "LIMIT",
"side": "BUY",
"selfTradePreventionMode": "NONE"
},
{
"orderListId": 1929,
"contingencyType": "OCO",
"listStatusType": "ALL_DONE",
"listOrderStatus": "ALL_DONE",
"listClientOrderId": "2inzWQdDvZLHbbAmAozX2N",
"transactionTime": 1585230948299,
"symbol": "BTCUSDT",
"orders": [
{
"symbol": "BTCUSDT",
"orderId": 20,
"clientOrderId": "CwOOIPHSmYywx6jZX77TdL"
},
{
"symbol": "BTCUSDT",
"orderId": 21,
"clientOrderId": "461cPg51vQjV3zIMOXNz39"
}
],
"orderReports": [
{
"symbol": "BTCUSDT",
"origClientOrderId": "CwOOIPHSmYywx6jZX77TdL",
"orderId": 20,
"orderListId": 1929,
"clientOrderId": "pXLV6Hz6mprAcVYpVMTGgx",
"transactTime": 1684804350068,
"price": "0.668611",
"origQty": "0.690354",
"executedQty": "0.000000",
"cummulativeQuoteQty": "0.000000",
"status": "CANCELED",
"timeInForce": "GTC",
"type": "STOP_LOSS_LIMIT",
"side": "BUY",
"stopPrice": "0.378131",
"icebergQty": "0.017083",
"selfTradePreventionMode": "NONE"
},
{
"symbol": "BTCUSDT",
"origClientOrderId": "461cPg51vQjV3zIMOXNz39",
"orderId": 21,
"orderListId": 1929,
"clientOrderId": "pXLV6Hz6mprAcVYpVMTGgx",
"transactTime": 1684804350068,
"price": "0.008791",
"origQty": "0.690354",
"executedQty": "0.000000",
"cummulativeQuoteQty": "0.000000",
"status": "CANCELED",
"timeInForce": "GTC",
"type": "LIMIT_MAKER",
"side": "BUY",
"icebergQty": "0.639962",
"selfTradePreventionMode": "NONE"
}
]
}
]
DELETE /api/v3/openOrders
撤销单一交易对下所有挂单, 包括订单列表的挂单。
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
recvWindow | LONG | NO | 不能大于 60000 |
timestamp | LONG | YES |
数据源: 撮合引擎
注意: 响应示例没有显示所有可以出现的字段,更多请看 "订单响应中的特定条件时才会出现的字段" 部分。
撤消挂单再下单 (TRADE)
响应:没有超出下单速率限制时的 Response SUCCESS
// 撤单和下单都成功
{
"cancelResult": "SUCCESS",
"newOrderResult": "SUCCESS",
"cancelResponse": {
"symbol": "BTCUSDT",
"origClientOrderId": "DnLo3vTAQcjha43lAZhZ0y",
"orderId": 9,
"orderListId": -1,
"clientOrderId": "osxN3JXAtJvKvCqGeMWMVR",
"transactTime": 1684804350068,
"price": "0.01000000",
"origQty": "0.000100",
"executedQty": "0.00000000",
"cummulativeQuoteQty": "0.00000000",
"status": "CANCELED",
"timeInForce": "GTC",
"type": "LIMIT",
"side": "SELL",
"selfTradePreventionMode": "NONE"
},
"newOrderResponse": {
"symbol": "BTCUSDT",
"orderId": 10,
"orderListId": -1,
"clientOrderId": "wOceeeOzNORyLiQfw7jd8S",
"transactTime": 1652928801803,
"price": "0.02000000",
"origQty": "0.040000",
"executedQty": "0.00000000",
"cummulativeQuoteQty": "0.00000000",
"status": "NEW",
"timeInForce": "GTC",
"type": "LIMIT",
"side": "BUY",
"workingTime": 1669277163808,
"fills": [],
"selfTradePreventionMode": "NONE"
}
}
响应:选择了
STOP_ON_FAILURE
而且账户没有超出下单速率限制时, 撤单出现错误
{
"code": -2022,
"msg": "Order cancel-replace failed.",
"data": {
"cancelResult": "FAILURE",
"newOrderResult": "NOT_ATTEMPTED",
"cancelResponse": {
"code": -2011,
"msg": "Unknown order sent."
},
"newOrderResponse": null
}
}
响应:撤单成功而且账户没有超出下单速率限制时,下单失败
{
"code": -2021,
"msg": "Order cancel-replace partially failed.",
"data": {
"cancelResult": "SUCCESS",
"newOrderResult": "FAILURE",
"cancelResponse": {
"symbol": "BTCUSDT",
"origClientOrderId": "86M8erehfExV8z2RC8Zo8k",
"orderId": 3,
"orderListId": -1,
"clientOrderId": "G1kLo6aDv2KGNTFcjfTSFq",
"transactTime": 1684804350068,
"price": "0.006123",
"origQty": "10000.000000",
"executedQty": "0.000000",
"cummulativeQuoteQty": "0.000000",
"status": "CANCELED",
"timeInForce": "GTC",
"type": "LIMIT_MAKER",
"side": "SELL",
"selfTradePreventionMode": "NONE"
},
"newOrderResponse": {
"code": -2010,
"msg": "Order would immediately match and take."
}
}
}
响应:选择
ALLOW_FAILURE
而且账户没有超出下单速率限制时, 撤单出现错误
{
"code": -2021,
"msg": "Order cancel-replace partially failed.",
"data": {
"cancelResult": "FAILURE",
"newOrderResult": "SUCCESS",
"cancelResponse": {
"code": -2011,
"msg": "Unknown order sent."
},
"newOrderResponse": {
"symbol": "BTCUSDT",
"orderId": 11,
"orderListId": -1,
"clientOrderId": "pfojJMg6IMNDKuJqDxvoxN",
"transactTime": 1648540168818
}
}
}
响应:选择
cancelReplaceMode=ALLOW_FAILURE
而且账户没有超出下单速率限制时, 撤单和下单失败
{
"code": -2022,
"msg": "Order cancel-replace failed.",
"data": {
"cancelResult": "FAILURE",
"newOrderResult": "FAILURE",
"cancelResponse": {
"code": -2011,
"msg": "Unknown order sent."
},
"newOrderResponse": {
"code": -2010,
"msg": "Order would immediately match and take."
}
}
}
响应:选择
orderRateLimitExceededMode=DO_NOTHING
而且账户超出下单速率限制时
{
"code": -1015,
"msg": "Too many new orders; current limit is 1 orders per 10 SECOND."
}
响应:选择
orderRateLimitExceededMode=CANCEL_ONLY
而且账户超出下单速率限制时
{
"code": -2021,
"msg": "Order cancel-replace partially failed.",
"data": {
"cancelResult": "SUCCESS",
"newOrderResult": "FAILURE",
"cancelResponse": {
"symbol": "LTCBNB",
"origClientOrderId": "GKt5zzfOxRDSQLveDYCTkc",
"orderId": 64,
"orderListId": -1,
"clientOrderId": "loehOJF3FjoreUBDmv739R",
"transactTime": 1715779007228,
"price": "1.00",
"origQty": "10.00000000",
"executedQty": "0.00000000",
"cummulativeQuoteQty": "0.00",
"status": "CANCELED",
"timeInForce": "GTC",
"type": "LIMIT",
"side": "SELL",
"selfTradePreventionMode": "NONE"
},
"newOrderResponse": {
"code": -1015,
"msg": "Too many new orders; current limit is 1 orders per 10 SECOND."
}
}
}
POST /api/v3/order/cancelReplace
撤消挂单并在同个交易对上重新下单。
在撤消订单和下单前会判断: 1) 过滤器参数, 以及 2) 目前下单数量。
即使请求中没有尝试发送新订单,比如(newOrderResult: NOT_ATTEMPTED
),下单的数量仍然会加1。
Weight(IP): 1
Parameters:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
side | ENUM | YES | |
type | ENUM | YES | |
cancelReplaceMode | ENUM | YES | 指定类型:STOP_ON_FAILURE - 如果撤消订单失败将不会继续重新下单。ALLOW_FAILURE - 不管撤消订单是否成功都会继续重新下单。 |
timeInForce | ENUM | NO | |
quantity | DECIMAL | NO | |
quoteOrderQty | DECIMAL | NO | |
price | DECIMAL | NO | |
cancelNewClientOrderId | STRING | NO | 用户自定义的id,如空缺系统会自动赋值 |
cancelOrigClientOrderId | STRING | NO | 必须提供cancelOrigClientOrderId 或者 cancelOrderId 。 如果两个参数都提供, cancelOrderId 会占优先。 |
cancelOrderId | LONG | NO | 必须提供cancelOrigClientOrderId 或者 cancelOrderId 。 如果两个参数都提供, cancelOrderId 会占优先。 |
newClientOrderId | STRING | NO | 用于辨识新订单。 |
strategyId | INT | NO | |
strategyType | INT | NO | 不能低于 1000000 |
stopPrice | DECIMAL | NO | |
trailingDelta | LONG | NO | |
icebergQty | DECIMAL | NO | |
newOrderRespType | ENUM | NO | 指定响应类型: 指定响应类型 ACK , RESULT , 或者 FULL ; MARKET 与 LIMIT 订单默认为FULL , 其他默认为ACK . |
selfTradePreventionMode | ENUM | NO | 允许的 ENUM 取决于交易对的配置。支持的值有 EXPIRE_TAKER ,EXPIRE_MAKER ,EXPIRE_BOTH ,NONE 。 |
cancelRestrictions | ENUM | NO | 支持的值: ONLY_NEW - 如果订单状态为 NEW ,撤销将成功。ONLY_PARTIALLY_FILLED - 如果订单状态为 PARTIALLY_FILLED ,撤销将成功。 |
orderRateLimitExceededMode | ENUM | NO | 支持的值: DO_NOTHING (默认值)- 仅在账户未超过未成交订单频率限制时,会尝试取消订单。CANCEL_ONLY - 将始终取消订单。 |
recvWindow | LONG | NO | 不能大于 60000 |
timestamp | LONG | YES |
如同 POST /api/v3/order
,额外的强制参数取决于 type
。
响应格式根据消息的处理是成功、部分成功还是失败而有所不同。
数据来源: 撮合引擎
请求 | 响应 | ||||
---|---|---|---|---|---|
cancelReplaceMode |
orderRateLimitExceededMode |
下单数 | cancelResult |
newOrderResult |
status |
STOP_ON_FAILURE |
DO_NOTHING |
在限制范围内 | ✅ SUCCESS |
✅ SUCCESS |
200 |
❌ FAILURE |
➖ NOT_ATTEMPTED |
400 |
|||
✅ SUCCESS |
❌ FAILURE |
409 |
|||
超出限制范围 | ✅ SUCCESS |
✅ SUCCESS |
N/A | ||
❌ FAILURE |
➖ NOT_ATTEMPTED |
N/A | |||
✅ SUCCESS |
❌ FAILURE |
N/A | |||
CANCEL_ONLY |
在限制范围内 | ✅ SUCCESS |
✅ SUCCESS |
200 |
|
❌ FAILURE |
➖ NOT_ATTEMPTED |
400 |
|||
✅ SUCCESS |
❌ FAILURE |
409 |
|||
超出限制范围 | ❌ FAILURE |
➖ NOT_ATTEMPTED |
429 |
||
✅ SUCCESS |
❌ FAILURE |
429 |
|||
ALLOW_FAILURE |
DO_NOTHING |
在限制范围内 | ✅ SUCCESS |
✅ SUCCESS |
200 |
❌ FAILURE |
❌ FAILURE |
400 |
|||
❌ FAILURE |
✅ SUCCESS |
409 |
|||
✅ SUCCESS |
❌ FAILURE |
409 |
|||
超出限制范围 | ✅ SUCCESS |
✅ SUCCESS |
N/A | ||
❌ FAILURE |
❌ FAILURE |
N/A | |||
❌ FAILURE |
✅ SUCCESS |
N/A | |||
✅ SUCCESS |
❌ FAILURE |
N/A | |||
CANCEL_ONLY |
在限制范围内 | ✅ SUCCESS |
✅ SUCCESS |
200 |
|
❌ FAILURE |
❌ FAILURE |
400 |
|||
❌ FAILURE |
✅ SUCCESS |
409 |
|||
✅ SUCCESS |
❌ FAILURE |
409 |
|||
超出限制范围 | ✅ SUCCESS |
✅ SUCCESS |
200 |
||
❌ FAILURE |
❌ FAILURE |
400 |
|||
❌ FAILURE |
✅ SUCCESS |
N/A | |||
✅ SUCCESS |
❌ FAILURE |
409 |
注意: 响应示例没有显示所有可以出现的字段,更多请看 "订单响应中的特定条件时才会出现的字段" 部分。
查询订单 (USER_DATA)
响应
{
"symbol": "LTCBTC", // 交易对
"orderId": 1, // 系统的订单ID
"orderListId": -1, // 订单列表的ID,不然就是-1
"clientOrderId": "myOrder1", // 客户自己设置的ID
"price": "0.1", // 订单价格
"origQty": "1.0", // 用户设置的原始订单数量
"executedQty": "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, // 订单是否出现在orderbook中
"workingTime":1499827319559,
"origQuoteOrderQty": "0.000000", // 原始的交易金额
"selfTradePreventionMode": "NONE"
}
GET /api/v3/order
查询订单状态。
权重(IP): 4
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
orderId | LONG | NO | |
origClientOrderId | STRING | NO | |
recvWindow | LONG | NO | 赋值不得大于 60000 |
timestamp | LONG | YES |
注意:
- 至少需要发送
orderId
与origClientOrderId
中的一个 - 某些订单中
cummulativeQuoteQty
<0,是由于这些订单是cummulativeQuoteQty功能上线之前的订单。 - 响应示例没有显示所有可以出现的字段,更多请看 "订单响应中的特定条件时才会出现的字段" 部分。
数据源: 数据库
当前挂单 (USER_DATA)
响应
[
{
"symbol": "LTCBTC",
"orderId": 1,
"orderListId": -1, // 订单列表ID,否则为 -1
"clientOrderId": "myOrder1",
"price": "0.1",
"origQty": "1.0",
"executedQty": "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,
"workingTime": 1499827319559,
"origQuoteOrderQty": "0.000000",
"selfTradePreventionMode": "NONE"
}
]
GET /api/v3/openOrders
获取交易对的所有当前挂单, 请小心使用不带交易对参数的调用。
权重(IP):
6 单一交易对;
80 交易对参数缺失;
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | NO | |
recvWindow | LONG | NO | 赋值不得大于 60000 |
timestamp | LONG | YES |
- 不带symbol参数,会返回所有交易对的挂单
数据源: 数据库
注意: 响应示例没有显示所有可以出现的字段,更多请看 "订单响应中的特定条件时才会出现的字段" 部分。
查询所有订单 (USER_DATA)
响应
[
{
"symbol": "LTCBTC",
"orderId": 1,
"orderListId": -1, // 订单列表ID,否则为 -1
"clientOrderId": "myOrder1",
"price": "0.1",
"origQty": "1.0",
"executedQty": "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"
}
]
GET /api/v3/allOrders
获取所有帐户订单; 有效,已取消或已完成。
权重(IP): 20
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
orderId | LONG | NO | |
startTime | LONG | NO | |
endTime | LONG | NO | |
limit | INT | NO | 默认 500; 最大 1000. |
recvWindow | LONG | NO | 赋值不得大于 60000 |
timestamp | LONG | YES |
注意:
- 如设置
orderId
, 订单量将 >=orderId
。否则将返回最新订单。 - 一些历史订单
cummulativeQuoteQty
< 0, 是指数据此时不存在。 - 如果设置
startTime
和endTime
,orderId
就不需要设置。 - 响应示例没有显示所有可以出现的字段,更多请看 "订单响应中的特定条件时才会出现的字段" 部分。
数据源: 数据库
OCO下单 - 已弃用 (TRADE)
响应
{
"orderListId": 0,
"contingencyType": "OCO",
"listStatusType": "EXEC_STARTED",
"listOrderStatus": "EXECUTING",
"listClientOrderId": "JYVpp3F0f5CAG15DhtrqLp",
"transactionTime": 1563417480525,
"symbol": "LTCBTC",
"orders": [
{
"symbol": "LTCBTC",
"orderId": 2,
"clientOrderId": "Kk7sqHb9J6mJWTMDVW7Vos"
},
{
"symbol": "LTCBTC",
"orderId": 3,
"clientOrderId": "xTXKaGYd4bluPVp78IVRvl"
}
],
"orderReports": [
{
"symbol": "LTCBTC",
"orderId": 2,
"orderListId": 0,
"clientOrderId": "Kk7sqHb9J6mJWTMDVW7Vos",
"transactTime": 1563417480525,
"price": "0.000000",
"origQty": "0.624363",
"executedQty": "0.000000",
"cummulativeQuoteQty": "0.000000",
"status": "NEW",
"timeInForce": "GTC",
"type": "STOP_LOSS",
"side": "BUY",
"stopPrice": "0.960664",
"workingTime": -1,
"selfTradePreventionMode": "NONE"
},
{
"symbol": "LTCBTC",
"orderId": 3,
"orderListId": 0,
"clientOrderId": "xTXKaGYd4bluPVp78IVRvl",
"transactTime": 1563417480525,
"price": "0.036435",
"origQty": "0.624363",
"executedQty": "0.000000",
"cummulativeQuoteQty": "0.000000",
"status": "NEW",
"timeInForce": "GTC",
"type": "LIMIT_MAKER",
"side": "BUY",
"stopPrice": "0.960664",
"workingTime": -1,
"selfTradePreventionMode": "NONE"
}
]
}
POST /api/v3/order/oco
发送新 OCO 订单。
权重(UID): 2 权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
listClientOrderId | STRING | NO | 整个orderList的唯一ID |
side | ENUM | YES | 详见枚举定义:订单方向 |
quantity | DECIMAL | YES | |
limitClientOrderId | STRING | NO | 限价单的唯一ID |
limitStrategyId | INT | NO | |
limitStrategyType | INT | NO | 不能低于 1000000 |
price | DECIMAL | YES | |
limitIcebergQty | DECIMAL | NO | |
trailingDelta | LONG | NO | |
stopClientOrderId | STRING | NO | 止损/止损限价单的唯一ID |
stopPrice | DECIMAL | YES | |
stopStrategyId | INT | NO | |
stopStrategyType | INT | NO | 不能低于 1000000 |
stopLimitPrice | DECIMAL | NO | 如果提供,须配合提交stopLimitTimeInForce |
stopIcebergQty | DECIMAL | NO | |
stopLimitTimeInForce | ENUM | NO | 有效值 GTC /FOK /IOC |
newOrderRespType | ENUM | NO | 详见枚举定义:订单返回类型 |
selfTradePreventionMode | ENUM | NO | 允许的 ENUM 取决于交易对的配置。支持的值有 EXPIRE_TAKER ,EXPIRE_MAKER ,EXPIRE_BOTH ,NONE 。| |
recvWindow | LONG | NO | 不能大于 60000 |
timestamp | LONG | YES |
其他信息:
- 价格限制:
SELL
: 限价 > 最新成交价 > 触发价BUY
: 限价 < 最新成交价 < 触发价
- 数量限制:
- 两个 legs 必须具有同样的数量。
ICEBERG
数量不必相同
- OCOs 将2个订单添加到未成交的订单计数,
EXCHANGE_MAX_ORDERS
过滤器和MAX_NUM_ORDERS
过滤器中。
数据源: 撮合引擎
发送新 OCO 订单 (TRADE)
适用
newOrderRespType
RESULT
的响应:
{
"orderListId": 1,
"contingencyType": "OCO",
"listStatusType": "EXEC_STARTED",
"listOrderStatus": "EXECUTING",
"listClientOrderId": "lH1YDkuQKWiXVXHPSKYEIp",
"transactionTime": 1710485608839,
"symbol": "LTCBTC",
"orders": [
{
"symbol": "LTCBTC",
"orderId": 10,
"clientOrderId": "44nZvqpemY7sVYgPYbvPih"
},
{
"symbol": "LTCBTC",
"orderId": 11,
"clientOrderId": "NuMp0nVYnciDiFmVqfpBqK"
}
],
"orderReports": [
{
"symbol": "LTCBTC",
"orderId": 10,
"orderListId": 1,
"clientOrderId": "44nZvqpemY7sVYgPYbvPih",
"transactTime": 1710485608839,
"price": "1.00000000",
"origQty": "5.00000000",
"executedQty": "0.00000000",
"cummulativeQuoteQty": "0.00000000",
"status": "NEW",
"timeInForce": "GTC",
"type": "STOP_LOSS_LIMIT",
"side": "SELL",
"stopPrice": "1.00000000",
"workingTime": -1,
"icebergQty": "1.00000000",
"selfTradePreventionMode": "NONE"
},
{
"symbol": "LTCBTC",
"orderId": 11,
"orderListId": 1,
"clientOrderId": "NuMp0nVYnciDiFmVqfpBqK",
"transactTime": 1710485608839,
"price": "3.00000000",
"origQty": "5.00000000",
"executedQty": "0.00000000",
"cummulativeQuoteQty": "0.00000000",
"status": "NEW",
"timeInForce": "GTC",
"type": "LIMIT_MAKER",
"side": "SELL",
"workingTime": 1710485608839,
"selfTradePreventionMode": "NONE"
}
]
}
POST /api/v3/orderList/oco
权重(IP): 1
发送新 one-cancels-the-other (OCO) 订单,激活其中一个订单会立即取消另一个订单。
- OCO 有 2 legs,称为 上方 leg 和 下方 leg。
- 其中一条 leg 必须是
LIMIT_MAKER
订单,另一条 leg 必须是STOP_LOSS
或STOP_LOSS_LIMIT
订单。 - 针对价格限制:
- 如果 OCO 订单方向是
SELL
:LIMIT_MAKER
price
> 最后交易价格 >stopPrice
- 如果 OCO 订单方向是
BUY
:LIMIT_MAKER
price
< 最后交易价格 <stopPrice
- 如果 OCO 订单方向是
- OCOs 将2个订单添加到未成交的订单计数,
EXCHANGE_MAX_ORDERS
过滤器和MAX_NUM_ORDERS
过滤器中。
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | Yes | |
listClientOrderId | STRING | No | 整个 order list 的唯一ID。 如果未发送则自动生成。 仅当前一个订单已填满或完全过期时,才会接受具有相同的 listClientOrderId 。 listClientOrderId 与 aboveClientOrderId 和 belowCLientOrderId 不同。 |
side | ENUM | Yes | 订单方向:BUY or SELL |
quantity | DECIMAL | Yes | 两个 legs 的数量。 |
aboveType | ENUM | Yes | 支持值:STOP_LOSS_LIMIT , STOP_LOSS , LIMIT_MAKER 。 |
aboveClientOrderId | STRING | No | 上方 leg 的唯一ID。 如果未发送则自动生成。 |
aboveIcebergQty | LONG | No | 请注意,只有当 aboveTimeInForce 为 GTC 时才能使用。 |
abovePrice | DECIMAL | No | |
aboveStopPrice | DECIMAL | No | 如果 aboveType 是 STOP_LOSS 或 STOP_LOSS_LIMIT 才能使用。必须指定 aboveStopPrice 或 aboveTrailingDelta 或两者。 |
aboveTrailingDelta | LONG | No | 请看 追踪止盈止损(Trailing Stop)订单常见问题。 |
aboveTimeInForce | DECIMAL | No | 如果 aboveType 是 STOP_LOSS_LIMIT ,则为必填项。 |
aboveStrategyId | INT | No | 订单策略中上方 leg 订单的 ID。 |
aboveStrategyType | INT | No | 上方 leg 订单策略的任意数值。 小于 1000000 的值被保留,无法使用。 |
belowType | ENUM | Yes | 支持值:STOP_LOSS_LIMIT , STOP_LOSS , LIMIT_MAKER 。 |
belowClientOrderId | STRING | No | |
belowIcebergQty | LONG | No | 请注意,只有当 belowTimeInForce 为 GTC 时才能使用。 |
belowPrice | DECIMAL | No | |
belowStopPrice | DECIMAL | No | 如果 belowType 是 STOP_LOSS 或 STOP_LOSS_LIMIT 才能使用。 必须指定 belowStopPrice 或 belowTrailingDelta 或两者。 |
belowTrailingDelta | LONG | No | 请看 追踪止盈止损(Trailing Stop)订单常见问题。 |
belowTimeInForce | ENUM | No | 如果belowType 是 STOP_LOSS_LIMIT ,则为必须配合提交的值。 |
belowStrategyId | INT | No | 订单策略中下方 leg 订单的 ID。 |
belowStrategyType | INT | No | 下方 leg 订单策略的任意数值。 小于 1000000 的值被保留,无法使用。 |
newOrderRespType | ENUM | No | 响应格式可选值: ACK , RESULT , FULL 。请参阅 POST /api/v3/order 了解更多 orderReports 的响应类型。 |
selfTradePreventionMode | ENUM | No | 允许的 ENUM 取决于交易对上的配置。 可能支持的值为 EXPIRE_TAKER , EXPIRE_MAKER , EXPIRE_BOTH , NONE 。 |
recvWindow | LONG | No | 不能大于 60000 。 |
timestamp | LONG | Yes |
数据源: 撮合引擎
发送新订单列表 - OTO订单 (TRADE)
响应
{
"orderListId": 0,
"contingencyType": "OTO",
"listStatusType": "EXEC_STARTED",
"listOrderStatus": "EXECUTING",
"listClientOrderId": "yl2ERtcar1o25zcWtqVBTC",
"transactionTime": 1712289389158,
"symbol": "ABCDEF",
"orders": [
{
"symbol": "LTCBTC",
"orderId": 4,
"clientOrderId": "Bq17mn9fP6vyCn75Jw1xya"
},
{
"symbol": "LTCBTC",
"orderId": 5,
"clientOrderId": "arLFo0zGJVDE69cvGBaU0d"
}
],
"orderReports": [
{
"symbol": "LTCBTC",
"orderId": 4,
"orderListId": 0,
"clientOrderId": "Bq17mn9fP6vyCn75Jw1xya",
"transactTime": 1712289389158,
"price": "1.00000000",
"origQty": "1.00000000",
"executedQty": "0.00000000",
"cummulativeQuoteQty": "0.00000000",
"status": "NEW",
"timeInForce": "GTC",
"type": "LIMIT",
"side": "SELL",
"workingTime": 1712289389158,
"selfTradePreventionMode": "NONE"
},
{
"symbol": "LTCBTC",
"orderId": 5,
"orderListId": 0,
"clientOrderId": "arLFo0zGJVDE69cvGBaU0d",
"transactTime": 1712289389158,
"price": "0.00000000",
"origQty": "5.00000000",
"executedQty": "0.00000000",
"cummulativeQuoteQty": "0.00000000",
"status": "PENDING_NEW",
"timeInForce": "GTC",
"type": "MARKET",
"side": "BUY",
"workingTime": -1,
"selfTradePreventionMode": "NONE"
}
]
}
POST /api/v3/orderList/oto
发送一个新的 OTO 订单。
- 一个 OTO 订单(One-Triggers-the-Other)是一个包含了两个订单的订单列表.
- 第一个订单被称为生效订单,必须为
LIMIT
或LIMIT_MAKER
类型的订单。最初,订单簿上只有生效订单。 - 第二个订单被称为待处理订单。它可以是任何订单类型,但不包括使用参数
quoteOrderQty
的MARKET
订单。只有当生效订单完全成交时,待处理订单才会被自动下单。 - 如果生效订单或者待处理订单中的任意一个被单独取消,订单列表中剩余的那个订单也会被随之取消或过期。
- 如果生效订单在下订单列表后立即完全成交,则可能会得到订单响应。其中,生效订单的状态为
FILLED
,但待处理订单的状态为PENDING_NEW
。针对这类情况,如果需要检查当前状态,您可以查询相关的待处理订单。 - OTOs 订单将2 个订单添加到未成交订单计数,
EXCHANGE_MAX_NUM_ORDERS
过滤器和MAX_NUM_ORDERS
过滤器中。
权重: 1
参数
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
listClientOrderId | STRING | NO | 整个订单列表的唯一ID。 如果未发送则自动生成。 仅当前一个订单列表已填满或完全过期时,才会接受含有相同 listClientOrderId 值的新订单列表。 listClientOrderId 与 workingClientOrderId 和 pendingClientOrderId 不同。 |
newOrderRespType | ENUM | NO | 用于设置JSON响应的格式。支持的数值: ACK , FULL , RESULT |
selfTradePreventionMode | ENUM | NO | 允许的数值取决于交易对上的配置。 |
workingType | ENUM | YES | 支持的数值: LIMIT , LIMIT_MAKER |
workingSide | ENUM | YES | 支持的数值: BUY , SELL |
workingClientOrderId | STRING | NO | 用于标识生效订单的唯一ID。 如果未发送则自动生成。 |
workingPrice | DECIMAL | YES | |
workingQuantity | DECIMAL | YES | 用于设置生效订单的数量。 |
workingIcebergQty | DECIMAL | YES | 只有当 workingTimeInForce 为 GTC 时才能使用。 |
workingTimeInForce | ENUM | NO | 支持的数值: FOK , IOC , GTC |
workingStrategyId | INT | NO | 订单策略中用于标识生效订单的 ID。 |
workingStrategyType | INT | NO | 用于标识生效订单策略的任意数值。 小于 1000000 的值被保留,无法使用。 |
pendingType | ENUM | YES | 系统不支持使用 quoteOrderQty 的 MARKET 订单。 |
pendingSide | ENUM | YES | 支持的数值: BUY , SELL |
pendingClientOrderId | STRING | NO | 用于标识待处理订单的唯一ID。 如果未发送则自动生成。 |
pendingPrice | DECIMAL | NO | |
pendingStopPrice | DECIMAL | NO | |
pendingTrailingDelta | DECIMAL | NO | |
pendingQuantity | DECIMAL | YES | 用于设置待处理订单的数量。 |
pendingIcebergQty | DECIMAL | NO | 只有当 pendingTimeInForce 为 GTC 时才能使用。 |
pendingTimeInForce | ENUM | NO | 支持的数值: FOK , IOC , GTC |
pendingStrategyId | INT | NO | 订单策略中用于标识待处理订单的 ID。 |
pendingStrategyType | INT | NO | 用于标识待处理订单策略的任意数值。 小于 1000000 的值被保留,无法使用。 |
recvWindow | LONG | NO | 不能大于 60000 。 |
timestamp | LONG | YES |
根据 pendingType
或者workingType
的不同值,对于某些参数的强制要求
根据 pendingType
或者workingType
的不同值,对于某些可选参数有强制要求,具体如下:
类型 | 强制要求的参数 | 其他信息 |
---|---|---|
workingType = LIMIT |
workingTimeInForce |
|
pendingType = LIMIT |
pendingPrice , pendingTimeInForce |
|
pendingType = STOP_LOSS 或 TAKE_PROFIT |
pendingStopPrice 与/或 pendingTrailingDelta |
|
pendingType = STOP_LOSS_LIMIT 或 TAKE_PROFIT_LIMIT |
pendingPrice ,pendingStopPrice 与/或 pendingTrailingDelta , pendingTimeInForce |
数据源: 撮合引擎
发送新订单列表 - OTOCO订单 (TRADE)
响应
{
"orderListId": 1,
"contingencyType": "OTO",
"listStatusType": "EXEC_STARTED",
"listOrderStatus": "EXECUTING",
"listClientOrderId": "RumwQpBaDctlUu5jyG5rs0",
"transactionTime": 1712291372842,
"symbol": "ABCDEF",
"orders": [
{
"symbol": "LTCBTC",
"orderId": 6,
"clientOrderId": "fM9Y4m23IFJVCQmIrlUmMK"
},
{
"symbol": "LTCBTC",
"orderId": 7,
"clientOrderId": "6pcQbFIzTXGZQ1e2MkGDq4"
},
{
"symbol": "LTCBTC",
"orderId": 8,
"clientOrderId": "r4JMv9cwAYYUwwBZfbussx"
}
],
"orderReports": [
{
"symbol": "LTCBTC",
"orderId": 6,
"orderListId": 1,
"clientOrderId": "fM9Y4m23IFJVCQmIrlUmMK",
"transactTime": 1712291372842,
"price": "1.00000000",
"origQty": "1.00000000",
"executedQty": "0.00000000",
"cummulativeQuoteQty": "0.00000000",
"status": "NEW",
"timeInForce": "GTC",
"type": "LIMIT",
"side": "SELL",
"workingTime": 1712291372842,
"selfTradePreventionMode": "NONE"
},
{
"symbol": "LTCBTC",
"orderId": 7,
"orderListId": 1,
"clientOrderId": "6pcQbFIzTXGZQ1e2MkGDq4",
"transactTime": 1712291372842,
"price": "1.00000000",
"origQty": "5.00000000",
"executedQty": "0.00000000",
"cummulativeQuoteQty": "0.00000000",
"status": "PENDING_NEW",
"timeInForce": "IOC",
"type": "STOP_LOSS_LIMIT",
"side": "BUY",
"stopPrice": "6.00000000",
"workingTime": -1,
"selfTradePreventionMode": "NONE"
},
{
"symbol": "LTCBTC",
"orderId": 8,
"orderListId": 1,
"clientOrderId": "r4JMv9cwAYYUwwBZfbussx",
"transactTime": 1712291372842,
"price": "3.00000000",
"origQty": "5.00000000",
"executedQty": "0.00000000",
"cummulativeQuoteQty": "0.00000000",
"status": "PENDING_NEW",
"timeInForce": "GTC",
"type": "LIMIT_MAKER",
"side": "BUY",
"workingTime": -1,
"selfTradePreventionMode": "NONE"
}
]
}
POST /api/v3/orderList/otoco
发送一个新的 OTOCO 订单。
- 一个 OTOCO 订单(One-Triggers-One-Cancels-the-Other)是一个包含了三个订单的订单列表。
- 第一个订单被称为生效订单,必须为
LIMIT
或LIMIT_MAKER
类型的订单。最初,订单簿上只有生效订单。- 生效订单的行为与此一致 OTO
- 一个OTOCO订单有两个待处理订单(pending above 和 pending below),它们构成了一个 OCO 订单列表。只有当生效订单完全成交时,待处理订单们才会被自动下单。
- 待处理上方(pending above)订单和待处理下方(pending below)订单都遵循与 OCO 订单列表相同的规则 Order List OCO。
- OTOCOs 在未成交订单计数,
EXCHANGE_MAX_NUM_ORDERS
过滤器和MAX_NUM_ORDERS
过滤器的基础上添加3个订单。
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
listClientOrderId | STRING | NO | 整个订单列表的唯一ID。 如果未发送则自动生成。 仅当前一个订单列表已填满或完全过期时,才会接受含有相同 listClientOrderId 值的新订单列表。 listClientOrderId 与 workingClientOrderId , pendingAboveClientOrderId 以及 pendingBelowClientOrderId 不同。 |
newOrderRespType | ENUM | NO | 用于设置JSON响应的格式。支持的数值: ACK , FULL , RESULT |
selfTradePreventionMode | ENUM | NO | 允许的数值取决于交易对上的配置。 |
workingType | ENUM | YES | 支持的数值: LIMIT , LIMIT_MAKER |
workingSide | ENUM | YES | 支持的数值: BUY , SELL |
workingClientOrderId | STRING | NO | 用于标识生效订单的唯一ID。 如果未发送则自动生成。 |
workingPrice | DECIMAL | YES | |
workingQuantity | DECIMAL | YES | |
workingIcebergQty | DECIMAL | NO | 只有当 workingTimeInForce 为 GTC 时才能使用。 |
workingTimeInForce | ENUM | NO | 支持的数值: FOK , IOC , GTC |
workingStrategyId | INT | NO | 订单策略中用于标识生效订单的 ID。 |
workingStrategyType | INT | NO | 用于标识生效订单策略的任意数值。 小于 1000000 的值被保留,无法使用。 |
pendingSide | ENUM | YES | 支持的数值: BUY , SELL |
pendingQuantity | DECIMAL | YES | |
pendingAboveType | ENUM | YES | 支持的数值: LIMIT_MAKER ,STOP_LOSS 和 STOP_LOSS_LIMIT |
pendingAboveClientOrderId | STRING | NO | 用于标识待处理上方订单的唯一ID。 如果未发送则自动生成。 |
pendingAbovePrice | DECIMAL | NO | |
pendingAboveStopPrice | DECIMAL | NO | |
pendingAboveTrailingDelta | DECIMAL | NO | |
pendingAboveIcebergQty | DECIMAL | NO | 只有当 pendingAboveTimeInForce 为 GTC 时才能使用。 |
pendingAboveTimeInForce | ENUM | NO | |
pendingAboveStrategyId | INT | NO | 订单策略中用于标识待处理上方订单的 ID。 |
pendingAboveStrategyType | INT | NO | 用于标识待处理上方订单策略的任意数值。 小于 1000000 的值被保留,无法使用。 |
pendingBelowType | ENUM | NO | 支持的数值: LIMIT_MAKER ,STOP_LOSS 和 STOP_LOSS_LIMIT |
pendingBelowClientOrderId | STRING | NO | 用于标识待处理下方订单的唯一ID。 如果未发送则自动生成。 |
pendingBelowPrice | DECIMAL | NO | |
pendingBelowStopPrice | DECIMAL | NO | |
pendingBelowTrailingDelta | DECIMAL | NO | |
pendingBelowIcebergQty | DECIMAL | NO | 只有当 pendingBelowTimeInForce 为 GTC 时才能使用。 |
pendingBelowTimeInForce | ENUM | NO | |
pendingBelowStrategyId | INT | NO | 订单策略中用于标识待处理下方订单的 ID。 |
pendingBelowStrategyType | INT | NO | 用于标识待处理下方订单策略的任意数值。 小于 1000000 的值被保留,无法使用。 |
recvWindow | LONG | NO | 不能大于 60000 。 |
timestamp | LONG | YES |
根据 pendingAboveType
, pendingBelowType
或者workingType
的不同值,对于某些参数的强制要求
根据 pendingAboveType
, pendingBelowType
或者workingType
的不同值,对于某些可选参数有强制要求,具体如下:
类型 | 强制要求的参数 | 其他信息 |
---|---|---|
workingType = LIMIT |
workingTimeInForce |
|
pendingAboveType = LIMIT_MAKER |
pendingAbovePrice |
|
pendingAboveType = STOP_LOSS |
pendingAboveStopPrice 与/或 pendingAboveTrailingDelta |
|
pendingAboveType =STOP_LOSS_LIMIT |
pendingAbovePrice , pendingAboveStopPrice 与/或 pendingAboveTrailingDelta , pendingAboveTimeInForce |
|
pendingBelowType = LIMIT_MAKER |
pendingBelowPrice |
|
pendingBelowType = STOP_LOSS |
pendingBelowStopPrice 与/或 pendingBelowTrailingDelta |
|
pendingBelowType =STOP_LOSS_LIMIT |
pendingBelowPrice , pendingBelowStopPrice 与/或 pendingBelowTrailingDelta , pendingBelowTimeInForce |
数据源: 撮合引擎
取消订单列表 (TRADE)
响应
{
"orderListId": 0,
"contingencyType": "OCO",
"listStatusType": "ALL_DONE",
"listOrderStatus": "ALL_DONE",
"listClientOrderId": "C3wyj4WVEktd7u9aVBRXcN",
"transactionTime": 1574040868128,
"symbol": "LTCBTC",
"orders": [
{
"symbol": "LTCBTC",
"orderId": 2,
"clientOrderId": "pO9ufTiFGg3nw2fOdgeOXa"
},
{
"symbol": "LTCBTC",
"orderId": 3,
"clientOrderId": "TXOvglzXuaubXAaENpaRCB"
}
],
"orderReports": [
{
"symbol": "LTCBTC",
"origClientOrderId": "pO9ufTiFGg3nw2fOdgeOXa",
"orderId": 2,
"orderListId": 0,
"clientOrderId": "unfWT8ig8i0uj6lPuYLez6",
"transactTime": 1688005070874,
"price": "1.00000000",
"origQty": "10.00000000",
"executedQty": "0.00000000",
"cummulativeQuoteQty": "0.00000000",
"status": "CANCELED",
"timeInForce": "GTC",
"type": "STOP_LOSS_LIMIT",
"side": "SELL",
"stopPrice": "1.00000000",
"selfTradePreventionMode": "NONE"
},
{
"symbol": "LTCBTC",
"origClientOrderId": "TXOvglzXuaubXAaENpaRCB",
"orderId": 3,
"orderListId": 0,
"clientOrderId": "unfWT8ig8i0uj6lPuYLez6",
"transactTime": 1688005070874,
"price": "3.00000000",
"origQty": "10.00000000",
"executedQty": "0.00000000",
"cummulativeQuoteQty": "0.00000000",
"status": "CANCELED",
"timeInForce": "GTC",
"type": "LIMIT_MAKER",
"side": "SELL",
"selfTradePreventionMode": "NONE"
}
]
}
DELETE /api/v3/orderList
取消整个订单列表。
权重(IP): 1
参数
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
orderListId | LONG | NO | orderListId 或 listClientOrderId 必须被提供 |
listClientOrderId | STRING | NO | orderListId 或 listClientOrderId 必须被提供 |
newClientOrderId | STRING | NO | 用户自定义的本次撤销操作的ID(注意不是被撤销的订单的自定义ID)。如无指定会自动赋值。 |
recvWindow | LONG | NO | 不能大于 60000 |
timestamp | LONG | YES |
其他注意点:
- 取消单个交易将取消整个订单列表。
数据源: 撮合引擎
查询订单列表 (USER_DATA)
响应
{
"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"
}
]
}
GET /api/v3/orderList
根据提供的可选参数检索特定的订单列表。
权重(IP): 4
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
orderListId | LONG | NO | orderListId 或 origClientOrderId 必须提供一个。 |
origClientOrderId | STRING | NO | orderListId 或 origClientOrderId 必须提供一个。 |
recvWindow | LONG | NO | 赋值不得大于 60000 |
timestamp | LONG | YES |
数据源: 数据库
查询所有订单列表 (USER_DATA)
响应
[
{
"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"
}
]
}
]
GET /api/v3/allOrderList
根据提供的可选参数检索所有的订单列表。
权重(IP): 20
参数
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
fromId | LONG | NO | 提供该项后, startTime 和 endTime 都不可提供 |
startTime | LONG | NO | |
endTime | LONG | NO | |
limit | INT | NO | 默认值: 500; 最大值: 1000 |
recvWindow | LONG | NO | 赋值不能超过 60000 |
timestamp | LONG | YES |
数据源: 数据库
查询订单列表挂单 (USER_DATA)
响应
[
{
"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"
}
]
}
]
GET /api/v3/openOrderList
权重(IP): 6
参数
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
数据源: 数据库
下 SOR 订单 (TRADE)
响应:
{
"symbol": "BTCUSDT",
"orderId": 2,
"orderListId": -1,
"clientOrderId": "sBI1KM6nNtOfj5tccZSKly",
"transactTime": 1689149087774,
"price": "31000.00000000",
"origQty": "0.50000000",
"executedQty": "0.50000000",
"cummulativeQuoteQty": "14000.00000000",
"status": "FILLED",
"timeInForce": "GTC",
"type": "LIMIT",
"side": "BUY",
"workingTime": 1689149087774,
"fills": [
{
"matchType": "ONE_PARTY_TRADE_REPORT",
"price": "28000.00000000",
"qty": "0.50000000",
"commission": "0.00000000",
"commissionAsset": "BTC",
"tradeId": -1,
"allocId": 0
}
],
"workingFloor": "SOR",
"selfTradePreventionMode": "NONE",
"usedSor": true
}
POST /api/v3/sor/order
发送使用智能订单路由 (SOR) 的新订单。
权重(IP): 1
参数
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
side | ENUM | YES | |
type | ENUM | YES | |
timeInForce | ENUM | NO | |
quantity | DECIMAL | YES | |
price | DECIMAL | NO | |
newClientOrderId | STRING | NO | 用户自定义的orderid,如空缺系统会自动赋值。如果几个订单具有相同的 newClientOrderID 赋值,那么只有在前一个订单成交后才可以接受下一个订单,否则该订单将被拒绝。 |
strategyId | INT | NO | |
strategyType | INT | NO | 赋值不能小于 1000000 . |
icebergQty | DECIMAL | NO | 仅有限价单可以使用该参数,含义为创建冰山订单并指定冰山订单的数量。 |
newOrderRespType | ENUM | NO | 指定响应类型: 指定响应类型 ACK , RESULT 或 FULL ; 默认为 FULL 。 |
selfTradePreventionMode | ENUM | NO | 允许的 ENUM 取决于交易对的配置。支持的值有 EXPIRE_TAKER ,EXPIRE_MAKER ,EXPIRE_BOTH ,NONE 。 |
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
请注意: POST /api/v3/sor/order
只支持 限价
和 市场
单, 并不支持 quoteOrderQty
。
数据源: 撮合引擎
测试 SOR 下单接口 (TRADE)
响应:
{}
或者
{
"standardCommissionForOrder": { // 订单交易的标准佣金率
"maker": "0.00000112",
"taker": "0.00000114",
},
"taxCommissionForOrder": { // 订单交易的税率
"maker": "0.00000112",
"taker": "0.00000114",
},
"discount": { // 以BNB支付时的标准佣金折扣。
"enabledForAccount": true,
"enabledForSymbol": true,
"discountAsset": "BNB",
"discount": "0.25000000" // 当用BNB支付佣金时,在标准佣金上按此比率打折
}
}
POST /api/v3/sor/order/test
用于测试使用智能订单路由 (SOR) 的订单请求,但不会提交到撮合引擎
权重:
条件 | 请求权重 |
---|---|
没有 computeCommissionRates |
1 |
有 computeCommissionRates |
20 |
参数:
除了 POST /api/v3/sor/order
所有参数,
如下参数也接受:
参数名 | 类型 | 是否必需 | 描述 |
---|---|---|---|
computeCommissionRates | BOOLEAN | NO | 默认值: false |
数据源: 缓存
现货账户接口
账户信息 (USER_DATA)
响应
{
"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
}
GET /api/v3/account
获取当前账户信息。
权重(IP): 20
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
omitZeroBalances | BOOLEAN | NO | 如果true ,将隐藏所有零余额。 默认值: false |
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
数据源: 缓存 => 数据库
账户成交历史 (USER_DATA)
响应
[
{
"symbol": "BNBBTC", // 交易对
"id": 28457, // trade ID
"orderId": 100234, // 订单ID
"orderListId": -1, // 订单列表的ID,不然就是-1
"price": "4.00000100", // 成交价格
"qty": "12.00000000", // 成交量
"quoteQty": "48.000012", // 成交金额
"commission": "10.10000000", // 交易费金额
"commissionAsset": "BNB", // 交易费资产类型
"time": 1499865549590, // 交易时间
"isBuyer": true, // 是否是买家
"isMaker": false, // 是否是挂单方
"isBestMatch": true
}
]
GET /api/v3/myTrades
获取账户指定交易对的成交历史
权重(IP): 20
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
orderId | LONG | NO | 必须要和参数symbol 一起使用. |
startTime | LONG | NO | |
endTime | LONG | NO | |
fromId | LONG | NO | 起始Trade id。 默认获取最新交易。 |
limit | INT | NO | 默认 500; 最大 1000. |
recvWindow | LONG | NO | 赋值不能超过 60000 |
timestamp | LONG | YES |
注意:
- 如果设定
fromId
, 获取订单 >=fromId
. 否则返回最近订单。 startTime
和endTime
设置的时间间隔不能超过24小时.- 支持的所有参数组合:
symbol
symbol
+orderId
symbol
+startTime
symbol
+endTime
symbol
+fromId
symbol
+startTime
+endTime
symbol
+orderId
+fromId
数据源: 数据库
查询未成交的订单计数 (USER_DATA)
响应
[
{
"rateLimitType": "ORDERS",
"interval": "SECOND",
"intervalNum": 10,
"limit": 10000,
"count": 0
},
{
"rateLimitType": "ORDERS",
"interval": "DAY",
"intervalNum": 1,
"limit": 20000,
"count": 0
}
]
GET /api/v3/rateLimit/order
显示用户在所有时间间隔内的未成交订单计数。
权重(IP): 40
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recvWindow | LONG | NO | 赋值不得大于 60000 |
timestamp | LONG | YES |
数据源: 缓存
获取 Prevented Matches (USER_DATA)
响应:
[
{
"symbol": "BTCUSDT",
"preventedMatchId": 1,
"takerOrderId": 5,
"makerOrderId": 3,
"tradeGroupId": 1,
"selfTradePreventionMode": "EXPIRE_MAKER",
"price": "1.100000",
"makerPreventedQuantity": "1.300000",
"transactTime": 1669101687094
}
]
GET /api/v3/myPreventedMatches
获取因 STP 触发而过期的订单列表。
对于什么是"阻止"匹配以及STP的更多相关信息,请参阅我们的 STP FAQ_CN 页面。
这些是支持的组合:
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 | LONG | NO | 赋值不得大于 60000 |
timestamp | LONG | YES |
权重(IP):
情况 | 权重 |
---|---|
如果 symbol 是无效的 |
2 |
通过 preventedMatchId 查询 |
2 |
通过 orderId 查询 |
20 |
数据源:
数据库
查询分配结果 (USER_DATA)
响应:
[
{
"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
}
]
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 | LONG | No | 不能大于 60000 |
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 小时。
数据源: 数据库
查询佣金费率 (USER_DATA)
响应:
{
"symbol": "BTCUSDT",
"standardCommission": { // 订单交易的标准佣金率
"maker": "0.00000010",
"taker": "0.00000020",
"buyer": "0.00000030",
"seller": "0.00000040"
},
"taxCommission": { // 订单交易的税率
"maker": "0.00000112",
"taker": "0.00000114",
"buyer": "0.00000118",
"seller": "0.00000116"
},
"discount": { // 使用BNB支付时的佣金折扣。
"enabledForAccount": true,
"enabledForSymbol": true,
"discountAsset": "BNB",
"discount": "0.75000000" // 当用BNB支付佣金时,在标准佣金上按此比率打折
}
}
GET /api/v3/account/commission
获取当前账户的佣金费率。
权重: 20
参数:
参数名 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES |
数据源: 数据库
杠杆账户和交易接口
杠杆账户借贷/还款(MARGIN)
响应
{
//transaction id
"tranId": 100000001
}
POST /sapi/v1/margin/borrow-repay
杠杆账户借贷/还款
权重(UID): 1500
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
asset | STRING | YES | |
isIsolated | STRING | YES | 是否逐仓杠杆,TRUE , FALSE , 默认 FALSE |
symbol | STRING | YES | 逐仓交易对,配合逐仓使用 |
amount | STRING | YES | |
type | STRING | YES | 操作类型:BORROW、REPAY |
recvWindow | LONG | NO | The value cannot be greater than 60000 |
timestamp | LONG | YES |
查询借贷/还款记录(USER_DATA)
响应
{
"rows": [
{
"isolatedSymbol": "BNBUSDT", // 逐仓还款 返回逐仓symbol; 若是全仓不会返回此字段
"amount": "14.00000000", // 还款总额
"asset": "BNB",
"interest": "0.01866667", // 支付的利息
"principal": "13.98133333", // 支付的本金
"status": "CONFIRMED", //状态: PENDING (等待执行), CONFIRMED (成功还款), FAILED (执行失败);
"timestamp": 1563438204000,
"txId": 2970933056
}
],
"total": 1
}
GET /sapi/v1/margin/borrow-repay
查询借贷/还款记录
权重(IP): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
asset | STRING | NO | |
isolatedSymbol | STRING | NO | 逐仓symbol |
txId | LONG | NO | POST /sapi/v1/margin/loan 中的tranId |
startTime | LONG | NO | |
endTime | LONG | NO | |
current | LONG | NO | 当前查询页。 开始值 1。 默认:1 |
size | LONG | NO | 默认:10 最大:100 |
type | STRING | YES | 操作类型:BORROW、REPAY |
recvWindow | LONG | NO | The value cannot be greater than 60000 |
timestamp | LONG | YES |
- 必须发送
txId
或startTime
,txId
优先 - 响应返回为降序排列。
- 传了
asset
参数,最大查询时间范围为endTime
往前30天;不传asset
参数,最大查询时间范围为endTime
往前7天。 - 若
startTime
和endTime
没传,则默认返回最近7天数据 startTime
不传,默认endTime
-7天;结束时间不传,默认当前时间
获取所有杠杆资产信息 (MARKET_DATA)
响应
[
{
"assetFullName": "USD coin",
"assetName": "USDC",
"isBorrowable": true,
"isMortgageable": true,
"userMinBorrow": "0.00000000",
"userMinRepay": "0.00000000",
"delistTime": 1704973040
}
]
GET /sapi/v1/margin/allAssets
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
asset | STRING | NO |
获取所有全仓杠杆交易对(MARKET_DATA)
响应
[
{
"base": "BNB",
"id": 351637150141315861,
"isBuyAllowed": true,
"isMarginTrade": true,
"isSellAllowed": true,
"quote": "BTC",
"symbol": "BNBBTC"
},
{
"base": "TRX",
"id": 351637923235429141,
"isBuyAllowed": true,
"isMarginTrade": true,
"isSellAllowed": true,
"quote": "BTC",
"symbol": "TRXBTC",
"delistTime": 1704973040
},
{
"base": "XRP",
"id": 351638112213990165,
"isBuyAllowed": true,
"isMarginTrade": true,
"isSellAllowed": true,
"quote": "BTC",
"symbol": "XRPBTC"
},
{
"base": "ETH",
"id": 351638524530850581,
"isBuyAllowed": true,
"isMarginTrade": true,
"isSellAllowed": true,
"quote": "BTC",
"symbol": "ETHBTC"
}
]
GET /sapi/v1/margin/allPairs
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | NO |
查询杠杆价格指数 (MARKET_DATA)
响应
{
"calcTime": 1562046418000,
"price": "0.00333930",
"symbol": "BNBBTC"
}
GET /sapi/v1/margin/priceIndex
权重(IP): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES |
杠杆账户下单 (TRADE)
Response ACK:
{
"symbol": "BTCUSDT",
"orderId": 28,
"clientOrderId": "6gCrw2kRUAF9CvJDGP16IP",
"isIsolated": true, // 是否是逐仓symbol交易
"transactTime": 1507725176595
}
Response RESULT:
{
"symbol": "BTCUSDT",
"orderId": 28,
"clientOrderId": "6gCrw2kRUAF9CvJDGP16IP",
"transactTime": 1507725176595,
"price": "1.00000000",
"origQty": "10.00000000",
"executedQty": "10.00000000",
"cummulativeQuoteQty": "39983.00000000",
"status": "FILLED",
"timeInForce": "GTC",
"type": "MARKET",
"isIsolated": true, // 是否是逐仓symbol交易
"side": "SELL",
"selfTradePreventionMode": "NONE"
}
Response FULL:
{
"symbol": "BTCUSDT",
"orderId": 28,
"clientOrderId": "6gCrw2kRUAF9CvJDGP16IP",
"transactTime": 1507725176595,
"price": "0.00000000",
"origQty": "10.00000000",
"executedQty": "10.00000000",
"cummulativeQuoteQty": "39983.00000000",
"status": "FILLED",
"timeInForce": "GTC",
"type": "MARKET",
"side": "SELL",
"marginBuyBorrowAmount": 5, // 下单后没有发生借款则不返回该字段
"marginBuyBorrowAsset": "BTC", // 下单后没有发生借款则不返回该字段
"isIsolated": true, // 是否是逐仓symbol交易
"selfTradePreventionMode": "NONE",
"fills": [
{
"price": "4000.00000000",
"qty": "1.00000000",
"commission": "4.00000000",
"commissionAsset": "USDT"
},
{
"price": "3999.00000000",
"qty": "5.00000000",
"commission": "19.99500000",
"commissionAsset": "USDT"
},
{
"price": "3998.00000000",
"qty": "2.00000000",
"commission": "7.99600000",
"commissionAsset": "USDT"
},
{
"price": "3997.00000000",
"qty": "1.00000000",
"commission": "3.99700000",
"commissionAsset": "USDT"
},
{
"price": "3995.00000000",
"qty": "1.00000000",
"commission": "3.99500000",
"commissionAsset": "USDT"
}
]
}
POST /sapi/v1/margin/order
权重(UID): 6
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
isIsolated | STRING | NO | 是否逐仓杠杆,"TRUE", "FALSE", 默认 "FALSE" |
side | ENUM | YES | BUY SELL |
type | ENUM | YES | 详见枚举定义:订单类型 |
quantity | DECIMAL | NO | |
quoteOrderQty | DECIMAL | NO | |
price | DECIMAL | NO | |
stopPrice | DECIMAL | NO | 与STOP_LOSS , STOP_LOSS_LIMIT , TAKE_PROFIT , 和 TAKE_PROFIT_LIMIT 订单一起使用. |
newClientOrderId | STRING | NO | 客户自定义的唯一订单ID。若未发送自动生成。 |
icebergQty | DECIMAL | NO | 与 LIMIT , STOP_LOSS_LIMIT , 和 TAKE_PROFIT_LIMIT 一起使用创建 iceberg 订单. |
newOrderRespType | ENUM | NO | 设置响应: JSON. ACK, RESULT, 或 FULL; MARKET 和 LIMIT 订单类型默认为 FULL, 所有其他订单默认为 ACK. |
sideEffectType | ENUM | NO | NO_SIDE_EFFECT, MARGIN_BUY, AUTO_REPAY,AUTO_BORROW_REPAY;默认为 NO_SIDE_EFFECT. 详见FAQ |
timeInForce | ENUM | NO | GTC,IOC,FOK |
selfTradePreventionMode | ENUM | NO | 允许的 ENUM 取决于交易对的配置。支持的值有 EXPIRE_TAKER,EXPIRE_MAKER,EXPIRE_BOTH,NONE |
autoRepayAtCancel | BOOLEAN | NO | 只有在自动借款单或者自动借还单生效,true表示的是撤单后需要把订单产生的借款归还,默认为true |
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
- autoRepayAtCancel 补充说明: 在频繁下单撤单的情况下,为提高资金利用率,建议设置为FALSE
杠杆账户撤销订单 (TRADE)
响应
{
"symbol": "LTCBTC",
"orderId": "28",
"origClientOrderId": "myOrder1",
"clientOrderId": "cancelMyOrder1",
"price": "1.00000000",
"origQty": "10.00000000",
"executedQty": "8.00000000",
"cummulativeQuoteQty": "8.00000000",
"status": "CANCELED",
"timeInForce": "GTC",
"type": "LIMIT",
"side": "SELL",
"isIsolated": true // 是否是逐仓symbol交易
}
DELETE /sapi/v1/margin/order
杠杆账户撤销有效订单。
权重(IP): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
isIsolated | STRING | NO | 是否逐仓杠杆,"TRUE", "FALSE", 默认 "FALSE" |
orderId | LONG | NO | |
origClientOrderId | STRING | NO | |
newClientOrderId | STRING | NO | 用于唯一识别此撤销订单,默认自动生成。 |
recvWindow | LONG | NO | T赋值不能大于 60000 |
timestamp | LONG | YES |
- 必须发送 orderId 或 origClientOrderId 其中一个。
杠杆账户撤销单一交易对的所有挂单 (TRADE)
响应:
[
{
"symbol": "BTCUSDT",
"isIsolated": true, // 是否是逐仓symbol交易
"origClientOrderId": "E6APeyTJvkMvLMYMqu1KQ4",
"orderId": 11,
"orderListId": -1,
"clientOrderId": "pXLV6Hz6mprAcVYpVMTGgx",
"price": "0.089853",
"origQty": "0.178622",
"executedQty": "0.000000",
"cummulativeQuoteQty": "0.000000",
"status": "CANCELED",
"timeInForce": "GTC",
"type": "LIMIT",
"side": "BUY",
"selfTradePreventionMode": "NONE"
},
{
"symbol": "BTCUSDT",
"isIsolated": false, // 是否是逐仓symbol交易
"origClientOrderId": "A3EF2HCwxgZPFMrfwbgrhv",
"orderId": 13,
"orderListId": -1,
"clientOrderId": "pXLV6Hz6mprAcVYpVMTGgx",
"price": "0.090430",
"origQty": "0.178622",
"executedQty": "0.000000",
"cummulativeQuoteQty": "0.000000",
"status": "CANCELED",
"timeInForce": "GTC",
"type": "LIMIT",
"side": "BUY",
"selfTradePreventionMode": "NONE"
},
{
"orderListId": 1929,
"contingencyType": "OCO",
"listStatusType": "ALL_DONE",
"listOrderStatus": "ALL_DONE",
"listClientOrderId": "2inzWQdDvZLHbbAmAozX2N",
"transactionTime": 1585230948299,
"symbol": "BTCUSDT",
"isIsolated": true, // 是否是逐仓symbol交易
"orders": [
{
"symbol": "BTCUSDT",
"orderId": 20,
"clientOrderId": "CwOOIPHSmYywx6jZX77TdL"
},
{
"symbol": "BTCUSDT",
"orderId": 21,
"clientOrderId": "461cPg51vQjV3zIMOXNz39"
}
],
"orderReports": [
{
"symbol": "BTCUSDT",
"origClientOrderId": "CwOOIPHSmYywx6jZX77TdL",
"orderId": 20,
"orderListId": 1929,
"clientOrderId": "pXLV6Hz6mprAcVYpVMTGgx",
"price": "0.668611",
"origQty": "0.690354",
"executedQty": "0.000000",
"cummulativeQuoteQty": "0.000000",
"status": "CANCELED",
"timeInForce": "GTC",
"type": "STOP_LOSS_LIMIT",
"side": "BUY",
"stopPrice": "0.378131",
"icebergQty": "0.017083"
},
{
"symbol": "BTCUSDT",
"origClientOrderId": "461cPg51vQjV3zIMOXNz39",
"orderId": 21,
"orderListId": 1929,
"clientOrderId": "pXLV6Hz6mprAcVYpVMTGgx",
"price": "0.008791",
"origQty": "0.690354",
"executedQty": "0.000000",
"cummulativeQuoteQty": "0.000000",
"status": "CANCELED",
"timeInForce": "GTC",
"type": "LIMIT_MAKER",
"side": "BUY",
"icebergQty": "0.639962"
}
]
}
]
DELETE /sapi/v1/margin/openOrders
杠杆账户撤销单一交易对下所有挂单, 包括订单列表的挂单。
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
isIsolated | STRING | NO | 是否逐仓杠杆,"TRUE", "FALSE", 默认 "FALSE" |
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
调整全仓最大杠杆 (USER_DATA)
响应:
{
"success": true
}
POST /sapi/v1/margin/max-leverage
调整全仓最大杠杆倍数
权重(UID): 3000
访问限制: 1次/分钟/UID
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
maxLeverage | Integer | YES | 只能调整3, 5 或者10,举例: maxLeverage=10 就是选择切换成全仓 Pro 模式,maxLeverage = 5 或者3是选择全仓Classic模式 |
- 当前的风险率需要大于调整后的初始风险率,3x的初始风险率是1.5,5x的初始风险率是1.25,10x 的初始风险率是2.5
获取全仓杠杆划转历史 (USER_DATA)
响应
{
"rows": [
{
"amount": "0.10000000",
"asset": "BNB",
"status": "CONFIRMED",
"timestamp": 1566898617,
"txId": 5240372201,
"type": "ROLL_IN",
"transFrom": "SPOT",//SPOT,FUTURES,FIAT,DELIVERY,MINING,ISOLATED_MARGIN,FUNDING,MOTHER_SPOT,OPTION,SUB_SPOT,SUB_MARGIN,CROSS_MARGIN
"transTo": "ISOLATED_MARGIN",//SPOT,FUTURES,FIAT,DELIVERY,MINING,ISOLATED_MARGIN,FUNDING,MOTHER_SPOT,OPTION,SUB_SPOT,SUB_MARGIN,CROSS_MARGIN
},
{
"amount": "5.00000000",
"asset": "USDT",
"status": "CONFIRMED",
"timestamp": 1566888436,
"txId": 5239810406,
"type": "ROLL_OUT",
"transFrom": "ISOLATED_MARGIN",//SPOT,FUTURES,FIAT,DELIVERY,MINING,ISOLATED_MARGIN,FUNDING,MOTHER_SPOT,OPTION,SUB_SPOT,SUB_MARGIN,CROSS_MARGIN
"transTo": "ISOLATED_MARGIN",//SPOT,FUTURES,FIAT,DELIVERY,MINING,ISOLATED_MARGIN,FUNDING,MOTHER_SPOT,OPTION,SUB_SPOT,SUB_MARGIN,CROSS_MARGIN
"fromSymbol": "BNBUSDT",
"toSymbol": "BTCUSDT"
},
{
"amount": "1.00000000",
"asset": "EOS",
"status": "CONFIRMED",
"timestamp": 1566888403,
"txId": 5239808703,
"type": "ROLL_IN"
}
],
"total": 3
}
GET /sapi/v1/margin/transfer
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
asset | STRING | NO | |
type | STRING | NO | 划转类型: ROLL_IN, ROLL_OUT |
startTime | LONG | NO | |
endTime | LONG | NO | |
current | LONG | NO | 当前查询页。 从 1开始。 默认:1 |
size | LONG | NO | 默认:10 最大:100 |
isolatedSymbol | STRING | NO | 逐仓交易对,适用于逐仓查询 |
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
- 响应返回为降序排列。
- 查询时间范围最大不得超过30天。
- 若
startTime
和endTime
没传,则默认返回最近7天数据
获取利息历史 (USER_DATA)
响应
{
"rows": [
{
"txId": 1352286576452864727,
"interestAccuredTime": 1672160400000,
"asset": "USDT",
"rawAsset": "USDT", // 逐仓不会返回此字段
"principal": "45.3313",
"interest": "0.00024995",
"interestRate": "0.00013233",
"type": "ON_BORROW",
"isolatedSymbol": "BNBUSDT" // 返回逐仓symbol; 若是全仓不会返回此字段
}
],
"total": 1
}
GET /sapi/v1/margin/interestHistory
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
asset | STRING | NO | |
isolatedSymbol | STRING | NO | 逐仓symbol |
startTime | LONG | NO | 精确到秒,忽略毫秒的数值 |
如XXXXXXXXXX000ms | |||
endTime | LONG | NO | 精确到秒,忽略毫秒的数值 |
如XXXXXXXXXX000ms | |||
current | LONG | NO | 当前查询页。 开始值 1. 默认:1 |
size | LONG | NO | 默认:10 最大:100 |
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
- 响应返回为降序排列。
- 如果发送isolatedSymbol,返回指定逐仓symbol的记录。
- 查询时间范围最大不得超过30天。
- 若
startTime
和endTime
没传,则默认返回最近7天数据 - 如果想查询6个月以前数据,设置
archived
为true
。 - 返回的
type
数据有4种类型:
PERIODIC
每小时收的利息ON_BORROW
借款的时候第一次收的利息PERIODIC_CONVERTED
每小时收的利息,用BNB抵扣ON_BORROW_CONVERTED
借款的时候第一次收的利息,用BNB抵扣PORTFOLIO
统一账户负余额每日利息
获取账户强制平仓记录(USER_DATA)
响应
{
"rows": [
{
"avgPrice": "0.00388359",
"executedQty": "31.39000000",
"orderId": 180015097,
"price": "0.00388110",
"qty": "31.39000000",
"side": "SELL",
"symbol": "BNBBTC",
"timeInForce": "GTC",
"isIsolated": ture, // 是否是逐仓
"updatedTime": 1558941374745
}
],
"total": 1
}
GET /sapi/v1/margin/forceLiquidationRec
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
startTime | LONG | NO | |
endTime | LONG | NO | |
isolatedSymbol | STRING | NO | |
current | LONG | NO | 当前查询页。 开始值 1. 默认:1 |
size | LONG | NO | 默认:10 最大:100 |
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
- 响应返回为降序排列。
查询全仓杠杆账户详情 (USER_DATA)
响应
{
"created" : true, // true 表示已开户, false 表示未开户
"borrowEnabled": true,
"marginLevel": "11.64405625",
"collateralMarginLevel" : "3.2",
"totalAssetOfBtc": "6.82728457",
"totalLiabilityOfBtc": "0.58633215",
"totalNetAssetOfBtc": "6.24095242",
"totalCollateralValueInUSDT": "5.82728457",
"tradeEnabled": true,
"transferEnabled": true,
"accountType": "MARGIN_1", // MARGIN_1 全仓Classic模式账户, MARGIN_2 全仓Pro模式账户
"userAssets": [
{
"asset": "BTC",
"borrowed": "0.00000000",
"free": "0.00499500",
"interest": "0.00000000",
"locked": "0.00000000",
"netAsset": "0.00499500"
},
{
"asset": "BNB",
"borrowed": "201.66666672",
"free": "2346.50000000",
"interest": "0.00000000",
"locked": "0.00000000",
"netAsset": "2144.83333328"
},
{
"asset": "ETH",
"borrowed": "0.00000000",
"free": "0.00000000",
"interest": "0.00000000",
"locked": "0.00000000",
"netAsset": "0.00000000"
},
{
"asset": "USDT",
"borrowed": "0.00000000",
"free": "0.00000000",
"interest": "0.00000000",
"locked": "0.00000000",
"netAsset": "0.00000000"
}
]
}
GET /sapi/v1/margin/account
权重(IP): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
查询杠杆账户订单 (USER_DATA)
响应
{
"clientOrderId": "ZwfQzuDIGpceVhKW5DvCmO",
"cummulativeQuoteQty": "0.00000000",
"executedQty": "0.00000000",
"icebergQty": "0.00000000",
"isWorking": true,
"orderId": 213205622,
"origQty": "0.30000000",
"price": "0.00493630",
"side": "SELL",
"status": "NEW",
"stopPrice": "0.00000000",
"symbol": "BNBBTC",
"isIsolated": true, // 是否是逐仓symbol交易
"time": 1562133008725,
"timeInForce": "GTC",
"type": "LIMIT",
"selfTradePreventionMode": "NONE",
"updateTime": 1562133008725
}
GET /sapi/v1/margin/order
权重(IP): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
isIsolated | STRING | NO | 是否逐仓杠杆,"TRUE", "FALSE", 默认 "FALSE" |
orderId | LONG | NO | |
origClientOrderId | STRING | NO | |
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
- 必须发送 orderId 或 origClientOrderId 其中一个。
- 一些历史订单的 cummulativeQuoteQty < 0, 是指当前数据不存在。
查询杠杆账户挂单记录 (USER_DATA)
响应
[
{
"clientOrderId": "qhcZw71gAkCCTv0t0k8LUK",
"cummulativeQuoteQty": "0.00000000",
"executedQty": "0.00000000",
"icebergQty": "0.00000000",
"isWorking": true,
"orderId": 211842552,
"origQty": "0.30000000",
"price": "0.00475010",
"side": "SELL",
"status": "NEW",
"stopPrice": "0.00000000",
"symbol": "BNBBTC",
"isIsolated": true, // 是否是逐仓symbol交易
"time": 1562040170089,
"timeInForce": "GTC",
"type": "LIMIT",
"selfTradePreventionMode": "NONE",
"updateTime": 1562040170089
}
]
GET /sapi/v1/margin/openOrders
权重(IP): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | NO | |
isIsolated | STRING | NO | 是否逐仓杠杆,"TRUE", "FALSE", 默认 "FALSE" |
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
- 如未发送symbol,返回所有 symbols 订单记录。
- 当返回所有symbols时,针对限速器计数的请求数量等于当前在交易所交易的symbols数量。
- 如果 isIsolated = "TRUE", symbol 为必填
查询杠杆账户的所有订单 (USER_DATA)
响应
[
{
"clientOrderId": "D2KDy4DIeS56PvkM13f8cP",
"cummulativeQuoteQty": "0.00000000",
"executedQty": "0.00000000",
"icebergQty": "0.00000000",
"isWorking": false,
"orderId": 41295,
"origQty": "5.31000000",
"price": "0.22500000",
"side": "SELL",
"status": "CANCELED",
"stopPrice": "0.18000000",
"symbol": "BNBBTC",
"isIsolated": false, // 是否是逐仓symbol交易
"time": 1565769338806,
"timeInForce": "GTC",
"type": "TAKE_PROFIT_LIMIT",
"selfTradePreventionMode": "NONE",
"updateTime": 1565769342148
},
{
"clientOrderId": "gXYtqhcEAs2Rn9SUD9nRKx",
"cummulativeQuoteQty": "0.00000000",
"executedQty": "0.00000000",
"icebergQty": "1.00000000",
"isWorking": true,
"orderId": 41296,
"origQty": "6.65000000",
"price": "0.18000000",
"side": "SELL",
"status": "CANCELED",
"stopPrice": "0.00000000",
"symbol": "BNBBTC",
"isIsolated": false, // 是否是逐仓symbol交易
"time": 1565769348687,
"timeInForce": "GTC",
"type": "LIMIT",
"selfTradePreventionMode": "NONE",
"updateTime": 1565769352226
}
]
GET /sapi/v1/margin/allOrders
权重(IP): 200
访问限制
60次/分钟/IP
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
isIsolated | STRING | NO | 是否逐仓杠杆,"TRUE", "FALSE", 默认 "FALSE" |
orderId | LONG | NO | |
startTime | LONG | NO | |
endTime | LONG | NO | |
limit | INT | NO | 默认 500;最大500. |
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
- 如果设置 orderId , 获取订单 >= orderId, 否则返回近期订单历史。
- 一些历史订单的 cummulativeQuoteQty < 0, 是指当前数据不存在。
杠杆账户 OCO 下单(TRADE)
响应
{
"orderListId": 0,
"contingencyType": "OCO",
"listStatusType": "EXEC_STARTED",
"listOrderStatus": "EXECUTING",
"listClientOrderId": "JYVpp3F0f5CAG15DhtrqLp",
"transactionTime": 1563417480525,
"symbol": "LTCBTC",
"marginBuyBorrowAmount": "5", // 下单后没有发生借款则不返回该字段
"marginBuyBorrowAsset": "BTC", // 下单后没有发生借款则不返回该字段
"isIsolated": false, // 是否是逐仓symbol交易
"orders": [
{
"symbol": "LTCBTC",
"orderId": 2,
"clientOrderId": "Kk7sqHb9J6mJWTMDVW7Vos"
},
{
"symbol": "LTCBTC",
"orderId": 3,
"clientOrderId": "xTXKaGYd4bluPVp78IVRvl"
}
],
"orderReports": [
{
"symbol": "LTCBTC",
"orderId": 2,
"orderListId": 0,
"clientOrderId": "Kk7sqHb9J6mJWTMDVW7Vos",
"transactTime": 1563417480525,
"price": "0.000000",
"origQty": "0.624363",
"executedQty": "0.000000",
"cummulativeQuoteQty": "0.000000",
"status": "NEW",
"timeInForce": "GTC",
"type": "STOP_LOSS",
"side": "BUY",
"stopPrice": "0.960664",
"selfTradePreventionMode": "NONE"
},
{
"symbol": "LTCBTC",
"orderId": 3,
"orderListId": 0,
"clientOrderId": "xTXKaGYd4bluPVp78IVRvl",
"transactTime": 1563417480525,
"price": "0.036435",
"origQty": "0.624363",
"executedQty": "0.000000",
"cummulativeQuoteQty": "0.000000",
"status": "NEW",
"timeInForce": "GTC",
"type": "LIMIT_MAKER",
"side": "BUY",
"selfTradePreventionMode": "NONE"
}
]
}
POST /sapi/v1/margin/order/oco
杠杆账户发送新 OCO 订单。
权重(UID): 6
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
isIsolated | STRING | NO | 是否逐仓杠杆,"TRUE", "FALSE", 默认 "FALSE" |
listClientOrderId | STRING | NO | 整个orderList的唯一ID |
side | ENUM | YES | 详见枚举定义:订单方向 |
quantity | DECIMAL | YES | |
limitClientOrderId | STRING | NO | 限价单的唯一ID |
price | DECIMAL | YES | |
limitIcebergQty | DECIMAL | NO | |
stopClientOrderId | STRING | NO | 止损/止损限价单的唯一ID |
stopPrice | DECIMAL | YES | |
stopLimitPrice | DECIMAL | NO | 如果提供,须配合提交stopLimitTimeInForce |
stopIcebergQty | DECIMAL | NO | |
stopLimitTimeInForce | ENUM | NO | 有效值 GTC /FOK /IOC |
newOrderRespType | ENUM | NO | 详见枚举定义:订单返回类型 |
sideEffectType | ENUM | NO | NO_SIDE_EFFECT, MARGIN_BUY, AUTO_REPAY,AUTO_BORROW_REPAY; 默认为 NO_SIDE_EFFECT;详见FAQ |
selfTradePreventionMode | ENUM | NO | 允许的 ENUM 取决于交易对的配置。支持的值有 EXPIRE_TAKER,EXPIRE_MAKER,EXPIRE_BOTH,NONE |
autoRepayAtCancel | BOOLEAN | NO | 只有在自动借款单或者自动借还单生效,true表示的是撤单后需要把订单产生的借款归还,默认为true |
recvWindow | LONG | NO | 不能大于 60000 |
timestamp | LONG | YES |
其他信息:
- 价格限制:
SELL
: 限价 > 最新成交价 >触发价BUY
: 限价 < 最新成交价 < 触发价
- 数量限制:
- 两个 legs 必须具有同样的数量。
ICEBERG
数量不必相同
下单rate
- 一个
OCO
订单被算成2个普通订单.
- 一个
autoRepayAtCancel 补充说明: 在频繁下单撤单的情况下,为提高资金利用率,建议设置为FALSE
取消杠杆账户 OCO 订单(TRADE)
响应
{
"orderListId": 0,
"contingencyType": "OCO",
"listStatusType": "ALL_DONE",
"listOrderStatus": "ALL_DONE",
"listClientOrderId": "C3wyj4WVEktd7u9aVBRXcN",
"transactionTime": 1574040868128,
"symbol": "LTCBTC",
"isIsolated": false, // 是否是逐仓symbol交易
"orders": [
{
"symbol": "LTCBTC",
"orderId": 2,
"clientOrderId": "pO9ufTiFGg3nw2fOdgeOXa"
},
{
"symbol": "LTCBTC",
"orderId": 3,
"clientOrderId": "TXOvglzXuaubXAaENpaRCB"
}
],
"orderReports": [
{
"symbol": "LTCBTC",
"origClientOrderId": "pO9ufTiFGg3nw2fOdgeOXa",
"orderId": 2,
"orderListId": 0,
"clientOrderId": "unfWT8ig8i0uj6lPuYLez6",
"price": "1.00000000",
"origQty": "10.00000000",
"executedQty": "0.00000000",
"cummulativeQuoteQty": "0.00000000",
"status": "CANCELED",
"timeInForce": "GTC",
"type": "STOP_LOSS_LIMIT",
"side": "SELL",
"stopPrice": "1.00000000",
"selfTradePreventionMode": "NONE"
},
{
"symbol": "LTCBTC",
"origClientOrderId": "TXOvglzXuaubXAaENpaRCB",
"orderId": 3,
"orderListId": 0,
"clientOrderId": "unfWT8ig8i0uj6lPuYLez6",
"price": "3.00000000",
"origQty": "10.00000000",
"executedQty": "0.00000000",
"cummulativeQuoteQty": "0.00000000",
"status": "CANCELED",
"timeInForce": "GTC",
"type": "LIMIT_MAKER",
"side": "SELL",
"selfTradePreventionMode": "NONE"
}
]
}
DELETE /sapi/v1/margin/orderList
取消杠杆账户订单列表。
权重(UID): 1
参数
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
isIsolated | STRING | NO | 是否逐仓杠杆,"TRUE", "FALSE", 默认 "FALSE" |
orderListId | LONG | NO | orderListId 或 listClientOrderId 必须被提供 |
listClientOrderId | STRING | NO | orderListId 或 listClientOrderId 必须被提供 |
newClientOrderId | STRING | NO | 用户自定义的本次撤销操作的ID(注意不是被撤销的订单的自定义ID)。如无指定会自动赋值。 |
recvWindow | LONG | NO | 不能大于 60000 |
timestamp | LONG | YES |
其他注意点:
- 取消单个 leg 将取消整个 OCO 订单。
查询杠杆账户 OCO (USER_DATA)
响应
{
"orderListId": 27,
"contingencyType": "OCO",
"listStatusType": "EXEC_STARTED",
"listOrderStatus": "EXECUTING",
"listClientOrderId": "h2USkA5YQpaXHPIrkd96xE",
"transactionTime": 1565245656253,
"symbol": "LTCBTC",
"isIsolated": true, // 是否是逐仓symbol交易
"orders": [
{
"symbol": "LTCBTC",
"orderId": 4,
"clientOrderId": "qD1gy3kc3Gx0rihm9Y3xwS"
},
{
"symbol": "LTCBTC",
"orderId": 5,
"clientOrderId": "ARzZ9I00CPM8i3NhmU9Ega"
}
]
}
GET /sapi/v1/margin/orderList
根据提供的可选参数检索特定的杠杆账户的订单列表。
权重(IP): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
isIsolated | STRING | NO | 是否逐仓杠杆,"TRUE", "FALSE", 默认 "FALSE" |
symbol | STRING | NO | 逐仓杠杆必填,全仓杠杆不支持该参数 |
orderListId | LONG | NO | orderListId 或 origClientOrderId 必须提供一个。 |
origClientOrderId | STRING | NO | orderListId 或 origClientOrderId 必须提供一个。 |
recvWindow | LONG | NO | 赋值不得大于 60000 |
timestamp | LONG | YES |
查询特定杠杆账户所有的订单列表 (USER_DATA)
响应
[
{
"orderListId": 29,
"contingencyType": "OCO",
"listStatusType": "EXEC_STARTED",
"listOrderStatus": "EXECUTING",
"listClientOrderId": "amEEAXryFzFwYF1FeRpUoZ",
"transactionTime": 1565245913483,
"symbol": "LTCBTC",
"isIsolated": true, // 是否是逐仓symbol交易
"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"
}
]
}
]
GET /sapi/v1/margin/allOrderList
根据提供的可选参数检索特定杠杆账户所有的订单列表。
权重(IP): 200
参数
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
isIsolated | STRING | NO | 是否逐仓杠杆,"TRUE", "FALSE", 默认 "FALSE" |
symbol | STRING | NO | 逐仓杠杆必填,全仓杠杆不支持该参数 |
fromId | LONG | NO | 提供该项后, startTime 和 endTime 都不可提供 |
startTime | LONG | NO | |
endTime | LONG | NO | |
limit | INT | NO | 默认值: 500; 最大值: 1000 |
recvWindow | LONG | NO | 赋值不能超过 60000 |
timestamp | LONG | YES |
查询杠杆账户的订单列表挂单 (USER_DATA)
响应
[
{
"orderListId": 31,
"contingencyType": "OCO",
"listStatusType": "EXEC_STARTED",
"listOrderStatus": "EXECUTING",
"listClientOrderId": "wuB13fmulKj3YjdqWEcsnp",
"transactionTime": 1565246080644,
"symbol": "LTCBTC",
"isIsolated": true, // 是否是逐仓symbol交易
"orders": [
{
"symbol": "LTCBTC",
"orderId": 4,
"clientOrderId": "r3EH2N76dHfLoSZWIUw1bT"
},
{
"symbol": "LTCBTC",
"orderId": 5,
"clientOrderId": "Cv1SnyPD3qhqpbjpYEHbd2"
}
]
}
]
GET /sapi/v1/margin/openOrderList
权重(IP): 10
参数
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
isIsolated | STRING | NO | 是否逐仓杠杆,"TRUE", "FALSE", 默认 "FALSE" |
symbol | STRING | NO | 逐仓杠杆必填,全仓杠杆不支持该参数 |
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
查询杠杆账户交易历史 (USER_DATA)
响应
[
{
"commission": "0.00006000",
"commissionAsset": "BTC",
"id": 34,
"isBestMatch": true,
"isBuyer": false,
"isMaker": false,
"orderId": 39324,
"price": "0.02000000",
"qty": "3.00000000",
"symbol": "BNBBTC",
"isIsolated": false, // 是否是逐仓symbol交易
"time": 1561973357171
},
{
"commission": "0.00002950",
"commissionAsset": "BTC",
"id": 32,
"isBestMatch": true,
"isBuyer": false,
"isMaker": true,
"orderId": 39319,
"price": "0.00590000",
"qty": "5.00000000",
"symbol": "BNBBTC",
"isIsolated": false, // 是否是逐仓symbol交易
"time": 1561964645345
}
]
GET /sapi/v1/margin/myTrades
权重(IP): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
isIsolated | STRING | NO | 是否逐仓杠杆,"TRUE", "FALSE", 默认 "FALSE" |
orderId | LONG | NO | |
startTime | LONG | NO | |
endTime | LONG | NO | |
fromId | LONG | NO | 获取TradeId,默认获取近期交易历史。 |
limit | INT | NO | 默认 500; 最大 1000. |
recvWindow | LONG | NO | 默认值不能大于 60000 |
timestamp | LONG | YES |
- 如果设置 fromId , 获取订单 id >= fromId, 否则返回近期订单历史。
查询账户最大可借贷额度(USER_DATA)
响应
{
"amount": "1.69248805", // 系统可借充足情况下用户账户当前最大可借额度
"borrowLimit": "60" // 平台限制的用户当前等级可以借的额度
}
GET /sapi/v1/margin/maxBorrowable
权重(IP): 50
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
asset | STRING | YES | |
isolatedSymbol | STRING | NO | 逐仓交易对,适用于逐仓查询 |
recvWindow | LONG | NO | 默认值不能大于 60000 |
timestamp | LONG | YES |
borrowLimit
的值也可以查看 https://www.binance.com/cn/margin-fee
查询最大可转出额 (USER_DATA)
响应
{
"amount": "3.59498107"
}
GET /sapi/v1/margin/maxTransferable
权重(IP): 50
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
asset | STRING | YES | |
isolatedSymbol | STRING | NO | 逐仓交易对,适用于逐仓查询 |
recvWindow | LONG | NO | 默认值不能大于 60000 |
timestamp | LONG | YES |
查询Margin账户信息汇总 (USER_DATA)
响应:
{
"normalBar": "1.5",
"marginCallBar": "1.3",
"forceLiquidationBar": "1.1"
}
GET /sapi/v1/margin/tradeCoeff
获取用户个人杠杆账户信息汇总
权重(IP): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recvWindow | LONG | NO | |
timestamp | LONG | YES |
查询杠杆逐仓账户信息 (USER_DATA)
响应:
不传"symbols"的返回内容
{
"assets":[
{
"baseAsset":
{
"asset": "BTC",
"borrowEnabled": true,
"borrowed": "0.00000000",
"free": "0.00000000",
"interest": "0.00000000",
"locked": "0.00000000",
"netAsset": "0.00000000",
"netAssetOfBtc": "0.00000000",
"repayEnabled": true,
"totalAsset": "0.00000000"
},
"quoteAsset":
{
"asset": "USDT",
"borrowEnabled": true,
"borrowed": "0.00000000",
"free": "0.00000000",
"interest": "0.00000000",
"locked": "0.00000000",
"netAsset": "0.00000000",
"netAssetOfBtc": "0.00000000",
"repayEnabled": true,
"totalAsset": "0.00000000"
},
"symbol": "BTCUSDT"
"isolatedCreated": true,
"enabled": true, // 账户是否启用,true-启用,false-停用
"marginLevel": "0.00000000",
"marginLevelStatus": "EXCESSIVE", // "EXCESSIVE", "NORMAL", "MARGIN_CALL", "PRE_LIQUIDATION", "FORCE_LIQUIDATION"
"marginRatio": "0.00000000",
"indexPrice": "10000.00000000",
"liquidatePrice": "1000.00000000",
"liquidateRate": "1.00000000",
"tradeEnabled": true
}
],
"totalAssetOfBtc": "0.00000000",
"totalLiabilityOfBtc": "0.00000000",
"totalNetAssetOfBtc": "0.00000000"
}
传"symbols"的返回内容
{
"assets":[
{
"baseAsset":
{
"asset": "BTC",
"borrowEnabled": true,
"borrowed": "0.00000000",
"free": "0.00000000",
"interest": "0.00000000",
"locked": "0.00000000",
"netAsset": "0.00000000",
"netAssetOfBtc": "0.00000000",
"repayEnabled": true,
"totalAsset": "0.00000000"
},
"quoteAsset":
{
"asset": "USDT",
"borrowEnabled": true,
"borrowed": "0.00000000",
"free": "0.00000000",
"interest": "0.00000000",
"locked": "0.00000000",
"netAsset": "0.00000000",
"netAssetOfBtc": "0.00000000",
"repayEnabled": true,
"totalAsset": "0.00000000"
},
"symbol": "BTCUSDT"
"isolatedCreated": true,
"enabled": true, // 账户是否启用,true-启用,false-停用
"marginLevel": "0.00000000",
"marginLevelStatus": "EXCESSIVE", // "EXCESSIVE", "NORMAL", "MARGIN_CALL", "PRE_LIQUIDATION", "FORCE_LIQUIDATION"
"marginRatio": "0.00000000",
"indexPrice": "10000.00000000",
"liquidatePrice": "1000.00000000",
"liquidateRate": "1.00000000",
"tradeEnabled": true
}
]
}
GET /sapi/v1/margin/isolated/account
权重(IP): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbols | STRING | NO | 最多可以传5个symbol; 由","分隔的字符串表示. e.g. "BTCUSDT,BNBUSDT,ADAUSDT" |
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
- 不传"symbols",返回所有杠杆逐仓资产
- 传"symbols", 将只会返回指定symbol的杠杆逐仓资产
杠杆逐仓账户停用 (TRADE)
响应
{
"success": true,
"symbol": "BTCUSDT"
}
DELETE /sapi/v1/margin/isolated/account
停用特定交易对的杠杆逐仓账户。每个交易对 24 小时内仅可停用一次。
权重(UID): 300
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
recvWindow | LONG | NO | 不能大于 60000 |
timestamp | LONG | YES |
杠杆逐仓账户启用 (TRADE)
响应
{
"success": true,
"symbol": "BTCUSDT"
}
POST /sapi/v1/margin/isolated/account
启用特定交易对的杠杆逐仓账户(仅支持启用之前停用的账户)。
权重(UID): 300
参数
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
recvWindow | LONG | NO | 不能大于 60000 |
timestamp | LONG | YES |
查询杠杆逐仓账户启用限制 (USER_DATA)
响应
{
"enabledAccount": 5,
"maxAccount": 20
}
GET /sapi/v1/margin/isolated/accountLimit
查询杠杆逐仓账户启用限制。
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recvWindow | LONG | NO | 不能大于 60000 |
timestamp | LONG | YES |
获取所有逐仓杠杆交易对(MARKET_DATA)
响应:
[
{
"base": "BNB",
"isBuyAllowed": true,
"isMarginTrade": true,
"isSellAllowed": true,
"quote": "BTC",
"symbol": "BNBBTC"
},
{
"base": "TRX",
"isBuyAllowed": true,
"isMarginTrade": true,
"isSellAllowed": true,
"quote": "BTC",
"symbol": "TRXBTC",
"delistTime": 1704973040
},
{
"base": "XRP",
"isBuyAllowed": true,
"isMarginTrade": true,
"isSellAllowed": true,
"quote": "BTC",
"symbol": "XRPBTC"
},
{
"base": "ETH",
"isBuyAllowed": true,
"isMarginTrade": true,
"isSellAllowed": true,
"quote": "BTC",
"symbol": "ETHBTC"
}
]
GET /sapi/v1/margin/isolated/allPairs
权重(IP): 10
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | NO |
现货交易和杠杆利息BNB抵扣开关(USER_DATA)
响应:
{
"spotBNBBurn":true,
"interestBNBBurn": false
}
POST /sapi/v1/bnbBurn
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
spotBNBBurn | STRING | NO | "true" 或 "false", 是否使用BNB支付现货交易的手续费 |
interestBNBBurn | STRING | NO | "true" 或 "false", 是否使用BNB支付杠杆贷款的利息 |
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
- "spotBNBBurn" 和 "interestBNBBurn" 二者必须传至少一个
获取BNB抵扣开关状态 (USER_DATA)
响应:
{
"spotBNBBurn":true,
"interestBNBBurn": false
}
GET /sapi/v1/bnbBurn
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
获取杠杆利率历史 (USER_DATA)
响应:
[
{
"asset": "BTC",
"dailyInterestRate": "0.00025000",
"timestamp": 1611544731000,
"vipLevel": 1
},
{
"asset": "BTC",
"dailyInterestRate": "0.00035000",
"timestamp": 1610248118000,
"vipLevel": 1
}
]
GET /sapi/v1/margin/interestRateHistory
权重(IP): 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
asset | STRING | YES | |
vipLevel | INT | NO | 默认用户当前等级 |
startTime | LONG | NO | 默认7天前 |
endTime | LONG | NO | 默认当天,时间间隔最大为1个月 |
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
获取全仓杠杆利率及限额 (USER_DATA)
响应:
[
{
"vipLevel": 0,
"coin": "BTC",
"transferIn": true,
"borrowable": true,
"dailyInterest": "0.00026125",
"yearlyInterest": "0.0953",
"borrowLimit": "180",
"marginablePairs": [
"BNBBTC",
"TRXBTC",
"ETHBTC",
"BTCUSDT"
]
}
]
GET /sapi/v1/margin/crossMarginData
通过VIP等级或用户当前VIP等级获取全仓杠杆利率及限额, 如:https://www.binance.com/en/margin-fee
权重: 1 指定币种; 5 币种参数缺失
参数(IP):
名称 | 类型 | 是否必须 | 描述 |
---|---|---|---|
vipLevel | INT | NO | 当未发送参数vipLevel 时,将返回用户当前vip等级的数据;当发送参数vipLevel 时,将返回对应vip等级的数据 |
coin | STRING | NO | |
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
获取逐仓杠杆利率及限额 (USER_DATA)
响应:
[
{
"vipLevel": 0,
"symbol": "BTCUSDT",
"leverage": "10",
"data": [
{
"coin": "BTC",
"dailyInterest": "0.00026125",
"borrowLimit": "270"
},
{
"coin": "USDT",
"dailyInterest": "0.000475",
"borrowLimit": "2100000"
}
]
}
]
GET /sapi/v1/margin/isolatedMarginData
通过VIP等级或用户当前VIP等级获取逐仓杠杆利率及限额, 如: https://www.binance.com/en/margin-fee
权重(IP): 1 指定交易对; 10 交易对参数缺失
参数:
名称 | 类型 | 是否必须 | 描述 |
---|---|---|---|
vipLevel | INT | NO | 默认为用户当前VIP等级 |
symbol | STRING | NO | |
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
获取逐仓档位信息 (USER_DATA)
响应:
[
{
"symbol": "BTCUSDT",
"tier": 1,
"effectiveMultiple": "10",
"initialRiskRatio": "1.111",
"liquidationRiskRatio": "1.05",
"baseAssetMaxBorrowable": "9",
"quoteAssetMaxBorrowable": "70000"
}
]
GET /sapi/v1/margin/isolatedMarginTier
通过档位获取逐仓杠杆档位数据, 如: https://www.binance.com/en/margin-data
权重(IP): 1
参数:
名称 | 类型 | 是否必须 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
tier | INTEGER | NO | 不传则返回所有逐仓杠杆档位 |
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
查询目前杠杆账户下单数 (TRADE)
响应:
[
{
"rateLimitType": "ORDERS",
"interval": "SECOND",
"intervalNum": 10,
"limit": 10000,
"count": 0
},
{
"rateLimitType": "ORDERS",
"interval": "DAY",
"intervalNum": 1,
"limit": 20000,
"count": 0
}
]
GET /sapi/v1/margin/rateLimit/order
获取用户在当前时间区间内的杠杆账户下单总数。
权重(IP): 20
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
isIsolated | STRING | NO | 是否逐仓杠杆,"TRUE", "FALSE", 默认 "FALSE" |
symbol | STRING | NO | 逐仓交易对,查询逐仓杠杆账户必需 |
recvWindow | LONG | NO | 赋值不能大于 60000 |
timestamp | LONG | YES |
全仓币种质押率 (MARKET_DATA)
响应:
[
{
"collaterals": [
{
"minUsdValue": "0",
"maxUsdValue": "13000000",
"discountRate": "1"
},
{
"minUsdValue": "13000000",
"maxUsdValue": "20000000",
"discountRate": "0.975"
},
{
"minUsdValue": "20000000",
"discountRate": "0"
}
],
"assetNames": [
"BNX"
]
},
{
"collaterals": [
{
"minUsdValue": "0",
"discountRate": "1"
}
],
"assetNames": [
"BTC",
"BUSD",
"ETH",
"USDT"
]
}
]
GET /sapi/v1/margin/crossMarginCollateralRatio
权重(IP): 100
参数: None
查询可小额负债转换的资产 (USER_DATA)
查询可小额负债转换的币种
响应:
[
{
"asset": "ETH",
"interest": "0.00083334",
"principal": "0.001",
"liabilityAsset": "USDT",
"liabilityQty": 0.3552
}
]
GET /sapi/v1/margin/exchange-small-liability
权重(IP): 100
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recvWindow | LONG | NO | |
timestamp | LONG | YES |
全仓杠杆小额负债转换 (MARGIN)
全仓杠杆小额负债转换
POST /sapi/v1/margin/exchange-small-liability
权重(UID): 3000
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
assetNames | ARRAY | YES | 小额转换的资产列表,举例: assetNames = BTC,ETH |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 兑换请求限流6小时一次
- 币种负债小于10USDT
- 币种数量最大10个
查询全仓杠杆小额负债转换历史 (USER_DATA)
查询全仓杠杆小额负债转换历史
响应:
{
"total": 1,
"rows": [
{
"asset": "ETH",
"amount": "0.00083434",
"targetAsset": "BUSD",
"targetAmount": "1.37576819",
"bizType": "EXCHANGE_SMALL_LIABILITY",
"timestamp": 1672801339253
}
]
}
GET /sapi/v1/margin/exchange-small-liability-history
权重(UID): 100
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
current | INT | YES | 当前页面,默认1,最小值为1 |
size | INT | YES | 页面大小,默认10,最大值为100 |
startTime | LONG | NO | 默认当前时间30天前的时间戳 |
endTime | LONG | NO | 默认当前时间戳 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
查询下小时预估利率 (USER_DATA)
GET /sapi/v1/margin/next-hourly-interest-rate
查询用户币种下小时预估利率
响应:
[
{
"asset": "BTC",
"nextHourlyInterestRate": "0.00000571"
},
{
"asset": "ETH",
"nextHourlyInterestRate": "0.00000578"
}
]
权重(IP): 100
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
assets | String | YES | 资产列表,以逗号分隔,最多20个 |
isIsolated | Boolean | YES | 是否逐仓杠杆,"TRUE", "FALSE" |
查询全仓/逐仓资金流水(USER_DATA)
GET /sapi/v1/margin/capital-flow
查询全仓/逐仓资金流水
响应:
[
{
"id": 123456,
"tranId": 123123,
"timestamp": 1691116657000,
"asset": "USDT",
"symbol": "BTCUSDT",
"type": "BORROW",
"amount": "101"
},
{
"id": 123457,
"tranId": 123124,
"timestamp": 1691116658000,
"asset": "BTC",
"symbol": "BTCUSDT",
"type": "REPAY",
"amount": "10"
}
]
权重(IP): 100
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
asset | STRING | NO | |
symbol | STRING | NO | 查询逐仓数据时必填 |
type | STRING | NO | |
startTime | LONG | NO | 只支持查询最近90天的数据 |
endTime | LONG | NO | |
fromId | LONG | NO | 如设置fromId, 将返回id > fromId的数据。否则将返回最新数据 |
limit | LONG | NO | 每次返回的数据条数限制。默认 500; 最大 1000. |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 只支持查询最近90天的数据
- 如设置
fromId
, 将返回id
>fromId
的数据。否则将返回最新订单。 - 查询逐仓数据,需要输入
symbol
- 支持的type:
- TRANSFER("Transfer", "转账")
- BORROW("Borrow", "借款")
- REPAY("Repay", "还款")
- BUY_INCOME("Buy-Trading Income", "买单-交易收入")
- BUY_EXPENSE("Buy-Trading Expense", "买单-交易支出")
- SELL_INCOME("Sell-Trading Income", "卖单-交易收入")
- SELL_EXPENSE("Sell-Trading Expense", "卖单-交易支出")
- TRADING_COMMISSION("Trading Commission", "交易手续费")
- BUY_LIQUIDATION("Buy by Liquidation", "强平买入")
- SELL_LIQUIDATION("Sell by Liquidation", "强平卖出")
- REPAY_LIQUIDATION("Repay by Liquidation", "强平还款")
- OTHER_LIQUIDATION("Other Liquidation", "其他强平")
- LIQUIDATION_FEE("Liquidation Fee", "强平清算费用")
- SMALL_BALANCE_CONVERT("Small Balance Convert", "小额兑换")
- COMMISSION_RETURN("Commission Return", "手续费返还")
- SMALL_CONVERT("Small Convert", "强平小额转换")
查询全仓和逐仓的币种或币对的下架计划 (MARKET_DATA)
GET /sapi/v1/margin/delist-schedule
查询全仓和逐仓的币种或币对的下架计划
响应:
[
{
"delistTime": 1686161202000,
"crossMarginAssets": [
"BTC",
"USDT"
],
"isolatedMarginSymbols": [
"ADAUSDT",
"BNBUSDT"
]
},
{
"delistTime": 1686222232000,
"crossMarginAssets": [
"ADA"
],
"isolatedMarginSymbols": []
}
]
权重(IP): 100
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recvWindow | LONG | NO | |
timestamp | LONG | YES |
杠杆可用放贷库存查询(USER_DATA)
GET /sapi/v1/margin/available-inventory
杠杆可用放贷库存查询
响应:
{
"assets": {
"MATIC": "100000000",
"STPT": "100000000",
"TVK": "100000000",
"SHIB": "97409653"
},
"updateTime": 1699272487
}
权重(UID): 50
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
type | STRING | YES | MARGIN ,ISOLATED |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
杠杆手动强平(MARGIN)
POST /sapi/v1/margin/manual-liquidation
杠杆手动强平
响应:
[
{
"asset": "ETH",
"interest": "0.00083334",
"principal": "0.001",
"liabilityAsset": "USDT",
"liabilityQty": 0.3552
}
]
权重(UID): 3000
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
type | STRING | YES | MARGIN ,ISOLATED |
symbol | STRING | NO | type 选择ISOLATED 后,symbol 需要填入 |
recvWindow | LONG | NO | |
timestamp | LONG | YES |
- 该接口可支持全仓杠杆模式和杠杆专业模式,不支持逐仓杠杆模式。
查询全仓杠杆Pro模式下的负债币种杠杆与保证金率(MARKET_DATA)
GET /sapi/v1/margin/leverageBracket
查询全仓杠杆Pro模式下的负债币种杠杆与保证金率
响应:
[
{
"assetNames":[
"SHIB",
"FDUSD",
"BTC",
"ETH",
"USDC"
],
"rank":1,
"brackets":[
{
"leverage":10,
"maxDebt":1000000.00000000,
"maintenanceMarginRate":0.02000000,
"initialMarginRate":0.1112,
"fastNum":0
},
{
"leverage":3,
"maxDebt":4000000.00000000,
"maintenanceMarginRate":0.07000000,
"initialMarginRate":0.5000,
"fastNum":60000.0000000000000000
}
]
}
]
权重(IP): 1
Websocket账户信息推送
- 本篇所列出 API 接口的 base URL : https://api.binance.com
- 用于订阅账户数据的
listenKey
从创建时刻起有效期为60分钟。 - 可以通过
PUT
一个listenKey
延长60分钟有效期。 - 可以通过
DELETE
一个listenKey
立即关闭当前数据流,并使该listenKey
无效。 - 在具有有效
listenKey
的帐户上执行POST
将返回当前有效的listenKey
并将其有效期延长60分钟。 - 一个
listenKey
就是一个数据流。 - 用户可以侦听/订阅数个数据流。
- websocket 接口的 base URL: wss://stream.binance.com:9443
- U订阅账户数据流的 stream 名称为 /ws/<listenKey> 或 /stream?streams=<listenKey>
- 每个链接有效期不超过24小时,请妥善处理断线重连。
- 账户数据流的消息不保证严格时间序; 请使用 E 字段进行排序
Listen Key(现货账户)
生成 Listen Key (USER_STREAM)
响应
{
"listenKey": "pqia91ma19a5s61cv6a81va65sdf19v8a65a1a5s61cv6a81va65sdf19v8a65a1"
}
POST /api/v3/userDataStream
开始一个新的数据流。除非发送 keepalive,否则数据流于60分钟后关闭。如果该帐户具有有效的listenKey
,则将返回该listenKey
并将其有效期延长60分钟。
权重:
2
参数:
NONE
数据源: 缓存
延长 Listen Key 有效期 (USER_STREAM)
响应
{}
PUT /api/v3/userDataStream
有效期延长至本次调用后60分钟,建议每30分钟发送一个 ping 。
权重: 2
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
listenKey | STRING | YES |
数据源: 缓存
关闭 Listen Key (USER_STREAM)
响应
{}
DELETE /api/v3/userDataStream
关闭用户数据流。
权重: 2
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
listenKey | STRING | YES |
数据源: 缓存
Listen Key(杠杆账户)
生成 Listen Key (USER_STREAM)
响应
{"listenKey": "T3ee22BIYuWqmvne0HNq2A2WsFlEtLhvWCtItw6ffhhdmjifQ2tRbuKkTHhr"}
POST /sapi/v1/userDataStream
权重: 1
参数:
NONE
延长 Listen Key 有效期 (USER_STREAM)
响应
{}
PUT /sapi/v1/userDataStream
权重: 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
listenKey | STRING | YES |
关闭 ListenKey (USER_STREAM)
响应
{}
DELETE /sapi/v1/userDataStream
权重: 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
listenKey | STRING | YES |
Listen Key(逐仓杠杆账户)
生成 Listen Key (USER_STREAM)
响应:
{
"listenKey": "T3ee22BIYuWqmvne0HNq2A2WsFlEtLhvWCtItw6ffhhdmjifQ2tRbuKkTHhr"
}
POST /sapi/v1/userDataStream/isolated
权重: 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES |
延长 Listen Key 有效期 (USER_STREAM)
响应:
{}
PUT /sapi/v1/userDataStream/isolated
权重: 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
listenKey | STRING | YES |
关闭 ListenKey (USER_STREAM)
响应:
{}
DELETE /sapi/v1/userDataStream/isolated
权重: 1
参数:
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
symbol | STRING | YES | |
listenKey | STRING | YES |
Payload: 账户更新
每当帐户余额发生更改时,都会发送一个事件outboundAccountPosition
,其中包含可能由生成余额变动的事件而变动的资产。
Payload
{
"e": "outboundAccountPosition", // 事件类型
"E": 1564034571105, // 事件时间
"u": 1564034571073, // 账户末次更新时间戳
"B": [ // 余额
{
"a": "ETH", // 资产名称
"f": "10000.000000", // 可用余额
"l": "0.000000" // 冻结余额
}
]
}
Payload: 余额更新
Payload
{
"e": "balanceUpdate", //Event Type
"E": 1573200697110, //Event Time
"a": "ABC", //Asset
"d": "100.00000000", //Balance Delta
"T": 1573200697068 //Clear Time
}
当下列情形发生时更新:
- 账户发生充值或提取
- 交易账户之间发生划转(例如 现货向杠杆账户划转)
Payload: 订单更新
订单通过executionReport
事件进行更新。
执行类型:
- NEW - 新订单已被引擎接受。
- CANCELED - 订单被用户取消。
- REPLACED - (保留字段,当前未使用)
- REJECTED - 新订单被拒绝 (这信息只会在撤消挂单再下单中发生,下新订单被拒绝但撤消挂单请求成功)。
- TRADE - 订单有新成交。
- EXPIRED - 订单已根据 Time In Force 参数的规则取消(e.g. 没有成交的 LIMIT FOK 订单或部分成交的 LIMIT IOC 订单)或者被交易所取消(e.g. 强平或维护期间取消的订单)。
- TRADE_PREVENTION - 订单因 STP 触发而过期。
请查阅公开API参数文档获取更多枚举定义。
Payload
{
"e": "executionReport", // 事件类型
"E": 1499405658658, // 事件时间
"s": "ETHBTC", // 交易对
"c": "mUvoqJxFIILMdfAW5iGSOW", // clientOrderId
"S": "BUY", // 订单方向
"o": "LIMIT", // 订单类型
"f": "GTC", // 有效方式
"q": "1.00000000", // 订单原始数量
"p": "0.10264410", // 订单原始价格
"P": "0.00000000", // 止盈止损单触发价格
"F": "0.00000000", // 冰山订单数量
"g": -1, // 订单列表 OrderListId
"C": "", // 原始订单自定义ID(原始订单,指撤单操作的对象。撤单本身被视为另一个订单)
"x": "NEW", // 本次事件的具体执行类型
"X": "NEW", // 订单的当前状态
"r": "NONE", // 订单被拒绝的原因
"i": 4293153, // orderId
"l": "0.00000000", // 订单末次成交量
"z": "0.00000000", // 订单累计已成交量
"L": "0.00000000", // 订单末次成交价格
"n": "0", // 手续费数量
"N": null, // 手续费资产类别
"T": 1499405658657, // 成交时间
"t": -1, // 成交ID
"v": 3, // 被阻止撮合交易的ID; 这仅在订单因 STP 触发而过期时可见
"I": 8641984, // 请忽略
"w": true, // 订单是否在订单簿上?
"m": false, // 该成交是作为挂单成交吗?
"M": false, // 请忽略
"O": 1499405658657, // 订单创建时间
"Z": "0.00000000", // 订单累计已成交金额
"Y": "0.00000000", // 订单末次成交金额
"Q": "0.00000000", // Quote Order Quantity
"W": 1499405658657, // Working Time; 订单被添加到 order book 的时间
"V": "NONE" // SelfTradePreventionMode
}
备注: 通过将Z
除以z
可以找到平均价格。
如果订单是订单列表,则除了显示executionReport
事件外,还将显示一个名为ListStatus
的事件。
executionReport
中的仅在满足特定条件时才会出现的字段:
字段 | 名称 | 描述 | 示例 |
---|---|---|---|
d |
Trailing Delta | 出现在追踪止损订单中。 | "d": 4 |
D |
Trailing Time | "D": 1668680518494 |
|
j |
Strategy Id | 如果在请求中添加了strategyId 参数,则会出现。 |
"j": 1 |
J |
Strategy Type | 如果在请求中添加了strategyType 参数,则会出现。 |
"J": 1000000 |
v |
Prevented Match Id | 只有在因为 STP 导致订单失效时可见。 | "v": 3 |
A
| Prevented Quantity | "A":"3.000000" |
|
B |
Last Prevented Quantity | "B":"3.000000" |
|
u |
Trade Group Id | "u":1 |
|
U |
Cou |