strange observation about "Visual" and From/To settings in Tester - page 2

 
4x4ever:
Because I am not a baby I will not go down to your level and will not call you names.

What we have here is an obvious BUG:
Inputs: Recalculate=ON, Visual=OFF; Result: wrong dates
Inputs: Recalculate=ON, Visual=ON; Result: correct dates
Conclusion: From/To dates are only refreshed when using Visual.
I don't know how much simpler I can say it so it registers with you.

I spend hours to setup my tests, to reproduce the bugs, to generate the screenshots and the log files and to post them on this forum, at the same time trying to word my posts as polite as possible so I don't offend somebody. Do you think I like wasting my time or do you think I do this to make you look bad as a programmer? The easiest thing for me is to remember that if I want new From/To dates - I need to select Visual. I try to help you, with best intentions and with the idea to make MT4 a better and more user-friendly software for all of us and what I get in return is "baby".

When I get bug reports treat them as opportunity to make our software better, not as personal attacks on my skills as a programmer. Because I know that nobody is God and we all make mistakes and we all write buggy code sometimes. Now this is a bug. It is your choice whether to fix it or not. If you don't intend to fix bugs in the near future - fair enough. Just say it. "Right now we will not be fixing bugs because we have other priorities - new releases, new software... etc". I can understand that. But don't send me off to read articles which have NOTHING in common with the problem I am reporting.

And I bet you didn't even try to reproduce this problem.

  1. Use latest build of MetaTrader 4 Client Terminal.
  2. Post your EA please. We will show you that no any errors during testing you can find.
 
Craig:
Welcome to the wonderful world of MQL support :)
I posted a bunch of bugs on here and just got ignored, then one of Metaquotes fan boys gave me a reeming in another forum for suggesting MetaTrader even had bugs!!
Once you get past the dates thing you will probably find your backtest data is complete garbage anyway, you have to backtest with Alphari data & MetaTrader offline so that it does not try to 'blend' together different data sources, that my friend, is the real killer.

Could you please start new topic with problem description instead words like 'wonderful world'? May we help you?
 
4x4ever wrote:
What we have here is an obvious BUG:
Inputs: Recalculate=ON, Visual=OFF; Result: wrong dates
Inputs: Recalculate=ON, Visual=ON; Result: correct dates
Conclusion: From/To dates are only refreshed when using Visual.

Once more: Recalculate only one time! First time. Then test. In second, third, etc passes it will be the same generated sequence as in the first pass.
 
4x4ever , I have tested my own expert (build 202 from 27.02.2007) . In first, period between 01 October 2006 and 31 January 2007



















































Then I changed (01.09.2006 - 31.01.2007) period and tested again (Second)





Then I checked "Recalculate" (period is the same ) and again tested EA.




And finally, I changed period and checked "Recalculate"




As you can see, tester works correctly. In attache there are all my reports.
Files:
reports.zip  71 kb
 
4x4ever wrote:
I spend hours to setup my tests, to reproduce the bugs, to generate the screenshots and the log files and to post them on this forum, at the same time trying to word my posts as polite as possible so I don't offend somebody. Do you think I like wasting my time or do you think I do this to make you look bad as a programmer? The easiest thing for me is to remember that if I want new From/To dates - I need to select Visual. I try to help you, with best intentions and with the idea to make MT4 a better and more user-friendly software for all of us and what I get in return is "baby".

Thank You for your hard job. But your experiments passed in the different environments, therefore are useless. Sorry. All the time I try to direct You in right way - first recalculate then test without recalculating (this is described in our articles about testing). 3 or 4 my attempts are hard job too, sorry for my english.
 
As well may be it will be interested for you my topic in Russian - О кеше оптимизатора.
 
Craig, my man, in your post you forgot about them switching to Russian even now and then...
 
Ok, guys - no hard feelings. Sometimes we all can become a little frustrated and edgy. The important thing is that we want to continue to work together to get to the bottom of this problem. I will read what Rosh and stringo suggest as articles and will post my EA. (the EA is actually the same as the one I posted here, with minor modifications: )

In the mean time please try to understand what I am trying to say - here's the scenario:
- start with a completely fresh install of the MT4 platform (by the way I do have the latest build 202)
- select a period, and test an EA, e.g. test from May last year till Dec last year
- because there is no test data at all it will need to generate some test data, even if recalculate is not selected.
- now expand the testing period by 1 month, e.g. from April last year to Dec last year. Do not select Recaculate. This is wrong, I know, because it has no generated test data for April yet. So my expectation here is that the Tester somehow shoud tell "You have no data for April, my friend, do you want to Recalculate?". A MessageBox, an Alert, a line in the Journal, anything. Just don't run. Don't run with incorrect data! It is very important - better not run at all and force the user to figure out what's wrong rather then run with incorrect input data and produce misleading results. It runs, ignoring April. This is bug Number 1 (in my opinion)
- now do the same - April to Dec but this time check Recalculate. This should work, right? It should generate fxt data for the missing dates (April) and run correctly. Well - it doesn't. Again, April is ignored and the tester de-facto runs from May-Dec. This is Bug No. 2 (again - in my opinion).
- now start the same test as above but with Recalculate AND Visual on - this time it will refresh the test dates, there will be entries in the logs, in the Journal and open trades in the Results tab indicating that the expert ran from April.

Is there any other files aside from the EA source that you want me to post here? I thought of posting a zip of the entire directory of the meta trader but it is 1.5 GBs. Probably a bad idea?

One more thing, which MetaQuotes perhaps should consider: obviously many people, are having problem to understand certain aspects of the tester and find it hard to work with. It may make perfect sense to you as programmers and it may really be so that it works perfectly - we're just a bunch of dumb users who are too stupid to understand how to make it work. But in the end - it is for us. For the dumb users. It must make sense to us and not make illogical (in our opinion) things. There's probably 10 great matemathicians at MQ working on the tester and not one User Interface or Software Usability expert. What I am trying to say is - You guys need to make this thing more user-friendly and easier to use/understand. I bet hear a lot of "thank you" from users and the traffic on this forum will be cut in half.

Ok, I go read the articles now, cheers :)

P.S. Rosh would you please answer the question from here - 'EA Input parameters ignored in Tester if (Stop - Start) - whether it is possible, when doing optimization, to modify one of the input params without entering a range of values and a step, for example if the default param value is extern stop_loss=100; in my code and I want 200 for the optimization test - can I somehow make the Tester use 200 during optimization (without recompiling)?
 
stringo:
4x4ever:
What we have here is an obvious BUG:
Inputs: Recalculate=ON, Visual=OFF; Result: wrong dates
Inputs: Recalculate=ON, Visual=ON; Result: correct dates
Conclusion: From/To dates are only refreshed when using Visual.

Once more: Recalculate only one time! First time. Then test. In second, third, etc passes it will be the same generated sequence as in the first pass.

srtingo I understand what you are saying: recalculate once, and then you can use this tick data for any number of tests (on the same dates of course). And after that don't recaculate, so that you keep the same data and can compare your results. The problem is that it does NOT recalcualte the first time, unless you also select Visual mode=ON. That is exactly what I meant when I said:

Inputs: Recalculate=ON, Visual=OFF; Result: wrong dates

, I expect it to recalculate (because I told it so) and to use the new dates. But it does not - it uses the old, wrong dates. You must select Visual - then it recalculates. I think this only happens on a newly installed platform where there is "empty" date periods in the tester.

Ok, I said I'll read the article...
 
yes, very interesting article about the optimizer cache, and most likely, somehow related to my problem but I, personally, don't have any serious understanding of the Tester+cache inner workings to understand how exactly.

The problem discussed in the article and in the "2d surface?" thread on this forum is that the Tester will not perform new calculations on known combinations of input params (i.e. those for which a result is already recorded in the cache). Unless you check Recalculate or recompile. (or delete the cache files in which case you will again need to Recalculate).

My problem is different: I select a period for which the tester had not run yet (so does not have any cached results data), select Recalculate, and nevertheless it does not recalculate (unless Visual is also checked).
Reason: