原文首发于 TechNova: 强平单优先撮合:从风控到交易引擎的深度剖析
承接页(解决方案):https://technologynova.org/solution/
(price, priority_level, timestamp),在不破坏价格优先的前提下扩展时间优先。在高杠杆衍生品(数字货币、外汇、期货等)里,强平是风控体系的最后一道防线。 当保证金不足触发强平,如果系统把强平单和普通订单一视同仁排队,市场流动性一旦枯竭,强平处理会越拖越慢, 风险敞口反而被动扩大,最终可能演变为平台穿仓。
所以工程目标很明确:强平单必须在撮合里拥有更高的执行优先级,并且这个优先级要可解释、可回放、可审计。
传统撮合遵循“价格优先、时间优先”。强平优先的关键,是在不破坏价格优先的基础上,扩展时间优先:
把订单排序键从 (price, timestamp) 扩展为 (price, priority_level, timestamp)。
好处是:这是数据结构层面的约束,可测试、可回放、可审计;也更容易把策略“固化”到订单簿实现里。
强平不是简单地产生一笔订单。你需要先确保该仓位从这一刻起被系统接管:
风控决定强平时,必须先原子性地把仓位状态切换到 LIQUIDATING。
一旦进入该状态,用户侧的下单/撤单/加仓等请求应被拒绝或降级处理,避免并发修改同一仓位。
一条更可落地的分工方式是: Risk Engine 负责发现触发条件;Position Manager 负责强一致状态; Liquidation Handler 负责接管与生成强平单;Matching Engine 负责按优先级撮合; 最后由回报网关把成交结果分发到清算/通知等系统。
如果你正在做交易系统的强平/风控与撮合联动,建议优先把这三件事做扎实: 仓位接管(状态机 + 原子性)、订单优先级的可比较建模、以及把强平链路的通信与 I/O 移出关键路径。 需要系统性规划撮合/风控/清结算/容灾的落地路线,可参考: https://technologynova.org/solution/