Skip to content

Factor decompose

简单来说,Risk Factor Modeling(风险因子模型)是为了回答一个核心问题:我的资产组合今天赔了或赚了,到底是因为哪些“力量”在起作用?

Barra 和 Axioma 是这类模型的行业标准。它们将复杂的股票收益拆解为一些可观测、可解释的共同因素。


1. 一个直观的例子(非比喻,实操逻辑)

假设你持有两只股票:苹果 (Apple)英伟达 (NVIDIA)

传统的看法是看这两家公司的经营情况。但 Barra/Axioma 的模型会把它们的收益拆解成以下几个部分:

  • 国家/市场因子 (Market): 如果今天美股大盘整体涨了 1%,这两只股票大概率都会跟着涨。
  • 行业因子 (Industry): 它们都属于“科技/半导体”行业。如果今天科技股因为政策利好集体飙升,这是行业带给它们的共同收益。
  • 风格因子 (Style/Risk Factors): 这是商业模型的精髓。
  • 动量 (Momentum): 这两只股票过去半年涨得快吗?如果快,它们就带有“动量”属性。
  • 波动率 (Volatility): 它们平时跳动得厉害吗?
  • 规模 (Size): 它们都是巨型盘。
  • 价值 (Value): 它们的市盈率(P/E)是高还是低?

逻辑过程: 如果你发现你的投资组合在某一天大亏,模型会告诉你:并不是苹果的产品卖得不好(特异性风险),而是因为今天市场上“高波动率”和“科技行业”这两个标签被集体抛售了。


2. 商业模型的原理:多因子线性模型

虽然不使用复杂的公式,但其核心逻辑是一个横截面回归 (Cross-sectional Regression)

  1. 打标签 (Exposures): 模型每天给市场上几千只股票打分。比如给苹果打上:行业=科技,规模=极大,价值=低。这些分值叫 Factor Exposure (因子暴露度)
  2. 算收益 (Factor Returns): 到了晚上收盘,模型观察今天所有“高分规模”的股票表现如何,所有“科技股”表现如何。通过计算,得出今天“规模因子”赚了多少,“科技因子”赔了多少。
  3. 拆解风险 (Risk Decomposition):
  4. 共同风险: 由这些因子共同解释的部分(比如 80% 的波动)。
  5. 特异性风险 (Idiosyncratic Risk): 因子解释不了的部分,属于公司特有的新闻(如 CEO 离职)。

Barra vs. Axioma 的微小区别:

  • Barra: 历史悠久,模型更新相对稳健,行业分类非常权威。
  • Axioma: 以灵活著称,允许用户自定义因子,在优化算法(Portfolio Optimization)上非常强势。

3. 需要什么数学知识?

要理解并应用这些模型,你不需要精通深奥的拓扑学或泛函分析,但以下三个领域是基石:

领域 核心用途 关键概念
线性代数 模型的基本架构,处理成千上万只股票。 矩阵乘法、特征值分解、协方差矩阵 (Covariance Matrix)
数理统计 估算因子收益和预测未来风险。 多元线性回归 (OLS/WLS)、标准差、相关系数、显著性检验。
最优化理论 商业软件最常用的功能:构建最优组合。 在限制条件(如行业中性)下求解最大收益或最小风险。

总结: 如果你能理解 **** 这个回归方程的物理意义(即收益 = 暴露度 × 因子收益 + 噪声),你就已经掌握了这些商业模型 70% 的数学灵魂。

简单来说:你应该针对 Residual(残差)进行策略开发,但通常不是直接用它做 Trading。

这个逻辑可能听起来有点绕,但它是量化交易中“Alpha 与 Risk 剥离”的核心灵魂。我们分三个维度来拆解:


1. 为什么要针对 Residual 做研究?(Alpha 挖掘阶段)

如果你有一个因子(比如“研发投入占比”),你直接去跑 Long-Short,结果可能看起来很好。但 Barra 模型一跑,发现你的收益 90% 都能被“Size(市值)”和“Technology(行业)”这两个风险因子解释掉。

这意味着你并没有发现新大陆,你只是在做变相的指数增强

  • 如果你直接用原始 Factor: 你的收益会随大盘、行业波动,风险很大。
  • 如果你用 Residual Factor: 你是在寻找真正的超额收益 (Pure Alpha)。这种收益与市场环境无关,无论大盘涨跌,只要你的逻辑对,它就能赚钱。

2. 实际交易中,怎么处理 Residual?

你不是在“交易残差”,而是在“利用残差信号去构建一个对冲掉风险的组合”。

在 Systematic Long-Short(系统性多空策略)中,标准的做法通常不是简单地按 Residual 排序,而是:

第一步:计算 Residual Alpha

通过回归,把你的因子中与 Barra/Axioma 风险因子相关的部分剔除,拿到那个“干净”的信号。

第二步:组合优化(Portfolio Optimization)—— 关键一步

你不会简单的 Long 前 10% 的 Residual 票。你会把这个 丢进一个优化器 (Optimizer)。优化器会告诉你:

“为了拿到这些残差收益,你应该买 A 卖 B,同时要保证整个组合对‘市值’、‘行业’、‘波动率’的总暴露为 0。”


3. 直接按 Residual 排序做 Long-Short 的优缺点

如果你没有优化器,非要按 Residual 排序直接做,会发生什么?

维度 直接用 Residual 排序 优势/风险说明
风险敞口 更中性 你确实排除掉了一些显性风险(比如不再单纯追逐大盘)。
波动率 更低且更平稳 收益曲线通常比原始因子更顺滑(Sharpe 更高)。
交易成本 更高 Residual 通常波动更快,会导致你的调仓频率(Turnover)大幅增加。
选股偏差 可能买入垃圾股 有时候 Residual 很高是因为这只票极其冷门。如果你没限制流动性,可能会选出一堆没法成交的票。

4. 总结:你应该怎么做?

  1. 验证阶段: 一定要看 Residual。如果你的信号在剥离了 Barra 风险因子后没有收益了,那这个信号不值钱,因为它只是在重复已知的风险。
  2. 交易阶段:
  3. 低级玩法: 按 Residual 排序做 Long-Short。这能让你实现基本的“风险中性”。
  4. 职业玩法: 用原始 Factor 作为预期收益输入,把 Barra 的风险模型作为约束条件(Constraints)。让优化器去计算在“行业中性”、“风格中性”的前提下,如何分配权重。

一句话建议: 如果你是一个个人开发者或者小团队,按照 Residual 排序做 Long-Short 是一个巨大的进步,它能让你从“赌行情”变成“赚逻辑”。

你想让我帮你写一个简单的 Python 伪代码,展示如何用回归的方法提取 Residual Factor 吗?