第五周 - 何为因子,何为挖因子,再检查因子
  红塔山 11天前 123 0

面向小白的多因子组合策略入门指南

在本周的学习中,已经进入到实质性的内容,之前都是在为今天的课程内容做铺垫。在整个流程中,先将想法变成可量化的因子,组合之后形成多因子策略,再运行策略,再查看回测报告,研究是再否可再优化。

整个流程可以概括为:将想法转化为可量化的因子 → 组合形成多因子策略 → 运行策略 → 查看回测报告 → 研究优化空间。

从最初理解什么是因子,到掌握各类因子的特点,再到学会将多个因子组合并调整权重,每一步都在为最终的策略构建打下基础。当我们完成策略搭建并运行回测后,通过分析各项指标(如年化收益、夏普比率、最大回撤等),就能判断策略的有效性,并找到进一步优化的方向。

量化投资的核心不在于一次性的完美构建,而在于持续迭代、不断验证与改进的过程。本周的学习,让我们真正迈出了从理论到实战的关键一步。

一、什么是因子?为什么需要多因子?

在量化投资中,“因子”可以理解为一种用来解释或预测资产收益的指标或特征。比如过去20天涨幅、成交量变化、估值水平等,都可以作为因子。

简单来说:
👉 因子 = 用数据描述股票“好不好”的方式

那为什么不只用一个因子,而是要用“多因子”?

原因很简单:

  • 单一因子容易失效(市场风格会变化)
  • 不同因子关注不同维度(趋势、估值、情绪等)
  • 多因子组合可以分散风险,提高稳定性

👉 类比:判断一个人优秀与否,不只看成绩,还看能力、性格、经验等


二、因子的类型

常见的因子可以从多个维度进行分类,以下是几种主流的分类方式:

1. 按构建方式分类

类型 说明 特点 示例
线性因子 通过简单数学运算构建,关系呈线性 可解释性强、计算简单 动量因子、估值因子
非线性因子 通过机器学习或复杂变换构建 表达能力更强、解释性较弱 神经网络因子、决策树因子

2. 按逻辑来源分类(主流框架)

这是学术界和业界最常用的分类方式,源自 Fama-French 等经典研究:

大类 说明 典型因子
价值因子 寻找被低估的股票 市盈率(PE)、市净率(PB)、市销率(PS)
动量因子 趋势延续效应 过去收益率、反转效应
质量因子 公司盈利能力与财务健康 ROE、ROA、毛利率、资产负债率
规模因子 小盘股溢价效应 市值对数
波动率因子 低波动异象 历史波动率、Beta
情绪因子 市场情绪与资金流向 换手率、融资融券余额
成长因子 业绩增长预期 营收增速、净利润增速
流动性因子 交易活跃度 换手率、Amihud非流动性指标

3. 按数据来源分类

类型 说明 示例
量价因子 基于价格和成交量数据 动量、波动率、换手率
基本面因子 基于财务报表数据 ROE、资产负债率、现金流
宏观因子 基于宏观经济指标 GDP增速、利率、CPI
分析师预期因子 基于分析师评级与预测 盈利预测调整、评级上调
另类数据因子 基于非传统数据源 卫星图像、搜索热度、新闻情绪

4. 按投资逻辑分类

类型 说明 示例
趋势因子 捕捉市场趋势 动量、均线突破
均值回归因子 捕捉过度反应后的回归 反转、低估值
套利因子 捕捉定价偏差 可转债溢价、ETF折溢价
事件驱动因子 捕捉特定事件影响 业绩预告、分红送转

5. 按因子数量分类

类型 说明
单因子 只使用一个因子进行选股
多因子 组合多个因子,加权形成综合评分

6. 分类全景图

                    因子分类
                        │
        ┌───────────────┼───────────────┐
        ↓               ↓               ↓
   按构建方式       按逻辑来源       按数据来源
        │               │               │
   ┌────┴────┐    ┌─────┴──────┐    ┌───┴───┐
   ↓         ↓    ↓            ↓    ↓       ↓
线性因子  非线性  价值因子     量价因子  基本面
          因子    动量因子   宏观因子  另类数据
                  质量因子
                  规模因子
                  波动率因子
                  情绪因子
                  成长因子
                  流动性因子

💡 对于初学者来说,最需要掌握的是“价值、动量、质量、规模”这四大经典因子类型,它们是构建多因子策略的基石。


上面是对因子做了比较详细的说明,下面通过对pandai的工作流将多因子组合的策略运行起来:

image.png
从官方的模板中选中多因子模板(快速的运行策略)

三、编写因子与权重调整

下面给出几个简单的动量因子例子:
image.png

因子1

RANK((CLOSE / DELAY(CLOSE, 20)) - 1)
👉 含义:过去20天的收益率,并进行排名

因子2

RANK((OPEN / DELAY(CLOSE, 20)) - 1)
👉 含义:用开盘价计算的20天收益率

因子3

也可以用 Python 写成策略形式:

class MomentumFactor(Factor):`     
    def calculate(self, factors):` 
        close = factors['close']`      - 获取收盘价
        returns = RETURNS(close, 20)`  - 计算20日收益率
        return RANK(returns)`          - 对收益率进行排名

四、因子组合与权重调整

当我们有多个因子时,可以进行组合:

综合因子 = w1 * 因子1 + w2 * 因子2 + w3 * 因子3

这里的 w1, w2, w3 就是权重。

为什么要调整权重?

  • 不同因子效果不同(有的更稳定,有的更激进)
  • 市场环境变化(趋势市场 vs 震荡市场)
  • 控制风险和收益的平衡

👉 举例:

  • 动量因子在牛市表现好 → 提高权重
  • 价值因子在震荡市稳定 → 增加配置

常见方法:

  • 等权重(最简单)
  • 根据历史表现加权
  • 使用优化算法(如最大夏普)

五、策略结果与核心指标

在构建好因子组合后,我们需要评估策略表现。下面是一些常见指标:
image.png

1. 收益类指标

指标 示例值 含义
因子收益 17.81% 因子本身带来的平均收益
年化收益 132.01% 将策略收益换算成年收益,便于比较

2. 风险与收益比

指标 示例值 含义
夏普比率 4.5026 每承担一单位风险,获得多少收益,越高越好(通常 >1 就不错)
最大回撤 3.56% 从最高点跌到最低点的最大损失,越低越好

3. 因子有效性指标

指标 示例值 含义
IC_mean -0.0449 因子与未来收益的相关性,正值表示预测有效
Rank_IC -0.0678 排名相关性,比IC更稳健
IC_std 0.1482 IC波动程度
IC_IR -0.3036 IC稳定性(IC_mean / IC_std)

4. 统计显著性

指标 示例值 含义
t统计量 -1.7705 判断因子是否显著有效
p-value 0.0859 小于0.05通常认为显著

5. 胜率相关

指标 示例值 含义
P(IC>0.02) 35.29% IC较好的比例
P(IC<-0.02) 52.94% IC较差的比例

6. 信息比率

指标 示例值 含义
IR -1.9543 因子超额收益能力

7. 单调性

指标 示例值 含义
单调性 0.92 因子排序后收益是否呈现良好分层,越接近1越好

8. 分组

image.png

从上面这些分组,可以看出,所有的股票被随机分面了5组,每组不同的收益反馈是不一样的


六、如何使用你的因子

当你的多因子策略表现不错时,可以:

  1. 将组合后的因子保存
  2. 添加到“因子大赛”的节点中
  3. 后续直接调用该因子参与比赛或策略构建

👉 好处:

  • 避免重复计算
  • 提高策略开发效率
  • 便于复用与优化

总结

多因子策略的核心思路是:

构建多个有效因子 → 通过权重组合增强稳定性 → 用指标评估策略优劣 → 持续优化与迭代

对于初学者来说,可以从简单动量因子 + 等权组合开始,逐步理解各类指标,再慢慢提升复杂度。

量化投资不是一蹴而就,而是一个不断验证与改进的过程 🚀

最后一次编辑于 10天前 2

暂无评论

推荐阅读