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