把强平挂单排成队:永续协议撮合清算仓位的排队与合并规则 图 1
把强平挂单排成队:永续协议撮合清算仓位的排队与合并规则 · 图 1

Perp 协议里最容易让人生闷气的一幕是这样的:你挂了平仓单,价格到了,页面显示成交价为零或者根本没成交,可你亲眼看到那几秒里价格确确实实从你的价位穿过去了。多数解释会甩出一句流动性不足,但那几秒里市场的对手方其实非常充足——只是你的单子不是当时唯一排在货架上的货,还有一批比你的单更优先成交的货,它们来自清算撮合队列。本文拆解清算撮合队列的排队与合并规则,顺便解释为什么这个机制在洪峰时段会吞掉普通挂单。

先把清算撮合这件事的基本事实摆出来:永续协议的仓位爆仓后,协议必须拿仓位对应的抵押品去市场上换回等值的指数币种,才能把坏账从账面上抹平。这条处置通道走哪种撮合方式,直接决定了爆仓仓位的成交价格和普通用户的成交体验。在链上永续协议里,清算处置最主流的三种走法分别是拍卖、订单簿市价单和协议内部撮合。拍卖和订单簿的机制都有专文拆解,本文要说的第三种内部撮合,在链上永续协议里同样真实存在,只是它常常被叫作另一个名字。

内部撮合的关键构造是:清算仓位不直接以市价单的身份砸进簿子里,而是先进一条队列,队列里的单按规则逐笔或按批放出。放出的顺序至少有三条规则决定。第一条是严重度排序:跌破维持保证金越深的仓位排在越前面,先处置。这样安排的理由不是照顾仓位主人,而是控制协议自己的坏账风险——跌得越深的仓位,抵押品价值随行情继续恶化的速度越快,优先处置它等于优先锁定协议的损失。第二条是价格限制:每条清算单在放进队列时带一个可接受的最差价格,队列的撮合器只在当前簿口价格不劣于这个限制时放出成交。第三条是限速:队列每个区块或每轮最多放出一定规模,哪怕清算需求堆得再高,放出的节奏也是封顶的。限速是这条通道和订单簿市价单最本质的区别——它把清算对簿子的冲击从一把尖峰摊成一段平台。

现在回到开头那一幕。你的平仓挂在簿口的价位上,队列正在按限速往外放清算单。清算单的成交吃的是簿子上现有的挂单,队列不看挂单的主人是谁,只按价格从优到劣地吃。如果你的挂单和清算单的目标价位重叠,就会被一起吃掉。更微妙的是成交顺序的判定:簿子的撮合按价格和先来后到排队,清算单在内部撮合里通常被设定为价格优先于时间,于是虽然你的单挂得更早,撮合器仍然先让清算单成交。这在协议设计者眼里是两权相害取其轻:清算单不吃掉就会变成协议坏账,由全体用户的储备金买单,而你的单子损失只是延后成交。

清算撮合队列在洪峰时段的副作用不止吞单。被吃掉的挂单会引发一连串补挂:做市商发现挂单凭空减少,撤单重挂新的报价,簿口深度短时间变薄,价格进一步偏离指数,触发更多仓位进队列。这是永续协议在极端行情里常见的正反馈回路。协议设计针对它开出的药方是调节队列参数:把限速放宽(更快清算掉,少堆一层未清算风险)、收紧单仓位可成交比例(少占用簿子)、临时调高维持保证金要求(抬高后进场者的门槛)。读参数公告时,如果一次改动同时动了这几项,基本可以判断团队在应对的是一场清算洪峰而不是日常波动。

理解这套规则后,普通用户的操作策略可以改得务实一点。第一,挂平仓单在洪峰时段尽量用更宽的价格限制,而不是让撮合等你去匹配行情;把成交意愿放在价格之前,因为你要成交的对手可能就是那批队列里的单。第二,别在清算参数公告生效的那一轮做高杠杆进出。参数变更到队列撮合行为变化之间的空窗里,簿口的深度表现最难预测。第三,回看一笔诡异的未成交时,可以去协议的事件日志里核对清算撮合记录:那笔价格穿越的那几秒里队列放出了多少量,和簿口当时的挂单总量对一对,答案通常一目了然,不需要靠猜。

最后一句风险提示要写在显眼处:清算撮合队列不是给普通人设计的公平机制,它是协议用来守住自己资产负债表的工具,设计目标里本来就没有保护你的挂单成交这一项。认识到这一点,你对极端行情的预期管理会务实很多。本文仅为永续协议撮合机制科普,不构成投资建议与收益承诺,具体协议的清算撮合参数以链上代码与官方文档为准。