Errors, bugs, questions - page 1626
You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register
Is this behaviour observed with any expert?
Logs would be helpful, though. Send a ticket to servicedesk.
...Otherwise, how else to explain the fact that a completely empty script, with only the OnStart() { } function, compiles over 400 ms!
Of course I don't write compilers, but I'm sure there are simply some minimums that don't depend on the size of the project at all. It's like calling a taxi and drive to the next entrance - like moved a couple of meters, in the money a couple of kopecks, but the minimum price of serving in 200r may also raise a question - here to go for a penny, for what ?!
I would like to raise the issue of slow MQL5 compilation once again. About three months ago I tried to raise this issue, but it was not understood, apparently my arguments were not convincing enough. Therefore, I rolled back to the old build (1159), which compiled everything almost instantly (while with new compilers my project compiled in 20 seconds).
And so a week ago I've been trying to switch to a new build. I figured "forget about 20 seconds, I'll bear with it for the sake of new stuff". Of course I had to tweak the code a bit to comply with new conditions, which revealed several bugs of the new compiler (described here).The upshot is that my project has been compiling for 30 seconds already! I don't know if it has to do with the complication of the project or with one more "complication" of the compiler, but it just doesn't fit anymore.
The project contains about 700 Kb of source code, it's an Expert Advisor containing a couple of dozens of mqh. Everything is OOP. People wrote to me earlier that the slowdown is probably caused by large functions. I had a few of them. Well, I've fragmented them into smaller parts and they have no effect.
What's the most astonishing is that this superlong compilation is of no use at all. The speed of the program is the same as with the old compiler, I measured it specifically. That begs only one phrase: "What for?".
I have a strong feeling that there is a bug/malfunction in the compiler because of which it is idly racing through an empty space. How else can I explain the fact that an absolutely empty script with only the OpenStart() { } function compiles over 400 ms!It is unimaginable that it can take so long to compile/optimize an empty script. Well, by adding small functions and classes into it, you can see how rapidly the compilation time grows.
I want to say right away that my hardware is of course far from powerful - Core i5U. But this doesn't prevent my project from compiling in 1-2 seconds on an old compiler. Respectively, the dummy is compiled there in a moment.
I'll also note. The compiler completely lacks not only caching of fragments compiled earlier but even a trivial check to make sure that the source code was identical. I.e. you compile your project and then click the "Compile" button again without making any changes and again wait for the same 30 seconds. How good is it...
I would like to hear comments from MT developers and from forum users working with large projects (is it just me who is concerned about this problem?), how long it takes to compile and on what hardware. We should mention that we are talking about compiling an executable.
That's why I'm not trying to prove anything more, besides projects on the pluses take much longer to build, although they are much bigger, but I'm used to building in a few minutes for an executable or library file, while a project with several files with a directory structure takes up to several tens of minutes :) and to wait for 10-20 seconds is not a problem...
The matter is about complex constructs, the frequent failure of which you sometimes report here as a bug. If you don't use them, the time will be significantly reduced. For example, ALL code in kodobase compiles significantly faster than 20 seconds. I have a 1368 build on a very slow laptop that compiles in tens of ms. Give me the code to play.
The link does not give the information of interest - be specific.
Hard to guess open the first page of the thread which has two pictures in the first post???
https://www.mql5.com/ru/forum/88768
Hard to guess open the first page of the thread which has two pictures in the first post???
https://www.mql5.com/ru/forum/88768
I looked at the first picture - they have no data on the website about the cent account for the fives. But the second picture has that data, but it's not clear whether it's possible to overlap there? And the limitation in the number of open orders and position volume... This is not good in general. But it is good that there is a possibility.
But alas, I have no incentive to rewrite the whole code (including spending extra money on rewriting a complex code).
I looked at the first picture - they have no data on the website about the cent account for the fives. But the second picture has such data, but it is not clear whether it is possible to overlap there? And the limitation in the number of open orders and position volume... This is not good in general. But it is good that there is a possibility.
But, alas, we have no incentive to rewrite the whole code (including spending extra money to rewrite the complex code).
Then why did you have to invent such reasons? You could just say NIKHAT and NOBODY...
If you don't have that kind of money to trade on a dollar account, what restrictions on the number of orders and volumes may strain you? It's all strange.
Then why make up such reasons? You could just say I don't want to and I won't...
If I don`t have enough money to trade in a dollar account, what restrictions on the number of orders and volumes may strain me? It's all strange.
I want to and I will - I have already ordered a class on working with orders - the way I feel comfortable - I am waiting for its arrival by the end of the year.
I trade a counter-trend grid, and even with increasing lots, with many currency pairs - so a lot of orders and support for a large position volume is required. I solve the problem with different tricks, if I have to develop and implement them again it will only take my time and not improve my financial results.