3. 风险评分指标体系设计

风险评分不是把所有盘口数字简单相加,而是先建立一套“可解释、可分层、可复用”的指标库,再让评分模型从指标库中取数。指标库设计的核心问题是:哪些盘口现象能反映风险、它们分别刻画风险的哪一面、彼此之间是什么关系、在什么条件下会失效。本节围绕盘口深度、价差、订单流、撤单率四个基础维度,说明如何把它们组织成“原始指标—派生指标—维度分—综合分”的分层结构,并给出可落地的计算口径与示例。

一、分层指标库的整体结构

建议采用四层结构。第一层是原始指标层,直接来自逐笔委托、逐笔成交和盘口快照,例如买一至买十的量、卖一至卖十的量、最优买卖价、委托到达与撤销事件。第二层是派生指标层,对原始数据做窗口聚合与比值运算,例如五档深度、相对价差、主动买入占比、撤单率。第三层是维度分,把同一风险侧面的派生指标归一化后合成一个 0~100 的分数。第四层是综合风险分,按权重把各维度分加权求和,并保留各维度分作为解释依据。

这种分层的关键价值在于可解释性:当综合分偏高时,可以逐层下钻到“是深度维度贡献大,还是撤单率维度贡献大”,再定位到具体派生指标和原始盘口状态。若把所有指标直接塞进一个线性公式,分数虽然算得出来,却无法回答“为什么高”。

盘口风险评分分层指标库 原始数据 → 派生指标 → 维度分 → 综合风险分(可逐层下钻解释) ① 原始指标层(逐笔委托 / 逐笔成交 / 盘口快照) 买一~买十量价 卖一~卖十量价 委托到达事件 撤单事件 逐笔成交(方向/量) ② 派生指标层(窗口聚合 + 比值运算) 五档深度 D5 买卖五档量之和 相对价差 S (卖一−买一)/中间价 主动买入占比 OFI 主动买量/总成交量 撤单率 CR 撤单量/委托总量 ③ 维度分(归一化到 0~100,越高风险越大) 深度风险分 F_depth 价差风险分 F_spread 订单流风险分 F_flow 撤单风险分 F_cancel ④ 综合风险分 R = Σ wᵢ · Fᵢ 保留各维度分作为解释依据,支持逐层下钻

二、四个基础维度的指标口径

盘口深度维度刻画“承接能力”。最常用的是五档深度 D5 = 买一至买五量之和 + 卖一至卖五量之和。但绝对量受价格和股本影响,跨标的不可比,因此更稳妥的做法是构造相对深度:D5 除以近 20 个交易日的 D5 中位数,得到深度比率。比率显著低于 1,说明当前盘口比平时薄,冲击成本上升。若需要更细,可分别计算买侧深度与卖侧深度,观察是否单边塌陷。

价差维度刻画“交易摩擦”。相对价差 S =(卖一价 − 买一价)/ 中间价,其中中间价取(买一价 + 卖一价)/ 2。价差越大,往返成本越高,流动性越差。价差指标要注意两点:一是低价股的价差常以最小报价单位跳变,需结合最小变动价位判断;二是开盘、收盘集合竞价前后价差会异常放大,应做时段过滤或分时段标准化。

订单流维度刻画“买卖压力失衡”。最直接的指标是主动买入占比 OFI = 主动买成交量 / 总成交量。OFI 接近 0.5 表示均衡,显著偏离则说明单边压力。为避免单笔大单干扰,可改用成交量加权的订单流不平衡,或对窗口内逐笔数据取滚动均值。订单流指标对方向敏感,需明确“主动买”的判定口径——通常以成交价是否等于或高于卖一价来判定。

撤单率维度刻画“挂单的真实性”。撤单率 CR = 窗口内撤单量 / 窗口内委托总量。撤单率过高往往意味着挂单带有试探或诱导性质,盘口深度可能“虚厚”。计算时要区分主动撤单与被动撤单(如因价格穿越而失效),并注意撤单率与挂单量高度相关,最好同时观察“撤单量 / 成交量”作为辅助。

三、归一化与维度合成

派生指标量纲不同,必须先归一化到 0~100 且方向一致(越高越危险)。推荐使用基于历史分位数的稳健归一化:取近 60 个交易日同一时段的指标样本,计算 5% 和 95% 分位点作为上下界,做线性映射并截断。这样既避免极值拉伸,又保留了“相对自身历史”的可比性。示例口径如下(数值为教学假设):

F_depth  = 100 * clamp((1 - D5_ratio) / (1 - 0.4), 0, 1)   # D5_ratio 低于 0.4 记满分
F_spread = 100 * clamp((S - S_p5) / (S_p95 - S_p5), 0, 1)
F_flow   = 100 * clamp(abs(OFI - 0.5) / 0.3, 0, 1)          # 偏离 0.3 记满分
F_cancel = 100 * clamp((CR - CR_p5) / (CR_p95 - CR_p5), 0, 1)

R = 0.30*F_depth + 0.25*F_spread + 0.25*F_flow + 0.20*F_cancel

权重不是固定的,应随标的类型调整:小盘股深度和撤单率权重可适当提高,大盘蓝筹则价差权重相对稳定。权重调整必须记录版本,否则同一分数在不同版本间不可比。

四、一个可复算的示例

假设某标的在 10:00—10:05 窗口内:D5 为 8.2 万手,近 20 日同时段 D5 中位数为 12.5 万手,则 D5_ratio ≈ 0.656;买一 10.02、卖一 10.04,中间价 10.03,S ≈ 0.199%;主动买量 3.1 万手、总成交 5.0 万手,OFI = 0.62;委托总量 9.0 万手、撤单量 3.6 万手,CR = 0.40。若该标的 S 的 5%/95% 分位为 0.08%/0.35%,CR 的 5%/95% 分位为 0.15%/0.55%,则:

  • F_depth = 100 × (1 − 0.656) / 0.6 ≈ 57.3
  • F_spread = 100 × (0.199 − 0.08) / (0.35 − 0.08) ≈ 44.1
  • F_flow = 100 × |0.62 − 0.5| / 0.3 ≈ 40.0
  • F_cancel = 100 × (0.40 − 0.15) / (0.55 − 0.15) ≈ 62.5
  • R = 0.30×57.3 + 0.25×44.1 + 0.25×40.0 + 0.20×62.5 ≈ 51.1

综合分约 51,属于中等风险。解释时应指出:主要贡献来自撤单率维度(62.5)和深度维度(57.3),说明盘口偏薄且挂单真实性存疑,而价差和订单流尚属正常。这样的结论比单说“风险 51 分”更有行动价值。

指标库落地时建议维护一张指标字典,至少包含:指标名、所属维度、计算公式、数据来源、窗口长度、归一化分位参数、更新频率、失效条件。字典与评分代码同版本管理,才能保证评分可复现、可审计。
常见误区:一是把不同时段的指标混在一起归一化,导致开盘时段系统性偏高;二是撤单率未剔除集合竞价和涨跌停附近的被动撤单;三是维度间高度相关却仍按独立权重叠加,造成某一风险被重复计分。上线前应做相关性检查,必要时合并维度或调整权重。

综上,分层指标库把“盘口现象”翻译成“可计算、可解释、可比较”的风险语言。深度、价差、订单流、撤单率四个维度分别回答“接得住吗、摩擦大吗、压力偏吗、挂单真吗”,再通过稳健归一化和加权合成形成综合分,并保留逐层下钻能力,这正是后续评分模型与可解释性分析的基础。