Use currency latest news for your strategy
The latest stock report news
Top coin report was updated.




Market tab connects trading platform users with MQL4 programs store at Here they can download for free or buy trading robots, indicators and other applications for the trading terminal.

Discover in 10 Minutes: Video on Market

Watch the below tutorial videos to learn about the Market. Click on the video image to watch it.

Watch video: How to purchase a robot or an indicator in Market? Watch video: How to search and choose applications Watch video: Free-of-charge testing of Expert Advisors and Indicators before purchase Watch video: How to update, renew the rental period and reinstall products

General Information

  • Before working with the Market service read the rules carefully.The rules are published at website.
  • To work with the “Market” service, you should have a valid account on the website. Account data can be specified in the terminal settings. If the data is not specified in the settings, it will be requested every time you try to download/purchase the product.
  • All calculations are performed using the internal payment system.
  • Each product is tied to the configuration of PC it was purchased from. The number of free product activations available to the buyer on another PC after purchasing the product is defined by the seller. The minimum number of such Activations is 4.

Before purchasing an application you can download its demo version. Demo versions have some limitations:

Applications Categories and Searching

Watch video: How to search and choose applications

Watch video: How to search and choose applications

The Market features a well-developed product filtration and sorting systems. Each product has a detailed description and screenshots. Moreover, robots and indicators have demo versions. Watch our video to know how to use all that functions and make the right choice.

The upper part of the tab is designed to search the applications.

  • Category — experts, indicators, panels, utilities, etc.
  • Price and novelty — sorting products by price and novelty.
  • Favorites — product marked as favorite.
  • Purchasedlist of products purchased/downloaded by the user;
  • Balance — current account balance on If account is not specified in the terminal settings, registration link is displayed instead of the balance.
  • — the field for searching applications by their name or description. Enter the word into the search field and click .

Viewing Products

The list of applications displays their cost and rating formed by the users evaluation. The “Free” label means that the application is distributed on a free of charge basis.

Click on the application’s logo to view, download or purchase it:

The upper part contains the toolbar for switching between the application data tabs:

  • — back to the applications list.
  • Application — a detailed description of the application can be viewed here.
  • Screenshots — application screenshots can be viewed here.
  • Reviews — users’ reviews about the application can be viewed here. The tab is not displayed, in case there are no reviews.

Purchasing Products

Watch video: How to purchase a robot or an indicator in Market?

Watch video: How to purchase a robot or an indicator in Market?

Any trader will find thousands of trading robots and indicators in the Market. All of that can be purchased directly in the platform and it’s much easier than you think.

To purchase an application, click on it and then click the “Buy” button.

  • The cost of a product is displayed under its logo.
  • Before buying a product, specify your account in the terminal settings.

To perform a payment, you can use your account funds. To do this, select MQL5 payment method.

Making a purchase, you agree to the Rules of Using the Market Service.

Enter the password of your account to confirm your purchase. The specified amount is deducted from your account, and the product is downloaded to your terminal.

If your account has insufficient funds for buying a product, you may pay for it via one of the available payment systems directly in the terminal. To maintain a clear and unified history of purchases from the Market, the required amount will be first transferred to your account, from which a payment for the product will be made.

After selecting a payment method, the page of a corresponding payment system is opened. Specify the necessary payment data: your login and password in the payment system or card information.

The specified amount is deducted from your account, and the product is downloaded to your terminal.

  • All purchases and downloads are displayed on the “Purchased” tab.
  • The products are downloaded to the /MQL4/program_type/Market/ terminal folder, where program_type is an application type. For example, Expert Advisors will be downloaded to the /MQL4/Experts/Market/.

Purchasing Products Without Signing Up for

If you do not have an account yet, you can still buy a Market product. Select the appropriate payment system and make a payment as described above.

We strongly recommend that you sign up for after making a purchase. This will allow you to:

  • Install the product on other computers within the available number of activations
  • Receive free product updates

The account should be registered directly from the terminal. Click Register account in the upper part of the Market window. After the registration is complete, the purchase is bound to the new account. You can see all your payments and purchases in your profile on the website.

Downloading Previously Purchased Applications

Watch video: How to update, renew the rental period and reinstall products

Watch video: How to update, renew the rental period and reinstall products

All your products are tied to your account or to your computer and available for you at any time. You will always know about updates, will be able to renew the rent or download a previously purchased product. Watch the video to find out how easy that is.

You may need to move previously purchased application to another terminal. For example, you may use several client terminals on one or several PCs.

If you use several terminals on a single PC, copy the application’s ex5 file to a similar folder of the target terminal. For example, you should copy a file from [original client terminal]\MQL4\Indicators\Market to [target client terminal]\MQL4\Indicators\Market.

If you need to move a previously purchased product to another PC, do the following:

  • Specify your account data on “Community” tab of the target terminal.
  • Open “Market” tab and move to “Purchased” section. Next, click “Install” near the purchased product:

Each product is tied to the configuration of PC it was purchased from. According to “Market” service Rules the number of free product activations available to the buyer on another PC after purchasing the product is defined by the seller. The minimum number of such Activations is 4. Further on, a user will have to purchase them again.

Demo versions

Watch video: Free-of-charge testing of Expert Advisors and Indicators before purchase

Watch video: Free-of-charge testing of Expert Advisors and Indicators before purchase

Before making a purchase it’s recommended to test desired robots and indicators. It’s an easy and free-of-charge operation that will give you more confidence in a product. Watch the video for details.

Before purchasing an application you can download its demo version. To do this, click on the product and then click “Free Download”.

Demo versions have some limitations:

Updating applications

From time to time sellers may release updated versions of their products to increase reliability and extend functionality.

  • All updates of previously purchased products are free of charge.
  • Updates of products become available in the client terminal with a short delay after they are published in the Market on

To check whether new versions of your previously purchased or downloaded products are available, go to the “Purchased” tab.

If a new version of a product is available, you will see the corresponding message against it as well as the “Update” button (or the “Update demo” button for demo version of paid products).

Once this button is pressed, the new version will be downloaded. The new file replaces the previous one. Thus if need, save the old version of the file under a different name or outside of the directory [terminal data folder]\MQL4\Market\.

Renting Products

The Market products can be rented for 1, 3, 6 or 12 months. For buyers, the rent is another opportunity to assess a product before buying a full license. Unlike demo versions that can be launched only in the strategy tester, rented products have no limitations except for validity period.

Rental period and fee, as well as the very possibility to rent are set by product developers. Therefore, some products may be unavailable for rent.

Rental fee and period are displayed under a product logo:

Click Rent and select the rental period. As in the case of the full versions, you can pay for your purchase via your account or using one of the available payment systems. Besides, you can rent a product without signing up for

After the period expires, rented products stop their operation automatically. For example, a rented trading robot is automatically removed from a chart. So, be careful not to leave your positions unattended if they have been managed by a rented Expert Advisor.

The following entry is periodically displayed in the terminal journal one day before the end of the rental period:

Licence of ‘product.ex5’ expires on 02.03.2015. Please renew the license, otherwise the program will be stopped

In order to renew a rental period or buy a full version, move to Purchased section.

Rental period expiration date is shown to the right of a product name. The current period expiration time is considered to be the beginning of the renewed rental period. Thus, you can renew the rent in advance without losing the time remaining till the current period expires.

If you want to purchase a full version, click Buy. In this case, you pay the full cost of a product. Previously paid rental fees are not considered.


“Purchased” tab displays all the products downloaded and purchased using the current account. If account data is not specified in the terminal settings, the tab name changes to “Downloads”. It displays all downloads and purchases made in the current client terminal regardless of the account.

The following information is displayed here:

  • Name — product name. Demo versions of products are marked with the Demo label.
  • Category — product category, such as Experts, Indicators etc. If you click on the product category, it will be selected in the “Navigator” window.
  • Price — product cost in USD.
  • Date — product download/purchase date.


A huge number of products is available for purchasing. When searching for products, you can add any of them to Favorites in order to select the best one. Add/remove a product from Favorites by clicking  button available in the products list and a product page.

All Favorite products are displayed in a separate tab:

Virtual Hosting

Virtual hosting is a service providing the round-the-clock operation of the client terminal. That may be necessary in the following cases:

All these cases require constant connection to a trade server and uninterrupted power supply. Using a home PC is not always possible and convenient.

The trading platform offers convenient and quick solution to all traders you can rent a virtual server for your trading account right from the client terminal.

Discover in 6 Minutes: Video on Virtual Hosting

Watch the below tutorial videos to learn about the virtual hosting. Click on the video image to watch it.

Unlike renting ordinary VDS or VPS from third-party companies, you are able to select the server that is the closest to your broker minimizing the network latency when sending orders from the terminal to the trade server.

The payment for using the service is conveniently performed via account. If you do not have an account yet, please register. The account should be specified in the terminal settings.

The subsections describe all stages of working with the Virtual Hosting service:

  • Registering Server — selecting the virtual server that is the closest to the broker in order to provide the minimum network latency, choosing the service plan.
  • Migration — preparing the terminal environment for migration to the virtual server: selecting charts, indicators, Expert Advisors, as well as configuring signals, email and FTP.
  • Working with Terminal — managing the terminal operation on the virtual server: viewing terminal and Expert Advisor operation journals, as well as viewing resource consumption statistics.

Registering Server

To receive a virtual terminal, connect by the appropriate trading account, open the context window of the Navigator and execute  “Register a Virtual Server” command.

How to Rent A Virtual Platform

Watch video: How to Rent A Virtual Platform

Detailed how-to description that will help to rent a virtual hosting directly from a trading platform. Its simple: choose nearest server and payment plan in order to let your robots and signals work for 24 hours a day.

The Virtual Hosting wizard will automatically select the server that is closest to your broker. In the wizard window, you will see how ping (network latency) will decree compared to your current connection. Lower network latency between your platform and the broker’s server provides better condition for the execution of trading operations, such as reduced slippage and probability of getting re-quotes.

Select the appropriate plan and click “Next”. Service plan conditions are defined by hosting companies.

  • A free test period may be provided to try out the service.
  • You can change the selected service plan after the rental period expires.

If your MQL5 account is not specified in the trading platform settings, the Virtual Hosting wizard will prompt you to add one. In order to rent a virtual platform, you need to have a valid account. You can register account right away if you do not have any.

Click “Next” and check all the data: the trading account, for which you are going to rent a virtual hosting, as well as the cost of subscription.

To continue, you should agree with the Virtual Hosting service rules. Read them carefully.

If you want the rental period to be renewed after its expiration with the same service plan, enable the option “Automatically renew subscription with sufficient funds and terminal activity”. The renewal can be performed only if there are enough funds on your account to pay for the rent and the rented server is running.

After clicking Next, the server rent process is finished and the appropriate payment is deducted from your account.

If the rent is canceled by a user, no refund is made.

You can move the terminal environment to the virtual server immediately. Select the necessary migration type and click “Migrate now”. If the terminal is not prepared yet, click Finish to perform migration later.

Paying for Virtual Hosting straight from the Payment Systems

If you do not have enough money on your account to pay for the hosting, you do not need to go to the website and fund it. You can pay for the hosting straight from one of the payment systems. Just click “Next” after choosing the rent plan. Then choose a suitable payment system.

To maintain a clear and unified history of rented virtual hosting platforms, the required amount will be transferred to your account first, from which a payment for the service will be made. You can easily access and review all your payments from your Profile.

After paying you will pass to the last step of renting where you can perform the migration right away.


Migration is transferring the current active environment from the client terminal to the virtual one. This is a simple and straightforward way to change the set of launched programs, open charts and subscription parameters in the virtual terminal.

Preparing for Migration

Before launching the virtual terminal, you should prepare an active environment for it charts, launched indicators and Expert Advisors, Signal copying parameters and the terminal settings.

Watch video: Preparing to Migrate Robots and Signals

Watch video: Preparing to Migrate Robots and Signals

How to setup a trading environment, in order to execute your trading robots and signals on a virtual platform for 24 hours a day?

Charts and Market Watch

In the Market Watch window, set up the list of symbols critical for your Expert Advisors’ operation. We recommend that you remove all unnecessary symbols to decrease the tick traffic received by the terminal. There is no point in keeping hundreds of symbols in the Market Watch if only a couple of them are used for trading.

Open only the charts that you really need. Although there are no limitations on the number of open charts, there is no point in opening unnecessary ones. Color settings do not matter.

Set “Max bars in chart” parameter in Charts tab of the terminal settings. Some custom indicators are developed in a wasteful way and perform calculations on all history available on the chart. In that case, the lesser the specified value, the better. However, make sure that the indicator works correctly with these settings by restarting the terminal after changing this parameter.

The virtual terminal has been designed so that it automatically downloads all available history from a trade server, but not more than 500 000 bars are available on a chart.

Indicators and Expert Advisors

Apply to the charts all indicators and Expert Advisors that are necessary for the terminal’s autonomous operation. Most trading robots do not refer to indicators on the charts, so check out and decide what you really need.

Products purchased on the Market and launched on the chart are also moved during migration. They remain completely functional, and the number of available activations is not decreased. Automatic licensing of purchased products without spending available activations is provided only for the virtual terminal.

  • DLL calls are completely forbidden in the virtual terminal. During the first attempt to call a function from DLL, the launched program is stopped with the critical error.
  • During platform synchronization with the virtual server, charts without Expert Advisors are ignored, even if custom indicators are running on these charts. If you need to migrate a custom indicator, run it on the chart of an “empty” Expert Advisor that does not perform operations. Such an Expert Advisor can be easily generated using the MQL5 Wizard in MetaEditor by selecting “Expert Advisor: template”. This is to ensure that indicators are migrated on purpose.

All external parameters of indicators and Expert Advisors should be set correctly. Check them once again before launching synchronization.

Scripts cannot be moved during migration even if they have been launched in an endless loop on the chart at the time of synchronization.

Configuring Email, FTP and Signals

If an Expert Advisor is to send emails, upload data via FTP or copy Signal trades, make sure to specify all necessary settings. Set correct login and password of your account in Community tab. This is necessary for Signal copying.

Permission to Trade and Signal Copying

The automated trading is always allowed in the virtual terminal. Therefore, any Expert Advisor with trading functions launched during synchronization can trade on the virtual terminal after the migration. Do not launch the Expert Advisors you are not sure about.

When migrating Expert Advisors, autotrading function is automatically disabled in the local terminal. This is done is order to prevent the situation when two terminals connected with the same account trade with the same Expert Advisor.

Regardless of whether autotrading is allowed or forbidden in your client terminal or in the properties of a launched Expert Advisor, any trading robot is allowed to trade after being moved to the virtual terminal.

Set necessary trade copying parameters in Signals tab. If a trading account has an active subscription and trade copying is allowed, permission to copy signals is disabled in the client terminal during migration. This is done in order to prevent the situation when two terminals connected to the same account copy the same trades simultaneously. It is not necessary to turn on signal copying on the local terminal when migrating to a virtual terminal where the signal is already running.

The “Synchronize positions without confirmations” setting is always enabled in the virtual platform. The virtual platform has no user interface, the operations are copied only automatically, and it is impossible to confirm them manually.

Trade copying is automatically enabled on the virtual terminal when migration is complete. Message about copy cancelation in the client terminal is also repeated in the journal.

Setting WebRequest

If a program that is to operate in the virtual terminal uses WebRequest function for sending HTTP requests, you should set permission and list all trusted URLs in Expert Advisors tab.


Migration is performed during each synchronization of the client terminal. Synchronization is always a one-direction process — the client terminal’s environment is moved to the virtual terminal but never vice versa. The virtual terminal status can be monitored via requesting the terminal’s and Expert Advisors’ logs as well as virtual server’s monitoring data.

To perform synchronization, open the context menu and select migration type. There are several types of migration that should be used depending on the objective:

  • All — complete migration is necessary if you want to simultaneously launch Expert Advisors/indicators and trade copying. In this mode, account connection data, as well as all open charts, signal copying parameters, launched Expert Advisors and indicators, FTP and email settings are moved to the virtual server.
  • Experts — only Expert Advisors and indicators are moved, if subscription to Signals is not required. Unlike the complete migration, signal subscription parameters are not transferred in this mode.
  • Signal — only Signal copying settings (no charts or programs) are moved. In this mode, account connection data, signal copying parameters, FTP and email settings are moved to the virtual server.

Thus, you always can change the number of charts and the list of symbols in the Data Window, the set of launched programs and their input parameters, the terminal settings and Signal subscription.

All available history concerning the open charts is automatically uploaded during the first synchronization. Uploading history from a trade server can take some time, and all programs launched on the charts should process the updated data correctly during the synchronization.

When performing migration, all data is recorded in the client terminal’s log.

After the synchronization, open the virtual terminal’s main journal to examine the actions performed on it.

In the newly opened log window, you can set a piece of text the journal entries are to be filtered by and a desired interval. After that, click Request to download the found logs.

The virtual terminal’s logs are updated during each request and saved to [terminal data folder]\logs\hosting.*.terminal\.

Migration Features

The migration process has a number of features:

  • Automated trading is always allowed in the Virtual terminal even if it has been forbidden by the terminal settings or in the launched Expert Advisor’s parameters.
  • Scripts are not moved during migration even if they have been launched in an endless loop on the chart at the time of synchronization.
  • Charts with non-standard timeframes and symbols are not moved.

Working with the Virtual Terminal

The rented virtual server status can also be easily monitored from the client terminal. The server’s context menu in Navigator window allows you to:

Watch video: How to control resources and manage subscriptions.

Watch video: How to Control Resources and Manage Subscriptions

How to analyze the virtual hosting resources report and how to control your subscriptions – we show you in this video.


To view the virtual server data, click  Details in its context menu. The information is presented in several tabs.


The following information is displayed here:

  • Hosting server name and your virtual terminal ID.
  • Ping in milliseconds displaying the network delay between the virtual server and a trade server of your broker.
  • Virtual server status: started, stopped. Here you can also enable/disable the virtual server and cancel the rent.
  • The service plan selected when registering the server.
  • Registration date, account registration is performed to and the account’s current balance.
  • Last synchronization date and its type. Here you can also perform immediate synchronization of the current terminal environment.

CPU Usage

CPU usage graph is displayed here in percentage terms.

Memory Usage

Memory usage graph is displayed here.

Hard Disk Usage

Hard disk space usage is displayed here.

Virtual Terminal Journal

You can view the virtual terminal’s journal to control its operation.

In the newly opened log window, you can set a piece of text the journal entries are to be filtered by and a desired interval. After that, click Request to download the found logs. Here you can also select the journal type:

  • Terminal — logs about all events taking place in the terminal including trade operations.
  • Experts — data on Expert Advisor and indicator operation.

The virtual terminal’s logs are updated during each request and saved to [terminal data folder]\logs\hosting.*.terminal\.

If a user requests too many records, then only part of the first logs for the specified period will be downloaded. This prevents performance degradation resulting from large logs. If you want to download further logs, you don’t need to change the request period. Simply select the last line in the log viewer window and press PgDn.

Stopping the Server

Stopping the server means the temporary shutdown of the virtual terminal. This action is similar to closing the terminal on PC. It is performed by  “Stop Server” command in the server context menu of the Navigator window.

To launch the terminal, execute  “Start Server” command.

Canceling the Hosting

Hosting cancelation means the virtual server is no longer provided and the virtual terminal is completely deleted with all data moved to it during the migration

No refund is made. The rental pay can be returned only within 24 hours after the virtual server has been registered.

To cancel the hosting, execute  “Cancel Hosting” command in the server context menu of the Navigator window.

Moving Hosting to Another Trading Account

Virtual hosting is rented for a specific trading account, but it can be moved at any time. Open the “Hosting” section in your profile at

Find the required subscription, click on the gear button and select “Move”. Then specify a new trading account (login) and a new server (broker) if necessary, then click “Move”.

Open the trading platform and connect to the account, to which the hosting has been moved. Using the account context menu in the Navigator window, start the server and migrate your trading environment.

New Terminal

The development of the fifth version of the trading terminal started in 2007. It was conceived as a revolutionary, multi-market platform that can run on Forex, as well as on any other financial market. A lot of work has been done since then, and the result of it is the multiservice infrastructure that provides unlimited opportunities to traders.

This section contains the list of key differences between the fourth and fifth versions of the trading terminal.

  • Trading
    New system of positions accounting, one-click trading, new order types, moving trading levels on charts and access to exchanges.
  • Charts
    Increased the number of built-in indicators and technical analysis tools; the number of timeframes has also been increased up to 21.
  • MQL5
    Operation speed has been increased up to 20 times compared to MQL4, support for OOP and ability to develop very sophisticated programs, similarity to C++.
  • Market
    MQL5 Market application store having plenty of paid and free programs is implemented into the terminal.
  • Tools
    Calendar of economic events displaying macroeconomic indicators directly in the terminal with the ability to display them on a chart. Any code published in Code Base can be downloaded directly via the terminal.
  • Strategy Tester
    The strategy tester is now a multi-currency, multi-threaded feature supporting MQL5 Cloud Network. Also, 3D visualization of test results has been implemented. A test report has become more detailed and more statistical values have been implemented.
  • MetaEditor
    Source code debugging, profiling, built-in version online MQL5 Storage, as well as MQL5 Wizard allowing users without any programming skills to generate ready-made Expert Advisors.

Trading Feature

In the fifth version of the terminal, trading mechanisms have undergone significant changes as compared to the fourth one. All these changes are aimed at enhancing the use of the trading platform. With the new terminal, traders can trade on any stock exchanges and through any ECN. The trading platform has already received the status of an independent software vendor (ISV) for a number of stock exchanges, including SMX, GBOT, CitiBank, Currenex, DGCX, Integral, etc. Further plans are aimed at integration with the major stock exchanges around the world.

New Trading System

The fourth version of the trading terminal uses the order-based system allowing traders to have several positions for one symbol, including the oppositely directed ones. Protective Stop Loss and Take Profit levels can be set for each open order. These levels will be applied only to that particular order. A separate swap is charged for each open order. This swap depends on volume and direction.

The fifth version uses position-based system. For each symbol, only one position (long or short) can be open at any given moment of time. Thus, if you have a position to buy 1 lot of a financial instrument and sell one lot of this instrument, the position will be closed. If you have a position to buy 1 lot of a financial instrument and buy one more lot, you will have one position of 2 lots.

Protective Stop Loss and Take Profit levels can be set for an open position and a pending order. But unlike the previous version, when a pending order is activated, its Stop Loss and Take Profit levels will be set for the position at this symbol. In other words, specified SL/TP values for the position will be overwritten by the pending order.

Six Types of Pending Orders

In addition to the market, limit and stop orders, the fifth version of the trading platform supports two more types of pending orders – Buy Stop Limit and Sell Stop Limit. When such an order triggers, the appropriate type of the limit order is placed. New types of orders enhance the possibilities of implementing trading strategies.

One-Click Trading

The speed of conducting trade operations is very important in trading. The new terminal provides the possibility of instant trading in just one click. This feature is available in the Market Watch window:

Besides, traders can close positions and remove pending orders from Toolbox window.

Modification of Trade Levels on the Chart

MetaTrader 5 provides the opportunity to change the price of pending orders, as well as of Stop Loss and Take Profit orders directly on the chart. Now, seeing the current situation in the market, you can easily drag a trade level in the desired area and then adjust its value more precisely:

One-click trading from chart and managing trade levels on chart features has become available since the build 600 of the client terminal.


One of the obvious advantages of the fifth-generation platform is its analytical part. Real-time price charts provide a much wider functionality.

Customization and 21 Timeframes

Charts in the platform have a variety of different settings, so that traders can customize them and adapt to their personal needs. The trading terminal supports three types of charts: a broken line, a sequence of bars and Japanese Candlesticks. You can set a separate color to any item in the chart to create the most comfortable workspace for long-term work. In comparison with the fourth version of the platform, MetaTrader 5 supports more that twice as many chart periods. Now 21 timeframes are available.


The standard delivery pack of the trading terminal includes 38 technical indicators. They are conveniently grouped in the Navigator based on their type: Trend Indicators, Oscillators, Volume Indicators, and Bill Williams’ Indicators. Available indicators include Bollinger Bands, Envelopes, Moving Average, Parabolic SAR, Standard Deviation, Ichimoku Kinko Hyo, MACD, Bulls Power, Bears Power, Alligator, Awesome Oscillator, and many others.

The number of third-party indicators is practically unlimited. A large number of indicators are available for download from the Code Base and can be purchased in the Market in just one click.

Analytical Tools

The list of available analytical tools has been greatly expanded. Now the fifth version of the terminal offers 46 objects, including Elliott, Fibonacci and Gann tools, graphical objects (including objects for interactivity with MQL5 programs), shapes, channels, lines, etc.


MQL5 language is more powerful and allows users to develop very sophisticated programs.

Greater Operation Speed

Compared with the MQL4, the speed of execution of the MQL5 code has increased 4-20 times! The speed ​​of execution has almost reached the level of the C++ language, so in MQL5 you do not need to use third-party DLL to speed up calculations. In turn, the lack of DLL improves application security.

Similarity to С++

The syntax of the MQL5 language is very similar to one of the most popular programming languages C++. Therefore it is easy to learn, and you can easily translate programs from other modern programming languages into MQL5. MQL5 is an object-oriented language allowing you to take advantage of this programming approach – encapsulation and extensibility of types, inheritance, polymorphism, overloading and virtual functions.

OpenCL Support

MQL5 has native support for OpenCL in just one click. To use all of its benefits you do not need third-party libraries. Simply use specialized MQL5 functions. The OpenCL language is used for performing computations on video cards that support OpenCL 1.1 or higher.

Modern video cards contain hundreds of small specialized processors that can simultaneously perform simple mathematical operations with incoming data streams. The OpenCL language organizes parallel computing and provides greater speed for a certain class of tasks.

Version 600 of the client terminal has introduced a huge update to MQL4 language which has brought its capabilities, speed and security to the MQL5 level.


The trading terminal is tightly integrated with the services for traders. Market is a store of MQL5 applications, where anyone can buy a product to use in the terminal. For your convenience, the Market service is integrated into the client terminal.

In the Toolbox window, traders can see the entire range of applications available in the Market. Before purchasing, traders can download a trial version and test it in the strategy tester. In addition, many free applications can be downloaded from the Market.

The list of purchases and downloads is conveniently represented in the Purchases tab. The downloaded/purchased applications are automatically sorted by their type in the Navigator, from which you can run them.

The Market of MQL4 applications has become available since the build 600 of the client terminal.


The Toolbox window, which was available in the fourth version of the terminal, now provides even more functions.

Economic Calendar

One of the new features of the fifth version of the terminal is the Economic Calendar, which allows performing the fundamental analysis of the markets. Macroeconomic indicators are updated in real time. In addition, the economic calendar events can be easily displayed on the price chart.

Downloads from the Code Base

Due to the tight integration of the trading terminal with services, you can start downloading an Expert Advisor, an indicator or a script from the Code Base right from the Navigator window in just one click. A special “more” command is available in each category of applications. The figure next to the command indicates the number of applications available for download:

Strategy Tester

One of the most important and expected updates in the fifth version of the terminal is the multicurrency strategy tester. Now, traders have unlimited possibilities for testing and optimizing the Expert Advisors that trade several symbols.

Advanced Testing Report

Report on EA testing results has been significantly expanded. It includes additional statistics, allowing to better evaluate a trading strategy. Now traders can analyze the recovery factor, the Sharpe ratio, position holding time and many other characteristics. Over 40 characteristics are available in the tester report.

The graphical component of the testing report has also expanded considerably. In addition to balance and equity graphs, the tester visualizes the time distribution of position entering and profit/loss (hourly, weekly and monthly):

In addition, it generates graphs of distribution of profits and MAE/MFE, as well as distribution of profits and position holding time.

MQL5 Cloud Network

MQL5 Cloud Network allows organizing the exchange of computing resources between those who need them, and those who can provide idle CPU time of their computers. With the MQL5 Cloud Network a trader can use the computing power of thousands of agents around the world. Optimization, which would take several years if using only one computer, can now be run in a few hours.

To use the network, just open the strategy tester and enable the use of cloud agents.

In addition to using the MQL5 Cloud Network, you can provide your CPU computing power in the network and earn money. To do this, you do not even need to install the MetaTrader 5 client terminal. Download the specially created installer that allows you to quickly and easily install the MetaTester, an application for managing remote agents on the computer.

After a simple setup you join the MQL5 Cloud Network and start earning. Statistics on the use of the network and your earnings for the CPU power provided is conveniently collected in your profile on the in just one click. Information about agents will appear in your profile immediately after they fulfill their first task.

2D and 3D Visualization of Optimization Results

It is said that a picture is worth a thousand words. In the strategy tester you can analyze optimization results in visual mode. Here is the two-dimensional visualization of the optimization. The darker the shade of green is, the higher is the value of optimization criterion:



The built-in programming language has always been one of the most important parts of MetaTrader trading platform. Application development is not just the MQL5 programming language, whose undoubted advantages will be proved below, but this is also the editor in which you work with the source code. The new MetaEditor provides a lot of new features that were unavailable for users of the previous versions.

Personal Code Repository MQL5 Storage

MQL5 Storage is a personal MQL5 source codes storage designed for the versioned storing of files and managing all projects directly from MetaEditor 5 in a handy manner.

The source code is stored in a secure remote repository, which can be accessed through your account. In case of hard disk failure, the user’s local copy of codes can be quickly restored from the storage.

Traders can access their storage from any computer. They need just to log in using their account in the MetaEditor. They work with the storage using the convenient context menu of the Navigator window.

Each transaction of changes in the storage is recorded. Later users can view the entire history of changes, compare versions of files using a special tool, as well as revert to any previous just one click.

The options of the MQL5 Storage will continue to expand. It will enable joint work with projects using the storage by giving permissions to the required accounts.


Without exaggeration, everyone who used the MetaEditor 4 wanted the debugging function. The appearance of the debugger in the fifth version has raised the development of MQL5 applications to a new level. All standard functions are available for debugging applications:

  • Breakpoints: place breakpoints in the source code lines, where the process of program execution must be interrupted to study the behavior of the program.
  • Watching Expressions: follow the values of any expressions during debugging in a separate tab of the Toolbox.
  • Stack of Calls: watch the stack of calls during debugging.
  • Step-By-Step Debugging: use the commands of the step-by-step debugging – Step Into, Step Over and Step Out.

Code Profiling

Debugging has greatly simplified the work of programmers. But MetaEditor 5 has another powerful tool for source code optimization. Code profiler detects all application bottlenecks.

Code profiler analyzes execution speed of the application’s individual source code fragments. Analysis results are submitted to a programmer both by individual functions and lines. Thus, it is now possible to find the slowest parts of the code and optimize MQL5 program operation.

MQL5 Wizard

The MetaEditor 4 includes a Wizard for creating Expert Advisors allowing to generate templates for developing various applications. In the fifth version of the MetaEditor this component has been significantly redesigned. Its new name is the MQL5 Wizard. It still allows you to create templates of programs that are already properly designed and contain the necessary event handlers. However, the main new feature is the possibility to generate ready-to-use Expert Advisors. The trader must choose which signals the Expert Advisor will use, its money management strategy and the way it will be protected from losses (type of trailing stop).

Now the trader does not necessarily need to know how to program in MQL5, to get a ready-to-use Expert Advisor. An EA is generated in a few easy steps. Then you can start optimizing your Expert Advisor in the strategy tester.

Since the build 600 the fourth version of the client terminal has been switched to using MetaEditor from the fifth version of the trading platform. The unified MetaEditor is now used for both versions of the client terminal.