3. 波动率调整的必要性论证
在上一节中,我们得到了各行业的原始强度得分。如果直接按这个得分排序,会得到一个看似客观、实则暗藏偏误的榜单。问题出在强度得分的计算方式上:它通常由区间累计涨跌幅或平均动量归一化而来,而这类指标对路径波动高度敏感。一个行业如果在统计窗口内反复大幅震荡,即使最终涨幅与低波动行业相同,其强度得分也往往被放大。因此,在排名之前引入波动率调整,不是锦上添花的修饰,而是修正度量偏误的必要步骤。
一、偏误从哪里来:波动率对强度得分的放大机制
先明确本节采用的参照约定:强度得分越高表示行业相对强势越大;波动率用统计窗口内日收益率的标准差衡量,年化后以百分比表示。在这个约定下,高波动行业会通过三条路径系统性地扭曲排名。
第一条是极值路径放大。强度指标若基于区间收益,则收益的分布宽度随波动率上升而扩大。高波动行业的区间收益更容易落在分布的尾部,无论正负。当它恰好落在正尾时,得分被显著抬高;落在负尾时则被显著压低。低波动行业的得分则更集中于中位附近。结果是排名的离散度被波动率人为拉开。
第二条是样本窗口敏感性。高波动行业的强度得分对起止时点极为敏感。窗口起点若恰好落在一根大阳线之前,累计收益会被整体抬升;落在大阴线之前则相反。低波动行业没有这个问题。这意味着高波动行业的排名在很大程度上由窗口切分决定,而非由持续性的相对强势决定。
第三条是均值回归的干扰。高波动往往伴随更快的均值回归。一个行业在短期内因事件冲击暴涨,强度得分冲上榜首,但随后回吐,排名迅速滑落。这种“虚高—回落”的循环会让排名失去稳定性,无法作为中期配置依据。
二、用一组示例数据看清虚高与虚低
下面用一组明确标注为教学假设的数据来说明。假设统计窗口为 60 个交易日,四个行业在同一窗口内的累计收益与年化波动率如下(数据为示例构造,非实测):
| 行业 | 窗口累计收益 | 年化波动率 | 原始强度得分 | 原始排名 |
|---|---|---|---|---|
| 行业A(高波动成长) | +18% | 42% | 86 | 1 |
| 行业B(中波动制造) | +12% | 24% | 72 | 2 |
| 行业C(低波动公用) | +9% | 13% | 64 | 3 |
| 行业D(高波动周期) | +4% | 38% | 58 | 4 |
原始榜单把行业A排在第一。但行业A的 18% 收益是在 42% 的年化波动下取得的,单位风险承担的收益并不突出;行业C仅用 13% 的波动就拿到 9% 的收益,风险调整后的效率反而更高。行业D则是虚低的典型:4% 的收益被 38% 的波动放大成 58 分,看起来接近中位,实际上它的收益几乎被波动吞没,真实强度可能更弱。
若采用最简单的调整方式,即调整得分 = 原始得分 ÷ 年化波动率 × 20(20 为尺度常数,仅用于把数值拉回可读区间),可得:行业A为 86÷42×20≈41.0,行业B为 72÷24×20=60.0,行业C为 64÷13×20≈98.5,行业D为 58÷38×20≈30.5。调整后排名变为 C > B > A > D。行业A从第一跌至第三,行业C从第三升至第一,这正是波动率偏误被修正后的结果。
三、调整的逻辑框架与实现要点
从上面的例子可以提炼出调整框架的四个环节。第一,波动率与强度得分必须同窗口、同频率。若强度得分用 60 日累计收益,波动率也必须用这 60 日的日收益率计算,否则分子分母口径不一致,调整反而引入新偏误。第二,尺度因子的选择要稳健。直接用标准差会被单日极端行情拉高,可改用中位数绝对偏差(MAD)或截尾标准差,降低个别异常日对排名的影响。第三,调整后要做名次变动审查。把调整前后的排名并列,重点看名次变动超过三位的行业,逐一确认变动是由波动率差异解释的,而非数据错误。第四,保留原始得分作为对照,调整得分用于排序,原始得分用于解释“这个行业为什么强”,两者不可互相替代。
还有一个容易被忽略的细节:波动率本身具有时变性。同一行业在事件窗口前后的波动率可能相差一倍以上。因此调整时应固定一个观察时点,用该时点之前的数据计算波动率,避免使用未来信息。若要做滚动排名,则每个调仓日重新计算波动率,而不是沿用上一期的值。
综上,波动率调整的本质是把“收益的绝对幅度”换算为“单位风险承担的相对强度”,使排名反映持续的相对强势而非一次性的路径冲击。它修正的是度量口径,而不是对高波动行业的价值判断——高波动行业依然可能很强,只是它需要更强的收益来证明自己。