1. 课程导入与实战目标

在任何一个报价驱动的市场里,交易者最先看到、也最容易被忽略的数字,往往就是买一价与卖一价之间的那道缝隙——买卖价差(Bid-Ask Spread)。它既是流动性供给方收取的“过路费”,也是衡量市场摩擦最直接的体温计。本课程要解决的核心问题不是“价差是什么”,而是:当价差在真实行情中突然变宽、持续变宽、或在特定时点反复变宽时,我们如何用可复现的方法把它识别出来,并判断它属于正常波动还是值得警惕的异常扩大。

一、买卖价差的基本定义与参照约定

设某时刻订单簿最优买价为 Bid,最优卖价为 Ask,则绝对价差定义为 Spread = Ask − Bid,相对价差(也称百分比价差)定义为 Spread% = (Ask − Bid) / Mid × 100%,其中中间价 Mid = (Ask + Bid) / 2。本课程全文统一采用“卖价减买价”为正方向,因此价差恒为非负;若行情数据中出现负价差,说明买卖价发生交叉,属于数据质量或撮合异常,需要单独标记而不是当作负的“窄价差”处理。

为什么必须同时看绝对价差和相对价差?因为二者回答的问题不同。绝对价差以价格单位计量,直接对应“每买卖一单位资产要付出多少成本”,适合评估固定手数的交易成本;相对价差以中间价为基准归一化,使不同价位、不同标的、不同时间段的价差可以横向比较。举例来说(以下为教学示例参数,非实测数据):某标的买价 99.98、卖价 100.02,绝对价差 0.04,中间价 100.00,相对价差 0.04%;另一标的买价 9.98、卖价 10.02,绝对价差同为 0.04,但相对价差达到 0.40%。若只看绝对价差,会误以为两者流动性相当,实际上后者的单位成本是前者的十倍。这就是本课程坚持“双口径并行”的原因。

二、异常扩大的典型场景

价差扩大本身是市场常态,真正需要识别的是“异常”二字。结合真实市场数据的常见形态,可以归纳为几类高发场景:

  • 开盘与收盘时段扩张:集合竞价转连续竞价、临近收盘流动性撤离,价差常出现规律性抬升,属于可预期的结构性扩大。
  • 信息冲击型扩张:财报发布、宏观数据公布、突发新闻前后,做市方为规避逆向选择风险主动拉宽报价,价差在事件窗口内陡增。
  • 流动性枯竭型扩张:某一侧挂单被快速消耗而补充不足,买一或卖一被“打穿”,价差被动跳变,常伴随盘口深度骤降。
  • 波动率联动型扩张:标的自身波动放大时,做市商提高报价保护,价差与波动率同向变化。
  • 数据与机制异常:行情延迟、撮合故障、停牌复牌、涨跌停封板导致单侧报价缺失,价差表现为极端值或不可计算。

这五类场景的应对方式完全不同:前两类多为“预期内、可容忍”,第三、四类需要结合深度与波动率联合判断,第五类则应先做数据清洗再谈统计。因此,识别异常扩大的第一步不是设阈值,而是先分清“扩大的性质”。

买卖价差构成与异常扩大识别路径 订单簿最优档(示意) 卖一 Ask 100.02 买一 Bid 99.98 价差 = 100.02 − 99.98 = 0.04 中间价 = 100.00,相对价差 = 0.04% 双口径并行:绝对价差看成本 相对价差看可比性 扩大的五类典型场景 ① 开盘 / 收盘时段扩张 ② 信息冲击型扩张 ③ 流动性枯竭型扩张 ④ 波动率联动型扩张 ⑤ 数据 / 机制异常 识别路径(判断顺序) 1. 数据有效性校验 2. 分时段基线建模 3. 偏离度与持续性判定 4. 深度 / 波动率交叉验证 本课程实战目标:从原始行情到可判读的异常标记 输入 逐笔 / 快照行情 买一卖一与盘口深度 处理 清洗 → 双口径计算 → 基线 → 偏离度 判读 阈值 + 持续性 + 场景 排除数据异常 输出 异常扩大标记 与场景归因

三、为什么“异常扩大”不能只靠一个阈值

很多初学者会直接设一个固定阈值,比如“相对价差超过 0.5% 就算异常”。这种做法在单一标的、单一交易时段内或许勉强可用,但放到真实市场数据上很快失效。原因有三:其一,不同标的的正常价差水平差异巨大,大盘蓝筹与中小盘标的的基线可能相差数倍;其二,同一标的在开盘、午间、收盘的价差分布本身就不平稳,用全天均值做基准会把开盘的正常扩张误判为异常;其三,价差是右偏分布,极端值频繁出现,用均值和标准差构造的阈值容易被少数尖峰拉偏。

因此本课程采用的思路是“分时段基线 + 稳健统计量 + 持续性约束”。具体而言:先按交易时段(如开盘后 15 分钟、连续竞价主时段、收盘前 15 分钟)分别建立价差基线;基线中心使用中位数而非均值,离散度使用分位数间距(如 IQR)而非标准差;判定异常时不仅看单点偏离,还要求偏离在连续若干个快照上持续存在,以过滤瞬时噪声。这套方法不追求数学上的复杂,而追求在真实数据上可复现、可解释。

四、学习路径与实战目标

本课程以真实市场数据为对象,围绕“识别异常扩大”这一核心任务展开,整体路径可以概括为四个递进层次:

  1. 看得懂:掌握买卖价差的定义、双口径计算与订单簿含义,能读懂盘口数字背后的流动性信息。
  2. 算得准:完成行情数据清洗、价差序列构造、分时段基线建模,得到可信的偏离度指标。
  3. 判得清:结合阈值、持续性与深度、波动率等交叉信息,区分正常扩张与异常扩大,并给出场景归因。
  4. 用得上:把识别结果落到可执行的监控规则、告警清单与复盘记录中,形成可迭代的实战闭环。

需要特别说明的是,本课程中出现的所有价格、价差、阈值和统计结果,除明确标注为实测外,均为教学示例或合理假设,目的是演示计算过程与判断逻辑,读者不应将其视为对任何真实标的的实测结论。真正重要的是方法:当你拿到一份陌生的行情数据时,知道先校验什么、再计算什么、最后如何下判断。

学习建议:在进入后续章节前,先找一份你熟悉的标的的分钟级或快照级行情,手工计算几个时点的绝对价差与相对价差,观察它们在开盘、午间和收盘的差异。这个简单的动作会让你对“分时段基线”的必要性有直观感受,也会让后面的阈值设定不再显得抽象。

到这里,本课程的问题边界已经清晰:我们关心的不是价差的绝对大小,而是它在特定时段、特定场景下相对自身基线的偏离程度,以及这种偏离是否持续、是否伴随其他市场特征的同步变化。接下来的章节将沿着“数据准备—指标构造—基线建模—异常判定—场景归因—实战复盘”的顺序逐步展开,每一节都会给出可操作的计算过程与判断依据。