渴望在真实市场中尝试交易想法的交易者经常犯完全依靠回测结果来确定系统是否有利可图的错误。 尽管回测可以为交易者提供有价值的信息,但它常常会误导人们,并且仅是评估过程的一部分。
样本外测试和前瞻性能测试为系统的有效性提供了进一步的确认,并可以在真实现金流传之前显示出系统的本色。 回测,样本外和正向性能测试结果之间的良好相关性对于确定交易系统的可行性至关重要。
回测基础
回测是指将交易系统应用于历史数据以验证系统在指定时间段内的运行情况。 当今的许多交易平台都支持回测。 交易者可以通过几次按键测试想法,并在不冒交易账户资金风险的情况下洞悉想法的有效性。 回测可以评估简单的想法,例如移动平均交叉将如何对历史数据执行,或者具有多种输入和触发器的更复杂的系统。
只要一个想法可以量化,就可以对其进行回测。 一些交易者和投资者可能会寻求合格的程序员的专业知识,以将其构想发展为可测试的形式。 通常,这涉及程序员将创意编码为交易平台托管的专有语言。 程序员可以合并用户定义的输入变量,使交易者可以“调整”系统。
一个例子就是上面提到的简单的移动平均交叉系统:交易者将能够输入(或改变)系统中使用的两个移动平均线的长度。 交易者可以回测以确定哪些长度的移动平均线在历史数据上表现最佳。
优化研究
许多交易平台还允许进行优化研究。 这需要为指定的输入输入一个范围,然后让计算机“做数学运算”以确定哪些输入将表现最佳。 多变量优化可以对两个或多个变量进行数学运算,以确定哪些组合将获得最佳结果。
例如,交易者可以告诉程序他们想要添加哪些输入到他们的策略中; 然后,根据测试的历史数据,将它们优化到理想的权重。
回溯测试可能会令人兴奋,因为无利可图的系统通常可以通过一些优化而神奇地转变为赚钱的机器。 不幸的是,对系统进行调整以获得最大的过去获利能力通常会导致该系统在实际交易中表现不佳。 这种过度优化创建的系统看起来仅在纸张上看起来不错。
曲线拟合是使用优化分析来创建最大数量的获胜交易,并根据测试期间使用的历史数据获得最大的利润。 尽管在回测结果中看起来令人印象深刻,但是曲线拟合会导致系统不可靠,因为结果实际上是针对特定数据和时间段定制设计的。
回测和优化为交易者带来了很多好处,但这只是评估潜在交易系统时过程的一部分。 交易者的下一步是将系统应用于初始回测阶段未使用的历史数据。
样品内与样品外数据
在历史数据上测试想法时,保留一段时间的历史数据用于测试是有益的。 对其进行了测试和优化的原始历史数据称为样本内数据。 已保留的数据集称为样本外数据。 此设置是评估过程的重要组成部分,因为它提供了一种方法,可以对尚未成为优化模型组成部分的数据进行测试。
结果,这种想法将不会受到样本外数据的任何影响,交易者将能够确定系统在新数据上的表现如何,即在真实交易中。
在开始任何回测或优化之前,交易者可以预留一定比例的历史数据以供进行样本外测试。 一种方法是将历史数据分成三份,然后将三分之一分开,用于样本外测试。 仅样品中的数据应用于初始测试和任何优化。
下图显示了一个时间线,其中三分之一的历史数据保留用于样本外测试,而三分之二用于样本内测试。 尽管下图描述了测试开始时的样本外数据,但是典型过程在正演性能之前将有样本外部分。
时间线表示回测过程中使用的样本内和样本外数据的相对长度。 朱莉·邦(Julie Bang)摄©Investopedia 2020
相关性是指两个数据集的性能和总体趋势之间的相似性。 相关度量可用于评估在测试期间创建的策略绩效报告(大多数交易平台提供的功能)。 两者之间的相关性越强,系统在远期性能测试和实时交易中表现良好的可能性就越大。
下图说明了两个不同的系统,它们分别对样本内数据进行了测试和优化,然后应用于样本外数据。 左图显示了一个系统,该系统显然可以曲线拟合以很好地处理样本内数据,而完全无法处理样本外数据。 右图显示了一个系统,该系统在样本内和样本外数据上均表现出色。
两条公平曲线。 每个黄色箭头之前的贸易数据表示样品内测试。 黄色和红色箭头之间产生的交易表示样品外测试。 红色箭头后的交易来自性能测试的早期阶段。
一旦使用样本内数据开发了交易系统,就可以将其应用于样本外数据。 交易者可以评估和比较样本内和样本外数据的绩效结果。
如果样本内测试与样本外测试之间几乎没有相关性,如上图中的左图,则该系统可能已经过优化,在实时交易中表现不佳。 如右图所示,如果性能之间有很强的相关性,则评估的下一阶段涉及另一种类型的样本外测试,称为前向性能测试。
前瞻性能测试基础
前向性能测试(也称为书面交易)为交易者提供了另一组用于评估系统的样本外数据。 远期性能测试是对实际交易的模拟,涉及在实时市场中遵循系统的逻辑。 由于所有交易都只在纸上执行,因此也称为纸上交易。 也就是说,交易进场和退出与系统的任何损益一并记录在案,但不执行任何实际交易。
前向性能测试的一个重要方面是严格遵循系统逻辑。 否则,即使不是不可能,也很难准确地评估该过程的这一步骤。 交易者应该对任何进出交易都保持诚实,并避免采取诸如采摘樱桃交易之类的行为,或者避免包括书面交易在内的行为,使“我永远不会接受该交易”合理化。 如果交易是按照系统逻辑进行的,则应进行记录和评估。
许多经纪人提供了一个模拟交易帐户,可以在其中进行交易并计算相应的损益。 使用模拟交易账户可以创建一种半现实的氛围,在该氛围下可以练习交易并进一步评估系统。
上图还显示了在两个系统上进行前向性能测试的结果。 同样,左图所示的系统无法完成对样本内数据的初始测试。 但是,如右图所示,该系统在所有阶段(包括向前的性能测试)都将继续保持良好的性能。 一个显示阳性结果且样本内,样本外和前向性能测试之间具有良好相关性的系统已准备就绪,可以在实时市场中实施。
底线
回测是大多数交易平台中可用的有价值的工具。 将历史数据分为多组以提供样本内和样本外测试可以为交易者提供评估交易思路和系统的实用而有效的手段。 由于大多数交易者在回测中都采用了优化技术,因此对系统进行干净数据评估以确定其可行性非常重要。
继续进行样本外测试与前瞻性能测试可提供另一层安全性,可将系统投入市场之前冒着真正的现金风险。 积极的结果以及样本内和样本外回测与正向性能测试之间的良好相关性增加了系统在实际交易中表现良好的可能性。