1. VaR 基础概念

1.1 VaR 的定义

风险价值(Value at Risk,VaR)是指在正常的市场条件下,在给定的置信水平和持有期内,投资组合可能遭受的最大预期损失。VaR 用一个数字概括了市场风险,回答了“最坏情况下会亏多少”的问题。

VaR 的数学定义:
P(Loss > VaR) = 1 − α
其中 α 为置信水平(如 95% 或 99%),Loss 为持有期内的损失金额。

VaR 的三个核心要素:

  • 置信水平(α):衡量结果的可靠程度,通常取 95%、99% 或 99.9%
  • 持有期(Δt):风险暴露的时间窗口,常见为 1 天、10 天或 1 个月
  • 损失金额(VaR 值):在给定置信水平下的最大预期损失
VaR 概念示意图:损失分布与 VaR 阈值 VaR 阈值 尾部损失(1−α) 正常收益区间(α) 均值(期望收益) VaR 表示在 α 置信水平下,持有期内损失不会超过该阈值;尾部面积对应极端损失概率

1.2 置信水平与持有期

置信水平和持有期是 VaR 的两个核心参数,直接影响 VaR 数值的大小和风险管理策略。

参数 典型取值 对 VaR 的影响 适用场景
置信水平 95%、99%、99.9% 置信水平越高,VaR 值越大(尾部更极端) 监管资本(99%)、内部风控(95%)
持有期 1 天、10 天、1 个月 持有期越长,VaR 值通常越大(时间平方根缩放) 交易台(1 天)、投资组合(10 天)
实务提示:巴塞尔协议 III 要求市场风险资本计算采用 99% 置信水平、10 天持有期的 VaR。实际应用中,1 天 VaR 常通过 √10 缩放得到 10 天 VaR,但该做法假设收益独立同分布,在极端市场下可能低估风险。

1.3 VaR 的金融含义

VaR 在金融风险管理中具有多重含义,是风险度量、资本配置和绩效评估的基础工具。

  • 风险度量工具:用一个数字量化整个投资组合的市场风险,便于横向比较不同资产或策略的风险水平
  • 资本充足性:金融机构根据 VaR 计算经济资本和监管资本,确保在极端损失下仍有偿付能力
  • 风险限额设定:交易员和投资经理的 VaR 限额直接约束其风险敞口,防止过度投机
  • 绩效评估调整:RAROC(风险调整资本回报率)等指标使用 VaR 作为分母,衡量单位风险产生的收益
VaR 在金融风险管理中的应用架构 VaR 风险度量 风险度量与报告 统一量化市场风险 资本配置 经济资本与监管资本 风险限额管理 交易员 VaR 限额 绩效评估 RAROC 风险调整收益

1.4 VaR 的局限性

VaR 虽然应用广泛,但存在若干重要局限性,风险管理从业者必须充分认识。

局限性 具体表现 潜在后果
不满足次可加性 组合 VaR 可能大于各资产 VaR 之和,违背分散化原理 鼓励过度集中,低估分散化收益
尾部风险不足 VaR 只给出阈值,不告知超过阈值后的损失大小 忽略极端尾部事件(如 2008 年金融危机)
模型依赖性强 不同计算方法(参数法、历史模拟、蒙特卡洛)结果差异大 模型选择偏差导致风险误判
静态假设 假设持有期内组合不变,忽略动态调整 高估或低估实际风险暴露
正态分布假设 参数法假设收益服从正态分布,但金融数据常呈厚尾 低估极端损失概率
重要警示:VaR 不是最大可能损失,也不是最坏情况下的损失。在 99% 置信水平下,仍有 1% 的可能性损失超过 VaR 值,且超过多少 VaR 无法告知。建议结合 CVaR(条件风险价值) 或 压力测试 补充尾部风险分析。

1.5 VaR 计算方法概览

三种主流 VaR 计算方法各有优劣,选择时需权衡精度、效率和假设条件。

方法 核心原理 优点 缺点
参数法(方差-协方差法) 假设收益服从正态分布,利用均值、方差和协方差矩阵计算 计算速度快,适合大规模组合 正态假设不成立时误差大
历史模拟法 直接使用历史收益数据的分位数作为 VaR 无分布假设,保留厚尾特征 依赖历史数据长度,无法预测新风险
蒙特卡洛模拟法 随机生成大量价格路径,模拟组合损益分布 灵活处理非线性、复杂衍生品 计算量大,模型风险高
代码示例:参数法 VaR 计算(Python)
import numpy as np

def parametric_var(returns, confidence_level=0.95, holding_period=1):
    """
    参数法 VaR 计算
    returns: 日收益率序列
    confidence_level: 置信水平(默认 95%)
    holding_period: 持有期(默认 1 天)
    """
    mu = np.mean(returns)
    sigma = np.std(returns, ddof=1)
    z_score = np.percentile(np.random.standard_normal(100000), 
                            (1 - confidence_level) * 100)
    var = -(mu * holding_period + z_score * sigma * np.sqrt(holding_period))
    return var

# 示例使用
daily_returns = np.random.normal(0.001, 0.02, 1000)
var_95_1d = parametric_var(daily_returns, 0.95, 1)
print(f"95% 置信水平 1 天 VaR: {var_95_1d:.4f}")

VaR 作为风险管理的起点工具,为后续的组合 VaR 归因分析和人群切片复盘奠定了量化基础。理解其定义、参数含义和局限性,是正确使用 VaR 进行风险决策的前提。