为什么在全面回测之前进行快速筛选
假设你发现了一些似乎符合你个人要求的策略。有人已经对它们进行了回测,并报告了高历史回报。在你承诺进行全面回测——更不用说投入资金进行实盘交易——之前,进行一些快速测试是合理的。这些测试并非旨在证明策略是好的。它们的目的是尽早暴露明显的弱点,节省时间和成本。全面回测是一个严肃的项目。它涉及获取干净数据、编写或配置代码、检查错误,并在多种市场条件下进行测试。这个过程可能需要数天或数周。如果策略存在致命缺陷,所有工作都将白费。快速筛选充当过滤器。它提出简单的问题:样本量足够大吗?结果在小改动下是否依然成立?它能击败随机入场吗?成本是否现实?如果其中任何一个答案是否定的,策略就可以被搁置,无需进一步努力。这种方法背后的心态是怀疑和基于证据的。高历史回报并不是持久优势的证据。它可能是数据挖掘、过度拟合或幸运时期的结果。许多在纸面上看起来可行的策略实际上只是对过去噪声的描述。本文描述的快速测试是区分有前景的想法和幻觉的实用方法。它们不能替代全面回测,但它们能帮助你决定在哪里花费时间。通过快速筛选是一个低标准,不是保证。然而,失败则是一个强烈的信号,表明应该继续前进。
是什么让策略在纸面上看起来可行?
策略通常伴随着一组令人印象深刻的指标。高复合年回报率、平滑的权益曲线、高胜率、大利润因子和小的最大回撤可以使策略看起来有吸引力。这些数字可能是真实的,但也可能是人为制造的。快速测试的存在是因为表面指标很容易被误读。幻觉的一个来源是过度拟合。如果策略的规则被多次调整,直到历史结果看起来不错,那么表现很可能特定于过去的数据。策略的参数越多,开发者拟合噪声的自由度就越大。一个有两个规则的简单系统比一个有十个规则的复杂系统更不容易曲线拟合。另一个来源是小样本。一个进行了20笔交易、胜率70%的策略在统计上并不令人印象深刻;随机机会可以产生这样的结果。第三个来源是选择偏差。如果有人测试了数百个策略,只向你展示了最好的一个,那么报告的回报毫无意义。许多随机策略中最好的一个总是看起来不错。回测报告也常常忽略重要假设。它们可能忽略佣金、滑点和流动性。它们可能使用收盘价的完美执行。它们可能在一个异常有利的时期进行测试。一个在纸面上看起来可行的策略可能只是这些未说明选择的反映。快速测试旨在探究所声称优势的结构完整性,而不仅仅是其标题回报。
快速测试1:样本量和统计显著性
筛选策略最快的方法之一是检查交易或观察的数量。交易很少的回测无法提供统计置信度。假设一个策略有15笔交易,每笔交易平均收益为2%。这些交易的标准差可能是5%。在这种情况下,平均值远在一个标准差之内,结果很容易是随机的。一个粗略的经验法则是,你希望每个策略使用的参数至少有30到50笔交易,尽管这不是严格规则。关键思想是信号必须相对于噪声足够大。另一个快速检查是移除最好的交易,看看策略是否仍然有效。如果单笔交易或一小簇交易占据了大部分利润,那么优势是脆弱的。例如,如果移除前5%的交易将一个盈利系统变成亏损系统,那么策略很可能依赖于异常值。一个相关的测试是比较独立下注的数量。重叠交易会减少有效样本量。如果一个策略持有十个相关头寸,它就没有十个独立观察。统计显著性可以用t统计量来估计:平均交易回报除以交易回报的标准差,再乘以交易数量的平方根。t统计量高于2通常被认为有意义,但这假设回报是独立且正态分布的,这在交易中很少成立。蒙特卡洛模拟可以提供更稳健的检查。通过打乱交易顺序或生成具有相同分布的随机回报,你可以看到类似结果偶然出现的频率。如果随机数据频繁产生相同的表现,那么策略的优势就值得怀疑。
快速测试2:参数敏感性和稳健性
一个只在某个精确参数设置下有效的策略是一个危险信号。如果将移动平均线从20天改为21天就破坏了表现,那么策略很可能是曲线拟合的。稳健的策略往往在附近参数值范围内表现出性能平台。一个快速测试是在参数网格上运行策略——例如,移动平均线长度从10到50,或RSI阈值从25到35。如果最佳结果是一个被糟糕结果包围的尖峰,那么策略是脆弱的。如果结果在合理范围内大致相似,那么优势更可能是真实的。参数敏感性与自由度概念密切相关。每个参数都给开发者另一个拟合历史数据的机会。一个有五个参数的策略可以通过多种方式调整,以产生好看的回测。一个快速测试是计算规则和参数的数量。如果参数数量相对于交易数量很大,过度拟合很可能发生。一个简单的经验法则是,你需要比参数多得多的观察。前向分析是此测试的更强版本。其思想是在一个数据时期(样本内)优化策略,然后在稍后的时期(样本外)测试它,而不改变参数。如果样本外表现差得多,那么策略很可能过度拟合。前向测试的一个快速版本是将数据分成两半,在前半部分开发策略,在后半部分检查。这比单次回测需要更多努力,但比完整的多年度研究成本低得多。跨不同市场、时间框架和资产类别的稳健性是另一个好迹象。一个只在一个特定股票或特定年份有效的策略不太可能是一个持久的优势。
快速测试3:与随机入场和简单替代方案进行基准比较
一个有效的快速测试是将策略的表现与随机入场进行比较。过程很简单:保持相同的头寸规模、止损和止盈规则,但将入场信号替换为随机买入和卖出决策。多次运行这个随机入场模拟。如果随机版本产生的回报与原始策略相似,那么入场规则没有可证明的优势。策略可能只是捕捉了普遍的市场漂移或其风险管理规则的效果。这个测试有时被称为“猴子测试”或随机基准。另一个基准是对同一资产的简单买入并持有策略。如果策略在风险调整基础上无法击败买入并持有,那么它可能不值得复杂化。例如,一个只做多的策略年回报率为8%,而市场年回报率为10%且波动性相似,那么它没有增加价值。一个更复杂的基准是一个只有一两个规则的简单趋势跟踪或均值回归系统。如果复杂策略无法超越基本替代方案,那么额外的规则很可能是不必要的。基准测试的目的是隔离所声称的优势是来自特定的入场和出场规则,还是来自更一般的东西。许多策略偏向做多,在上涨市场中赚钱仅仅因为市场上涨。那不是阿尔法;那是贝塔。一个快速测试是检查策略在不同市场制度下的表现。如果它只在牛市中有效,那么它很可能是一个伪装的做多头寸。如果它在上涨和下跌市场中都能有效,那么优势可能更稳健。随机和简单基准提供了一个容易执行且难以反驳的现实检查。



