跳转至

陈 7.4 → M06

书:Ernest P. Chan,《量化交易——从入门到精通》第 7.4 节。 对应教材:M06 因子研究方法论 笔记记主成分分解和特征检验的分工,不摘录原文。

原书核心命题与论证链

陈用主成分把股票收益拆成少数共同因子和一只股票自己的残差,用来做风险和均值回复。共同因子没有市盈率或动量这种名字。教材把这件事放到风险模型的入口,检验「某个特征有没有下期溢价」仍用排序、Fama–MacBeth 和秩相关。 主成分的残差可以很干净,同时这个残差对下月收益没有预测。反过来,French 动量十分位的 t 值离开 0,也不表示主成分里一定有一个叫动量的轴。两条工具回答的问题不同。 7.4 节把收益写成少数共同成分加上一只股票自己的残差。共同成分从收益的协方差里来,没有市盈率、动量这种事先起好的名字。陈用它做两件事:看风险集中在哪几个方向,以及找残差是否会回到零。教材不同意把第二件事直接当成因子检验。

个人港美股账户裁剪提示。主成分的轴没有市盈率或动量这种名字,也不能直接下成只做多组合。检验某个特征有没有下期溢价,仍用排序和 Fama–MacBeth。残差很干净,不等于下个月有溢价。动量十分位的 t 值离开 0,也不表示主成分里有一条叫动量的轴。

原书与本仓库教材(M06)对照表

陈 7.4 M06
主成分分解收益 放到风险模型的入口,不把它当成因子名
残差均值回复 不把干净的残差写成已检验的 alpha
因子有名字 用排序、Fama–MacBeth 和秩相关检验下期溢价
代码例子多用 MATLAB 教材的秩相关是秩的 Pearson,不依赖 scipy

教材接着给出 French 动量十分位:市值加权高减低的算术年化 13.62%,t = 4.92;Mom 因子是 7.35%。13.62% 不是「动量因子的溢价」。1991–2025 同一条高减低的 t 值降到 1.75。这些数字在 M06,不在陈的这一节。

精读重点与可跳过部分

精读时盯住这些段落。

  • 共同因子为什么可以没有经济名字。
  • 残差和可交易的多空之间还差一个检验。
  • 作者把主成分用于配对或指数成分时,样本是哪一个股票池。

这些部分可以跳过。

  • 把 MATLAB 语法逐行翻译。仓库用 Python,而且这一节不要求复现他的脚本。
  • 高频版的主成分。个人账户的时钟是日频和月频。
  • 任何「前几个成分已经解释了百分之九十几,所以剩下的都是 alpha」的跳跃。解释方差和预测下期收益不是同一句话。

回到教材与代码的核对清单

  1. 排序的特征在形成日已经知道,收益用下一期。
  2. French 动量是 −12 到 −2。仓库的 12-1 跨度是 12 个月。
  3. GRS 在 M06 里检验的是十分位截距,不是主成分个数。
  4. 1932-08 的 −77.66% 和全样本 t = 4.92 同时成立。主成分解释不了这条回撤可以被杠杆账户拿住。
  5. 去极值用中位数 ± 5 倍 MAD,未乘 1.4826。这是教材的预处理,不是 7.4 节的步骤。
  6. 读完若把「第一主成分」叫成价值或动量,回到第 2 步重读。