错误和功能紊乱

 

你知道MT5有多少个bug?
你向服务台报告了吗?
它们是否得到了解决?

所以你要等待MQ来解决这些问题,但你会使用一个变通的办法。

但即使有解决方法,知道它们的存在也是有用的,而不是浪费时间去追寻一些意外行为。
特别是在没有真正的调试器的情况下,对于策略测试者 来说。

因此,这是一个用于报告错误和功能障碍的主题。
当某些东西不工作,或不像预期的那样工作,而文档中没有解释

除非你已经证实你所发现的是一个错误或功能障碍,否则请不要发帖。

你也可以证实所报告的不稳定行为!

 

g#1 -> #546258|2012.10.20 16:19 (是的,你没看错,这是近半年前的报告)

ENUM_APPLIED_PRICE类型在策略测试器中通常不能正确工作

关于这个图片还有一个问题:第三个变量名称实际上是appliedPrice(在最后一张图片中可见)。
但由于一个无法关闭的功能(为什么? 为什么? 为什么?

input int                  period;        // averaging period
input ENUM_MA_METHOD       method;        // smoothing type
input ENUM_APPLIED_PRICE   appliedPrice;  // type of price or handle

 

g#2-> #546258|2012.10.20 16:19

这个问题可能与之前的问题有关。

通过应用一个测试结果,从优化结果(双击或右击->运行单个测试),参数在输入参数列表中被错误地转移。

 
graziani:

g#1 -> #546258|2012.10.20 16:19

ENUM_APPLIED_PRICE类型在策略测试器中通常不能正确工作

所以数值在0和6之间变化,而不是1和7。

我想在测试时,一个有效的变通方法是 用一个int代替 ENUM_APPLIED_PRICE。没有测试。

 
angevoyageur:

所以值在0和6之间变化,而不是1和7。

我想在测试时,一个有效的变通方法是 用一个int代替 ENUM_APPLIED_PRICE。没有测试。

是的,测试过 :)
 

g#3

指标缓冲区 设置为计算缓冲区

SetIndexBuffer(1, up, INDICATOR_CALCULATIONS);

并不足以阻止它在图形上被绘制。

为了防止它被绘制,你还需要将PLOT_DRAW_TYPE 设置为DRAW_NONE

PlotIndexSetInteger(1, PLOT_DRAW_TYPE, DRAW_NONE);
 
graziani:

g#3

指标缓冲区 设置为计算缓冲区

并不足以阻止它在图形上被绘制。

为了防止它被绘制,你还需要将PLOT_DRAW_TYPE 设置为DRAW_NONE

你是否正确设置了#property indicator_plots ?

 
angevoyageur:

你是否正确设置了#property indicator_plots?

重点是,如果你把指标缓冲区 标记为INDICATOR_CALCULATIONS 缓冲区,你会认为在指标本身之外不可能以任何其他方式看到它,但事实并非如此。你可以在属性、图形等方面看到它。

我没有检查,如果标记为INDICATOR_CALCULATIONS缓冲区,通过CopyBuffer( ), 缓冲区是否对EA可见,但除此之外,缓冲区行为没有变化。

 

g #4

磁铁(工具->选项->图表->磁铁灵敏度)对蜡烛的作用 不正常。

选定的点不是放在典型的蜡烛点上(高点/低点/...),而是放在中间的空间。

在这种情况下,如果你移动一个点,其他的也会被移动,尽管你只想移动一个。

 
graziani:

重点是,如果你把指标缓冲区 标记为INDICATOR_CALCULATIONS 缓冲区,你会认为在指标本身之外不可能以任何其他方式看到它,但事实并非如此。你可以在属性、图形等方面看到它。

我没有检查,如果标记为INDICATOR_CALCULATIONS缓冲区,那么通过CopyBuffer( ), 缓冲区是否对EA可见,但除此之外,缓冲区的行为没有变化。

你不必期待文件 中所描述的其他东西。

指标中的缓冲区数量必须使用编译器指令 提前声明,例如。

#propertyindicator_buffers 3// 缓冲区的数量
#propertyindicator_plots 2// 绘图的数量

用于绘图的缓冲区的数量取决于指标类型。这个类型可以动态地 设置。所以编译器没有办法确定缓冲区的正确使用。上面的声明可以使用1个缓冲区的2个绘图,第三个是INDICATOR_CALCULATIONS,或者1个缓冲区的1个绘图和2个缓冲区的1个,或者...

PlotIndexSetInteger(0,PLOT_DRAW_TYPE,DRAW_LINE);

MQL5给了你很大的灵活性,这取决于你如何将你的缓冲区与你的指标逻辑地结合起来。这并不是一个错误

编辑:在我看来也不是什么功能障碍;-)

 
graziani:

g #4

磁铁(工具->选项->图表->磁铁灵敏度)对蜡烛的作用不正常。

选定的点不是放在典型的蜡烛点上(高点/低点/...),而是放在中间的空间。

在这种情况下,如果你移动一个点,其他的也会被移动,尽管你只想移动一个。

你画的是什么对象,第一个似乎是趋势线,但第二个只有两个锚点

你对磁铁灵敏度的设置是什么?

Documentation on MQL5: Standard Constants, Enumerations and Structures / Objects Constants / Methods of Object Binding
Documentation on MQL5: Standard Constants, Enumerations and Structures / Objects Constants / Methods of Object Binding
  • www.mql5.com
Standard Constants, Enumerations and Structures / Objects Constants / Methods of Object Binding - Documentation on MQL5