文章 "开发多币种 EA 交易(第 9 部分):收集单一交易策略实例的优化结果"

 

新文章 开发多币种 EA 交易(第 9 部分):收集单一交易策略实例的优化结果已发布:

让我们来概述一下 EA 开发的主要阶段。首先要做的一件事就是优化所开发交易策略的单个实例。让我们试着在一个地方收集优化过程中测试器通过的所有必要信息。

从本质上讲,我们需要存储和使用的主要类型的数据是多个 EA 的优化结果。如您所知,策略测试器会将所有优化结果记录在以 *.opt 为扩展名的独立缓存文件中,然后可以在测试器中重新打开,甚至可以在另一个 MetaTrader 5 终端的测试器中打开。文件名是根据优化后的 EA 名称和优化参数计算出的哈希值来决定的。这样,在优化提前中断或改变优化标准后继续优化时,就不会丢失已完成的通过的信息。

因此,正在考虑的方案之一是使用优化缓存文件来存储中间结果。fxsaber提供了一个很好的,允许我们访问 MQL5 程序中保存的所有信息。

但是,随着优化次数的增加,包含优化结果的文件数量也会增加。为了避免混淆,我们将需要为这些缓存文件的存储和处理提供一些额外的结构。如果优化不是在一台服务器上进行的,那么就有必要实现同步或将所有缓存文件存储在一个地方。此外,在下一阶段,我们还需要进行一些处理,以便在下一阶段将获得的优化结果导出到 EA 中。

然后,我们来看看如何在数据库中处理存储所有结果。乍一看,这需要大量时间来实现。但是,这项工作可以分成几个较小的阶段,我们将能够立即使用其成果,而无需等待全面实现。这种方法还允许更自由地选择最方便的方式对存储结果进行中间处理。例如,我们可以将一些处理分配给简单的 SQL 查询,将一些处理分配给 MQL5 中的计算,将一些处理分配给 Python 或 R 程序。我们可以尝试不同的处理选项,并选择最合适的选项。

作者:Yuriy Bykov