多因子选股量化策略怎么构建

好,我来系统拆解多因子选股的完整框架。先看整体构建流程,再深入因子细节。整个流程五步走,下面逐一拆解。


第一步:选因子 — 常用 Alpha 因子全景

业界主流将因子归为五大类:估值类、财务成长类、财务质量类、价量类、分析师预期类。以下是 A 股实战中最常用的因子:

 

2025年A股市场中,小市值因子年内超额收益达21%,成为最有效因子。技术面因子中,RSI超卖预警、KDJ极端超卖和成交量异动指标表现优异;基本面因子则以单季度净利润增长率、ROE同比等短期盈利指标最为突出。


第二步:数据预处理(关键,很多人跳过)

中性化是指剔除因子中包含的行业影响或市值影响。例如银行股的PE普遍很低,科技股普遍很高,如果不做行业中性化,选出的低PE股票可能全是银行股。中性化后,我们选出的是"在同行业中PE较低"的股票,从而分散风险、提取纯粹的因子 Alpha。

三个必做步骤:

import pandas as pd
import numpy as np
from scipy import stats

def preprocess_factor(factor_series):
    # 1. 去极值(MAD法,比3σ更稳健)
    median = factor_series.median()
    mad = (factor_series - median).abs().median()
    factor_series = factor_series.clip(median - 3*1.4826*mad,
                                        median + 3*1.4826*mad)
    
    # 2. 标准化(Z-score)
    factor_series = (factor_series - factor_series.mean()) / factor_series.std()
    
    # 3. 行业+市值中性化(回归取残差)
    # X = [行业哑变量矩阵 | log(市值)]
    # factor_neutralized = factor - X @ (X'X)^-1 X' factor
    return factor_series

第三步:IC 检验 — 筛选真正有效的因子

IC值衡量一个因子的预测能力,数值在 -1 到 1 之间,绝对值越大说明因子对股票未来走势的预测越准,重点关注它的均值和稳定性。实践中的筛选标准:

指标

含义

有效门槛

IC 均值

因子整体预测力

|IC| ≥ 0.03

ICIR

IC均值 / IC标准差(稳定性)

|ICIR| ≥ 0.5

IC 胜率

IC > 0 的比例

≥ 55%

分层单调性

高因子值组收益显著高于低组

需肉眼验证

推荐优先看 Rank IC(斯皮尔曼相关系数)。金融数据常有极值,Normal IC 容易受个别极端股票干扰,而实际交易中通常根据排名买入前 N 只股票,Rank IC 更贴合这种逻辑。


第四步:综合打分合成

常见的因子加权方式包括等权、IC加权、ICIR加权和半衰期加权。IC加权相当于因子动量,给予过去表现更好的因子更高的权重;ICIR加权综合考虑因子的预测能力和波动率,能优化组合绩效并控制风险。

def composite_score(factor_dict, ic_weights=None):
    """
    factor_dict: {'ROE': series, 'EP': series, 'reversal': series, ...}
    ic_weights: 各因子的IC均值,为None时等权
    """
    scores = pd.DataFrame(factor_dict)
    
    if ic_weights is None:
        # 等权合成
        return scores.mean(axis=1)
    else:
        # IC加权合成
        w = pd.Series(ic_weights)
        w = w / w.abs().sum()  # 归一化
        return (scores * w).sum(axis=1)

# 选出综合评分前20%的股票建仓
top_stocks = composite_score(factors).nlargest(int(len(factors)*0.2))

第五步:回测关键指标

多因子策略的最大优势在于,在不同的市场和行情下,因子库中总有一些因子能够发挥作用。但回测时必须关注三个指标:

  • 年化超额收益 vs 基准(目标 ≥ 8%)
  • 信息比率 IR = 年化超额收益 / 超额收益标准差(目标 ≥ 0.8)
  • 换手率:月调仓时换手 ≤ 30%,否则交易成本会大幅侵蚀收益

两个常见陷阱要避免:过拟合(样本外表现远差于样本内)、因子拥挤(该因子被太多人用后衰减)。可用滚动窗口计算因子 IC,如出现明显衰减趋势,应及时剔除该因子。

posted @ 2026-06-06 09:09  Leone-  阅读(32)  评论(0)    收藏  举报