2. 集合竞价订单类型与订单簿状态

集合竞价阶段与连续竞价阶段最大的差别,不在于“撮合算法”本身,而在于订单簿在撮合前是持续累积的,撮合时是一次性集中匹配的。因此,理解集合竞价,必须同时理解两件事:哪些订单可以进入集合竞价订单簿,以及订单簿在开盘前、撮合中、撮合后分别处于什么状态。本节围绕这两条主线展开。

一、三类订单在集合竞价中的准入规则

从订单簿重建的角度,进入集合竞价的订单首先要按类型分流。常见类型包括限价单、市价单和特殊订单(如即时成交剩余撤销 IOC、全额成交或撤销 FOK、本方最优/对手方最优等)。它们在集合竞价中的处理规则差异很大,重建时必须逐类判断。

限价单是集合竞价订单簿的主体。它带有明确价格,进入订单簿后按价格优先、时间优先排队,参与集合竞价统一撮合。重建时,限价单需要完整保留价格、数量、方向、到达时间四个字段,因为集合竞价的成交价由“最大成交量原则”决定,而每个限价单是否成交、成交多少,取决于它与虚拟成交价的位置关系。

市价单在集合竞价中通常不进入订单簿排队,而是作为“价格不确定的流动性需求”参与撮合。多数交易所规定:集合竞价阶段市价单在撮合时以对手方最优价格成交,剩余部分按规则处理(撤销或转为限价)。重建时不能把市价单简单塞进价格档位,而应单独标记为“市价委托”,在撮合计算中作为不计价的买方/卖方需求参与最大成交量求解。

特殊订单需要逐条对照规则。以 IOC 为例,它在集合竞价中若不能立即全部成交,剩余部分撤销,因此它不会在订单簿中留下挂单;FOK 则要求一次性全部成交,否则整单撤销。重建时若把 IOC 当作普通限价单挂入订单簿,会虚增订单簿深度,导致虚拟成交价计算错误。这是集合竞价重建中最常见的错误之一。

重建要点:市价单与 IOC/FOK 等特殊订单在集合竞价中往往“不留在订单簿”,必须与限价挂单分开建模,否则订单簿深度和最大成交量都会失真。

二、订单簿在集合竞价各阶段的状态变化

集合竞价不是一瞬间完成的,订单簿会经历“累积—冻结—撮合—释放”四个状态。下图展示了这一状态流转以及各状态下订单簿中实际存在的内容。

集合竞价订单簿状态流转 ① 累积阶段 限价单持续入簿 买/卖档位动态增长 市价单单独标记 不撮合,只排队 ② 冻结阶段 停止接受新订单 订单簿快照锁定 计算虚拟成交价 最大成交量原则 ③ 撮合阶段 按虚拟价集中匹配 限价单按价时优先 市价单参与成交 IOC/FOK 判定去留 ④ 释放阶段 未成交挂单 转入连续竞价 撤销单移出簿 订单簿重建完成 订单簿内容随阶段变化(示意) 卖档:10.02×300 卖档:10.01×500 买档:10.00×400 买档:9.99×600 市价买:200(标记) 快照锁定 虚拟价 = 10.01 最大成交量 = 500 买≥10.01 可成交 卖≤10.01 可成交 成交:500 股 卖10.01 全成 买10.00 未成 市价买剩余撤销 未成挂单转连续 重建校验点 成交价唯一 成交量最大 未成交单可追溯 撤销单不入簿

累积阶段,订单簿是“活的”:限价单按价格档位不断增厚,市价单以独立标记存在,特殊订单按规则决定是否入簿。冻结阶段,交易所停止接单,对订单簿做一次快照,并基于快照计算虚拟成交价与最大成交量。撮合阶段,所有可成交订单按虚拟价集中匹配,限价单按价格优先、时间优先成交,市价单以对手方最优价参与,IOC/FOK 在此判定去留。释放阶段,未成交的限价挂单转入连续竞价订单簿,撤销类订单移出,订单簿重建到此收口。

三、重建时的关键判断与示例

假设某标的集合竞价快照如下(示例数据,仅用于说明计算逻辑):卖档 10.02×300、10.01×500;买档 10.00×400、9.99×600;另有市价买 200。按最大成交量原则,虚拟价取 10.01 时,买方愿意以不低于 10.01 成交的数量为 0(买档最高仅 10.00),卖方愿意以不高于 10.01 成交的数量为 800,成交量受买方限制为 0;虚拟价取 10.00 时,买方 400,卖方 800,成交量 400;虚拟价取 9.99 时,买方 1000,卖方 800,成交量 800。可见最大成交量出现在 9.99,成交量 800。此时市价买 200 也参与买方需求,实际买方需求为 1200,卖方 800,成交量仍为 800,成交价 9.99。

这个例子说明:市价单虽然不挂在价格档位上,但它会改变买方需求曲线,从而影响最大成交量的位置。重建时若漏掉市价单,虚拟价可能算错。同理,若把 IOC 当成普通限价单挂入卖档,会虚增卖方供给,同样导致虚拟价偏移。

实操建议:重建集合竞价订单簿时,先按“是否留在订单簿”把订单分成两类——挂单类(限价单)与瞬时类(市价单、IOC、FOK)。挂单类进入价格档位,瞬时类进入独立需求池,两者共同参与最大成交量求解,撮合后再按规则决定瞬时类订单的去留。

最后需要强调,集合竞价的订单簿状态是阶段性快照,不是连续演化的。重建系统应当以冻结时刻的快照为准,而不是用累积阶段的中间状态去推算成交结果。只有把订单类型准入规则与四阶段状态变化对齐,订单簿重建才能在集合竞价环节做到成交价、成交量、未成交挂单三者的可追溯与可校验。