风险价值(Value at Risk,VaR)模型
风险管理的使命是:
- 确保管理层充分了解银行的风险状况;
- 保护银行,避免由于风险过度集中而遭受不可接受的巨额损失;
- 换句话说:不要出现意外。
可以用两个类比来理解风险管理:
- 聚光灯: 把隐藏的风险照亮,让管理层看清风险集中在哪里;
- 填色书: 把不同种类和程度的风险用清晰类别标示出来,从而形成完整的风险图谱。
本部分介绍 VaR 的主要计算方法、输入变量以及从单项资产到投资组合的推广。
本讲将讨论:
- 单项资产 VaR 示例;
- 基于价格的金融工具;
- 基于收益率的金融工具;
- 方差—协方差法;
- Monte Carlo 模拟;
- 历史模拟。
风险计量需要考虑:
- 利率敏感度:久期、PV01;
- 股票敞口;
- 大宗商品敞口;
- 信用风险:信用利差久期;
- 价格行为的概率分布与线性程度;
- 现金流或提前偿付的规律性;
- 不同行业和资产类别之间的相关性。
VaR 的目标是估计可能结果分布中最差的那一小部分。本讲以 99% 置信水平为例:
我们希望估计所有可能结果中最差的 1%。
图中横轴表示收益或损益,纵轴表示发生频率或概率密度。VaR 位于分布左尾,用一个损失阈值概括极端但并非最极端的市场风险。
若损失变量记为
考虑一条时间序列,例如墨西哥 IPC 股票指数。讲义列出部分数据:
| 日期 | IPC |
|---|---|
| 1995-01-02 | 2354.24 |
| 1995-01-03 | 2278.47 |
| 1995-01-04 | 2261.73 |
| 1995-01-05 | 2273.10 |
| 1996-12-25 | 3298.47 |
| 1996-12-26 | 3310.89 |
| 1996-12-27 | 3327.20 |
| 1996-12-30 | 3346.95 |
| 1996-12-31 | 3361.03 |
原图展示 1995 年初至 1996 年末 IPC 指数的走势,大致由 2000 点附近上升至 3300 点以上,中间伴随明显波动。
我们希望知道该市场可能向不利方向移动多少,从而判断支持当前头寸需要准备多少资本。
- 大多数金融时间序列表现得近似随机游走。这意味着,在许多简单模型中,对明日水平的最佳估计就是今日水平。
- 随机游走没有固定上下界。如果只研究价格或指数的绝对水平,就很难预测未来路径。
- 讲义给出的 1995—1996 年 IPC 指数水平频数分布跨度很大、形状不稳定,说明直接对“水平”建模并不方便。
因此,风险模型通常从价格水平转向收益率。
考虑同一时期的 IPC 收益率,将收益率定义为指数的百分比变化:
原图展示收益率的频数分布,横轴约从
这种相对稳定的分布形态使我们可以用方差、标准差及分位数来衡量风险。
得到收益率时间序列后,可以用方差衡量其离散程度:
- 从每个收益率中减去平均收益率;
- 将所得偏差平方;
- 对所有平方偏差求和;
- 再除以观测数量或自由度。
方差的平方根称为标准差,也称波动率,可用于估计风险。
在正态分布假设下:
倍标准差对应单侧 99% 分位点; 倍标准差对应单侧 95% 分位点。
所以,若均值相对波动率可忽略,99% 单侧损失阈值近似为
样本方差为
样本标准差为
讲义提到的 Excel 函数为 VAR() 和 STDEV();现代 Excel 中常根据总体或样本口径分别使用 VAR.P()、VAR.S()、STDEV.P() 与 STDEV.S()。
1995 年 1 月至 1996 年 12 月 IPC 日收益率的样本统计量为:
- 方差:
- 标准差:
在正态分布和 99% 单侧置信水平下:
由此可以认为:在约 99% 的交易日里,单日损失不会超过头寸价值的 4.1968%。
这意味着,对 IPC 投资 100 墨西哥比索(MXP)时:
- 单日损失超过约 4.2 MXP 的情况,理论上只应约占 1%;
- 实际上,自 1995 年 1 月 1 日以来,IPC 有 8 次跌幅超过 4.2%,约占 1.5%。
尽管估计大致准确,这也揭示了 VaR 在某些市场中的问题:它有时会低估大幅市场波动出现的频率。
这种问题在单一证券或单个交易台层面较常见;在充分分散的投资组合层面,可能因风险分散而有所减弱。不过是否“消失”仍取决于尾部相关性和市场压力状态。
单项资产 VaR 的基本步骤:
- 收集价格数据;
- 构造收益率序列;
- 估计收益率序列的方差;
- 对方差开平方,得到波动率或标准差;
- 将波动率乘以
和头寸规模,得到 99% 置信水平的最坏损失估计:头 寸 规 模
多头与空头
符号很重要:
- 对股票头寸较直观;
- 对外汇头寸必须先明确以哪种货币为计价货币,以及持有的是哪一边的多头或空头。
单侧与双侧置信区间
VaR 关注损失尾部,通常使用单侧分位数。不能误用双侧置信区间的临界值。
错误数据
价格错误、漏值、拆股和币种换算错误都可能扭曲收益率与波动率估计。
百分比变化与对数变化
简单收益率为
对数收益率为
小幅波动时二者接近,但在大幅波动或多期复合时存在区别。
固定收益工具需要对上述方法作出调整。
原因在于:
- 市场通常容易取得的是债券收益率时间序列;
- 但风险管理真正关心的是债券价格的变化。
因此需要:
- 用基点表示收益率波动;
- 用收益率变动 1 个基点时头寸价值的变化,表示价格敏感度。
这种敏感度通常称为 PV01 或 DV01。
股票、外汇和大宗商品
若
95% 置信水平时把
固定收益
若收益率波动率以百分比变化计量,可先把它转为基点变化,再乘以 PV01:
其中:
表示收益率变动 1 bp 时头寸价值的变化; 把收益率的百分比波动转为基点波动;当 前 收 益 率 - 必须确保收益率、百分数、基点和头寸面值的单位一致。
考虑面值 100 美元的 10 年期美国国债头寸:
- 自 2003 年 1 月 1 日以来,美国国债收益率百分比变化的波动率为 1.312%;
- DV01 定义为:在给定基准日收益率时,收益率上升 1 个基点所导致的价格变化;
- 也可以用久期近似这一敏感度。
原幻灯片同时出现“自 2003 年以来”和“1996 年 12 月 31 日收益率”的不同日期口径;译文按原文保留,实际计算时应统一数据日期。
讲义给出的债券价格为:
- 收益率为 4.644% 时,价格为 100;
- 收益率为 4.654% 时,价格为 99.92077。
收益率上升
因此每 100 美元面值的价格变化为
通常把 DV01 报告为变化的绝对金额:
这种敏感度会随收益率水平变化,但对于较小的收益率变动,它通常是良好的一阶近似。
- 久期衡量证券现金流到达时间的加权平均,权重与各期现金流的现值有关;
- 修正久期还能表示收益率变化引起的价格百分比变化:
- DV01 给出类似的敏感度,但通常按收益率变动 1 bp、每 100 万面值或某一实际头寸规模报告;
- 债券交易员习惯使用 DV01,投资组合经理更常使用久期;
- 两种指标都有效,但必须特别注意单位。
单位混淆是固定收益风险计算中最容易出现的错误之一。
在美国国债示例中,可以使用 Excel 的 PRICE() 函数计算给定收益率下的债券价格。
需要注意:
- 票息率和收益率应按函数要求输入为小数。例如 4.644% 应输入为 0.04644;
- 假设债券按面值偿还;
- PV01 与久期的风险含义相近,但一个通常以金额表示,另一个通常以价格百分比敏感度表示。
PRICE() 函数的计息日数基础参数如下:
| Basis | 日数计算基础 |
|---|---|
| 0 或省略 | 美国 NASD 30/360 |
| 1 | 实际天数/实际天数 |
| 2 | 实际天数/360 |
| 3 | 实际天数/365 |
| 4 | 欧洲 30/360 |
头寸信息:
- 规模:100 美元;
- 到期时间:10 年;
- 收益率百分比变化的波动率:0.01312;
- DV01:每 100 美元面值为
; - 2006 年 12 月 27 日收盘收益率:4.644%。
按讲义公式,
因此,该 100 美元头寸的 99% 单日 VaR 约为 1.125 美元。
对具有信用风险的证券,应区分:
- 利率风险;
- 信用风险。
信用利差反映违约概率及违约后的回收率。两类风险通常分别计算。
有时会近似假设
其中 CSPV01 是信用利差变动 1 bp 引起的价值变化。
- 若回收率为 0,这种相等关系成立;
- 若回收率不为 0,两者通常不相等。
信用利差可能来自:
- 根据债券价格计算的利差;
- 信用违约互换(CDS)利差;
- 资产互换利差。
具有信用风险的债券收益率可分解为:
利率 PV01 衡量无风险利率曲线变化的影响;CSPV01 衡量信用利差变化的影响。
协方差允许我们研究不同资产价格如何相对于彼此变动。
两个样本序列
协方差表示:
- 当一个变量偏离自身均值一定距离时,另一个变量通常偏离其均值多少;
- 当
变动时, 变动的幅度和方向; - 投资组合中每一变量与其他每一变量之间的共同变化关系。
正协方差表示二者倾向同向变动,负协方差表示倾向反向变动,接近零则表示线性共同变动较弱。
基本统计恒等式为
讲义给出一组
| 统计量 | 数值 |
|---|---|
| 0.333059 | |
| 0.469281 | |
| 0.349660 | |
| 1.501660 | |
| 由 |
1.501660 |
两种计算完全一致,验证了方差加总公式。
如果已知投资组合中所有证券的方差和两两协方差,就可以:
- 评估整个投资组合的风险;
- 评估任意子投资组合的风险;
- 衡量分散化带来的风险降低。
这是现代投资组合理论的重要基础。
相关系数是经过标准化的协方差:
协方差与相关系数的区别:
- 协方差带有单位;
- 相关系数没有单位;
- 相关系数取值介于
与 之间,是线性共同变化程度的标准化指标。
只要正确处理单位,使用相关系数或协方差都可以得到一致结果。
- 相关系数更便于直觉理解;
- 协方差使投资组合方差计算更直接;
- 已知协方差和各资产波动率,就能计算相关系数;
- 仅知道相关系数,若不知道各资产波动率,则无法恢复协方差。
前面的组合假设每项资产只持有一个单位。但现实投资组合通常持有多股、多只债券或多份合约。
若持有
对两个头寸,
对三个资产,
若持仓量分别为
对四个资产及持仓量
资产数量增加时,逐项展开很快会变得繁琐。要推广到包含大量资产的投资组合,需要:
- 使用协方差矩阵或相关矩阵;
- 使用线性代数的矩阵运算。
讲义给出 11 个市场指数的相关矩阵与协方差矩阵。指数含义如下:
| 代码 | 含义 |
|---|---|
| M0A0 | Mortgage Master,抵押贷款综合指数 |
| GA10 | 当前 10 年期美国国债 |
| C0A0 | 美国公司债综合指数 |
| SPX | 标普 500 |
| IGOV | 美元计价新兴市场主权债指数 |
| MXEF | MSCI 新兴市场股票指数 |
| C0A1 | 美国 AAA 公司债 |
| H0ND | 美国非困境高收益债 |
| H0HY | 美国原始发行高收益债 |
| H0A0 | 高收益债综合指数 II |
| VIX | 波动率指数 |
相关矩阵中的代表性关系包括:
- H0HY 与 H0A0 的相关系数为 0.99;
- H0ND 与 H0HY 的相关系数为 0.96;
- SPX 与 MXEF 的相关系数为 0.82;
- SPX 与 VIX 的相关系数为
; - MXEF 与 VIX 的相关系数为
。
协方差矩阵的对角线是各指数方差,例如:
- M0A0:0.71;
- GA10:5.52;
- C0A0:3.30;
- SPX:21.29;
- MXEF:51.57;
- VIX:366.22。
非对角元素为两两协方差,例如:
; ; 。
矩阵均为对称矩阵,因此上三角与下三角包含相同信息。
讲义依次展示由 CAD、CHF、DEM、ESP 和 FRF 收益率构成的
把矩阵中所有元素求和,得到:
这正是每种资产各持有一个单位时的投资组合方差。
若投资组合对协方差矩阵中的每项证券都持有一个单位,则投资组合方差等于矩阵所有元素之和。
现实中,各资产持仓量几乎从不完全相同,因此需要把头寸向量纳入计算。
- 使用单日风险期限,可以减少相关矩阵在理论上的歧义;
- 相关性是否随时间稳定,是风险管理的核心问题;
- 市场承压时,相关性常由接近中性迅速转向强烈同向或反向;
- 较短时间范围内,价格的线性近似通常更可靠。
这也说明:用正常时期的固定相关矩阵估计压力期风险,可能低估组合尾部损失。
矩阵代数可以简洁表示对多行、多列数字进行的算术运算,可以把它视为一种“算术速记”。
在电子表格中,可以使用:
MMULT():矩阵乘法;TRANSPOSE():矩阵转置。
完整的线性代数课程超出本讲范围,但进行方差—协方差分析所需的核心运算相对简单,主要就是:
- 构造头寸列向量;
- 构造协方差矩阵;
- 对头寸向量作转置;
- 执行两次矩阵乘法。
假设外汇头寸为:
- CAD/USD:
美元; - CHF/USD:
美元; - DEM/USD:
美元。
头寸向量为
协方差矩阵为
投资组合方差为
标准差为
99% 正态 VaR 为
在 Excel 中,可用类似下式一次完成组合方差运算:
=MMULT(TRANSPOSE(头寸行向量),MMULT(协方差矩阵,头寸列向量))
上述电子表格仍得到:
使用矩阵函数时应注意:
- 在旧版本 Excel 中,矩阵公式需要用
Ctrl+Shift+Enter提交,而不能只按 Enter;支持动态数组的新版本通常不再需要此操作; - 头寸数量必须与协方差矩阵的行数和列数一致;
- 头寸的排列顺序必须与矩阵中资产的排列顺序完全一致。
矩阵公式
首先产生投资组合方差,而不是 VaR。
计算顺序为:
- 计算组合方差:
- 开平方得到组合标准差或波动率:
- 乘以 2.33,得到正态分布假设下的 99% 单侧 VaR:
方差—协方差计算的主要环节包括:
- 收集数据;
- 计算收益率;
- 检验数据;
- 构造矩阵;
- 整理头寸并构造头寸向量;
- 执行矩阵乘法;
- 计算资本需求;
- 解释计算结果。
原流程图可以整理为以下顺序:
- 从多个来源收集市场数据;
- 计算市场收益率;
- 对数据进行检验,例如绘图、检查超过 2 个标准差的观测;
- 构造市场协方差矩阵
; - 收集头寸数据;
- 构造包含 DV01 等敏感度调整的头寸向量
; - 进行矩阵乘法:
- 计算绝对 VaR 和子投资组合 VaR;
- 计算边际 VaR;
- 进行情景分析;
- 将结果用于资本与风险管理决策。
建立方差—协方差模型时,需要明确:
- 数据如何取得;
- 使用多长的历史时期;
- 历史观测采用何种权重;
- 如何进行风险分桶;
- 对不相关资产如何处理;
- 对相关资产如何归类;
- 数据缺口如何处理;
- 模型多久更新一次;
- 收益率差分采用日、周还是月间隔。
价格与证券信息
- DRI(Fame);
- Datastream;
- 万维网;
- Bloomberg;
- 内部数据系统。
协方差矩阵
- RiskMetrics;
- Bloomberg。
信用信息
- CreditGrades/RiskMetrics;
- KMV;
- 信用评级机构;
- Bloomberg。
任何来源都应检查时区、币种、复权方式、缺失值和异常值处理是否一致。
选择历史窗口时要考虑:
- 应追溯多长时间;
- 数据是否可获得;
- 定价机制或市场制度是否发生改变;
- 重大结构性事件,例如 2008 年金融危机;
- 区域性制度变化,例如 1995 年的巴西市场;
- 欧元的引入;
- 市场异常现象是否存在;
- 交易者是否可能利用这些异常获利。
过长窗口包含更多数据,却可能混入已经失效的市场制度;过短窗口更能反映当前状态,但估计误差更大。
常见历史观测加权方案包括:
- 等权: 每个历史观测权重相同;
- 指数加权: 越新的观测权重越高,越旧的观测权重按指数速度衰减。
选择指数加权系数会产生重大影响:
- 实现可能更困难;
- 验证和复核更困难;
- 会显著改变方差与协方差;
- 权重选择在很大程度上具有主观性。
但指数加权也有优势:
- 能使波动率随着旧观测逐渐退出而平滑变化;
- 更符合“近期信息比久远信息更重要”的启发式决策思路。
指数加权给予近期观测更高权重,权重随时间向过去呈指数下降。需要选定或估计权重因子。
加权协方差的一般形式为
其中
指数权重通常满足
原图比较:
- 收益率百分比变化;
- 6 个月滚动波动率;
- 衰减因子分别为 0.92、0.94、0.96、0.98 的指数加权波动率。
较小的
- 对最新变化反应更快;
- 波动率估计更敏感、更不平滑。
较大的
- 保留历史信息更久;
- 波动率路径更平滑,但对市场状态突变反应较慢。
不可能为每一个单独头寸都设置独立风险桶,因此需要“分桶”:
- 把相近风险暴露映射到同一代表性风险因子;
- 降低模型粒度和维度;
- 若分桶设计合理,可以在显著简化计算的同时不明显降低准确性;
- 某些无法可靠估计相关性的资产,可能需要映射到设定波动率的“不相关资产”桶。
错误分桶会掩盖基差风险,因此应检验桶内资产是否具有足够相似的风险行为。
模型可以每日、每周或每月更新。选择本质上取决于对市场的假设:
- 市场风险因子多快发生变化?
- 短期欧洲存款利率和日本利率的波动率变化可能很频繁;
- 相关结构的变化往往比单项波动率更难估计。
更新过慢会滞后,更新过快则可能让估计受到噪声支配。
选择简单百分比收益率还是对数收益率,主要取决于计算便利性。
简单百分比变化:
对数变化:
讲义指出,使用普通百分比变化的理论问题之一,是基于线性或正态近似的模拟可能产生低于
需要在日、周和月变化之间作出选择:
- 有哪些频率的数据可用?
- 协方差矩阵用于短期交易,还是长期头寸管理?
- 能否用平方根时间法则在不同期限间缩放?
在独立同分布假设下,理论上可以:
但现实中存在:
- 不同市场收盘时间不一致导致的非同步问题;
- 收益率序列自相关;
- 波动率和相关性随时间变化。
因此不能机械缩放。
单位
- 头寸是否以百万为单位记录?
- 风险敏感度和价格变化使用的单位是否匹配?
外汇头寸
- 是否统一采用同一基础货币;
- 多头和空头基础货币的符号是否正确。
固定收益头寸
收益率上升通常导致债券价格下降,必须正确处理 DV01 或久期的符号。
前面的组合例子假设头寸是外汇、大宗商品或股票:
- 这些资产直接对价格或价格收益率建模;
- 头寸规模乘以预期最大价格变化
就得到预期最坏损失。标 准 差
固定收益市场通常对收益率变化建模,而不是直接对价格变化建模,因此必须增加价格敏感度转换。
纳入固定收益头寸时,需要把名义头寸乘以反映价格对收益率变化敏感度的指标:
- DV01,即收益率变动 1 bp 的价值变化;
- 或久期。
这一调整应在构造头寸向量时完成。换言之,协方差矩阵描述的是收益率风险因子,头寸向量则应转换为对这些风险因子的货币敏感度。
问题:每个风险桶自身的绝对 VaR 是多少?
有两种算法:
- 用单个头寸的风险敏感度乘以该风险因子的波动率,再乘置信系数;
- 仍使用完整协方差矩阵和头寸向量,但每次只保留目标桶的头寸,把其他所有头寸设为零。
绝对 VaR 忽略该桶与其他桶之间的分散化或对冲效应。
假设原头寸向量为
为计算每个桶的绝对 VaR,依次使用:
把每个单桶向量分别代入
即可得到该桶的绝对 VaR。
边际 VaR 主要用于:
- 判断单个头寸对投资组合 VaR 的贡献;
- 揭示组合内部的自然对冲;
- 评估专门构建的对冲组合是否有效。
如果移除某头寸后组合 VaR 上升,该头寸可能正在提供对冲;如果移除后 VaR 下降,它可能是风险来源。
原组合头寸为
依次把一个桶的头寸设为 0,其余头寸保持不变。例如:
一直到
把每个“删除一个头寸”的组合 VaR 与原始 VaR 比较:
这给出第
历史模拟法使用某段历史时期真实观察到的利率与价格,或其标准化变化,对当前投资组合重新估值:
- 用每个历史市场变动冲击当前组合;
- 得到一系列假设损益;
- 将损益从差到好排序;
- 选取第
差的次序统计量作为 VaR。
- 方法简单;
- 直观易懂;
- 非参数化,不必预设正态分布;
- 容易在交易台、业务线和全公司之间汇总。
- 良好的尾部估计需要大量数据;
- 某些风险因子的历史数据很短;
- 新产品没有自身历史,难以判断其在过去市场冲击下会如何表现;
- 默认历史分布具有平稳性,即未来风险状态与历史时期可比。
若历史窗口没有包含类似当前风险的压力事件,历史模拟会低估风险。
历史模拟可以看成一种受限的 Monte Carlo:
- 总体思路和处理架构相似;
- 情景不是从参数分布随机生成,而是直接取自历史观测,因此是非参数方法;
- 本质上是在把当前投资组合放回过去逐日进行回测。
- 收集头寸数据;
- 把头寸映射到风险指数或风险桶;
- 计算敏感度,包括 Delta、Gamma;
- 收集历史市场数据;
- 计算收益率或风险因子变化;
- 用历史变化“冲击”当前投资组合;
- 计算每个情景的损益;
- 排序损益并提取相应次序统计量。
风险管理工作的 90%,是知道自己持有什么、持有在哪里。
需要决定:
- 头寸数据保留多细的粒度;
- 不同市场的数据是否同步;
- 衍生品如何表达:
- 使用哪些希腊字母敏感度;
- 头寸以名义本金还是盯市价值记录。
头寸遗漏、重复或符号错误可能比模型选择本身造成更大误差。
分桶粒度仍然关键。可选方法包括:
- 使各桶绝对 VaR 大致相等;
- 按久期加权映射;
- 按实际对冲头寸或代表性风险因子映射。
还必须统一单位:
头寸规模;
固定收益名义本金与 DV01;
收益率百分数与基点。
股票、外汇和大宗商品的线性价格敏感度较容易计算;
固定收益头寸可使用
头 寸 当 前 收 益 率 把收益率百分比变化转成损益敏感度;
对短期、小幅变动,债券凸性通常不是主要问题;
对期权,可使用 Delta 或 Delta–Gamma 近似:
- 单日 VaR 中,Delta 近似往往尚可;
- 持有期较长时需要 Gamma;
- 市场波动剧烈时也可能必须加入 Gamma。
Delta–Gamma 损益近似为
收集历史数据时应考虑:
- 数据来源;
- 数据质量问题;
- 缺失数据;
- 历史时期;
- 观测频率。
收益率可计算为:
或
有了头寸敏感度和历史冲击后,就可以生成逐日假设损益。
若使用敏感度近似而非完整重估,损益数字会包含由以下因素造成的近似误差:
- 固定收益凸性;
- 期权 Gamma;
- 其他非线性风险。
这些数值表示:如果今天的投资组合在过去
- 将所有假设损益从最差到最好排序;
- 选择第
差的结果作为次序统计量; - 可同时报告 1%、5% 和 10% 尾部水平,但可用精度取决于观测数量;
- 必须保存组合层以下的损益明细,因为整体损失可能由极少数实际头寸驱动。
孤立的 VaR 数字没有价值。应当:
- 每日计算并与过去结果比较;
- 决定回测使用实际损益,还是风险指数的实际变化;
- 比较完整重新定价与敏感度近似;
- 与压力测试及情景分析结合使用。
VaR 不是“最大可能损失”,它只是在指定模型、期限和置信水平下的分位数。
历史模拟表包含:
- 每个历史日期的市场收益率;
- 当前头寸在该历史冲击下的假设损益;
- 各交易台损益;
- 公司总损益。
对每个日期:
99% VaR 的次序统计量与样本长度有关:
| 历史长度 | 约计观测数 | 1% 尾部位置 |
|---|---|---|
| 1 年 | 250 | 第 2 与第 3 差结果的平均 |
| 2 年 | 500 | 第 5 差 |
| 3 年 | 750 | 第 7 与第 8 差结果的平均 |
| 4 年 | 1000 | 第 10 差 |
对每个交易台和公司总组合分别排序,即可得到交易台 VaR 与总 VaR。
历史模拟 VaR 的数据流为:
- 后台系统提供头寸;
- 风险系统计算或接收头寸敏感度;
- 外部或内部数据商提供历史市场数据;
- 系统生成可能结果的损益分布;
- 从中提取最差 1% 的 VaR;
- 输出限额报告、压力测试、历史情景和临时专项分析。
VaR 引擎为每个组合生成损益向量。讲义示例采用四年历史,每个向量含 1043 个损益日期。
给定某一层级,父组合的损益向量等于其子组合损益向量之和。例如:
若
把方差作为损益向量风险的代理。由于
父组合方差为
另一方面,
因此
将上式除以父组合标准差
其中讲义定义
这里的
用前述方差—协方差比,把父组合 VaR 分配给子组合:
例如,固定收益业务(FID)的边际 VaR 为
由于
所以所有子组合的分配额恰好加总为父组合 VaR。
公司父层组合的示例结果为:
| 业务单元 | 独立 VaR | 相对于公司层的边际 VaR |
|---|---|---|
| FIRM_primary | 不适用 | |
| PDT | ||
| IEDxPDT | ||
| SUPERFID |
子项边际 VaR 之和为
恰好等于公司父层 VaR。
边际值总是相对于层级结构中的直接父节点计算。SUPERFID 下的示例为:
| FID 子业务 | 独立 VaR | 相对于 FID 的边际 VaR |
|---|---|---|
| INTEREST RATE CURRENCY GR | ||
| LENDING JV | ||
| FID UNDEFINED | ||
| CREDIT PRODUCTS GROUP x LENDING | ||
| CM |
这些 FID 子项的边际 VaR 合计为
历史模拟这类经验方法具有:
- 直观吸引力;
- 容易检查错误;
- 信用利差的历史活动已经内嵌在数据中;
- 不必维持多元正态分布假设;
- 自动产生历史情景分析。
原页用三幅图比较非线性产品的三种表示方法:
- 局部或部分参数表示: 只用局部敏感度近似价格曲线;
- 完整参数表示: 加入更高阶项,以更完整的函数近似曲线;
- 精确重新定价: 对每个冲击直接调用完整定价模型。
冲击幅度较小时,局部近似可能足够;冲击变大或产品非线性增强时,部分参数近似与真实价格曲线的偏差会显著扩大。
定价网格是在多个风险因子冲击点上预先计算产品价值。模拟时通过网格查找或插值得到价格,从而在以下两者之间折中:
- 完整重新定价的准确性;
- 参数敏感度近似的计算速度。
对于多风险因子产品,网格维度会迅速增长,因此需要控制关键风险因子的数量。
原图展示 2001—2011 年实际
随时间变化,大致位于 40%—80% 之间。
若损益严格服从零均值正态分布,理论比率为
实际比率偏离该水平,说明尾部形状会随时间改变,并可能存在偏度、厚尾或市场状态转换。
- Monte Carlo 是利用随机数序列,近似无法解析求出的数值的方法;
- “Monte Carlo”一词在曼哈顿计划期间形成,因为这种方法与机会游戏相似;
- 基本要求是:系统能够用概率密度函数描述。
Monte Carlo 模拟可用于:
- 路径依赖产品;
- 含凸性头寸的对冲分析;
- 具有强跳跃风险的投资组合,例如保险业风险;
- 信用敞口;
- VaR。
流程如下:
从多个来源收集市场数据;
计算市场百分比变化;
进行图形和异常值检验;
构造市场协方差矩阵
;通过 Box–Muller 等方法,把均匀随机变量转换为正态随机变量;
对协方差矩阵作特征系统分解;
生成具有目标协方差结构的相关随机冲击;
使用冲击对组合重新定价;
计算损益;
排序损益并提取次序统计量,得到 VaR。
生成均匀随机数;
转换为正态随机数;
构造协方差矩阵;
分解协方差矩阵;
创建相关随机冲击变量;
使用冲击重新定价;
估计 VaR。
随机数可分为三类。
真随机数
- 不能只靠确定性计算机算法产生;
- 需要外部物理来源,例如放射性衰变。
准随机数
- 实现较困难;
- 目标不是模拟独立随机,而是在取值空间中获得更均匀的覆盖;
- 常用于降低数值积分误差。
伪随机数
- 由计算机确定性算法生成;
- 在统计上看起来近似独立且均匀;
- 是实际模拟中的主流方法;
- 有许多可选算法,讲义推荐参考 Knuth。
需要把
转换为
一种方法是逆累积分布函数:
其中
也可以使用 Box–Muller 变换。若
是相互独立的标准正态随机变量。
购买还是自行构建
需要评估:
- 风险因子覆盖范围;
- 缺失数据假设;
- 历史观测的加权方法。
差分间隔
- 日、周或月变化;
- 能否在期限之间可靠缩放。
协方差矩阵分解的目标是找到一个“平方根”矩阵
若
满足
矩阵分解通常是 Monte Carlo 模拟中计算上最复杂的环节之一。
Cholesky 分解
- 计算较简单;
- 被多种软件包采用;
- 要求矩阵正定;
- 构造下三角矩阵
,使
特征值—特征向量分解
- 计算更复杂;
- 在处理近奇异矩阵时可能更灵活;
- 构造特征向量矩阵
和对角特征值矩阵 ,使
相应平方根可取
若
于是
因为
原讲义把随机向量写成行向量,公式为
;这里改用更常见的列向量约定,二者等价。
分解和相关随机数生成过程容易出现细小错误。检查方法包括:
- 从大量模拟冲击重新估计协方差矩阵,与目标矩阵比较;
- 用
检验或卡方检验检查方差; - 用正态近似检验相关系数;
- 使用 Box 的
检验比较协方差矩阵。
讲义列出的示意关系包括
以及样本相关系数近似分布:
实际应用中常对 Fisher
- 数值精度;
- 负特征值;
- 计算时间;
- 数据存储;
- 是否保留完整、可复核的错误审计轨迹。
理论协方差矩阵应半正定。出现明显负特征值通常意味着估计误差、缺失数据处理不一致或数值舍入问题。
- 常假设多元正态分布;
- 可能忽略序列相关;
- 可能忽略偏度;
- 可能忽略峰度和厚尾;
- 模拟均值回归需要额外调整;
- 模拟跳跃扩散也需要额外模型。
两种基本方法:
精确重新定价
- 更准确;
- 计算负担大。
参数表示
- 可以很准确;
- 交叉偏导项及高阶非线性会引入误差。
多风险因子的二阶近似可写为
其中
重新定价后:
- 计算每个模拟情景的损益;
- 对所有损益排序;
- 选取相应尾部的第
个结果得到 VaR; - 若要得到子投资组合 VaR,需要按业务层级对损益进行分组和排序。
若损失按从大到小排序,取第
什么是回测?
回测比较:
- 时刻
计算的 VaR; - 时刻
实现的损益。
如果实际损失超过前一日 VaR,就出现一次 VaR 超越或例外。
为什么进行回测?
监管或内部政策要求;
对模型计算进行现实检验;
帮助发现数据和程序错误;
识别投资组合风险特征的变化。
回测可以下钻至交易台层级;
必须记录并解释异常超越;
某些情况下需要汇总到更高业务层级;
汇总可能掩盖单个交易台的损失尖峰;
头寸被拆分到多个账簿时,归属和汇总会变得困难。
粒度太细会导致观测噪声和样本不足,粒度太粗则会因分散化掩盖局部模型失效。
- 拆分账簿;
- 使用前台还是后台损益;
- 损益确认的时间;
- 组织架构调整;
- 数据维护;
- 数据与模型更新频率;
- 是否也记录向上的正收益跳跃。
回测通常最关注损失超越,但正向极端变动也能揭示模型低估尾部波动。
原图以百万美元为单位叠加:
- 蓝色柱线:每日收入或损益;
- 红线:99% VaR;
- 绿线:95% VaR。
大多数日损益位于 VaR 阈值以内,但存在少数明显的负向尖峰穿越 95% 或 99% VaR。99% VaR 的绝对值通常大于 95% VaR,因此红色阈值位于绿色阈值下方。
第二张回测图的后半段出现:
- 一个极大的负损益尖峰;
- 多个连续的大幅负损益;
- 损益波动显著上升;
- VaR 阈值虽有所调整,但对状态突变存在滞后。
这种图形提示模型或历史窗口没有及时捕捉新的高波动市场状态。
图中多条风险界线围绕中心损益序列展开,红色限制线保持为较低的水平常数。前半段带宽较宽,随后突然收窄。
该例说明:若模型输入、头寸范围或波动率制度发生结构性变化,风险带可能产生不连续跳变;应核对是否由真实风险下降、数据截断或模型变更造成。
图中风险带分阶段改变,损益序列出现一个显著的负向尖峰并穿越红色阈值。红色阈值也在多个时点阶梯式调整。
需要调查:
- 超越是否由真实市场事件驱动;
- VaR 是否因更新滞后而低估风险;
- 阈值跳变是否来自模型或限额调整。
图中损益序列含大量尖峰,而上下风险界线随时间缓慢变化。多个尖峰接近或穿越界线。
这代表损益可能具有厚尾或跳跃特征,平滑的波动率模型难以及时覆盖离散冲击。
序列前半段几乎为零,随后在某一时点突然出现高波动数据,并形成上下分离的风险带。
这种模式通常提示:
- 新业务或新产品开始计入;
- 数据历史不足;
- 头寸或系统口径发生变化。
不能把前期大量零值简单视作正常历史,否则会严重低估新头寸风险。
图中损益和风险界线总体稳定,仅有少数短暂尖峰;红色阈值在中途发生一次阶梯式变化。
该图适合检查阈值调整是否与风险水平变化同步,以及个别尖峰是否需要记录为模型超越。
后半段上下风险界线明显分离,损益噪声也增强;红色阈值在结构变化附近向下调整。
这种组合表明模型已经部分响应风险上升,但应继续检查:
- 新阈值是否足以覆盖实际尾部;
- 风险制度变化是否持久;
- 调整前后的回测结果能否直接比较。
上图展示一项资产支持证券(ABS)利差或相关风险因子的历史水平:
- 2004—2007 年大部分时间接近低位;
- 2007 年后快速上升;
- 2008 年前后多次冲高至约 4 的区域。
下图展示相应日变化:
- 早期波动很小;
- 2007 年后振幅突然扩大,出现约
至 的极端变化; - 图中同时标示生产历史、测试历史、新旧统计阈值及 95% 界线。
该数据明确体现结构突变和异方差:用危机前历史校准的 VaR 无法代表危机期风险。
本页再次用百万美元为单位比较收入、99% VaR 与 95% VaR。图形与第 104 页的展示结构相同,用于把清洗或调整后的数据结果与先前回测比较。
重点是核对:
- 超越数量是否下降;
- VaR 曲线是否更及时地跟随波动;
- 数据处理是否只是隐藏了异常,而非真正改善模型。
本页再次展示高波动时期的回测结果,结构与第 105 页相同。多个大额负损益及极端尖峰说明,仅靠常态 VaR 不能覆盖危机损失,必须结合:
- 压力测试;
- 历史极端情景;
- 前瞻性临时情景;
- 模型超越调查。