Found 2 typos :
19. Terminal: Added new graphical objects: Button, Bitmap, Bitmap Label, Rectangle Label. These objects cannot be manually installed on the charts and are designed for organizing a user interface for MQL5 MQL4 applications: Expert Advisors, scripts and indicators.
Last sentence :
** In the new MQL4 and MQL5, FILE_SHARE_READ and FILE_SHARE_WRITE flags are responsible for the files shared use mode. There were no such files flags in the old MQL4.
I think users have to get used to these typos while using mql5 documents for mql4.
I have the feeling that Documentations are the last things on MetaQuotes mind.
Currently, using mql5_Docs as replacement for new_mql4_Docs is tricky business.
There's still enough differences to confuse anyone who haven't been around both platforms awhile.
It appears that this release is not just a beta. My broker (for my live account) just upgraded MT4 from v509 to v574.
Seemingly all I did was install a fresh copy of MT4 in a separate folder, connected to demo.metaquotes.net, and upgraded that instance of MT4 to 574. When I started the MT4 instance (which is located in a separate folder) that controls my live account, my live account got upgraded to v574. Why?
Also, it appears that MetaEditor did not get updated...still showing v509 on both installations. How do I upgrade to the new MetaEditor for v574 to gain access to the language improvements?
Just press F1 in MetaEditor and you will see new version of MQL4 documentation.
It appears that this release is not just a beta. My broker (for my live account) just upgraded MT4 from v509 to v574.
It's beta.
Seemingly all I did was install a fresh copy of MT4 in a separate folder, connected to demo.metaquotes.net, and upgraded that instance of MT4 to 574. When I started the MT4 instance (which is located in a separate folder) that controls my live account, my live account got upgraded to v574. Why?
I wanted to know where I can see the Online version of the new MQL4, not MQL5, documentation, the current version is here, where do I find the online beta version ? I want to see how you are handling the version history and documenting differences between the current and new version.
Press F1 to see mql4.chm file.
New version of online MQL4 documentation will be published after release.

- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
You agree to website policy and terms of use
MetaTrader 4 Build 574 with Updated MQL4 Language and Market of Applications Released
Over the past six months since the release of the public build 509, we put in a lot of effort to improve all the components of MetaTrader 4 online trading system. MQL4 programming language for developing trading strategies has undergone the most significant changes. These changes have provided new features for developing trading robots and made possible the launch of MetaTrader 4 Market - secure app store for MetaTrader 4 terminal.
The public test of the new MetaTrader 4 terminal enters its final stage. We have updated our public MetaQuotes-Demo server located at demo.metaquotes.net:443. We invite all traders to join the testing of the new terminal in order to try all its features and help developers to fix the errors.
After this stage of beta test is complete, the final build of the new MetaTrader 4 terminal will be released. You can find out what's new in MQL4 below the list of changes.
Automatic copying of MQL4 applications when updating from old builds
In the previous builds of MetaTrader 4 client terminal (509 and older), all MQL4 applications were stored in the following subdirectories of <terminal_installation_folder>\experts\ root directory:
In the new MQL4 version, the file structure for storing the source codes has changed. Now, all MQL4 applications should be located in the appropriate folders of <data_folder>\MQL4\ directory:
When updating MetaTrader 4 terminal from build 509 to the newer version, all MQ4, MQH and EX4 files from standard root directories of the previous version are automatically copied and relocated to the appropriate folders. Subfolders additionally created by a user, as well as files contained there are not processed. They should be relocated to the new place manually if necessary.
No automatic re-compilation of the old EX4 files to the new version is performed during the update. Users are free to decide what source codes should be compiled to the new EX4 version. All old EX4 will work in the new MetaTrader 4 terminal. EX4 libraries compiled by the new compiler can be called only from the EX4 programs that have also been compiled in the new version.
In some cases, you may need to edit the path in #property include for included files (if relative paths have changed) in the source files. Please note that MetaEditor's root directory is now <data_folder>\MQL4\. All programs should be located in the correct subdirectories.
You can find the data folder (<data_folder>) for each copy of MetaTrader 4 terminal on your computer via the terminal menu or in MetaEditor: File - Open Data Folder.
MetaTrader 4 Client Terminal

Increased operation speed of MQL4 apps, provided built-in support of DLL and Visual Studio, implemented access to MQL5 Storage and much more.Since the release of MetaTrader 4 platform in 2005, selected terminal installation directory was also the place where all data necessary for work (terminal logs, templates, profiles, quotes, etc.) has been stored. But with the release of Windows Vista in 2008, all Microsoft operating systems implement serious limitations of user privileges in order to protect them against malicious programs and to prevent applications under one user account to change or damage the same program's data necessary for another user account.
Starting with Windows Vista, User Account Control (UAC) mechanism was introduced. The main idea of implementing the mechanism is that the application's unchangeable data stored in the installation directory should be separated from user's data modified by this application during its operation. Thus, all data of each user should be stored in a separate folder. You can find more information about UAC in Windows help or the Wikipedia article.
In the new version, all data of a certain user working with MetaTrader 4 terminal from a separate installation directory are stored in the terminal data folder. This folder can be found on a system disk (a disk with installed Windows operating system) along the following path
where:
"Open Data Folder" command has been added to File menu of the terminal for searching and opening the data folder.
The root of each terminal data folder also contains origin.txt file where you can find the path to the installation folder of the terminal this data refers to. This allows users to reversely match each terminal data folder with a certain terminal installation directory, for example, in case when several copies of MetaTrader 4 terminal are installed by a user. This type of working with the terminal when the data folder is separated from the installation one is the main mode and highly recommended for security reasons.
The terminal can also be launched in the so-called Portable mode (as in previous MetaTrader 4 builds). In that mode, the data is stored and recorded in the installation folder. To do this, use "/portable" key. For more convenience, you can create an additional terminal launch shortcut with the appropriate name on your desktop and add the key directly to the shortcut:
Now, when placing trade requests, all of them are passed via the main connection with the trade server. Thus, the time of processing the trade requests (especially the first one) has been considerably reduced as there is no need to wait for connection to the trade server being established any more. In order for the new processing algorithm to be operable, the trade server should also be updated - requests are still set in a separate connection on older trade servers.
Due to transition to the new model of requests processing, the ability to cancel the trade requests not yet accepted by the server (Cancel button in the trade request status dialog) has been disabled.
Word-by-word search with regard to Russian and English morphology is used. The search is performed in the sections specified by a user in the settings:
The context menu of the search results tab contains additional commands depending on the type of results:
When management of trading levels from the chart is allowed, alert's price value can be changed by its dragging to a new price level. Alerts can be disabled or removed using a context menu on the appropriate chart level.
Just enter a company name (or a fragment of a server name) and the terminal will automatically add all servers of the company (the servers containing the specified line in their names) to the list:
The new system of working with help files also reduces the traffic consumption due to the fact that the language version of the downloaded user guide corresponds only to the language specified for the client terminal's interface (no excessive language versions are downloaded). This system also provides regular updates of the user guide regardless of the client terminal updates.
Specify login and email address in the registration window. After clicking Register, an email for MQL5.community account activation is sent to the specified address.
MQL5.community account allows traders to use additional powerful services:

This option is necessary when using signals on VPS (Virtual Private Server). It can also be used to increase the synchronization reliability when working with the already selected signal.Fixed errors reported on the forum and in crash logs.
MetaTrader 4 MultiTerminal
What's New in MQL4
MQL4 programming language has been completely revised reaching the level of MQL5 - now you can develop trading robots in MQL4/5 using the unified MetaEditor development environment, single style, libraries and debugging tools.
MQL4 is popular among automated system developers due to the ease of learning and a huge amount of code generated for many years of using MetaTrader 4 terminal. However, the language also has some drawbacks arising from its main advantage - a simple programming language does not allow development of complex systems and hinders porting of debugged libraries from high-level languages. Therefore, we decided to implement in it the maximum possible amount of MQL5 language functions and features fully preserving MQL4 functionality. In other words, all powerful MQL5 functions, including ООP and the native code compiler, will become available in MQL4.
To achieve this, we have developed a unified compiler that automatically supports both MQL4 and MQL5 languages. MetaEditor will also become a unified application both for MetaTrader 4 and MetaTrader 5 platforms. Thus, it will be possible to compile both MQL4 and MQL5 from any version. MQL5 Storage also becomes available for work.
Protection of MQL4 applications rises to MQL5 level. New EX4/EX5 files are provided with a serious and completely revised protection. This means that the Market of secure EX4 applications also becomes available to MetaTrader 4.
Besides, MQL4 now features new graphical objects and new functions for working with charts. MQL5 Standard Library is to be ported to MQL4 providing developers with new possibilities in creating their own graphical interfaces and trading libraries. Now, you can create full-fledged applications in MetaTrader 4 using the resources.
Changes in MQL4 Language
The table of differences between compilers
and new OnInit(), OnStart(), OnCalculated, OnTick(), OnTimer(), OnChartEvent(), OnTester() and OnDeinit() should exactly match their signatures
The list of the reserved words has been expanded. Thus, such widespread words as short, long, const, etc. cannot be used as names
datetime is a 32-bit integer.
Predefined Volume variable is of double type
datetime is a 64-bit integer.
Predefined Volume variable is of ulong type
* Please pay special attention to "Array out of range" error - many old custom indicators will display this error in strict mode of the new compiler when launched on the chart. It is recommended to find the cause and eliminate it.
** In the new MQL4 and MQL5, FILE_SHARE_READ and FILE_SHARE_WRITE flags are responsible for the files shared use mode. There were no such files in the old MQL4.