对MQL5的祝愿 - 页 27

 
SK. писал (а):
集体解决的时代已经结束,而且已经失败。总是有极少数人站在最前面,受到他们自己想法的启发。他们是决定我们生存条件的人。

有一个脱帽的笑脸/:-)

追踪了人类的历史,我完全想不起有什么集体决定。在这里你是对的。这就是为什么我写道,如果一个开发者真的对......。这将是他兴趣的一种表示,而不是另一种维持用户自尊的甜美药丸。

 

一个关于当前版本的问题,同时也是对未来版本的一个愿望。
在测试器中,当使用 "来自指标的指标 "测试一个EA时。
没有足够的模型时间来询问这些指标。
比如说。
指示器#1和#1.1从iMA()接收数据
指标2以指标1和1.1的数据为基础。
指标3根据指标2的数据进行二次计算
专家顾问的民意调查指标3。

在测试过程中,专家顾问没有收到任何数据(尽管它在交易模式下完美地工作)。
看起来是这样的:在测试期间,专家顾问可能会给出一两个正确的交易,然后保持沉默。
因为指标出来的机器零=2147483647。
-一些堆栈溢出了吗?
-当GetLastError()==0时
-它不依赖于酒吧可视化和建模的速度。
- 如果我们把指标移到专家顾问中,在专家顾问的计算中,测试就可以达到一定的时间限制。

1.在策略测试器中是否有任何设置可用于增加轮询指标的时间?
2.GetLastError()是否会检测到错误 "指标没有得到"/"专家顾问没有得到")。?
也就是说,现在这个错误只能通过返回2147483647来检测绘制DRAW_LINE的指标。

 
Korey:

咨询师对指标3进行投票。

测试时,专家顾问没有收到任何数据,(尽管它在交易模式下工作正常)。
看起来是这样的,在运行过程中,EA可能会给出一到两个正确的交易,之后就没有声音了。
因为指标来机零=2147483647。
-一些堆栈溢出了吗?
-当GetLastError()==0时

...


你在指标上有一个明显的问题。当你得到正确版本的指标时,所有关于计算同步性的问题都会消失。由于指标中的错误,你认为有些东西没有及时计算,有一些 "指标计算的等待名单"。事实并非如此!
 
Rosh:
科里

咨询师对指标3进行投票。

测试时,专家顾问没有收到任何数据,(尽管它在交易模式下工作正常)。
看起来是这样的,在运行过程中,EA可能会给出一到两个正确的交易,之后就没有声音了。
因为指标出来的机器零=2147483647。
-一些堆栈溢出了吗?
-当GetLastError()==0时

...


你显然对这个指标有意见。当你得到正确版本的指标时,所有关于计算同步性的问题都会消失。由于指标中的错误,你认为有些东西没有及时计算,有一些 "指标计算的等待名单"。事实并非如此!


我确实找到了我一贯的错位来回应你的评论。
指标中计算的条数被限制为max=1000(我习惯于节省资源)。
将最大限度提高到3000,就可以了。
也就是说,错误在于计算出的条数只有1000条。
谢谢你,一个巨大的感谢,因为我已经做了一年多没有质量检测了!!!。

然而,我没有办法从逻辑上解释为什么不能这样做。-B 索引缓冲区在测试器中的工作方式是否不同?
为什么,如果我在我的EA中需要0,1,2条,我应该计算1000条以上的指标条?

 
在测试器中,一切工作方式都与在线相同,这是特意设计的。MetaTrader 4中的测试器:必须知道的信息
 

允许程序员在不连接网络的情况下测试程序是可取的。

 
Rosh:
在测试器中,一切工作方式都与在线相同,这是特意设计的。MetaTrader 4中的测试仪:这是一个必须知道的 问题

指标逻辑中的违规行为只与一件事有关--"错误地 "设置计算深度<1024。
因此。
1.你事先不知道,也不清楚,在计算指标的时候,比BARS小得多的数字是什么?
在交易和测试中,指标线都会消失。
因此,值得在文件中进行补充,比如说。
"当计算指标的条数少于....(1024?)时,不能保证稳定运行"。
...我在论坛里面添加了一个指标,限制为1000条,突然我发现。
当第一次调用时,它有时会拒绝划线。当我取消深度限制时,一切都很正常。

2.如果有可能且明显地从指示器中返回机器零点,而不是缓冲器的索引值。
同样,最好能以某种方式抓住它。(关于isi编程)))
a)如果它在阵列之外,那么为什么追踪器没有抓住它?
b)或者,你应该强制初始化分配给索引缓冲区的内存,值为-(666666))
以便将索引缓冲区的空值与没有计算的情况区分开来。

 
经过一个月对MQL4的了解,我意识到这是一种非常严肃的语言),在其专业领域,它可能是最好的。但它强烈地缺乏一个成熟的编程语言的逐步调试器。然而,我没有读完这个话题的所有27页,所以如果这个请求已经被张贴出来,请原谅我。
 
这里有一个想法。当撤消或重新计算时,指标应该有选择地只删除 "它们 "的对象,即为了找到它们,它们的名称中应该有指标属性。我通常在对象名称中使用指标名称。但当一个图表中有几个相同的指标时,它就不起作用了。我们可以假设终端中的每个指标实例都有一个唯一的ID。如果有一个函数来访问这个ID就好了,那么问题就可以简单解决了:Object_Name = ID+"内部对象名称"。
 
先生们,我们为MQL5的未来许下了如此多的愿望,上帝保佑,我们至少应该这样做。也许现在是时候告诉我们自己要停止了?也许是时候让开发者告诉我们这种语言会是什么样的,也许他会给我们一些东西来测试?例如,为了测试调试器--我认为这是MQL5实现的一个很好的起点。据我所知,调试器也应该支持MQL4代码...如果它准备好了,为什么不测试一下呢?
你们开发人员对此有何感受?