4. 策略漂移的类型

在实盘监控中,我们常把“策略失效”当成一个笼统结论,但真正有价值的判断是:失效发生在哪一层。同样是净值回撤,可能来自输入数据分布变化、标签与收益关系改变、模型参数老化、下单执行偏差,或市场微观结构整体迁移。若不能区分漂移类型,就会用错误的修复手段:该换因子时去调参,该改执行时去重训模型,最终越修越偏。本节建立一套可落地的分类框架与识别路径。

一、五类漂移的核心原理与边界

漂移的本质是“训练期假设”与“实盘期现实”之间的偏离。按数据链路从上游到下游,可分为五类:

  • 数据漂移(Data Drift):特征 X 的边际分布或联合分布变化,而 P(Y|X) 未必改变。例如行情源切换、复权方式调整、因子计算窗口变更,导致输入分布偏移。
  • 概念漂移(Concept Drift):特征与标签的关系 P(Y|X) 改变。例如同样的动量因子,在流动性宽松期与紧缩期对收益的预测方向相反。
  • 模型漂移(Model Drift):模型输出分布或参数重要性发生偏移,通常由数据漂移与概念漂移共同驱动,表现为预测值均值、方差、IC、换手结构变化。
  • 执行漂移(Execution Drift):信号到成交的转化过程变化,包括滑点、成交率、延迟、冲击成本、撮合规则变化。模型没变,但可实现收益变了。
  • 市场结构漂移(Market Structure Drift):参与者构成、交易机制、波动率 regime、涨跌停与停牌规则等系统性变化,属于最外层环境迁移。
区分要点:数据漂移看 X,概念漂移看 Y|X,模型漂移看 f(X),执行漂移看“信号→成交”,市场结构漂移看“游戏规则与参与者”。

二、识别流程:从告警到归因

建议采用“分层监控 + 逐层排除”的流程,避免一上来就重训模型。典型步骤如下:

  1. 建立基线:用训练期与近N日滚动窗口,分别固化特征分布、预测分布、成交质量、市场状态四类基线。
  2. 分布检验:对连续特征用 PSI、KS、Wasserstein 距离;对类别特征用卡方或 TVD。阈值可按业务容忍度设定,如 PSI>0.2 触发预警。
  3. 关系检验:计算滚动 IC、Rank IC、分组单调性,观察 Y|X 是否稳定;若 IC 衰减但特征分布稳定,优先怀疑概念漂移。
  4. 输出检验:监控预测均值、方差、分位数、换手率与持仓集中度,判断模型漂移。
  5. 执行检验:对比理论成交价与实盘成交价,统计滑点分布、成交率、延迟分位数。
  6. 环境检验:跟踪波动率、成交量、买卖价差、参与者结构指标,识别市场结构漂移。
策略漂移五层识别链路 市场结构漂移 规则/参与者/波动率 数据漂移 X 分布变化 概念漂移 P(Y|X) 变化 模型漂移 f(X) 输出偏移 执行漂移 成交质量 监控指标映射 数据漂移:PSI / KS / Wasserstein / TVD 概念漂移:滚动 IC / Rank IC / 分组单调性 模型漂移:预测均值方差 / 换手率 / 持仓集中度 执行漂移:滑点分布 / 成交率 / 延迟分位数 市场结构:波动率 / 成交量 / 买卖价差 / 参与者 归因顺序:先环境→数据→概念→模型→执行 处置建议 数据漂移→修复数据管道/重算因子;概念漂移→换因子或加状态变量;模型漂移→重训或降权 执行漂移→优化下单算法/降频;市场结构漂移→切换策略 regime 或暂停

三、案例场景:一次“看似模型失效”的归因

某中频选股策略连续两周回撤,团队第一反应是重训模型。但按上述流程排查后发现:

  • 特征 PSI 全部低于 0.1,数据漂移不显著;
  • 滚动 IC 从 0.06 降至 0.01,概念漂移明显;
  • 预测均值与方差基本稳定,模型漂移是结果而非原因;
  • 滑点从 8bp 升至 22bp,执行漂移叠加;
  • 同期市场波动率翻倍、买卖价差扩大,市场结构漂移是触发源。

最终处置不是重训,而是:降低仓位、切换至低换手因子、优化下单算法,并在波动率回归后恢复。若当时直接重训,会把“环境迁移”误学成“新规律”,造成过拟合。

四、误区与复盘清单

常见误区:把执行漂移当成模型漂移;把市场结构漂移当成概念漂移;只看净值不看分层指标;用单一阈值判断所有漂移。
漂移类型 核心变化 典型信号 优先处置
数据漂移 X 分布 PSI/KS 超阈值 修复数据管道
概念漂移 P(Y|X) 滚动 IC 衰减 换因子/加状态
模型漂移 f(X) 输出 预测分布偏移 重训/降权
执行漂移 信号→成交 滑点/延迟上升 优化下单
市场结构漂移 规则/参与者 波动率/价差突变 切换 regime

复盘时建议固定输出一份“漂移归因日志”,至少包含:日期、净值回撤、各层指标值、触发阈值、归因结论、处置动作、后续观察。长期积累后,你会形成对自身策略“哪一层最脆弱”的直觉,这比任何单一模型都更可靠。

# 漂移归因日志示例
date: 2025-06-12
drawdown: -3.2%
data_drift: PSI_max=0.08 (OK)
concept_drift: IC_20d=0.01 (ALERT)
model_drift: pred_mean=-0.02 (OK)
exec_drift: slippage=22bp (ALERT)
market_structure: vol=2.1x, spread=1.8x (ALERT)
root_cause: market_structure -> concept + execution
action: reduce_position, switch_low_turnover, optimize_execution

区分五类漂移,不是为了分类而分类,而是为了在正确层级上做正确的事。数据漂移修管道,概念漂移换逻辑,模型漂移重训,执行漂移优算法,市场结构漂移调 regime。把这条链路跑通,Alpha 衰减监控才真正具备可操作性。