# 风险度量模型研究与评估

## 🎯 研究目标

评估各类风险度量模型在A股市场的适用性，选择适合的模型组合。

---

## 1. 传统风险度量模型

### 1.1 VaR（风险价值）

**定义**：在一定置信水平下，未来一定时间内预期最大损失。

**计算方法**：
| 方法 | 说明 | A股适用性 |
|------|------|-----------|
| **历史模拟法** | 用历史收益率分位数计算 | ✅ 推荐，不需要分布假设，适应尾部风险 |
| **参数法（方差-协方差）** | 假设正态分布计算 | ❌ 不推荐，A股尾部风险比正态分布大 |
| **蒙特卡洛模拟** | 随机模拟生成收益率 | ⚠️ 计算量大，适合机构，不适合个人量化 |

**优缺点**：
- ✅ 优点：简单直观，监管认可，容易理解
- ❌ 缺点：不考虑尾部风险，VaR不满足次可加性

**A股应用建议**：
- 使用历史模拟法计算VaR
- 置信水平95%或99%
- 时间窗口1年（252个交易日）

### 1.2 CVaR/ES（条件风险价值/期望短缺）

**定义**：损失超过VaR时的期望损失。

**优势**：
- ✅ 考虑了尾部风险
- ✅ 满足次可加性，理论性质更好
- ✅ 更保守，适合风控

**计算**：历史模拟法很容易扩展到CVaR

**A股应用建议**：
- VaR作为预警，CVaR作为实际风险控制
- 比VaR更保守，适合风控

### 1.3 最大回撤

**定义**：从最高点到最低点的最大跌幅。

**特点**：
- ✅ 交易者非常直观，容易理解
- ✅ 直接关系到账户存活率
- ✅ 非常适合策略风控

**分类**：
- **历史最大回撤**：整个回测过程最大回撤
- **当前回撤**：从历史最高点到当前的回撤
- **当日回撤**：当日相对于开盘的回撤

**A股应用建议**：
- ✅ 强烈推荐作为核心风控指标
- ✅ 必须设置最大回撤止损，触及强制清仓
- ✅ 实时监控当前回撤

### 1.4 波动率

**常见度量**：
- **历史波动率**：过去N天收益率标准差
- **GARCH波动率**：预测未来波动率，适应波动率聚类
- **已实现波动率**：日内高频数据计算

**A股应用建议**：
- ✅ 历史波动率足够日常使用
- ✅ GARCH适合预测，牛熊转换时更准确
- ✅ 波动率作为动态调整仓位依据，高波动降低仓位

---

## 2. 现代风险度量模型

### 2.1 风险贡献度

**定义**：每个资产对组合整体风险的贡献。

**公式**：RC_i = w_i * ∂(σ_p)/∂w_i

**应用**：
- 调整持仓让风险贡献更均匀
- 避免个别资产主导组合风险
- 适合多资产组合

**A股适用性**：✅ 推荐用于多策略组合

### 2.2 风险预算

**思想**：预先给每个资产分配风险预算，然后优化权重。

**优点**：
- ✅ 主动控制风险贡献
- ✅ 风险平价是风险预算的特例
- ✅ 比等权重更稳定

**A股适用性**：✅ 推荐用于多股票组合

### 2.3 下行风险度量

**指标**：
- 下半偏差（downside deviation）：只计算下跌波动率
- 亏损频率：统计亏损频率
- 平均亏损：亏损发生时平均亏损幅度

**优势**：
- ✅ 只关心下跌，不惩罚上涨波动
- ✅ 更符合投资者实际感受

**A股适用性**：✅ 推荐，比标准差更合理

### 2.4 基于贝塔的风险度量

**定义**：β = Cov(Ri, Rm)/Var(Rm)，衡量系统性风险。

**应用**：
- 计算组合系统性风险
- 风格风险分析
- 调整仓位降低系统性风险

**A股适用性**：⚠️ 可以用，但不是核心，因为A股系统性风险占比高

---

## 3. 动态风险度量

### 3.1 时变波动率模型

**GARCH家族**：
- GARCH(1,1) 足够用
- 捕捉波动率聚类（高波动之后更高波动）
- A股波动率聚类明显，适合GARCH

**EGARCH**：允许杠杆效应（下跌波动更大），A股更明显

**实现难度**：低，python arch包直接可用

**A股应用建议**：✅ 推荐用于动态风控

### 3.2 风险状态识别

**方法**：
- 波动率分位数分组：低/中/高波动状态
- 马尔可夫链识别：切换不同波动率状态
- 机器学习分类：识别市场风险状态

**应用**：根据不同风险状态调整仓位和风控参数

**A股适用性**：✅ 推荐，A股牛熊波动率差异大

### 3.3 风险预警指标

**核心预警指标**：
| 指标 | 预警逻辑 |
|------|---------|
| VIX指数 | 整体市场恐慌程度 |
| 涨跌停家数比 | 上涨停多还是跌停多 |
| 下跌家数比例 | 整体市场涨跌分布 |
| 平均跌幅 | 下跌股票平均跌幅 |

**应用**：多个指标综合判断市场整体风险水平

---

## 4. 模型比较与选择

### 4.1 模型比较表

| 模型 | 理论复杂度 | 实现难度 | A股适用性 | 推荐度 |
|------|------------|----------|-----------|--------|
| VaR（历史模拟） | 低 | 低 | ✅ 好 | ⭐⭐⭐⭐ |
| CVaR/ES | 低 | 低 | ✅ 好 | ⭐⭐⭐⭐⭐ |
| 最大回撤 | 极低 | 极低 | ✅ 很好 | ⭐⭐⭐⭐⭐ |
| 波动率 | 低 | 低 | ✅ 好 | ⭐⭐⭐⭐ |
| GARCH动态波动率 | 中 | 中 | ✅ 好 | ⭐⭐⭐⭐ |
| 风险贡献/风险预算 | 中 | 中 | ✅ 好 | ⭐⭐⭐⭐ |
| 下行偏差 | 低 | 低 | ✅ 好 | ⭐⭐⭐⭐ |
| 贝塔 | 低 | 低 | ⚠️ 一般 | ⭐⭐⭐ |

### 4.2 推荐模型组合

**核心推荐组合**：

```
[最大回撤监控] 
  + [CVaR风险度量] 
  + [动态GARCH波动率] 
  + [风险预算配置]
```

**各模块作用**：
1. **最大回撤**：账户层面终极风控，触及强制止损
2. **CVaR**：组合层面风险度量，比VaR更保守
3. **GARCH波动率**：动态调整整体仓位，高波动降低仓位
4. **风险预算**：配置层面控制各股票风险贡献

**简化版（个人量化）**：

```
[最大回撤监控] 
  + [VaR预警] 
  + [历史波动率] 
  + [单票/集中度仓位限制]
```

足够个人量化使用，实现简单效果好

---

## 5. 模型参数建议

### 5.1 窗口大小

| 指标 | 推荐窗口 | 说明 |
|------|---------|------|
| VaR/CVaR | 252交易日（1年） | 足够覆盖一个完整年度周期 |
| 波动率 | 20-60交易日 | 短窗口反应快，长窗口稳定 |
| GARCH | 用全部历史估计 | GARCH参数不需要频繁重估计 |

### 5.2 置信水平

| 置信水平 | 含义 | 推荐 |
|---------|------|------|
| 95% | 95%概率损失不超过VaR | ✅ 推荐 |
| 99% | 99%概率损失不超过VaR | 更保守，可以作为第二级预警 |

### 5.3 阈值建议

| 指标 | 警告阈值 | 临界阈值 |
|------|----------|----------|
| 单日回撤 | 3% | 5% |
| 累计回撤 | 8% | 12% |
| 最大回撤 | - | 15%（保守）/ 25%（进取） |
| 单票仓位 | 25% | 40% |
| VaR(95%)单日 | 2% | 3% |
| 波动率（年化） | 25% | 40% |

---

## 6. 模型实现建议

### 6.1 计算流程

```python
# 1. 获取历史收益率
returns = calculate_returns(prices)

# 2. 计算风险指标
var_95 = calculate_var_historical(returns, 0.95)
cvar_95 = calculate_cvar_historical(returns, 0.95)
volatility = calculate_rolling_volatility(returns, 20)
max_drawdown = calculate_current_max_drawdown(net_values)

# 3. 和阈值比较
check_thresholds(var_95, volatility, max_drawdown)

# 4. 触发预警
if any_threshold_triggered():
    generate_alert()
    trigger_emergency_action()
```

### 6.2 实时计算复杂度

- 单次计算：O(N) N是历史长度
- 对于N=252，非常快，27万次/秒（我们原型测试）
- 完全满足实时要求，即使全市场监控

---

## 7. 结论与建议

### 最终结论

1. **A股适合使用**：最大回撤 + CVaR + 动态波动率 + 风险预算组合
2. **个人量化简化版**：最大回撤 + VaR + 波动率 + 仓位限制足够用
3. **不要过度复杂**：简单模型稳定可靠，容易维护
4. **动态调整比静态模型好**：A股波动率变化大，必须动态调整

### 下一步实现

1. 实现基础风险计算模块
2. 回测不同参数在A股的表现
3. 比较不同模型风控效果
4. 选择最优参数

---

**本章完** ⚔️
