Release Notes: MetaTrader 4

MetaTrader 4 Forex Trading Platform

15 September 2015
MetaTrader 4 iPhone build 843
iOS 9 compatibility improved.
4 September 2015
MetaTrader 4 iPhone build 841
  • Added support of two factor authentication (One-time password, OTP) for connecting to a trading account.
  • In the iPhone version trades can now be executed from a chart at a single tap - turn the device into a horizontal position and open a quick trade panel.
  • Various bug fixes and improvements.
28 August 2015
MetaTrader 4 Web Platform: Beta release for public testing

The first web version of the trading platform has been released. All trading and analytical features of a desktop terminal can now be accessed from a web browser. Trading on the web platform is safe, while any transmitted information is securely encrypted. Trading account passwords are encrypted and stored only in the local storage of the browser.

Web trading is already available for testing in the new Trading section of the site. The interface of the web platform is similar to the desktop version. The following functions are available now:

  • All types of trading operations: placing market and pending orders
  • Real-time quotes in the Market Watch
  • Customizable symbol charts
  • 9 chart timeframes
  • Basic analytical objects: horizontal, vertical, and trend lines, equidistant channels and Fibonacci lines

The functionality of the web platform will be further expanded.
1 July 2015
MetaTrader 4 iPhone build 819
  • Improved news section. Select news categories to follow what is interesting for you. Add the news items you like to Favorites to quickly access them wherever you need.
  • Search news by headlines.
  • New interface language: Hindi.
  • Various bug fixes and improvements.
12 June 2015
MetaTrader 4 Build 840


  1. Increased the maximum size of custom tooltips for graphical objects to 128 symbols. The tooltips are set using the OBJPROP_TOOLTIP property.

  2. Fixed display of the channel graphical objects when the Ray property is enabled - endless channel continuation to the right.


  1. Enhanced logging when purchasing products. This facilitates looking for solutions when dealing with user issues.
  2. Fixed product rent renewal errors.


  1. Fixed MQL4 application download when non-Latin (e.g., Chinese or Japanese) characters are used in a path name.
  2. Added the MQLSetInteger function for managing MQL4 application environment properties. Added the MQL_CODEPAGE property to the ENUM_MQL_INFO_INTEGER enumeration. Using this property, the current code page in a launched MQL4 program is used via the MQLSetInteger function.

    The code page applied when compiling an MQL4 application is used in that application by default. If there is a mismatch between operation system locales during a compilation and a program launch, there may be issues with displaying messages and receiving string values. This applies to the Print, PrintFormat, Comment, Alert, MessageBox, SendFTP, SendMail, SendNotification, iCustom and other functions where file names, graphical objects, global variables, etc. are used as parameters.

    The new function and property solve this problem.

  3. Added another form of the ObjectsDeleteAll function:
    int ObjectsDeleteAll(
       int            chart_id,   // chart ID
       const string     prefix,   // prefix
       int    sub_window=EMPTY,   // chart subwindow ID
       int   object_type=EMPTY    // object type
    This function removes all graphical objects of the specified type from the specified chart or its subwindow. A special feature is the ability to set a prefix in the names of removed objects. For example, you can remove only the objects having the names beginning from "myobj_".

  4. Added the CHARTEVENT_CHART_CHANGE event generation when using Home and End keys. Previously, this event was generated only when changing chart sizes and properties via the appropriate dialog.
  5. Fixed the CHARTEVENT_OBJECT_CREATE event generation when creating a graphical object by copying. Copying is performed by dragging an object while holding Ctrl.
  6. Fixed the value returned by the ChartID function during the visual testing.
  7. Fixed receiving the OBJPROP_SCALE property for the Ellipse graphical object. This property is designed for receiving an object scale.
  8. Fixed checking the ArrayFill function input parameters. The function fills a numeric array with a specified value.
  9. Added the ArrayMaximum and ArrayMinimum methods to the CArrayChar, CArrayShort, CArrayInt, CArrayFloat and CArrayLong classes of the standard library. These methods allow you to search for the maximum and minimum values ​​in the respective arrays.
  10. Fixed the SearchGreatOrEqual and SearchLessOrEqual methods in the CArrayChar, CArrayShort, CArrayInt, CArrayLong, CArrayFloat, CArrayDouble and CArrayString classes of the standard library. The methods allow you to search the arrays for the elements greater or equal/less or equal to the specified one.
Fixed errors in the CArrayChar class of the standard library. Fixed the QuickSort, QuickSearch, SearchGreat and SearchLess methods.Fixed errors reported in crash logs.

The update is available through the LiveUpdate system.

22 May 2015
MetaTrader 4 Client Terminal build 825


  1. The new feature in MetaTrader Market allows providing products for rent for 1, 3, 6 or 12 months. This provides undeniable advantages both for developers and buyers. Sellers can significantly increase user confidence in their products, giving the customer a chance to thoroughly check the product functionality at a low cost. For buyers, the rent is another opportunity to assess a product before buying it. Unlike demo versions, rented products have no limitations except for validity period.

    Any developer in the Market may choose whether or not to provide their products for rent, and what will be the cost of this rent.

    MetaTrader Market - The seller sets a rent price for his product

    Developers may choose not to offer their products for rent selling only full licenses for unlimited use.

    If rent is enabled for a product, its web page shows possible options: rental period and price. Click "Rent" and select the rental period.

    Rent an application directly from MetaTrader 4 Trading Platform

    After expiration, you can either extend the product rental period or purchase an unlimited version of the product.

  2. We are introducing a new mechanism of "direct" purchasing. Purchasing a trading robot or an indicator from the Market is now even easier, and you do not even need an account.

    One-Step Purchase
    A user doesn't need to log in to an account and add money to it. A payment for a product can now be made straight from the platform using one of the available payment systems. To maintain a clear and unified history of purchases from the Market, the required amount will be first transfered to your account, from which a payment for the product will be made.

    You can easily access and review all your payments from your Profile.

    Top-up your directly form MetaTrader 4

    Purchase without Registration
    A product from the Market can be purchased without an account. Click "Buy" and pay for the product using one of the available payment systems.

    Buy products in MetaTrader Market without registration

    Then you will be redirected to the payment system web page to complete your purchase.

    Just choose a payment method and buy products in MetaTrader Market without registration

    After that, we strongly recommend you to register an account on, and your purchase will be automatically linked to it. This enables you to update the product and install it on multiple computers.


  1. The Strategy Tester now allows testing not only Expert Advisors, but also indicators. This can be done in the visual testing mode. The behavior of the indicator is shown on a chart, which is plotted based on a sequences of ticks simulated in the tester.

    This feature is especially useful for the users who want to purchase an indicator from the MetaTrader Market. Before purchasing an indicator, you can download a free trial version and see its backtest performance in the strategy tester.

    Visual testing of technical indicator in MetaTrader 4 trading platform

    Select the type of the program - "Indicators", then select the indicator and click "Start".

Virtual Hosting

  1. Multiple improvements and fixes have been implemented in the Virtual Hosting service.

    The major changes apply to operation in Wine on computers running Linux and Mac OS. Now you can work with an allocated virtual server as usual: migrate it, monitor its performance and view logs.

    MetaTrader 4 running under Wine now allows to use Vistual Hosting Service

    The operation of the Log has also changed. 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 no longer need to change the request period. Simply select the last line in the log viewer window and press PgDn.

    MetaTrader 4 Logs now can work with huge amount of messages


  1. The Market Watch window now features the current spread of a symbol. Enable the spread information from the context menu.

    Now you can find the current spread in Market Watch window of MetaTrader 4

  2. Added filtering of news by categories. Now you can customize the list of news to your convenience. If a news category contains subcategories, an additional dialog can be opened from the context menu, where you can configure the list of news.

    Filter the news by categories for your convenience

  3. Fixed crash of the client terminal when canceling computer turn off in Windows 7.
  4. The terminal interface has been further adapted for high resolution screens (4K).
  5. Fixed display of the "One Click Trading" panel on the chart.
  6. Fixed display of a graphical object set by a custom indicator, if the object is to be displayed only on some of the timeframes.
  7. Fixed terminal freezing during Search in MQL5 programs.
  8. Fixed drawing of Bitmap Label objects when using a .bmp file fragment.
  9. Fixed display of filled graphical objects "Channels".
  10. A new parameter DDE TIMESEC for sending quotes over DDE. This parameter allows receiving the quote arrival time to the nearest second.
  11. Fixed an error that could occasionally lead to the launch of multiple terminal instances from one directory.
  12. Fixed occasional crash of the client terminal in Windows 10.


  1. To provide higher flexibility in the interaction with various web services, a new form of the WebRequest function has been added. It allows sending requests of any type with a custom set of headers specified:
    int  WebRequest(
       const string      method,           // HTTP method
       const string      url,              // url address
       const string      headers,          // Headers 
       int               timeout,          // timeout
       const char        &data[],          // an array of the body of the HTTP message
       char              &result[],        // an array with the server response data
       string            &result_headers   // Headers of the server response
    Error notifications have been modified. If an error occurs, the 'result' array will contain the description of the error.

  2. New function GetMicrosecondCount returns the number of microseconds that have passed since the start of the MQL4 program:
    ulong  GetMicrosecondCount();
    This function can be used to profile program execution and identify "bottlenecks".

  3. In order to prevent tested Expert Advisors from "looking into the future", the FileOpenHistory function is prohibited in the tester.
  4. New signal property in the ENUM_SIGNAL_BASE_STRING enumeration - SIGNAL_BASE_CURRENCY which means the signal provider's deposit currency. The property can be received via the SignalBaseGetString function.
  5. New chart property in the ENUM_CHART_PROPERTY enumeration - CHART_SHOW_ONE_CLICK which means the display of the "One Click Trading" panel on a chart. The property can be received via the ChartGetInteger function.
  6. Fixed calculation of the indicator subwindow size when using #property indictor_separate_window.
  7. Fixed Expert Advisor deinitialization errors when changing the chart template.
  8. Fixed behavior of the CopyTime function. For example, before the update, CopyTime call for D1 from 23:00 December 1, 2014 to 01:00 December 3, 2014 returned three bars: December 1, 2, and 3 of 2014. After the update the function returns two bars: December 2 and 3, 2014.
  9. MQL5: Fixed access of MQL4 programs to offline charts.
  10. Fixed operation of the SeriesInfoInteger function in the strategy tester.
  11. Fixed values returned by ChartFirst and ChartNext in the strategy tester. Before the update the functions returned 0 instead of -1 if the list of charts ended.
  12. Fixed downloading of resources from EX4 files in the Libraries directory. Download of resources from library files did not work properly before the update.
  13. Fixed occasional errors in the results of the ChartXYToTimePrice and ChartTimePriceToXY functions.
  14. Fixed generation of CHARTEVENT_OBJECT_DRAG. Now the event is generated after dragging is completed, not at the beginning of it.
  15. Fixed generation of CHARTEVENT_CHART_CHANGE in custom indicators when moving a chart.
  16. Fixed use of global variables with long names (over 63 characters).
  17. Fixed some bugs in the compilation of macros.
  18. Fixed call of the DLL functions that return structures and strings.


  1. Fixed formatting of variable descriptions in the drop down list of function parameters in MetaAssist.

Fixed errors reported in crash logs.

The update is available through the LiveUpdate system.

19 May 2015
MetaTrader 4 iPhone build 775
  • Display of the Ask line on a chart.
  • A new category of messages for notifications from virtual hosting.
  • Display of potential profit\loss when closing a position.
  • Improved display of news contents.
  • New interface languages: Thai and Ukrainian.
  • Various bug fixes and improvements.
15 May 2015
MetaTrader 4 Android build 770
  • Improved chart display.
  • Increased server connection speed.
  • Fixed closing of orders with the "long only" property (when only buying is allowed).
  • Added sorting on the "Trade" and "History" tabs.
  • Added color highlighting of inactive instruments.
  • Added ability to set chart shift.
  • Various bug fixes and improvements.
26 March 2015
MetaTrader 4 Android build 762
  • Added display of profit/loss in the order close window.
  • New panel for quick access to the main tabs.
  • Added color schemes of the price chart.
  • Added Thai and Ukrainian translations of user interface.
  • Bug fixes and improvements.
27 February 2015
MetaTrader 4 Android build 758
Update for Android 4.0 and later. Support for the older Android versions application is terminated, but it is still available for download.
  • Changed the application design to be consistent with the Google Style Guide.
  • Added News.
  • Added W1 and MN timeframes.
  • Added Journal to display information about all events and trade operations.
  • Added Greek and Portuguese translations, updated Czech translation.
  • Bug fixes.
16 February 2015
MetaTrader 4 iPhone build 764
  • A new option allows creating an anonymous demo account to get started quickly with the application. Opening an account does not require any registration data and is performed in one click.
  • The Vietnamese language has been added.
  • Various bug fixes and improvements.
20 January 2015
MetaTrader 4 iPhone build 761
  • Support for 64-bit processors.
  • Internal chat optimization: improved synchronization of messages and updated design.
  • News support has been enhanced. The application now supports rich content and multimedia, as well as download of missing news upon connection to a server.
  • The Malay language has been added.
  • Various bug fixes and improvements.
25 October 2014
MetaTrader 4 iPhone build 709
Added iOS 8 compatibility.
4 September 2014
MetaTrader 4 iPhone build 667
  • Added an option for editing the levels of indicators and objects
  • Allowed specification of Stop Loss and Take Profit when opening a position for a symbol with the Market Execution type
  • Added Portuguese and Greek translations
  • Minor fixes and improvements
3 July 2014
MetaTrader 4 iPhone build 655
  • Added support for the VoiceOver feature
  • Added Indonesian language
  • Minor fixes and improvements
30 May 2014
MetaTrader 4 Android build 636
  • Added message categories. Personal messages and notifications, desktop MetaTrader 4/5 messages, as well as broker messages are now displayed separately for more convenience.
  • Fixed a few errors in chart display.
  • Fixed trade server connection errors.
  • Added translations into Arabic and Indonesian.
  • Updated translations into Czech, French, Polish, Chinese and Japanese.
  • Fixed errors reported in crash logs.
18 April 2014
MetaTrader 4 iPhone build 589
  • Fixed incorrect operation of the notification service with some devices
  • Fixed occasional incorrect matching of a trade server to a selected account
15 April 2014
MetaTrader 4 Android build 592
  • Accelerated trading, as trade requests are now sent without an additional connection (new trade servers only).
  • Enhanced application stability.
  • Improved interface translation.
  • Fixed occasional errors when closing orders.
  • Fixed default colors in Ichimoku Kinko Hyo indicator.
  • Fixed incorrect display of the data window.
  • Fixed errors reported in crash logs.
2 April 2014
MetaTrader 4 iPhone build 587
  • Added 24 new graphic objects for technical analysis: lines, channels, Gann and Fibonacci tools, Elliott Waves and geometric shapes.
  • Completely revised design in favor of iOS 7 flat style.
  • Added ability to shift the chart - tap and hold it to enter the edit mode.
  • Improved usability: swipe to the right on an open position or order cell to access the actions menu when using your iPhone, or tap the chart to enter its options in your iPad.
  • Increased trading speed when connected to new trade servers.
  • The minimum required operating system version is iOS 5.0.
  • Many minor fixes and improvements.
17 March 2014
MetaTrader 4 Android build 590
  • Accelerated trading, as trade requests are now sent without an additional connection (new trade servers only).
  • Enhanced application stability.
  • Improved interface translation.
  • Fixed occasional errors when closing orders.
  • Fixed default colors in Ichimoku Kinko Hyo indicator.
  • Fixed incorrect display of the data window.
  • Fixed errors reported in crash logs.