4. 描述性统计与可视化:均值、方差、偏度、峰度、直方图、QQ图、时间序列图
收益率序列的统计特征决定了后续建模方法的选择。无论是计算VaR、构建GARCH模型,还是进行简单的趋势判断,第一步都必须对原始序列进行全面的描述性统计与可视化探查。本章将系统讲解收益率序列的六大核心描述工具:均值、方差、偏度、峰度、直方图、QQ图与时间序列图,并阐明它们之间的逻辑关系与实战应用要点。
4.1 核心统计量:均值、方差、偏度与峰度
4.1.1 核心原理
收益率序列的四个基本统计量从不同维度刻画其分布特征:均值衡量收益率的中心位置(即平均收益水平),方差衡量收益率的离散程度(即波动风险),偏度衡量分布的非对称性,峰度衡量分布的尾部厚度。对于金融收益率序列,这四个统计量往往呈现出与正态分布显著不同的特征,这正是后续建立GARCH等模型的重要依据。
设收益率序列为 \( r_1, r_2, ..., r_n \),则各统计量的计算公式为:
均值:μ = (1/n) Σ rᵢ
方差:σ² = (1/(n-1)) Σ (rᵢ - μ)²
偏度:S = (1/n) Σ [(rᵢ - μ)/σ]³
峰度:K = (1/n) Σ [(rᵢ - μ)/σ]⁴
在金融实践中,通常使用超额峰度(K-3)来判断与正态分布的偏离程度。正态分布的峰度为3,超额峰度大于0表示尖峰厚尾,小于0表示扁平分布。
4.1.2 判断方法与操作流程
| 统计量 | 正态分布参考值 | 金融序列典型特征 | 业务含义 |
|---|---|---|---|
| 均值 μ | 任意 | 接近0但通常为正 | 长期平均收益水平 |
| 方差 σ² | 任意 | 较大且时变 | 风险度量基础 |
| 偏度 S | 0 | 负偏(左偏)常见 | 负偏意味着左尾更长,极端亏损概率大于极端盈利 |
| 超额峰度 K-3 | 0 | 显著大于0(尖峰厚尾) | 极端事件发生概率高于正态假设 |
操作流程建议:
- 计算四个统计量的点估计值;
- 使用Bootstrap或Jarque-Bera检验判断是否显著偏离正态;
- 结合样本量n,判断统计量的标准误(如偏度标准误约为√(6/n));
- 将统计量结果与后续可视化结果交叉验证。
4.2 可视化工具:直方图、QQ图与时间序列图
4.2.1 直方图:分布形态的直观呈现
直方图将收益率区间划分为若干等宽区间(bin),统计每个区间内的频数或频率。通过直方图可以直观观察分布的中心位置、离散程度、偏态方向和尾部厚度。绘制时需注意bin宽度的选择:过宽会掩盖分布细节,过窄则产生过多噪声。常用经验法则包括Sturges公式(bin数 = ⌈log₂n + 1⌉)和Freedman-Diaconis规则。
在Python中绘制直方图的典型代码:
import matplotlib.pyplot as plt
import numpy as np
# 假设 returns 为收益率序列
plt.figure(figsize=(10, 6))
plt.hist(returns, bins=50, density=True, alpha=0.7, color='steelblue', edgecolor='black')
plt.xlabel('收益率')
plt.ylabel('概率密度')
plt.title('收益率分布直方图')
plt.grid(True, alpha=0.3)
plt.show()
4.2.2 QQ图:正态性检验的黄金标准
QQ图(Quantile-Quantile Plot)将样本分位数与理论正态分布分位数进行对比。若样本近似正态分布,散点应近似落在45度参考线上。金融收益率序列的QQ图通常在两端出现明显偏离——左端向下弯曲(左尾厚)、右端向上弯曲(右尾厚),呈现典型的"S"形或倒"S"形。
QQ图的解读要点:
- 中间部分贴近直线:说明分布中心区域近似正态;
- 左端向下偏离:左尾比正态更厚,存在极端负收益;
- 右端向上偏离:右尾比正态更厚,存在极端正收益;
- 整体呈S形:分布比正态更尖峰,即峰度大于3。
4.2.3 时间序列图:动态特征的第一视角
时间序列图按时间顺序绘制收益率,用于观察波动率聚集(volatility clustering)、趋势、周期性和异常值。金融收益率序列的典型特征包括:波动率在大波动后持续较大(聚集效应)、偶尔出现极端值、均值围绕零附近波动。
绘制时间序列图时,建议叠加以下辅助元素:
- 零水平线(参考基准);
- ±2倍标准差带(识别异常波动);
- 滚动均值或滚动波动率曲线(观察时变特征)。
4.3 案例拆解:某指数日收益率序列的完整描述性分析
背景与目标:某量化研究团队获得某股票指数近5年(约1250个交易日)的日收盘价数据,需在建模前完成描述性统计与可视化分析,以判断是否适合使用GARCH(1,1)模型。
关键输入数据:
样本量:n = 1250
日收益率计算:rᵢ = ln(Pᵢ/Pᵢ₋₁)
初步统计结果:
均值 μ = 0.00032(年化约8.1%)
标准差 σ = 0.0125(年化约19.8%)
偏度 S = -0.42
超额峰度 K-3 = 4.8
分析判断过程:
- 均值检验:t统计量 = 0.00032/(0.0125/√1250) ≈ 0.905,p值约0.37,不能拒绝均值为零的原假设,说明该指数日收益率均值不显著异于零。
- 偏度与峰度:偏度-0.42(标准误0.069,|S|/SE≈6.1,显著负偏),超额峰度4.8(标准误0.138,显著尖峰),Jarque-Bera统计量远大于临界值,强烈拒绝正态性假设。
- 直方图观察:分布中心尖耸,左尾明显长于右尾,与负偏度一致。
- QQ图观察:两端散点显著偏离参考线,左端向下弯曲明显,确认厚尾特征。
- 时间序列图观察:波动率呈现明显聚集——2008年金融危机期间波动剧烈,2017年低波动期持续较长时间。
实际操作与结果:团队基于上述分析,决定采用GARCH(1,1)模型并假设残差服从偏t分布(skewed t-distribution),而非标准正态分布。模型拟合后,AIC和BIC均显著优于正态假设模型,且标准化残差的Ljung-Box检验不再显著,说明模型充分捕捉了波动率动态。
风险与代价:若忽略偏度和峰度特征而直接使用正态GARCH模型,会导致VaR估计偏低,在极端市场环境下可能造成风险低估。团队额外进行了回测验证,发现偏t分布假设下的VaR在95%和99%置信水平下均通过Kupiec检验。
复盘经验:描述性统计不是"走过场",而是建模决策的关键依据。统计量与可视化必须结合使用——统计量给出量化判断,可视化提供直观验证,两者交叉确认才能避免误判。
4.4 常见误区与总结复盘
在实际操作中,建议将上述分析流程标准化为可复用的Python或R脚本,每次获取新数据后自动生成完整的描述性统计报告,包括统计量表、直方图、QQ图和时间序列图,以便快速识别数据特征变化,为建模决策提供及时支持。