2. 训练集与测试集概念:为什么需要划分训练集和测试集,过拟合与欠拟合的基本概念
2.1 为什么需要划分训练集与测试集
在构建 VaR(Value at Risk)模型时,我们手头只有一段有限的历史数据。如果直接用全部数据训练模型,再用同一批数据评估模型表现,会得到一个过于乐观的“成绩单”。这就像学生拿着考试原题复习,考出来的高分无法反映真实能力。
划分训练集与测试集的核心目的,是模拟模型在未知数据上的表现。训练集用于让模型学习历史规律(如收益率分布、波动率聚类特征),测试集则扮演“未来数据”的角色,检验模型是否真正学到了可泛化的风险模式,而非仅仅记住了历史噪声。
核心原则:测试集在模型训练过程中必须完全不可见。任何基于测试集信息进行的参数调整,都会导致评估结果失真。
2.2 过拟合与欠拟合的基本概念
过拟合与欠拟合是模型泛化能力的两个极端,直接决定了 VaR 模型在实盘交易中的可靠性。
| 概念 | 定义 | 在 VaR 模型中的表现 | 后果 |
|---|---|---|---|
| 过拟合 | 模型过度学习训练数据中的噪声和细节,导致在训练集上表现极好,但在测试集(新数据)上表现很差。 | VaR 模型捕捉了历史数据中的偶然波动模式(如某次非重复性冲击),导致 VaR 值被低估或高估,回测失败。 | 模型无法适应市场结构变化,风险预警失效。 |
| 欠拟合 | 模型未能充分学习训练数据中的有效规律,在训练集和测试集上表现均不佳。 | VaR 模型过于简化(如使用固定方差假设),无法捕捉波动率聚集、厚尾分布等关键风险特征。 | VaR 估计偏差大,风险敞口被系统性误判。 |
经验法则:如果 VaR 模型在训练集上的回测通过率远高于测试集(如训练集 99% 覆盖 vs 测试集 85% 覆盖),极大概率存在过拟合。此时应简化模型结构、增加正则化或扩大训练集。
2.3 过拟合与欠拟合的直观图示
下图展示了模型复杂度与预测误差之间的关系,帮助理解过拟合与欠拟合的本质。
2.4 训练集与测试集的划分策略
针对 VaR 模型的时间序列特性,划分策略与普通机器学习有所不同。金融数据具有时间依赖性,不能随机打乱,必须保持时间顺序。
- 时间序列切分(最常用):按时间顺序,前 70%-80% 作为训练集,后 20%-30% 作为测试集。例如,使用 2018-2022 年数据训练,2023 年数据测试。
- 滚动窗口验证:固定训练集长度,随时间向前滚动,每次用最近 N 天训练,预测未来 M 天。适用于捕捉市场状态变化。
- 扩展窗口验证:训练集起点固定,终点随时间扩展,逐步增加训练数据量。适合长期趋势明显的资产。
⚠️ 常见陷阱:切勿在 VaR 模型中使用 K 折交叉验证(随机打乱数据)。金融时间序列存在自相关和波动率聚类,打乱顺序会破坏时间结构,导致严重的数据泄露和过拟合。
2.5 划分比例与样本量考量
训练集与测试集的比例需要权衡:训练集过小会导致模型欠拟合,测试集过小则评估结果不可靠。
| 数据集 | 推荐比例 | 最低样本量要求 | VaR 模型特殊考量 |
|---|---|---|---|
| 训练集 | 70% - 80% | 至少 500-1000 个交易日(约 2-4 年) | 需覆盖至少一个完整的市场周期(牛熊转换) |
| 测试集 | 20% - 30% | 至少 250 个交易日(约 1 年) | 需包含足够的尾部事件样本(如 1% VaR 至少需要 2-3 次突破) |
| 验证集(可选) | 10% - 15% | 至少 125 个交易日 | 用于超参数调优(如衰减因子 λ、窗口长度) |
实操建议:对于高频 VaR 模型(如 1 天持有期),建议训练集至少包含 1000 个交易日,测试集至少 250 个交易日。若数据不足,可考虑使用 Bootstrap 或合成数据增强,但需谨慎引入偏差。
2.6 过拟合与欠拟合的检测方法
在 VaR 模型训练完成后,可以通过以下方法快速诊断是否存在过拟合或欠拟合:
- 训练集 vs 测试集 VaR 突破率对比:若训练集突破率接近置信水平(如 1% VaR 突破率约 1%),但测试集突破率显著偏离(如 3% 或 0.1%),提示过拟合。
- 回测统计量对比:比较 Kupiec 失败率检验、Christoffersen 独立性检验在训练集和测试集上的 p 值。若训练集 p 值远高于测试集,存在过拟合。
- 损失函数曲线:绘制训练误差和测试误差随模型复杂度(如 GARCH 阶数、历史窗口长度)的变化曲线,观察是否存在“U 型”测试误差曲线。
2.7 避免过拟合与欠拟合的实用策略
- 正则化:在 GARCH 类模型中引入 L1/L2 正则化,限制参数幅度,防止过度拟合历史噪声。
- 早停法:在训练过程中监控测试集误差,当测试误差连续 N 步不再下降时停止训练。
- 模型集成:组合多个 VaR 模型(如历史模拟法 + GARCH + 极值理论),降低单一模型过拟合风险。
- 数据增强:使用 Bootstrap 重采样或合成数据(如 GAN 生成尾部场景),增加训练集的多样性。
- 简化模型结构:优先选择参数较少的模型(如 RiskMetrics 的指数加权移动平均),避免使用高阶 GARCH 或复杂神经网络。
VaR 模型黄金法则:宁可接受一定程度的欠拟合(模型偏保守),也要坚决避免过拟合。过拟合的 VaR 模型在实盘中会给出虚假的安全感,导致风险敞口失控。