黑箱机器学习章节 → M16¶
书:Rishi K. Narang,《打开量化投资的黑箱》。第 3 版(Wiley,2024)把机器学习写成专章;第 2 版(2013)没有这组表。
对应教材:M16 机器学习与 AI 量化
不摘录原文。
原书核心命题与论证链¶
Gu、Kelly 与 Xiu(2020,RFS 33(5))的个股月度样本外 R²,NN3 是 0.40%,三变量 OLS 是 0.16%,全部变量 OLS 是 −3.46%。分母是超额收益平方和。价值加权十分位多空的夏普,NN4 是 1.35,NN3 是 1.20,三变量是 0.61。1.35 不是 NN3。
多空要有空头腿。杠杆上限 1.0、只做多的账户放不下。表 6 里的 0.26 是择时夏普 0.77 相对买入持有 0.51 的差。论文的月度持仓变动 126.81% 不是单边换手。
把 0.40% 开方再乘 √6000 得到 4.8990,那是误用。当期收益若被当成特征,教学序列上的样本外 R² 是 1。
第 3 版把机器学习从「另一种回归」改成专章。作者的警告和 Gu、Kelly 与 Xiu 的表是同一方向:个股月收益的可解释比例很低,组合层面的夏普可以看起来很高。第 2 版没有这组表。教材 M16 在这张表之外补了三件事:金融数据为什么难、模型族谱、以及时间序列上怎样切分才不泄漏。
个人港美股账户裁剪提示。论文表里的高夏普是多空十分位,空头腿在只做多账户里不存在。同一天的股票不是独立样本。标签占用未来收益时,先清除重叠的训练行,再留禁运。元标签的仓位落在 [0, 1],不学习负仓位。
原书与本仓库教材(M16)对照表¶
| 黑箱第 3 版 | M16 |
| --- | --- |
| 提醒机器学习会过拟合 | 用 Gu、Kelly 与 Xiu(2020)的表把 R² 和夏普分开 |
| 讨论另类数据 | 另加时间切分和禁运,不依赖未安装的第三方库 |
| 不给本仓库的持仓 | 多空夏普不能放进杠杆上限 1.0 的只做多账户 |
NN3 的样本外 R² 是 0.40%,三变量 OLS 是 0.16%,全部变量 OLS 是 −3.46%。价值加权十分位多空的夏普,NN4 是 1.35,NN3 是 1.20。1.35 不是 NN3。
精读重点与可跳过部分¶
精读时盯住这些段落。
-
作者怎样区分预测误差和组合收益。
-
第 3 版相对第 2 版新增的机器学习章,不要用旧版的目录去找。
-
他对「数据越多越好」的保留。截面相关会使有效样本量远小于行数。
这些部分可以跳过。
-
特定商业平台的模型名单。名单会过时。
-
需要 GPU 集群才能复现的训练细节。
-
把论文里的多空夏普写成个人账户的目标。
回到教材与代码的核对清单¶
-
分母是超额收益的平方和。样本外 R² 可以是负数。
-
1.35 属于 NN4,1.20 属于 NN3,0.61 属于三变量。
-
表里的择时差 0.26 是 0.77 减 0.51。不要把它再解释成 R²。
-
把 0.40% 开方再乘广度的平方根,是把两种定律用错了地方。
-
当期收益若被当成特征,教学序列上的样本外 R² 可以变成 1。那是泄漏,不是模型。
-
切分器的教学代码留在 M16。它不连接行情,也不写账本。