Errors, bugs, questions - page 1995

 
fxsaber:

You can fix it on MQL5 without the possibility of fixing it on the same MQL5 in the following way.

Create templates through ChartSaveTemplate, until the disk is full. And to delete them... no way!

Are you suggesting to add another dirty trick - deleting templates?
 
Slava:
Are you suggesting we add another nuisance - deleting templates?

Some kind of strawman solution is still needed. Because the Expert Advisor can accumulate all sorts of unnecessary templates in a folder of a dozen or so, and using the terminal by hand will become uncomfortable.


Split folders for manual and automatic templates. Automatic folder on full access. Manual only on manual.

 
Slava:
Are you suggesting we add another bug - deleting templates?

Allow templates to be saved in files\any directory, that's all, I have the same problem with templates....

 
fxsaber:

Explain.

Let me explain - I have just made two tests of the same advisor on a period of 7 years on all ticks - I observe 3 less trades in the first case. I am testing again - I get the same trades as in the test for OHLC M1

This is my problem. Tests are different. Yesterday I have tested on my servers and got one result, and then I got different deals in single run. How it may be? I don't use indicators - only h1 candlestick prices

 
A question for the developers. When is it planned to give Metatrader the ability to separate the charts from the programme? Most other programmes have had them for a long time. I have 3 monitors - it's not convenient. I have to download 2 more terminals in parallel and this is an additional load on broker's server
 
Anton Ohmat:

I just made two tests with the same Expert Advisor over a period of 7 years for all ticks - I observe 3 less trades in the first case. I am testing again - I get the same trades as in the test for OHLC M1

Here is my problem. Tests are different. Yesterday I tested on my servers - got some results, then in a single run other deals. How may this be? I don't use indicators - only h1 candlestick prices

Sorry - there is an error in my code. But I have a question.

I have encountered such a problem. I declared a bool array containing 13 items and made the wrong ArayFill(array,0,12 instead of 13, true). As it turned out, 13 items in the array triggered 2-3 runs true, and then 2-3 runs false.

I think bool elements of the array should be false by default. Right?

 
Anton Ohmat:

Sorry - a mistake in my code. But a question has arisen.

It turns out I encountered such a problem. I declared a bool array with 13 elements and made wrong ArayFill(array,0,12 instead of 13, true). As it turned out, 13 elements in the array triggered 2-3 runs true, and then 2-3 runs false.

It seems that bool elements of an array must be false by default. Isn't it?

This is left to the programmer in mql5. In this case, we can use ArrayInitialize(array, true), or ArayFill(array,0,ArraySize(array), true).

 
Anton Ohmat:

Sorry - a mistake in my code. But a question has arisen.

It turns out I encountered such a problem. I declared a bool array with 13 elements and made wrong ArayFill(array,0,12 instead of 13, true). As it turned out, 13 array elements 2-3 runs true, and then 2-3 runs false.

The default bool elements of the array should be false at all times. Right?

There should be rubbish there. This is exactly the case.

Forum on trading, automated trading systems and strategy testing

Bugs, bugs, questions

fxsaber, 2017.09.10 17:17

Of course, you need to rule out the factor of your own stupidity. For example, that the EA does not work randomly.

I suggest the moderators add a warning about such randomness in the explanation of the tester documentation, why the results are different.
 
Vladimir Pastushak:

Allow templates to be saved in files\any directory, that's all.

Who's stopping you?

ChartSaveTemplate(chart_id,"\\Files\\MyPreferredTemplates\\cewl.tpl");

 
Alexey Viktorov:

In mql5 this is left up to the programmer. In this case, you can use ArrayInitialize(array, true) or ArayFill(array,0,ArraySize(array), true)

I wondered if it is correct since it produces such VERY hard-to-detect errors.

The very fact that the program works incorrectly is very hard to catch. Then to find out the reason, you have to reproduce the error, which is just as hard. And then you have to dig through a huge code where an initialization of some variable is incomplete - horrible. Warnings help a lot with this. But only simple cases. The same as initialization not on the whole array is unrealistic to check at compile time.

Reason: