Week 5 的两只股票,区分误差和排序
Week 5 用两只股票说明模型评价的差别:实际收益数值为 +1 和 −1,模型 A 都预测 +1,模型 B 则预测 +10 和 −10。这里沿用课堂演示的数值单位。
均方误差(MSE)把每次预测与实际值的差平方后取平均。A 的 MSE 是(0²+2²)÷2=2;B 的 MSE 是(9²+9²)÷2=81。
| 模型 | 两只股票的预测 | MSE | 能否区分排序 |
|---|---|---|---|
| A | +1、+1 | 2 | 给出相同预测 |
| B | +10、−10 | 81 | 正收益股票排在前面 |
若策略按预测排序,买入靠前的股票、卖空靠后的股票,B 在这个例子中给出了有用的方向,A 无法区分两只股票。B 的幅度预测偏差很大,却仍可能适合这种建仓规则。
所以,预测输出以后,还要说明它怎样变成持仓。这个例子只有一个时期,无法据此比较夏普比率(Sharpe ratio);真实表现还取决于权重、风险和成本。
Week 2 的滚动回测,保留决策的时间顺序
课上的滚动窗口做法,是用截至当时可获得的历史数据估计均值和协方差,确定持仓,再把持仓用于下个月。下个月结束后,实际收益用于评价这次决策,也可以进入下一次估计。
这产生了样本外收益:评价的数据在那次持仓确定以后才出现。若把下个月的结果用于修改本月持仓,就把未来信息放进了历史决策。
窗口长度、股票池和排序分位点也会改变结果。反复查看同一段回测,挑出表现较好的组合后,这段数据已经参与选择。用验证区间选设定,再用未参与选择的后续区间评价,才能继续区分选模型和检验模型。
Week 6 把交易成本放进持仓选择
预测排序相同,也可能得到不同的净收益。频繁调仓增加交易次数;流动性不足时,较大的订单还会推动成交价格。只比较扣成本前的收益,无法反映这些代价。
Week 6 的 Portfolio-ML 将信号直接映射为持仓权重,在训练目标中同时考虑收益、风险和交易成本。成本会影响模型偏爱哪种信号:短暂的机会可能需要反复交易,持续的信号更适合较慢调整的持仓。
课堂还讨论了每期只调整部分持仓的办法。调整速度需要结合信号持续性和交易成本判断。若比较净夏普比率,就要根据各期扣成本后的收益,重新计算平均超额收益和波动。平均净收益相同的两项策略,净夏普比率仍可能不同。
Week 9 新闻回测中的模型记忆
前面的时间检查也适用于大语言模型(LLM)。即使输入的新闻发布于历史下单日期之前,模型参数仍可能记住那之后发生的事。






