第三章:低波动策略的构建

股票池构建、因子打分与排序、权重分配与组合构建——这三个步骤,说白了就是低波动策略的骨架。我见过不少新手一上来就调参数、跑回测,结果策略逻辑都没理顺。嗯,今天咱们就把这块地基打扎实。

3.1 股票池构建:先筛出能玩的票

股票池不是越大越好。你想想看,全市场几千只股票,里面掺杂着ST、次新股、流动性极差的仙股,这些票的低波动特征往往是假的。我个人习惯,第一步先做硬性过滤。

核心过滤条件(我常用的三板斧):

  • 流动性过滤:过去20个交易日日均成交额 > 5000万。低于这个数,你进去容易,出来难。
  • 价格过滤:股价 > 5元。低价股容易出幺蛾子,而且交易成本占比太高。
  • 上市时间过滤:上市满1年。新股波动率还没稳定,别碰。

我在项目中遇到过一件事:有一次回测低波动策略,收益曲线漂亮得不像话。后来一查,股票池里混进了一只刚上市3个月的次新股,波动率极低,但那是流动性枯竭造成的假象。从那以后,我坚决把上市时间不足1年的票全部剔除。

避坑指南:我曾经用全A股做股票池,结果策略在2015年股灾时回撤巨大。后来改成沪深300成分股+中证500成分股,效果稳定很多。大市值股票的低波动特征更可靠。

3.2 因子打分与排序:给股票排个队

股票池有了,接下来就是打分。低波动策略的核心因子其实不多,但每个都要精打细算。

我常用的三个核心因子:

  1. 历史波动率因子:过去60个交易日收益率的标准差。越低越好。
  2. Beta因子:相对于大盘的敏感度。Beta < 1 的票更抗跌。
  3. 最大回撤因子:过去120个交易日的最大回撤幅度。回撤小的票,持有体验好。

打分方法我建议用百分位排名法。为什么?因为原始数值没法直接比较。比如波动率0.3和0.5,差多少?说不清。但百分位排名后,0.3可能排在前20%,0.5排在前60%,一目了然。

# 伪代码示例:因子打分逻辑
def factor_scoring(df):
    # 波动率因子:越低越好,取倒数后排名
    df['vol_score'] = 1 / df['volatility']
    df['vol_rank'] = df['vol_score'].rank(pct=True)
    
    # Beta因子:越低越好,取负数后排名
    df['beta_score'] = -df['beta']
    df['beta_rank'] = df['beta_score'].rank(pct=True)
    
    # 最大回撤因子:越低越好
    df['dd_score'] = -df['max_drawdown']
    df['dd_rank'] = df['dd_score'].rank(pct=True)
    
    # 综合得分:等权平均
    df['total_score'] = (df['vol_rank'] + df['beta_rank'] + df['dd_rank']) / 3
    return df.sort_values('total_score', ascending=False)

注意:因子之间可能存在共线性。比如低波动率的股票往往Beta也低。我建议每半年做一次因子相关性检验,如果两个因子相关系数超过0.8,考虑合并或剔除一个。

3.3 权重分配与组合构建:别把鸡蛋放一个篮子里

排序完成后,选前50只股票构建组合。权重分配我试过好几种方法,最后发现等权重最省心,也最稳健。

三种权重分配方案对比:

方案 优点 缺点 我的建议
等权重 简单、分散、回撤小 可能错过高收益个股 新手首选
波动率倒数加权 更贴合低波动理念 权重集中度过高 有一定经验再用
风险平价 风险贡献均衡 计算复杂、调仓频繁 机构常用

我个人习惯用等权重,但会加一个行业约束:单一行业占比不超过20%。为什么?因为低波动股票往往集中在银行、公用事业这些行业,如果不加约束,组合就成了行业指数基金。

组合构建的完整流程:

  1. 每月第一个交易日调仓
  2. 重新计算因子得分,排序
  3. 选前50只股票
  4. 等权重分配,行业上限20%
  5. 执行交易,控制滑点

嗯,这里要注意一点:调仓频率别太高。我试过周频调仓,结果交易成本吃掉了一大半收益。月频调仓是个不错的平衡点。

3.4 知识体系总览

下面这张图把整个低波动策略的构建逻辑串起来了。你可以把它当成一张地图,随时回来对照。

低波动策略构建流程图 第一步:股票池构建 流动性过滤 价格过滤 + 上市时间过滤 第二步:因子打分与排序 波动率 + Beta + 最大回撤 百分位排名 → 综合得分 第三步:权重分配 等权重 / 波动率倒数加权 行业约束 ≤ 20% 组合构建与调仓 月频调仓 · 前50只 · 等权重 定期重新评估 核心逻辑:低波动 ≠ 低收益,而是更稳定的风险调整后收益 关键监控指标 组合波动率 最大回撤 夏普比率 目标 ≤ 15% 目标 ≤ 8% 目标 ≥ 1.5

实战小技巧:构建完组合后,别急着实盘。先用模拟账户跑3个月,看看因子是否失效。我曾经有一个策略,回测时夏普比率2.0,实盘跑了两个月变成0.8。后来发现是因子在样本外失效了。嗯,多留个心眼总没错。

好了,低波动策略的构建框架就这些。股票池是地基,因子打分是骨架,权重分配是血肉。三者缺一不可。你想想看,如果股票池没筛好,后面再精细的因子打分也是白搭。反过来,如果权重分配不合理,再好的股票池也白费。

专注资料整理