banner

MetaTrader5平台下载:MQL5 中的组合对称交叉验证

  在自动化交易策略开发中,MetaTrader5平台下载提供了一个强大的工具,它不仅支持多种产品的交易,还提供了高级图表分析工具和自动化交易功能。然而,在创建自动策略的过程中,我们经常面临一个挑战:如何避免过度拟合。一开始,我们可能会根据某些指标制定规则大纲,但这些规则需要以某种方式加以完善。这一完善过程包括对所选指标的不同参数值进行多次测试,以找到能使利润或我们关心的其他标准最大化的指标值。这种做法的问题在于,由于金融时间序列中普遍存在噪声,我们会引入一定的乐观偏差。这种现象被称为过度拟合。

MetaTrader5平台下载

  虽然过度拟合是无法避免的,但不同的策略会有不同的过度拟合程度。因此,确定这种情况发生的程度将很有帮助。组合对称交叉验证(CSCV)是由 David H. Bailey 等人在学术论文 "The Probability of Backtest Overfitting(回测过度拟合的概率)" 中提出的一种方法。在优化策略参数时,它可用于估计过度拟合的程度。

  CSCV 方法

  在本节中,我们将逐步介绍 CSCV 的精确方法,首先介绍根据所选性能标准需要收集的数据的初步情况。

  CSCV 方法可应用于策略制定和分析之外的不同领域,但本文仍以策略优化为背景。我们有一套由参数定义的策略,需要通过运行大量不同参数配置的测试来进行微调。

  在进行任何计算之前,我们首先需要决定用什么性能标准来评估策略。CSCV 方法非常灵活,可以使用任何性能标准。从简单的利润到基于比率的标准,对 CSCV 都没有影响。

  所选的性能标准还将确定将在计算中使用的基础数据,这是将从所有测试运行中收集的原始粒度数据。例如,如果我们决定使用夏普比率作为我们选择的性能度量,我们将需要收集每次测试运行的每个柱的收益。如果使用简单利润,则需要每个柱计算盈亏。重要的是确保每次运行收集的数据量保持一致。这样,我们就能确保所有测试运行中的每个相应数据点都有一个测量值。

  第一步是在优化过程中收集数据,对不同的参数变化进行测试。优化完成后,我们将从测试运行中收集到的所有数据汇集到一个矩阵中。该矩阵的每一行都将包含所有每个柱的性能值,用于计算相应测试运行的某些交易性能指标。矩阵的行数与试验的参数组合数相同,列数与整个试验期的柱数相同。然后将这些列分成确定的偶数个集合。比如说,N 个集合。这些集合是子矩阵,将用来组成大小为 N/2 的集合的组合。从组合的角度看,每次取 N/2 个子矩阵,即 N C n /2。我们将 N/2 个子矩阵组合在一起,从每个组合中构建出一个样本内集合(ISS,In-Sample-Set),并从 ISS 中未包含的其余子矩阵中构建出一个相应的样本外集合(OOSS,Out-Of-Sample-Set)。

  对于 ISS 和 OOSS 矩阵的每一行,我们都会计算相应的性能指标。并注意 ISS 矩阵中性能最好的一行,它代表了最佳参数配置。OOSS 矩阵中的相应行用于计算相对排名,方法是计算与使用最优参数配置相比性能较差的样本外参数试验的次数,并将这一计数作为所有测试参数集的一部分。当我们遍历所有组合时,我们会累计相对等级值小于或等于 0.5 的数量。这是样本外参数配置的数量,其性能低于使用最优参数集观察到的性能。处理完所有组合后,该数字将以所有组合 + 1 的分数形式呈现。表示回测过拟合概率 (PBO,Probability of Backtest Overfitting)。

  通过MetaTrader5平台下载,交易者可以访问到这些高级的策略测试和优化工具,从而更有效地评估和避免过度拟合的风险。MT5平台的这些功能,结合CSCV方法,为交易者提供了一个强大的框架,以确保他们的交易策略在实际市场中能够稳健地执行。因此,MetaTrader5平台下载不仅是获取交易工具的途径,也是确保策略有效性和可靠性的关键步骤。