对尾部而非中间建模
最小二乘建模的是平均值,而风险藏在尾部:一只股票最糟糕的日子,可能对一个几乎不影响其平均日表现的变量有反应。分位数回归直接拟合响应变量的选定分位数 τ,例如构成在险价值限额基础的 5% 分位数。它通过对残差 u=y−q 最小化检验(弹球)损失 ρτ(u)=u(τ−1[u<0]) 来实现。正残差按 τ 加权,负残差按 1−τ 加权,所以 τ=0.9 时,猜得太低的代价是猜得太高的九倍,把估计推向第 90 百分位。τ=0.5 时损失是绝对误差的一半,最小化者是中位数。在 statsmodels 中写 smf.quantreg('y ~ vol', data).fit(q=0.05)。
ρτ(u)=u(τ−1[u<0]),β^τ=argβmini∑ρτ(yi−xi⊤β),Qτ(y∣x)=x⊤βτ(1) 手算损失与在险价值直线取
y=1,2,3,10,20。中位数
3 的绝对损失为
2+1+0+7+17=27,均值
7.2 的为
31.2。取
τ=0.9,猜测
q=10 时残差为
−9,−8,−7,0,10,损失为
0.1(9+8+7)+0.9⋅10=11.4,而猜测
q=20 只需
0.1(19+18+17+10)=6.4,因为五个点中有四个低于它,这正是 90% 分位数应有的样子。再看真实数据:SPY 次日收益(百分数)对过去 20 天波动率(也是百分数)的回归,共
5,384 天。最小二乘几乎没有发现效应,斜率为
0.011。分位数回归在
τ=0.05 处斜率为
−1.50(标准误
0.05),在
τ=0.95 处为
+1.37,中位数处为
0.03。波动率为
1% 时拟合分位数为
−1.77%、
0.07%、
1.64%,为
2% 时为
−3.27%、
0.10%、
3.01%:区间宽度
6.28 个点。尾部随波动率张开,中间几乎不动。作为在险价值限额,拟合的
τ=0.05 直线总体上在
5.0% 的日子被突破,在波动率超过
2% 的
263 天里为
7.2%;而常数正态限额
−1.92% 在这些天被突破
22.4%,在波动率低于
0.8% 的
2,600 个平静日里只有
1.3%。
有两点需要小心。分别拟合的分位数线可能交叉,使 5% 线在 x 的极端处高于 50% 线,细心的分析者会检查这一点。分位数回归的标准误来自自助法或渐近理论,存在与前面相同的自相关问题,所以短样本中的尾部估计噪声很大。
- 选你关心的分位数:下行风险用 5%,典型情形用 50%,上行用 95%。
- 按状态检查覆盖率:总体正确的限额,可能在每个平静期和每个动荡期都是错的。
实验:评分内容
- 绝对损失15 分
- 弹球损失15 分
- 预测的 5% 分位数15 分
- 区间宽度10 分
- 预期突破次数15 分
- 为什么常数限额会失败10 分
- 平均值掩盖了尾部20 分