oh, my sky
MQL5 is a monster that difficult to learn
I strongly recommend old EA still work on the new MT4
IMO, this is more-or-less an acknowledgment from Metaquotes that the non-ticket based order system in MT5 will not be accepted en masse by the forex community. Glad to see the enhancements working their way backward to MT4.
Well you put it, except that I consider "nonchalance of power" that changing the rules, there can be a tool for automatic translation to preserve backward compatibility. Anyone who paid for it, and this code will not work, you must have and pay for a change again. So what? MQ request the return on investment? MQ writes in the EULA that you take the program "as is" and you can just whistle. The only chance that brokers are able to extort anything from MQ, because they lose their spring liquidity and probably up to half of current users MT4 off. At least for a while.
I think it is an attempt to replicate Apple's philosophy. Focus on all the above-mentioned one his hand (Apple Store) and to exclude potential competition for money. Monopoly signals, and API, restrictions on the use of external programs, "only right (and full of holes)" the historical database etc.
Only Aplle provide tools, where mainly using them seems money. Meta Trader has the money to make money. Only I have the the impression that not I have this money to earn.
I strongly recommend old EA still work on the new MT4
Older written EA will work in the new MetaTrader 4. Although some of robots demand to be fixed according to new requriments as it said in first post
Changed the priority of AND/OR logical operations. Now, everything is similar to the standard C/C++
Introduced shortened evaluation of logical expressions. Now, when a logical expression is evaluated before reaching its end, the remaining subsequent expressions are not evaluated, like in C/C++.
Only integer values are now used in switch operator. Real values could have been used before
A dot symbol cannot be used in variable names any more. Also, '@', '$' and '?' symbols cannot be used in variable names
Tightened requirements for start function. Parameters could have been set in start function before. Now, all init, start, deinit, OnInit, OnStart, OnTick, OnTimer and other entry points should exactly match their signatures
Due to expansion of keywords, such names as short, long, float, const, virtual, input, delete, new, do, char cannot be used now
Now, imported dll functions cannot accept MQL string arrays as a parameter, like in MQL5
- Introduced predefined _Period, _Symbol, _LastError, _CriticalError, _StopFlag, _Point, _Digits, _UninitReason, _RandomSeed variable names that may come into conflict with simple variables declared under the same names in existing source files
- datetime type has become an 8-byte one, like in MQL5.
not good for me , i dont understand new one
Older written EA will work in the new MetaTrader 4. Although some of robots demand to be fixed according to new requriments as it said in first post
It is not difficult, new compiler give you all warnings and errors to fix them.I have to have someone to adjust to the new rules. And pay.
It seems to me that you should not ignore these users.
Warrnings and errors indicated by the compiler, it shows where he is wrong, but not always describe what is wrong. With a little knowledge of programming language mql5, for a simple user is a big barrier.
![MQL5 - Language of trade strategies built-in the MetaTrader 5 client terminal](https://c.mql5.com/i/registerlandings/logo-2.png)
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
You agree to website policy and terms of use
Continuing the following topics:
The beta version of IDE common to MetaTrader 4/MQL4 and MetaTrader 5/MQL5 is attached below. This is a preliminary version for everyone's information.
Differences from the old MQL4 version:
Changed the priority of AND/OR logical operations. Now, everything is similar to the standard C/C++
Introduced shortened evaluation of logical expressions. Now, when a logical expression is evaluated before reaching its end, the remaining subsequent expressions are not evaluated, like in C/C++.
Only integer values are now used in switch operator. Real values could have been used before
A dot symbol cannot be used in variable names any more. Also, '@', '$' and '?' symbols cannot be used in variable names
Tightened requirements for start function. Parameters could have been set in start function before. Now, all init, start, deinit, OnInit, OnStart, OnTick, OnTimer and other entry points should exactly match their signatures
Due to expansion of keywords, such names as short, long, float, const, virtual, input, delete, new, do, char cannot be used now
Now, imported dll functions cannot accept MQL string arrays as a parameter, like in MQL5
The differences are not critical and can be easily corrected in the code. In return, we access multiple MQL5 features, improved execution speed and much more strict quality control.
We are going to conduct public testing during the next month in order to receive enough feedback and prepare the developers.
Discussion on MQL4 forum: https://www.mql5.com/57476/forum
The attached zip file can be downloaded by the following link: https://c.mql5.com/mql4/forum/2013/08/MetaTrader4.Beta.IDE_1.zip