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
The development of MQL5 is in full swing and it is one of our key features of the new trading platform. We are purposely not participating in discussions for the sake of peace of mind at the moment. But in a while we will start to publish information about the new language, libraries and programming environment.
Please give us your feedback on MQL5.
Please express your wishes for MQL5.
----
For interaction with the terminal:
- when compiling the EA, only restart it on the chart or do not restart anything!
- when compiling a file which is referenced to another file, compile it too;
- start/stop script/expert/indicator from the code (from the same "immediately" window).
By language:- list of symbols from the code;
- ALL symbol parameters from the code (so that you can calculate everything the terminal calculates);
- events - trade, interface, error events;
- Comment function - expand functionality (do not erase previous text, select font and colour, angle of binding, ...);
- Global Variables Terminal - ability to hide from user, save to disk on command or immediately after change.
Well, and I join almost all the previous speakers, I'm done for now.Without knowing the properties of special MQL5 functions, it's hard to say in advance, but MQL4 has such a problem.
Start() is looped in. It works. A user connects to another account. Environment information from the new account becomes available to the Expert Advisor in the current session before start() is forcibly closed. The Expert Advisor (based on its internal analysis) reports that the orders (that were in the previous account) have been closed, swaps, Stop Levels, etc. have changed, etc. with all ensuing consequences.
The Expert Advisor does not explicitly track information about a new account followed by a decision to deinit-init-start() either. I have not managed to catch the pattern, but deinitialization does not always happen. For example, if the terminal has just been loaded and connection to account A has been established, the transition to account B takes place without deinit-init-start. After one minute the switch from B to A occurs with the expected deinit-init-start and the subsequent switch from A to B or between any other accounts is also normal. It seems that the problem is somehow related to the fact of first connection to the account. The effect is persistent.
In general, the wish is: when switching to another account first deinit the current account in the current environment, and then - as if from scratch (connect to a new account and run in the terminal the new environment values).
If you've implemented an object model, then look at that object model, available methods, properties, etc., as well as in debugging.
Otherwise, everything suggested above is part of what is available in most modern development environments, all you need to do is replicate, for example, Microsoft's Visual Studio. For example, when switching from VB 6 to VB .NET, not much has changed, the functions have simply become part of a separate class, for those who don't immediately find the alternatives, only the scale of approaches has increased. Only low-level functions were removed, thanks to which I expanded my knowledge and even changed the programming language, of course those who didn't know about such functions as objptr didn't need it :) Of course, after that all the alternative functions and classes were learned, but the ease of accessibility of such small features as work with pointers, did not allow me to go back to the past century and opened up new fields, without logical reasoning in the C++ fog, while I tried to write in VB, I studied ASM and tried to create a programming language, but further learning system programming, led me to the fact that the best of all that was created for applied programming is .NET, I never understood the logic of Java and before
P.S.: This is as an example of what to strive for:)
The most important thing that provoked the serious development of .NET technology is Reflection and the opportunity to study the source code to understand how it works down to the smallest detail, no description and examples will not give more than the opportunity to see to the root. All the disassemblers and many other tools that have been developed for low-level approaches pale into insignificance. For example I know many details and differences between .NET 1.0 and 1.1 and even more so between .NET 2.0, not because I know that the new version is good or better, but because I have seen the difference in source code and machine code and I still see all the new heights that .NET reaches.
Let's assume that I have also studied the terminal and its language and let's assume that there will be something to compare in consideration of what we have:) I do not trust words, I trust my eyes:)
1) drag and drop dragging of orders as in one program, I do not remember the name now, it is beautiful))
2) In the tester W1
3) Visual EA editor, so any beginner, not knowing the MQL language at all, could implement his own ideas in EAs to check them on the history, because ideas that have been checked turn out to be illusions, and without a programmer there is no chance to give up illusions))
the last one sounds fantastic I understand, but if it is implemented, mt will make a quantum leap, will become truly mass-market and will leave competitors behind forever))