错误、漏洞、问题 - 页 130

 

谁能告诉我编译时的警告是什么?

truncation of constant value    me-mm-cls-v003.mqh      64      45
一般来说,我在哪里可以找到关于编译错误和警告的描述?
 
pronych:

一般来说,在哪里可以找到对编译错误和警告的描述

参见MQL5参考/ 标准常量、枚举和结构/ 错误和警告代码/ 编译器警告

还有邻近的部分。

Документация по MQL5: Стандартные константы, перечисления и структуры / Коды ошибок и предупреждений / Предупреждения компилятора
Документация по MQL5: Стандартные константы, перечисления и структуры / Коды ошибок и предупреждений / Предупреждения компилятора
  • www.mql5.com
Стандартные константы, перечисления и структуры / Коды ошибок и предупреждений / Предупреждения компилятора - Документация по MQL5
 

帮助解决一个惊人的谜题 :)

在演示中一切正常,但在测试器中,没有开始测试就挂掉了。我的意思是,测试器显示1.1%,没有其他事情发生,我按下撤消按钮,测试分别停止。

我在主EA中有很多参数,我还没有搞清楚...

一般来说,就是这一段代码。这里定义了当前系列的抛物线的 第一个点。

if(SLпоПервойТочкеПараболика==true)
   for(i=0;;i=i+1)
      {
      if(iLow(PERIOD_CURRENT,i+1,1)<Параболик(PERIOD_CURRENT,0.02,0.2,i+1))
         break;
      }

如果使用这段代码,测试者就会挂掉,但如果SLfirstParabolic Point=false,一切就正常了。实际上,在任何情况下,一切工作都是准确的,没有错误的。

附件中的代码是一个现成的专家顾问。

附加的文件:
Otladka.mq5  8 kb
 
Dmitriy2:

作为一个现成的EA,其代码附在后面

你忘了附上EA。
 
alexvd:
你忘了附上EA。

我似乎无法附加文件,我试了五次......

ps 我把它作为代码粘贴了。

 
Dmitriy2:

我似乎无法附加文件,我试了五次......

ps 我把它粘贴成了代码

刚刚检查了一下,它起作用了。你的浏览器是什么,文件名是什么?
 

Rosh:
Только что проверил - код вставился. Какой у Вас браузер, какое имя файла?

代码已插入,文件未附

IE8, HP首页

文件名既有俄文也有英文 Debugging.mq5 Otladka.mq5

我做了正确的事?我点击 "附加文件",概览,选择文件并按 "更新"。

 
Dmitriy2:

我做得对吗?我点击 "附加文件",审查,选择文件,并点击 "更新"。

步骤是正确的,情况已经重现。

我们会尽快修复它。

 
alexvd:

步骤是正确的,情况已经重现。

我们会尽快修复它。

是的,谢谢,但代码如果有的话,我想尽快找出测试者挂断的原因......:)

 
Dmitriy2:

是的,谢谢,但有一个代码,如果有的话,我想尽快找出测试器挂断的原因......:)


它挂起的原因是无限循环。

你只有一条路可走--通过断绝关系。但当某个条件得到满足时,你就有了休息的机会。其中一个组成部分

Параболик(PERIOD_CURRENT,0.02,0.2,i+1)

在函数中,你每次都得到指标句柄,并复制它而不检查数据是否准备好。

建议。

1.把手柄变量带到全局水平。

2.在OnInit时接收指标句柄(反正你不改变抛物线参数)。

3.在从指标缓冲区 复制数据之前,检查它是否准备好了(计算好了)--BarsCalculated(Parabolic)函数将帮助你。

4) 如果第3项没有得到满足,则组织退出循环。3没有得到满足。