Skip to content

4.4 回归分析

回归分析研究变量之间的线性依赖关系,是量化金融中建模资产收益率与风险因子关系的核心工具。最基础的是普通最小二乘法(OLS)


一、简单线性回归模型

1.1 模型定义

yi=α+βxi+εi,εiN(0,σ2) y_i = \alpha + \beta x_i + \varepsilon_i, \quad \varepsilon_i \sim N(0, \sigma^2)

  • yiy_i:因变量(被解释变量)
  • xix_i:自变量(解释变量)
  • α\alpha:截距项
  • β\beta:斜率系数
  • εi\varepsilon_i:随机误差项

1.2 OLS 估计

最小化残差平方和:

minα,βi=1n(yiαβxi)2 \min_{\alpha,\beta} \sum_{i=1}^n (y_i - \alpha - \beta x_i)^2

解为:

β^=i=1n(xixˉ)(yiyˉ)i=1n(xixˉ)2=SxySxx \hat{\beta} = \frac{\sum_{i=1}^n (x_i - \bar{x})(y_i - \bar{y})}{\sum_{i=1}^n (x_i - \bar{x})^2} = \frac{S_{xy}}{S_{xx}}

α^=yˉβ^xˉ \hat{\alpha} = \bar{y} - \hat{\beta}\bar{x}


二、手算示例:CAPM Beta 估计

CAPM 模型:RiRf=α+β(RmRf)+εR_i - R_f = \alpha + \beta (R_m - R_f) + \varepsilon

用 5 个月数据手动计算某股票的 β\betaα\alpha。数据为超额收益率(%):

月份股票超额收益 yiy_i市场超额收益 xix_i
12.51.8
2-1.0-0.5
33.02.0
40.51.0
51.00.7

2.1 计算必要统计量

iixix_iyiy_ixixˉx_i - \bar{x}yiyˉy_i - \bar{y}(xixˉ)(yiyˉ)(x_i-\bar{x})(y_i-\bar{y})(xixˉ)2(x_i-\bar{x})^2(y^i)(\hat{y}_i)ε^i\hat{\varepsilon}_i
11.82.50.81.51.200.642.4020.098
2-0.5-1.0-1.5-2.03.002.25-0.864-0.136
32.03.01.02.02.001.002.6730.327
41.00.50.0-0.50.000.001.313-0.813
50.71.0-0.30.00.000.090.9070.093

xˉ=(1.80.5+2.0+1.0+0.7)/5=5.0/5=1.0\bar{x} = (1.8 - 0.5 + 2.0 + 1.0 + 0.7)/5 = 5.0/5 = 1.0

yˉ=(2.51.0+3.0+0.5+1.0)/5=6.0/5=1.2\bar{y} = (2.5 - 1.0 + 3.0 + 0.5 + 1.0)/5 = 6.0/5 = 1.2

2.2 计算斜率 β^\hat{\beta}

Sxy=1.20+3.00+2.00+0.00+0.00=6.20 S_{xy} = 1.20 + 3.00 + 2.00 + 0.00 + 0.00 = 6.20

Sxx=0.64+2.25+1.00+0.00+0.09=3.98 S_{xx} = 0.64 + 2.25 + 1.00 + 0.00 + 0.09 = 3.98

β^=6.203.98=1.5578 \hat{\beta} = \frac{6.20}{3.98} = 1.5578

解读:该股票的 β1.56\beta \approx 1.56,意味着市场涨跌 1%,股票预期涨跌 1.56%。属于高波动/高 beta 股票。

2.3 计算截距 α^\hat{\alpha}

α^=1.21.5578×1.0=0.3578 \hat{\alpha} = 1.2 - 1.5578 \times 1.0 = -0.3578

解读α0.36%\alpha \approx -0.36\%,表明该股票在控制了市场风险后,月均超额收益为负。

2.4 计算拟合值 y^\hat{y} 与残差

y^i=α^+β^xi=0.3578+1.5578xi \hat{y}_i = \hat{\alpha} + \hat{\beta}x_i = -0.3578 + 1.5578 x_i

y^i\hat{y}_iε^i=yiy^i\hat{\varepsilon}_i = y_i - \hat{y}_i 已在上表计算。

2.5 计算 R2R^2

SST=(yiyˉ)2=(1.5)2+(2.0)2+(2.0)2+(0.5)2+(0)2 SST = \sum (y_i - \bar{y})^2 = (1.5)^2 + (-2.0)^2 + (2.0)^2 + (-0.5)^2 + (0)^2

SST=2.25+4.00+4.00+0.25+0=10.50 SST = 2.25 + 4.00 + 4.00 + 0.25 + 0 = 10.50

SSE=ε^i2=0.0982+(0.136)2+0.3272+(0.813)2+0.0932 SSE = \sum \hat{\varepsilon}_i^2 = 0.098^2 + (-0.136)^2 + 0.327^2 + (-0.813)^2 + 0.093^2

SSE=0.0096+0.0185+0.1069+0.6610+0.0086=0.8046 SSE = 0.0096 + 0.0185 + 0.1069 + 0.6610 + 0.0086 = 0.8046

SSR=SSTSSE=10.500.8046=9.6954 SSR = SST - SSE = 10.50 - 0.8046 = 9.6954

R2=SSRSST=9.695410.50=0.9234 R^2 = \frac{SSR}{SST} = \frac{9.6954}{10.50} = 0.9234

解读R2=92.34%R^2 = 92.34\%,市场超额收益解释了该股票超额收益变动的 92.34%。


三、回归系数的 t 检验

3.1 系数标准误

σ^2=SSEn2=0.80463=0.2682 \hat{\sigma}^2 = \frac{SSE}{n-2} = \frac{0.8046}{3} = 0.2682

SE(β^)=σ^2Sxx=0.26823.98=0.2595 SE(\hat{\beta}) = \sqrt{\frac{\hat{\sigma}^2}{S_{xx}}} = \sqrt{\frac{0.2682}{3.98}} = 0.2595

SE(α^)=σ^1n+xˉ2Sxx=0.2682×15+1.023.98=0.5179×0.6627=0.3432 SE(\hat{\alpha}) = \hat{\sigma}\sqrt{\frac{1}{n} + \frac{\bar{x}^2}{S_{xx}}} = \sqrt{0.2682} \times \sqrt{\frac{1}{5} + \frac{1.0^2}{3.98}} = 0.5179 \times 0.6627 = 0.3432

3.2 t 检验

检验 H0:β=0H_0: \beta = 0(股票与市场无线性关系):

tβ=β^SE(β^)=1.55780.2595=6.003 t_\beta = \frac{\hat{\beta}}{SE(\hat{\beta})} = \frac{1.5578}{0.2595} = 6.003

t0.025(3)=3.182t_{0.025}(3) = 3.182(双侧,α=0.05\alpha=0.05

tβ=6.003>3.182|t_\beta| = 6.003 > 3.182,拒绝 H0H_0β\beta 显著非零。

检验 H0:α=0H_0: \alpha = 0(无超额收益):

tα=α^SE(α^)=0.35780.3432=1.043 t_\alpha = \frac{\hat{\alpha}}{SE(\hat{\alpha})} = \frac{-0.3578}{0.3432} = -1.043

tα=1.043<3.182|t_\alpha| = 1.043 < 3.182,不拒绝 H0H_0α\alpha 不显著。


四、多元线性回归与多重共线性

4.1 多元线性回归

y=β0+β1x1+β2x2++βpxp+ε y = \beta_0 + \beta_1 x_1 + \beta_2 x_2 + \cdots + \beta_p x_p + \varepsilon

矩阵形式:β^=(XTX)1XTy\hat{\boldsymbol{\beta}} = (X^T X)^{-1} X^T \boldsymbol{y}

4.2 多重共线性

当自变量之间存在高度相关性时,OLS 估计的方差变大,系数不稳定。

检测方法:VIF(方差膨胀因子)

VIFj=11Rj2 VIF_j = \frac{1}{1 - R_j^2}

其中 Rj2R_j^2 是第 jj 个自变量对其他自变量做回归的 R2R^2VIF>5VIF > 5VIF>10VIF > 10 表示存在严重共线性。

处理方案

  • 删除高度相关的变量
  • 使用岭回归(Ridge)或 LASSO
  • 使用 PCA 降维

Quant Link:因子模型与 Alpha 生成

回归分析是量化研究的基石:

  1. CAPM 模型RiRf=α+β(RmRf)R_i - R_f = \alpha + \beta(R_m - R_f),判断组合是否有超额收益(α>0\alpha > 0
  2. Fama-French 三因子模型:增加 SMB(规模因子)和 HML(价值因子)
  3. 多因子模型:Barra 模型包含行业、风格等数十个因子
  4. Alpha 剥离:通过回归控制已知风险因子,剩余的 α\alpha 即为策略的"真本事"
  5. 因子暴露对冲:若某策略对市场因子的 β\beta 高,可通过做空指数期货对冲

实践中:

  • α\alpha 通常是策略评估的核心指标(正且显著 = 策略有价值)
  • β\beta 用于风险管理(高 β\beta = 高市场暴露)
  • Panel 回归、滚动回归等更复杂形式用于处理时间序列数据

Python 验证

python
import numpy as np
import statsmodels.api as sm

# CAPM 数据
x = np.array([1.8, -0.5, 2.0, 1.0, 0.7])
y = np.array([2.5, -1.0, 3.0, 0.5, 1.0])

# OLS 回归
X = sm.add_constant(x)  # 添加截距项
model = sm.OLS(y, X).fit()
print(model.summary())

# 验证手算
print(f"\n手算验证:")
print(f"β = {model.params[1]:.4f}")
print(f"α = {model.params[0]:.4f}")
print(f"R² = {model.rsquared:.4f}")
print(f"t(β) = {model.tvalues[1]:.4f}")
print(f"p(α) = {model.pvalues[0]:.4f}")

小结

概念公式量化含义
β^\hat{\beta}Sxy/SxxS_{xy}/S_{xx}风险暴露(因子载荷)
α^\hat{\alpha}yˉβ^xˉ\bar{y} - \hat{\beta}\bar{x}超额收益(技能 vs 运气)
R2R^2SSR/SSTSSR/SST因子的解释力
SE(β^)SE(\hat{\beta})σ^2/Sxx\sqrt{\hat{\sigma}^2/S_{xx}}因子暴露估计的精度
VIF1/(1Rj2)1/(1-R_j^2)多重共线性程度

下一步:继续学习 4.5 时间序列分析——自相关、平稳性与 AR 模型。

Built with VitePress