2. 常见标签口径类型:分类标签、回归标签、时序标签、事件驱动标签
在量化回测中,标签(Label)是监督学习的目标变量,其口径定义直接决定了模型学习的方向与回测结果的可靠性。根据预测任务的性质与数据的时间结构,标签口径可划分为四种基本类型:分类标签、回归标签、时序标签与事件驱动标签。每种类型在构造逻辑、适用场景与校准方法上存在显著差异。
2.1 分类标签
分类标签将未来收益或状态离散化为有限的类别,常用于方向性预测或信号生成。典型的分类标签包括:
- 涨跌二分类:未来 N 日收益为正 → 1,否则 → 0。
- 多分类:按收益分位数划分为“强涨/弱涨/震荡/弱跌/强跌”五档。
- 阈值分类:收益超过 +X% 为 1,低于 -X% 为 -1,中间为 0。
校准要点:分类标签需关注类别平衡性。若正负样本比例超过 4:1,模型易偏向多数类,需引入重采样或代价敏感校准。
| 子类型 | 构造方法 | 常见窗口 | 校准风险 |
|---|---|---|---|
| 二分类 | sign(future_return) | 1D / 5D / 20D | 样本不平衡 |
| 多分类 | 分位数切分 | 5D / 20D | 边界模糊 |
| 阈值分类 | abs(future_return) > threshold | 1D / 5D | 阈值敏感 |
2.2 回归标签
回归标签直接使用连续数值作为预测目标,保留收益的幅度信息,适用于精细化定价与风险估计。常见形式包括:
- 未来收益率:log(close_t+N / close_t)
- 超额收益:个股收益 - 基准收益
- 波动率:未来 N 日 realized volatility
实践建议:回归标签对异常值极为敏感。建议在构造后使用 winsorize(上下 1% 截尾)或 rank-gaussian 变换进行口径校准,避免极端样本主导损失函数。
# 回归标签构造示例(Python)
import numpy as np
def build_regression_label(close, horizon=5):
future_ret = np.log(close.shift(-horizon) / close)
# 口径校准:截尾 1% 极端值
lower, upper = future_ret.quantile([0.01, 0.99])
future_ret_clipped = future_ret.clip(lower, upper)
return future_ret_clipped
2.3 时序标签
时序标签在构造时显式引入时间依赖结构,适用于序列模型(LSTM、Transformer)或状态转移建模。其核心特征是标签之间具有自相关性与顺序约束。
- 滑动窗口标签:每个时间点对应未来一段连续序列的聚合统计量。
- 增量标签:t+1 时刻相对于 t 时刻的变化量。
- 生存标签:从当前时刻到事件发生所经过的时间长度。
关键陷阱:时序标签在回测中极易引入未来信息泄漏。例如,使用未来 N 日的均值作为当前标签时,若窗口跨越回测分割点,则训练集与测试集产生信息重叠。必须保证标签窗口完全位于样本内。
2.4 事件驱动标签
事件驱动标签以特定事件(如财报发布、涨停、高管增持)的发生为锚点,构造事件前后的收益或状态标签。这类标签天然具有非均匀时间间隔与异质性特征。
- 事件前后收益:事件窗口 [-T, +T] 内的累计收益。
- 事件类型标签:将事件按影响程度分为利好/利空/中性。
- 事件后持续期:事件发生后趋势持续的交易天数。
| 事件类型 | 标签构造 | 窗口长度 | 校准难点 |
|---|---|---|---|
| 财报超预期 | 公告后 3 日超额收益 | 固定 3D | 事件聚集效应 |
| 涨停/跌停 | 次日开盘方向 | 1D | 流动性干扰 |
| 高管增减持 | 公告后 10 日累计收益 | 固定 10D | 内幕信息提前反应 |
事件驱动标签校准核心:必须对齐事件时间戳与交易时间轴。常见错误是使用公告日期而非实际可交易日期,导致标签中包含不可交易窗口。校准方法:将事件时间戳对齐到最近的交易日收盘价,并剔除停牌期间的数据。
2.5 四种标签口径对比总览
选择指南:若策略核心是方向判断(如趋势跟踪),优先使用分类标签;若需精确控制仓位(如统计套利),回归标签更合适;若使用序列模型(如 LSTM 预测价格序列),必须采用时序标签;若策略围绕特定事件展开(如财报套利),事件驱动标签是唯一选择。实际项目中常混合使用多种标签类型进行多任务学习。