In the previous articles (Optimization Management (Part I) and Optimization Management (Part 2)) we considered a mechanism for launching the optimization in the terminal through a third-party process. This allows creating a certain Optimization Manager which can implement the process similarly to a trading algorithm implementing a specific...
This is the next article within a series devoted to the creation of an automated optimizer, which can perform walk-through optimization of trading strategies. The previous article described the creation of a DLL to be used in our auto optimizer and in Expert Advisors. This new part is entirely devoted to the MQL5 language. We will consider...
In the previous articles (Optimization Management (Part I) and Optimization Management (Part 2)) we considered a mechanism for launching the optimization in the terminal through a third-party process. This allows creating a certain Optimization Manager which can implement the process similarly to a trading algorithm implementing a specific...
新的MetaTrader 5平台测试版构建2245。MQL5中3D可视化的DirectX功能和策略测试器的符号设置
18. Tester: A plethora of new features and improvements: ...
在此 阅读更多信息
发表了一篇好文章-
----------------
连续行走-前向优化(第一部分)。与优化报告一起工作
在之前的文章中(优化管理(第一部分) 和优化管理(第二部分)),我们考虑了通过第三方程序在终端启动优化的机制。这允许创建一个特定的优化管理器,它可以实现类似于交易算法实现特定交易过程的过程,即在完全自动化的模式下,没有用户干扰。这个想法是创建一个管理滑动优化过程的算法,在这个过程中,前进期和历史期按预设的时间间隔移位并相互重叠。
这种算法优化的方法可以作为策略稳健性测试,而不是纯粹的优化,尽管它同时执行这两个角色。因此,我们可以找出一个交易系统是否稳定,并可以确定该系统的指标的最佳组合。由于所描述的过程可能涉及不同的机器人系数过滤和最佳组合选择方法,我们需要在每个时间间隔(可能是多个时间间隔)检查这些方法,所以这个过程很难手动执行。此外,我们可能会遇到与数据传输有关的错误或与人为因素有关的其他错误。因此,需要一些工具,从外部管理优化过程,而不需要我们干预。创建的程序符合设定的目标。为了更有条理地介绍,程序创建过程被分成几篇文章,每篇文章都涉及程序创建过程的一个特定领域。
这一部分致力于创建一个工具包,用于处理优化报告,从终端导入报告,以及对获得的数据进行过滤和排序。为了提供一个更好的演示结构,我们将使用*xml文件格式。文件中的数据可以被人类和程序读取。此外,数据可以在文件内部分组,因此可以更快、更容易地获取所需信息。
我们的程序是一个用C#编写的第三方程序,它需要创建和读取创建的*xml文件,与MQL5程序类似。 因此,报告创建块将被实现为一个DLL,它可以在MQL5和C#代码中使用。因此,为了开发一个MQL5代码,我们将需要一个库。我们将首先描述库的创建过程,而下一篇文章将提供对MQL5代码的描述,该代码与创建的库一起工作并生成优化参数。我们将在本文中考虑这些参数。
发表了一篇好文章-
----------------
连续行走-前向优化(第一部分)。与优化报告一起工作
继续第二部分
----------------
连续走动优化(第2部分)。为任何机器人创建优化报告的机制
这是致力于创建自动优化器系列的下一篇文章,它可以对交易策略进行穿行式优化。上一篇文章 描述了创建一个DLL,用于我们的自动优化器和专家顾问系统中。这个新的部分完全是针对MQL5语言的。我们将考虑优化报告的生成方法和在你的算法中应用这一功能。
策略测试器不允许从专家顾问中访问其数据,而提供的结果缺乏细节,因此,我们将使用我以前的文章中实现的优化报告下载功能。由于该功能的个别部分已被修改,而其他部分在以前的文章中没有完全涵盖,让我们再次考虑这些功能,因为它们构成了我们程序的关键部分。让我们从其中一个新功能开始:增加自定义委托。本文描述的所有类和函数都位于Include/History manager目录下。
关于交易、自动交易系统和测试交易策略的论坛
新版本的MetaTrader 5 build 2340平台。在测试器中管理账户设置并扩大与Python的整合
Renat Fatkhullin, 2020/02/25 19:46
测试版2341出来了,修复了代理中加载*.dll的问题。关于交易、自动交易系统和测试交易策略的论坛
如何配置MT5在策略测试时使用所有 "代理->本地:4个核心"?
Fernando Morales, 2020.03.28 11:04
在优化过程中会用到代理。对于回溯测试,只需要一个代理
今天我在我的本地农场进行了测试,我在Linux上使用的metatrader 5的代理消失了,我试着单独安装metatester,但仍然不能工作。
日志显示 "2020.04.18 17:15:22.124 测试者云服务器已关闭"
今天我在我的本地农场进行了测试,我在Linux上使用的metatrader 5的代理消失了,我试着单独安装metatester,但仍然无法工作。
和日志指出 "2020.04.18 17:15:22.124 测试者云服务器被关闭"
...这可能是一些限制...
我知道云计算在VPS和32位Metatrader中不工作(但我不确定Linux...这可能是同样的限制)。
我想使用不同的PC子集,如IP 180.214.90.6,而不是使用本地网络192.168.1.5。
192.168.1.5是可以通过的,连接和工作良好。
180.214.90.6的日志总是显示连接....(没有密码问题或任务发生...)。
如果这有可能做到吗?
我做了更多的测试案例......(而且没有调试信息来确定发生了什么?这是假的。)
测试环境MT5Build 2410(2020年5月8日) / Win10 x64 base/所有PR >120 所有软件使用相同的版本。
nb 192.168.18.3
pc1 192.168.18.7
PC2 180.214.90.6 -->(192.168.18.5)
PC3 192.168.18.8 (Ubuntu)
案例A NB可以看到PC1(但是速度被最低的那台限制了,看起来负载平衡没有发挥作用?)
案例B PC1不能看到NB
案例C NB,PC1不能看到PC2
案例D PC1可以看到本地网络中的PC1。
案例E NB可以看到PC3(ubuntu添加winbind后)。
我尝试了不同的使用方法。而PC1里面有几个代理,我不知道它是否会有副作用?
我尝试检查 防火墙,并删除代理,然后重新添加。
这是不可能的。
连续行走-前向优化
----------------
"由于代理数量过多,内存 明显不足,超线程核心的计算速度下降,我们决定在云端工作时只限制在物理核心。
..
长期以来,我们在向代理发布任务之前,一直在评估代理的大致资源充足性,其中一个最有效的方法是在云中只在物理核心上工作。
在本地,你可以使用所有的核心,因为你可以轻松地控制它们的关闭"。
在我的新硬件上(AMD Ryzen 9300,32GB DDR4),我正在观察一些代理结果--这些代理(大概)是在超线程核心上运行,在策略测试器中产生错误的结果。
因此,在我看来,不可能在本地使用所有的核心--或者谁能证实在他/她的超线程核心上测试是可行的?