“回测收益高” 是最容易骗人的指标。一个策略回测年化 50%,最大回撤 10%,Sharpe 2+,看起来非常漂亮。但如果把它拿到真实市场里跑,可能很快就发现完全不是那么回事。想分享一下我目前判断策略是否过拟合的一些方法。 1. 先把训练集和测试集分开 比如我有 2018 ~ 2025 年的历史数据,不能直接拿全部数据调参数,然后说这个策略在 2018 ~ 2025 年表现很好。因为策略参数本身就是根据这些数据调出来的。我一般会先分成: 2018 - 2022:训练集 2023 - 2024:验证集 2025:测试集 训练集用来开发策略和调参数。验证集用来检查策略是不是还能工作。测试集最好完全不碰,最后才拿出来做一次真正的 out-of-sample test 。 如果一个策略在训练集表现特别好,但到了验证集和测试集突然失效,我一般就会开始怀疑过拟合。 2. 参数稍微变化,策略就完全失效? 比如我做一个均线策略: fast_ma = 20 slow_ma = 60 回测结果很好。 然后我把参数稍微改一下: fas...