错误、漏洞、问题 - 页 2150

 
Vladislav Andruschenko:

1755号航站楼

当使用专家顾问并进行编译时--其更新版本出现在图表上--一切正常。

但在测试器中,我选择了这个EA,在编译后又选择了另一个(以前的)EA。

重新启动后--一切正常。

古老的问题。

 

一些测试器_文件的缺陷。按部就班地播放

  1. 留下一个工作的本地代理,并清理终端沙箱 - MQL5\Files\*.*
  2. 编译EA
    #property tester_file __FILE__
    
    sinput uint Range = 100; // Входной параметр для Оптимизации
    
    #define  SETRANGE(A, START, STEP, END) ParameterSetRange(#A, true, A, START, STEP, END)
    
    void OnTesterInit()
    {
      SETRANGE(Range, 0, 1, Range);
      
      const int handle = FileOpen(__FILE__, FILE_WRITE | FILE_BIN );
      
      // Создаем файл на 4 байта
      if (handle != INVALID_HANDLE)
      {
        FileWriteInteger(handle, 0);
        
        FileClose(handle);
      }
    }
    
    void OnTesterDeinit() { ChartClose(); }
    
    #define  TOSTRING(A) #A + " = " + (string)(A) + " "
    
    void OnTesterPass()
    {
      ulong Pass;
      string Name;
      long ID;
      double dOnTester;
      uchar Data[];
    
      while (FrameNext(Pass, Name, ID, dOnTester, Data))
        Print(TOSTRING(Pass) + TOSTRING(ID)); // Распечатываем размер файла на Агенте
    
      return;
    }
    
    double OnTester()
    {
      const int handle = FileOpen(__FILE__, FILE_READ | FILE_WRITE | FILE_BIN );
    
      const int i = (int)((handle != INVALID_HANDLE) ? FileSize(handle) : -1);
      
      // Делаем файл 4 байта, делаем - 8.
      if ((handle != INVALID_HANDLE) && (FileSize(handle) == INT_VALUE))
      {
        FileSeek(handle, 0, SEEK_END);
        FileWriteInteger(handle, 0);
              
        FileClose(handle);
      }
    
      uchar Data[];    
      FrameAdd(NULL, i, 0, Data); // Передаем размер файла до изменений.
      
      return(0);
    }

  3. 这样做的时候,测试仪的日志文件中会出现一条信息,说测试仪_文件还不存在。
    2018.02.28 08:37:29.574 Moving Average  tester_file 'Moving Average.mq5' is not exist
    2018.02.28 08:37:29.574 Moving Average  tester_file 'Moving Average.mq5' is not exist

  4. 在完全蛮力优化模式下,通过策略测试器中的开盘价运行专家顾问。我们将在测试者的日志中看到
    2018.02.28 21:20:24.424 Statistics      optimization done in 0 minutes 03 seconds
    2018.02.28 21:20:24.424 Statistics      local 101 tasks (100%), remote 0 tasks (0%), cloud 0 tasks (0%)

  5. 立即按 "开始 "重新启动这个相同的优化程序。我们将得到更慢的优化30倍--错误!
    2018.02.28 21:23:02.219 Statistics      optimization done in 1 minutes 06 seconds
    2018.02.28 21:23:02.219 Statistics      local 101 tasks (100%), remote 0 tasks (0%), cloud 0 tasks (0%)


  6. Frame-advisor的结果将显示,现有的文件没有被转移,因为编译过程是在没有它的情况下进行的(见步骤3)。虫子还是虫子?
  7. 重新编译专家顾问。在这种情况下,我们不会收到第3页中显示的信息,这是对的。
  8. 重新启动优化 程序。Frame-Advisor将显示tester_file已被转移到Agent中。
    2018.02.28 21:28:33.449 Moving Average (EURUSD,M1)      Pass = 0 ID = 4 
    2018.02.28 21:28:33.472 Moving Average (EURUSD,M1)      Pass = 1 ID = 8 
    2018.02.28 21:28:33.495 Moving Average (EURUSD,M1)      Pass = 2 ID = 8 
    2018.02.28 21:28:33.519 Moving Average (EURUSD,M1)      Pass = 3 ID = 8 

  9. 重新运行优化。但在帧模式下,我们会看到测试仪_文件在第二次启动时没有传递给优化器--错误! 我们会得到减速,如步骤4。
    2018.02.28 21:28:43.727 Moving Average (EURUSD,M1)      Pass = 0 ID = 8 
    2018.02.28 21:28:43.797 Moving Average (EURUSD,M1)      Pass = 1 ID = 8 
    2018.02.28 21:28:43.834 Moving Average (EURUSD,M1)      Pass = 2 ID = 8 
    2018.02.28 21:28:43.864 Moving Average (EURUSD,M1)      Pass = 3 ID = 8 


  10. 我们将运行第三个优化,并在第8步获得结果。
  11. 第四,我们在步骤9中获得结果。
  12. 因此,每一个奇数运行的优化给你的是步骤8的结果,偶数的优化给你的是步骤9的结果。

EA是做什么的。在框架模式下,在OnTesterInit中,它创建了一个4字节的文件,并通过tester_file机制将其发送给Agent。代理人打开它,如果看到文件大小是4字节,就会把它追加到8字节。Agent本身通过帧传递原始文件的大小,单位为字节。因此,它被检查出文件是在优化器的第一道程序中传输的,而其他程序则是与文件一起工作的,这些文件暂时位于Agent本身的沙盒中。

一般来说,我们设法重现了一些错误。

 

这个问题可能已经被问过了,但尽管如此。

是否可以在MQL5中调用指标参数窗口?

 

关于交易、自动交易系统和交易策略测试的论坛

关于 "跨平台交易顾问:介绍 "的讨论

fxsaber, 2016.08.17 16:51

切换到StringConcatenate 的例子。很难理解人们在MT4/5中使用这个功能。它不仅繁琐,而且甚至不清楚。在这两个平台上,字符串连接一直都是通过+运算符实现的。所以对字符串使用StringConcatenate相当于使用 "NumberSummary "函数来获得数字的总和。简而言之,是荒谬的。

这不仅是荒谬的,而且也不是跨平台的。

 
Andrii Djola:

这个问题可能已经被问过了,但尽管如此。

是否可以在MQL5中调用指标参数窗口?

据我所知,MQL中没有这样的功能。
但通过WinAPI,你可以打开所有指标的列表,通过指标树查看并找到正确的指标。

 
Andrii Djola:

也许这个问题已经被问过了,但还是。

是否可以在MQL5中调用指标参数窗口?

服务台已经答应考虑这样的功能。

 

为什么会发生这种情况?

2018.03.01 06:54:04.342 Tester "MQL5\Experts\MyExpert.ex5 "的调试版本只能在本地代理上优化,没有云,没有农场

我怎样才能解决这个问题?


 
Nexxtor:

为什么会发生这种情况?

2018.03.01 06:54:04.342 Tester "MQL5\Experts\MyExpert.ex5 "的调试版本只能在本地代理上优化,没有云,没有农场

我怎样才能解决这个问题?


先编译,再运行优化

 
在 "Bases\MetaQuotes-Demo\history\"文件夹中出现了一个与自定义符号 有关的2018.hcc文件夹。错误。
 

在延续测试仪的这一伟大功能 的同时。运行 "优化",我得到这样的结果


核心1日志

KE      0       14:23:25.855    Startup MetaTester 5 x64 build 1755 (18 Jan 2018)
KP      0       14:23:25.862    Server  MetaTester 5 started on 127.0.0.1:3000
OJ      0       14:23:25.862    Startup initialization finished
JQ      0       14:23:25.871    127.0.0.1       login (build 1755)
HG      0       14:23:38.760    Network 38520 bytes of account info loaded
JP      0       14:23:38.760    Network 1482 bytes of tester parameters loaded
QG      0       14:23:38.760    Network 2236 bytes of input parameters loaded
OP      0       14:23:38.771    Network 4605 bytes of symbols list loaded
NK      0       14:23:38.771    Tester  expert file added: Experts\fxsaber\Test.ex5. 115516 bytes loaded
NM      0       14:23:38.771    Network 1368 bytes of optimized inputs info loaded
CH      0       14:23:38.774    Tester  successfully initialized
HL      0       14:23:38.774    Network 118 Kb of total initialization data received
JF      0       14:23:38.775    Tester  Intel Core i7-2700 K  @ 3.50 GHz, 16301 MB
KL      0       14:23:38.775    Tester  optimization pass 0 started (batch of 30 tasks)


Core2日志。

CQ      0       14:25:27.983    Startup MetaTester 5 x64 build 1755 (18 Jan 2018)
MD      0       14:25:27.988    Server  MetaTester 5 started on 127.0.0.1:3001
FO      0       14:25:27.989    Startup initialization finished
FM      0       14:25:29.021    127.0.0.1       login (build 1755)
HK      0       14:25:29.026    Network 38520 bytes of account info loaded
IL      0       14:25:29.026    Network 1482 bytes of tester parameters loaded
RK      0       14:25:29.026    Network 2236 bytes of input parameters loaded
QL      0       14:25:29.029    Network 4605 bytes of symbols list loaded
PG      0       14:25:29.030    Tester  expert file added: Experts\fxsaber\Test.ex5. 115516 bytes loaded
DI      0       14:25:29.030    Network 1368 bytes of optimized inputs info loaded
HL      0       14:25:29.032    Tester  successfully initialized
GP      0       14:25:29.032    Network 118 Kb of total initialization data received
JR      0       14:25:29.032    Tester  Intel Core i7-2700 K  @ 3.50 GHz, 16301 MB
KI      0       14:25:29.033    Tester  optimization pass 180 started (batch of 30 tasks)


所有的特工都在开始前准备好了。没有显像剂。Core2(和Core2--见截图)在启动两分钟后开始。让我们来解决这个问题!