bugs & dysfunctions

 

how many bugs do you know there is in MT5?
have  you reported them to service desk?
are they solved? 

for most of bugs there is a workaround. so you want wait for MQ to solve them, but you will use a workaround.

but even if there is a workaround, it would be useful to know that they exist, instead of loosing time in chasing some unexpected behaviour.
especially as there is no true debugger available, for strategy tester.

so this is a thread for reporting bugs and dysfunctions.
when something is not working, or not working as expected and there is no explanation in documentation. 

please do not post unless you have verified that what you have found is a bug or dysfunction.

you can also CONFIRM erratic behaviour reported!

 

g#1 -> #546258 | 2012.10.20 16:19 (yes, you see correctly, it is reported before almost half a year)

ENUM_APPLIED_PRICE type is generally NOT WORKING correctly in strategy tester

 

 

one more dysfunction regarding this pictures: the 3rd variable name is actually appliedPrice (visible in last picture),
but thanks to a feature that CANNOT BE TURNED OFF (why? why? why?) on 2nd picture you see the comment instead of variable name:

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

this one might be connected to previous:

by applying a test result, from optimization results (double click or right click-> Run single test), parameters are badly transferred in input parameter list

 

 

 
graziani:

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

ENUM_APPLIED_PRICE type is generally NOT WORKING correctly in strategy tester

So the value varies between 0 and 6 instead of 1 and 7.

I suppose a valid workaround while testing is to replace ENUM_APPLIED_PRICE with an int. Not tested.

 
angevoyageur:

So the value varies between 0 and 6 instead of 1 and 7.

I suppose a valid workaround while testing is to replace ENUM_APPLIED_PRICE with an int. Not tested.

yes, tested :)
 

g#3

setting indicator buffer as calculation buffer

SetIndexBuffer(1, up, INDICATOR_CALCULATIONS);

is not enough to prevent it from being drawn on graph.

To prevent it from being drawn, you also need to set PLOT_DRAW_TYPE to DRAW_NONE 

PlotIndexSetInteger(1, PLOT_DRAW_TYPE, DRAW_NONE);
 
graziani:

g#3

setting indicator buffer as calculation buffer

is not enough to prevent it from being drawn on graph.

To prevent it from being drawn, you also need to set PLOT_DRAW_TYPE to DRAW_NONE 

Do you have correctly setted #property indicator_plots ?

 
angevoyageur:

Do you have correctly setted #property indicator_plots ?

point is that if you mark indicator buffer as INDICATOR_CALCULATIONS buffer, you expect that it will not be possible to see it in any other way outside the indicator itself, however this is not true. you can see it in properties, on graph etc.

i didn't check if the buffer is visible to EAs through CopyBuffer( ) if marked as INDICATOR_CALCULATIONS buffer, but otherwise there is no change in buffer behaviour.

 

g #4

magnet (tools->options->charts->magnet sensitivity) is not functioning correctly with candles.

the selected points are not placed on typical candle points (high/low/...), but in space between.

beside this, if you move one point, others are moved as well, although you only wanted to move only one.

 

 
graziani:

point is that if you mark indicator buffer as INDICATOR_CALCULATIONS buffer, you expect that it will not be possible to see it in any other way outside the indicator itself, however this is not true. you can see it in properties, on graph etc.

i didn't check if the buffer is visible to EAs through CopyBuffer( ) if marked as INDICATOR_CALCULATIONS buffer, but otherwise there is no change in buffer behaviour.

You don't have to expect something other what is describe in documentation.

The number of buffers in an indicator must be declared in advance using compiler directives, for example:

#property indicator_buffers 3 // Number of buffers
#property indicator_plots   2 // number of plots

The number of buffer used to plot depends on the indicator type. This type can be setted dynamically. So the compiler don't have a way to determine correct use of your buffers. The declaration above could be use with 2 plots of 1 buffer, third with INDICATOR_CALCULATIONS, or 1 plot of 1 buffer and 1 of 2 buffers, or...

PlotIndexSetInteger(0,PLOT_DRAW_TYPE,DRAW_LINE);

MQL5 give you great flexibility, it's up to you to bound your buffer logically with your indicator(s). This isn't a bug

EDIT : Nor a dysfunction in my opinion ;-)

 
graziani:

g #4

magnet (tools->options->charts->magnet sensitivity) is not functioning correctly with candles.

the selected points are not placed on typical candle points (high/low/...), but in space between.

beside this, if you move one point, others are moved as well, although you only wanted to move only one.

 

What objects are you drawing, first seem a trendline, but second has only 2 anchor points ?

What is your setting for magnet sensitivity ?

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
Reason: