Binance改单会重置排队顺序吗?Cancel Replace规则

 / 
1

结论:会重置,除非你用的是"保留优先级修改"功能。 普通 Cancel-Replace 操作会撤销旧订单再下新单,新订单会重新排队,失去原有的时间优先级;只有专用接口才能在修改数量的同时保住位置。

Binance币安
全球交易量最大的加密货币交易所,安全性与流动性行业领先
新手福利:注册立享20%手续费折扣优惠!

1. 两种改单方式,结果完全不同

币安提供了两种修改订单的路径,普通人理解的都是第一种:

方式一:Cancel-Replace(撤单重下)

先取消现有订单,然后立即下一个新订单。这是大多数钱包和交易工具默认的做法。

结果:队列位置重置,失去优先级。

新订单会拿到一个新的订单 ID,排在所有相同价格老订单的后面。如果市场行情突然启动,你的新单子可能成交不了,而如果直接用保留优先级的方式修改,原来的位置本来能排到。

方式二:Order Amend Keep Priority(保留优先级修改)

这是币安专门为"只改数量、不改价格"的场景设计的接口,通过 order.amend.keepPriority WebSocket 端点或对应 REST 接口调用。

结果:订单 ID 不变,队列位置不变。

订单在订单簿上的优先级完全保留。

目前该接口仅支持减少订单原始数量,不支持增加数量或修改价格。

2. 为什么队列位置重要

订单簿按"价格优先、时间优先"的原则排序:出价最高的买单排在最前,同一价格下先挂单的先成交。

你在订单簿里的"排队号",就是你的时间优先级。当市场价格走到你的挂单价时,队列越靠前就越先被吃掉。

Cancel-Replace 相当于排到队尾重来。尤其在高频交易或流动性较低的交易对中,这个差距可能直接决定订单是"秒成交"还是"挂一天都没吃到"。

3. 实操:如何保住队列位置

步骤1:判断你的改单是否能用保留优先级

  • 做什么:确认你要修改的内容——只能减少数量,不能改价格、不能改订单类型、不能增加数量。

  • 怎么做

    • 如果只是想把买单数量从 5.5 减少到 5.0,可以用。

    • 如果要改价格,或想把数量从 5.0 改成 5.5,此路不通,只能用 Cancel-Replace。

  • 做到什么程度算完成:你确认了当前改单需求符合"仅减少数量"的条件。

步骤2:通过 API 调用保留优先级接口

  • 做什么:使用 Binance 的 order.amend.keepPriority 端点修改订单,而非普通撤单重下。

  • 怎么做

    • 普通用户:在 App/Web 端通常看不到这个选项,它主要面向 API 开发者。如果只用界面操作,只能接受 Cancel-Replace 的排队重置。

    • API 用户:在请求中指定 orderId(或 origClientOrderId)和新的 quantity,接口会直接修改原订单,不经过"撤销→创建"流程。

  • 做到什么程度算完成:订单成功修改,订单 ID 保持不变,位置不受影响。

Binance币安
全球交易量最大的加密货币交易所,安全性与流动性行业领先
新手福利:注册立享20%手续费折扣优惠!

常见失败原因

"自认为改了数量就能保住排队,实际上钱包/工具用的是 Cancel-Replace"——绝大部份钱包和交易软件的"改单"按钮,底层实现的是先撤单、再下单,并没有调用保留优先级接口。你看到的是"改单成功",实际上订单 ID 已经变了,排位已经重置。

风险提醒:如果使用 Cancel-Replace 时原订单已经部分成交,新订单的数量必须大于已成交量,否则会被拒绝。此外,同一个订单的修改次数有上限(现价单最多 10000 次)。

做完以上操作,怎么确认自己用对了?

改单完成后,去订单簿里看一眼你的订单——如果订单 ID 没变,说明保留了优先级;如果出现了一个新 ID,说明老订单已经被取消重下,排位已经丢失。如果你在普通钱包里找不到"保留优先级"选项,那就默认接受 Cancel-Replace 的排队重置,或者接受无法改单的事实。