好内容值得等待,马上呈现给你~
Value at Risk (VaR)是一种广泛使用的风险度量指标,表示在给定置信水平和时间范围内,投资组合可能遭受的最大损失。
例如: "95% 1-day VaR = $1M"意味着:
原理:
步骤:
优点:
缺点:
代码示例:
import numpy as np
def historical_var(returns, confidence_level=0.95):
\"\"\"
returns: 历史收益率序列
\"\"\"
var = np.percentile(returns, (1 - confidence_level) * 100)
return -var # 返回正值表示损失
原理:
公式:
VaR = μ - z * σ
其中:
对于投资组合:
σ_portfolio = sqrt(w^T * Σ * w)
其中w是权重向量,Σ是协方差矩阵
优点:
缺点:
原理:
步骤:
优点:
缺点:
代码框架:
def monte_carlo_var(S0, mu, sigma, T, num_simulations=10000, confidence_level=0.95):
dt = 1/252 # 日频
returns = []
for _ in range(num_simulations):
# 模拟价格路径
dW = np.random.normal(0, np.sqrt(dt))
ST = S0 * np.exp((mu - 0.5*sigma**2)*T + sigma*dW)
returns.append((ST - S0) / S0)
var = np.percentile(returns, (1 - confidence_level) * 100)
return -var * S0 # 返回美元损失
| 方法 | 计算速度 | 灵活性 | 适用场景 | 尾部风险捕捉 |
|---|---|---|---|---|
| Historical Simulation | 中 | 低 | 线性投资组合 | 好 |
| Variance-Covariance | 快 | 低 | 简单投资组合 | 差 |
| Monte Carlo | 慢 | 高 | 复杂衍生品 | 取决于模型 |
选择方法的因素:
业界实践: