3、历史模拟法原理:基本思想、假设条件与对比定位
历史模拟法(Historical Simulation, HS)是风险计量领域中最为直观、最贴近市场实际的一种VaR(Value at Risk)计算方法。它不假设收益率的理论分布,而是直接利用资产组合在过去一段时间内的实际历史收益数据,通过“让历史重演”的方式,模拟出组合在未来可能面临的损益分布,进而分位数提取风险价值。该方法在1990年代由J.P. Morgan的RiskMetrics团队系统化推广,至今仍是巴塞尔协议框架下市场风险内部模型法(IMA)的重要备选方案之一。理解历史模拟法的原理,关键在于把握其“经验分布替代理论分布”的核心逻辑,以及它在肥尾、非线性、相关性结构上的天然优势。
上图展示了历史模拟法的整体逻辑框架:从历史数据输入,到情景损益生成,再到经验分布构建,最终形成VaR/ES风险度量。同时,图中将历史模拟法与参数法、蒙特卡洛模拟在分布假设、相关性处理、非线性支持、计算效率等维度进行了并列对比。接下来,我们将从基本思想、假设条件、对比分析三个层面深入展开。
3.1 历史模拟法的基本思想
3.1.1 核心逻辑:经验分布替代理论分布
历史模拟法的基本思想可以概括为一句话:“过去发生的,未来可能再次发生”。它不假设收益率服从正态分布、t分布或其他任何理论分布,而是直接将历史观测期内每一天的资产收益率作为未来一天的可能情景。具体而言,假设我们持有由n种资产构成的组合,当前市值为V,历史样本窗口包含T个交易日(通常为250~1000天),则对于第t个历史日,我们可以计算该日的组合损益:
P&L_t = Σ (w_i × R_{i,t} × V) (线性近似)
或
P&L_t = V(S_{1,t}, S_{2,t}, …, S_{n,t}) - V(S_{1,0}, S_{2,0}, …, S_{n,0}) (完全估值)
其中,w_i为第i种资产的权重,R_{i,t}为第i种资产在第t个历史日的收益率,S_{i,t}为第i种资产在第t个历史日的价格水平。通过这种方式,我们构造出T个“如果明天重复历史第t天”的情景损益。将这T个损益从小到大排序,取第α分位数(例如95%置信水平对应第5%分位数),即为VaR;对尾部损失取平均,即为ES(Expected Shortfall)。
3.1.2 完全估值与线性近似的选择
在实际应用中,历史模拟法有两种损益计算方式:
- 线性近似(Delta-Normal风格):仅使用一阶敏感性(Delta)乘以历史收益率,计算速度快,但无法捕捉期权等非线性产品的Gamma风险。
- 完全估值(Full Revaluation):对每个历史情景重新定价整个组合,包括期权定价模型、利率曲线重定价等,精度高但计算量大。
对于以股票、外汇、商品期货为主的线性组合,线性近似足够;对于含期权的组合,必须采用完全估值。这也是历史模拟法相比参数法的一大优势——参数法在线性近似框架下无法处理非线性风险,而历史模拟法可以通过完全估值天然支持。
3.2 历史模拟法的假设条件
尽管历史模拟法不假设理论分布,但它并非“无假设”。其隐含假设条件如下:
| 假设编号 | 假设内容 | 违反时的风险 |
|---|---|---|
| H1 | 历史样本期的收益率分布与未来预测期一致(平稳性假设) | 市场结构突变、政策转向、危机后制度变化会导致VaR低估 |
| H2 | 资产间的相关性结构在未来保持稳定 | 危机期间相关性趋同(correlation breakdown),组合分散化失效 |
| H3 | 样本窗口内的极端事件足以代表未来尾部风险 | 样本窗口未包含历史极端行情(如2008年、2020年),尾部低估 |
| H4 | 历史情景等权重,即每个历史日发生的概率相同 | 近期市场波动率更高时,等权重会低估当前风险 |
| H5 | 组合权重在样本期内保持不变(静态组合假设) | 实际交易中组合权重频繁调整,历史损益与当前持仓不匹配 |
3.3 与参数法、蒙特卡洛模拟的对比
3.3.1 方法论本质差异
三种方法的核心区别在于“如何生成未来损益分布”:
- 参数法:假设收益率服从正态分布(或t分布),仅需估计均值、方差、协方差矩阵,即可解析推导VaR。计算效率最高,但正态假设低估肥尾风险。
- 历史模拟法:不假设分布,直接使用历史数据构造经验分布。计算效率中等,能捕捉肥尾和非线性,但受限于历史样本的代表性。
- 蒙特卡洛模拟:先假设收益率服从某种随机过程(如几何布朗运动),再通过随机数生成大量未来路径,对每条路径进行估值。灵活性最高,可自定义分布、相关性、跳跃项,但计算量大、模型风险高。
3.3.2 对比维度详析
| 对比维度 | 历史模拟法 | 参数法 | 蒙特卡洛模拟 |
|---|---|---|---|
| 分布假设 | 无(经验分布) | 正态/t分布 | 可自定义(GBM、跳跃扩散等) |
| 相关性处理 | 历史数据隐含 | 协方差矩阵 | Copula或相关矩阵 |
| 非线性产品 | 支持(完全估值) | 不支持(线性近似) | 完全支持 |
| 肥尾捕捉 | 天然支持 | 弱(正态假设) | 可配置(t分布、GPD) |
| 计算速度 | 快(T次估值) | 极快(解析解) | 慢(需10万+路径) |
| 数据需求 | 中(250~1000日) | 低(仅需协方差矩阵) | 高(需估计模型参数) |
| 模型风险 | 低(无分布假设) | 高(假设错误则全错) | 中(依赖模型设定) |
| 压力测试扩展 | 需额外情景叠加 | 可解析扩展 | 灵活设计极端情景 |
| 监管认可 | 巴塞尔IMA认可 | 不单独认可 | 可作为补充 |
3.3.3 实战选择建议
在实际风险管理中,三种方法并非互斥,而是互补关系:
- 日常监控与限额管理:优先使用历史模拟法,因其计算快、无需分布假设,适合高频计算。
- 压力测试与极端情景:使用蒙特卡洛模拟,设计特定压力情景(如利率跳升300bp、股市暴跌20%)。
- 快速估算与初步筛选:使用参数法,在数据不足或需要快速估算时提供参考。
- 模型验证:用三种方法互相交叉验证,若结果差异过大,需检查数据质量或模型假设。
3.4 案例拆解:某银行外汇组合的历史模拟法应用
3.4.1 背景与目标
某中型银行持有外汇现货组合,包含USD/CNY、EUR/CNY、JPY/CNY三个货币对,当前市值分别为5000万美元、3000万美元、2000万美元(折合人民币)。风险管理部需要计算该组合未来1天的95% VaR,并评估历史模拟法的适用性。
3.4.2 数据与初始条件
- 样本窗口:最近500个交易日(约2年)的日收益率数据。
- 当前汇率:USD/CNY=7.20,EUR/CNY=7.85,JPY/CNY=0.048。
- 组合权重:w₁=0.5,w₂=0.3,w₃=0.2。
- 置信水平:95%(单尾)。
3.4.3 操作步骤
步骤1:提取500个历史日的三种货币对日收益率 R₁ₜ, R₂ₜ, R₃ₜ
步骤2:计算每个历史日的组合损益:
P&Lₜ = 5000万×R₁ₜ + 3000万×R₂ₜ + 2000万×R₃ₜ (单位:人民币)
步骤3:将500个P&Lₜ从小到大排序
步骤4:95%置信水平对应第5%分位数,即第25个最小损益(500×5%=25)
步骤5:VaR = -(第25个最小损益)
3.4.4 结果与分析
假设排序后第25个最小损益为-180万元人民币,则95% VaR = 180万元。这意味着在95%置信水平下,该组合未来1天的最大损失不超过180万元。进一步计算ES:对排序后前25个损益取平均,假设为-230万元,则ES=230万元,表明尾部平均损失比VaR高出约28%。
3.5 常见误区与改进方向
3.5.1 常见误区
- 误区一:认为历史模拟法“无假设”。实际上,平稳性假设、相关性稳定假设、等权重假设都是隐含前提。
- 误区二:样本窗口越长越好。窗口过长会包含过时的市场结构(如利率市场化改革前),窗口过短则尾部数据不足。一般建议250~750天。
- 误区三:忽视权重漂移。组合权重随市场波动而变化,若不定期调整,历史损益与当前持仓不匹配。
- 误区四:将历史VaR直接用于压力测试。历史模拟法只能反映“已发生过的风险”,无法覆盖“未发生但可能发生的风险”。
3.5.2 改进方向
| 改进方法 | 核心思路 | 适用场景 |
|---|---|---|
| 衰减加权历史模拟法 | 近期数据赋予更高权重(如λ=0.97指数衰减) | 市场波动率变化较快时 |
| 波动率调整历史模拟法 | 用当前波动率与历史波动率的比值缩放历史收益率 | 当前波动率显著高于历史均值时 |
| 过滤历史模拟法(FHS) | 先用GARCH模型过滤波动率,再对标准化残差使用历史模拟 | 兼顾波动率聚集与肥尾特征 |
| 极值理论(EVT)结合 | 对尾部数据使用广义帕累托分布(GPD)拟合 | 需要更精确的尾部VaR/ES估计 |