2. 限价单与订单簿基础
要理解“限价单队列位置与等待时间”,必须先回到订单簿这个底层结构。限价单和市价单是两种方向完全不同的委托:限价单是“我愿意以某个价格或更好价格成交”的被动报价,市价单是“我现在就要成交”的主动吃单。订单簿则是把所有未成交限价单按价格档位和到达顺序组织起来的账本。价格优先与时间优先,正是这个账本撮合时的两条铁律。
一、限价单与市价单:一个挂条件,一个买确定性
限价单(Limit Order)在提交时同时指定方向和价格。买单限价表示“最高愿意付这个价”,卖单限价表示“最低愿意收这个价”。限价单不保证成交,只保证成交价格不劣于设定值。市价单(Market Order)只指定方向和数量,不指定价格,它会立即以订单簿对侧最优可用价格成交,成交价格由当时盘口深度决定,因此保证成交速度但不保证价格。
举个教学示例(以下为假设参数,非实测数据):某标的当前卖一价 10.02 元、卖一量 300 股,卖二价 10.03 元、卖二量 500 股。若投资者提交买入市价单 600 股,则先吃掉卖一 300 股(10.02 元),再吃掉卖二 300 股(10.03 元),成交均价约 10.025 元,这就是市价单的“滑点”。若改为提交买入限价单 600 股、限价 10.02 元,则只能与卖一 300 股成交,剩余 300 股转为买单挂在 10.02 元价位排队,等待后续卖单来撮合。
由此可得选择逻辑:追求成交确定性、能接受价格滑点,用市价单;追求价格可控、愿意等待,用限价单。限价单一旦未立即成交,就进入订单簿,成为“队列中的一员”,其等待时间与队列位置直接相关——这正是本课程后续要量化的核心。
二、订单簿结构:价格档位 + 时间队列
订单簿分为买盘(Bid)和卖盘(Ask)两侧。每一侧按价格从优到劣排列:买盘价格由高到低,卖盘价格由低到高。每个价格档位内部,是一个按到达时间先后排列的队列。最优买价(买一)与最优卖价(卖一)之间的差额就是买卖价差(Spread)。
订单簿的每一档通常记录两个量:该价位的委托总量,以及该价位上的委托笔数。总量反映深度,笔数反映队列长度。对排队者而言,真正决定等待时间的是“我前面还有多少量、多少笔”,而不只是价格档位本身。下面这张结构图展示了一个简化订单簿的买卖两侧、档位与队列关系:
三、价格优先与时间优先:撮合的两条铁律
价格优先指:对买单,出价越高越优先;对卖单,要价越低越优先。撮合时,系统总是先拿“最优买价”与“最优卖价”比较,若买一价 ≥ 卖一价,则发生成交。时间优先指:在同一价格档位内,先到达的委托先成交。两条规则合起来,就是“价格优先、同价时间优先”。
用上面的示例推演:若新来一笔卖单 200 股,价格 9.99 元,它会先与买一 9.99 元档位撮合。按时间优先,先成交 A 单 150 股,再成交 B 单 50 股,B 单剩余 70 股仍在队首位置等待。此时 A 单完全成交离场,B 单从第二位升到队首。可见队列位置不是静态的,前方委托被成交或撤单,都会让后方委托前移。
这里有一个容易被忽略的细节:价格优先决定“跨档位”的先后,时间优先只决定“同档位内”的先后。因此,一个在 9.98 元排队很久的大单,永远不会比 9.99 元的新单优先成交——价格档位是第一道门槛,时间只在同一门槛内起作用。理解这一点,才能正确判断自己委托的真实排队位置。
四、把规则落到实操判断上
假设你要买入,当前买一 9.99 元已有 400 股在排队。你若挂 9.99 元买入 100 股,就排在队尾,前方待成交量为 400 股;你若挂 10.00 元买入,则直接跨到买一之上成为新的最优买价,队列位置瞬间变为队首,但成交价可能更高。这就是“用价格换位置”的权衡:提高限价可以改善队列位置、缩短等待,但增加了成交成本。
实操中可用一个简单判断:先看目标价位前方的待成交总量 Qfront,再估算该价位单位时间的平均成交量 v,则粗略等待时间 ≈ Qfront / v。例如前方 400 股、该价位每分钟成交约 80 股,则预计等待约 5 分钟(示例假设,仅用于说明方法)。若这个时间不可接受,就应考虑提高限价或改用市价单。需要注意,撤单会改变队列,实际等待时间存在不确定性,上述估算只作为决策参考。
掌握这三块基础后,后续分析“我的单排在第几位、大概要等多久”就有了明确的坐标系:先定位价格档位,再数清同档位前方队列,最后结合成交量估算等待时间。