Errors, bugs, questions - page 490

 
stringo:

And a tick on one instrument will always be earlier than a tick on another instrument, even if they are marked with the same time.

thanks for the explanation. it all makes sense... I will optimise by one instrument,
and then go through all the tools used and use test runs to determine the best result.
 
crOss:
thanks for the explanation. it all makes sense... I will optimise by one instrument,
i would then go through all of the tools i have been using and use test runs to find the best result.

I've learned from my experience that the best variant is the one used by the Expert Advisor,

If the calculation of an entrance to the trade is done using the opening prices - then the test should be based on them,

If all ticks are used, the same ticks should be used, i.e., you should test it as you are going to trade,


i.e. you're going to trade then test them that way, i.e. if you're going to trade then test them that way.

the drawdowns are large as the momentum may be missed

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы - Документация по MQL5
 
crOss:
I will optimise one tool at a time,
and then go through all of the tools used and use test runs to determine the best result.

I don't recommend it. It will be a black box, not a system.

Get rid of the ticks of a particular instrument (OnTick) - it's a multicurrency tool! Work on a timer or catch the moment of the bar formation on all of the working symbols, it will be more reliable.

 
crOss:
I will optimise one instrument at a time,
and then go through all the tools you use and use test runs to determine the best result.

I don't recommend it. It won't be a system, it will be a black box.

Get rid of ticks of a particular instrument (OnTick) - it's a multicurrency! Work on a timer or catch the moment of the bar formation on all working instruments, it will be more reliable.


================================================================

I agree, but not necessarily on all symbols, one is enough, since I will optimize the time everywhere.

the same ...min 00sec and the easiest way to detect a new bar: (I've created it myself, it's very simple and effective)

//--- в глобальной переменной
datetime time;

//--- в OnTick() 
    datetime net[1];
    CopyTime (Symbol1, NULL, 0, 1, net);
    if (net[0]>time)
     {
      time = net[0];
      ...
     }
and to put the construct in OnTick in the place where you actually need this new bar
 

What do the numbers mean?

2011.08.18 21:43:08     Test (EURUSD,M15)       fabs((temp=-1.#IND)-( et=-1)) = f=1.#QNAN;
-1.#IND  ?????
1.#QNAN  ?????

And how to get rid of this error ????

By design temp should be equal to -1.0

ZS I have a check for equality to zero, but don't know how to check for equality to this -1.#IND

 
Urain:

What do the numbers mean?

And how to get rid of this error ????

Temp is supposed to equal -1.0

SZY I have a check for equality to zero, but do not know how to check the equality of this -1.#IND

On the fingers. The specified numbers are the result of some invalid mathematical operation. You can look it up. In particular, #IND resulted from taking the root of a negative number. In turn, the negative number below the root was formed due to an error in calculating the difference between double numbers. This is corrected by normalizing the difference.

There can also be problems when taking the logarithm from a negative number, dividing zero by zero, etc.

In your case "-1.#IND" may be something like "-1"+"#IND"

 
Im_hungry:

Get rid of the ticks of a particular instrument (OnTick) - it's a multicurrency! Work on a timer or catch the moment of bar formation on all working instruments, it will be more reliable.

================================================================

I agree, but it is not necessary for all symbols, one is enough.


It is not enough. You have to wait for the bar on all the working instruments.
 
Renat:

We deliberately made the cut-off date last so that there are no questions of "why two identical passes gave different results". Unfortunately, this is a massive situation that also affects all optimisation results. From the inclusion of the score to the last minute, everyone will get too many problems.

There has already been talk about this and there is still a "fight against windmills" going on. There is no such problem as you speak of. The user himself is able to specify the last date with the cut-off, if he wants a cut-off. And if he wants to test against all available data, then specifying any time known to be greater than the current time should capture all available data. This is in fact the option that you "might" want to do in the future - and it is already in the program, there is no need to artificially interfere with existing options.
 
Yedelkin:

On the fingers. The numbers indicated are the result of some incorrect mathematical operation. You can look it up. In particular, my #IND value was the result of taking the root of a negative number. In turn, the negative number below the root was formed due to an error in calculating the difference between double numbers. This is corrected by normalizing the difference.

There can also be problems when taking the logarithm from a negative number, dividing zero by zero, etc.

In your case "-1.#IND" may be something like "-1"+"#IND".

I know what #IND is, I was confused by -1.#IND.

Thanks for the answer, yes apparently somewhere taking the root of a negative number.

 
marketeer:
It is not enough. We need to wait for the bar on all of the working symbols.

Give me a harsh argument, I checked on my EA - both on 2 pairs (multic) and

on one the test result since 2000 on all ticks is no different as well as on 1 pair,

and the Expert Advisors with different strategies!


But if the calculation is not done on the text bar, but on the history of 2 or more bars (even if it is a million)

You have to search for the bar on the history!

Reason: