What's new in MetaTrader 5

The history of updates of the desktop, mobile and web platforms

10 March 2011
MetaTrader 5 Client Terminal build 411
  1. Terminal: Fixed a bug in changing the properties of the "Chart" graphical object.
  2. MQL5: Added support for parametric macros - you can now declare the macros of the following form:
    #define MUL(a, b) ((a)*(b))
  3. MQL5: Added an object property OBJPROP_CHART_ID - the identifier of a chart that corresponds to the graphical object "Chart" (OBJ_CHART). This gives the possibility to manage the properties of a chart embedded in a graphical object from MQL5 programs.
  4. MQL5: In the OnDeinit function, added a new code of deinitialization reason - REASON_CLOSE - meaning the terminal has closed.
  5. MQL5: Added check for the availability of a symbol in Market Watch when creating an indicator from an MQL5 program.
  6. MQL5: Fixed notifications of errors when downloading MQL5 programs.
  7. MQL5: Fixed stop of scripts and Expert Advisors when closing the terminal.
  8. MQL5: Fixed the implementation of the MessageBox function.
  9. MetaTester: Fixed update of remote agents.
  10. MetaEditor: Fixed search and replace in a selected text.
  11. MetaEditor: Fixed MetaStyler for comment blocks.
  12. MetaEditor: Added an option for exiting the snippet processing by pressing ESC.
  13. Fixed errors reported on the forum and in crash logs.
3 March 2011
MetaTrader 5 Client Terminal build 408
  1. Terminal: Message about deletion of an account in a client terminal is written into the journal.
  2. Terminal: Fixed formation of the depth of market during its first startup.
  3. MQL5: Added the CHARTEVENT_CHART_CHANGE even of chart characteristics changes: size, color, template, etc.
  4. MQL5: Fixed omission of an error message when the sign ";" is missed.
  5. MQL5: Fixed a warning on the comparison of bool types with other data types.
  6. MQL5: Prefix clr* added to color constants: the GreenYellow color now will be called clrGreenYellow. The old color names will be supported for the next few builds.
  7. MQL5: Fixed color to string and string to color typecasting.
  8. MQL5: Fixed chart property change CHART_BRING_TO_TOP.
  9. MQL5: Fixed behavior of MQL5 programs if custom indicator loading fails.
  10. MQL5: Updated the Standard Library. Fixed the Resize method of classes of dynamic arrays CArray *.
  11. MetaTester: Fixed update of remote agents.
  12. MetaTester: Fixed setting of a symbol and a period of testing for an Expert Advisor during the repeated run.
  13. MetaTester: The process of a remote testing agent is set a lower priority for a more flexible scheduling of computer resources.
  14. MetaTester: Fixed freeing up of memory with historical data in case there are no new connections.
  15. MetaEditor: Optimized work of MetaAssist.
  16. MetaEditor: Fixed processing of the do ... while snippet.
  17. MetaEditor: Added option "Only selected" in the dialog of text replacement.
  18. Fixed errors reported on the forum and in crash logs.
24 February 2011
MetaTrader 5 Client Terminal build 404
  1. Terminal: Fixed enabling/disabling of a signal in the dialog of signal setting.
  2. MQL5: Fixed slowdown in the absence of incoming values for custom indicators.
  3. MQL5: Added forced redrawing of a chart when navigating from scripts and Expert Advisors.
  4. MQL5: Updated the Standard Library - fixed an error in the CString::Reverse method.
  5. MetaTester: Fixed the generation of optimization cache.
  6. MetaTester: Fixed am error in the file cache of the testing agent.
  7. MetaTester: Fixed transmission of an Expert Advisor to a testing agent in case the Expert Advisor has changed.
  8. MetaEditor: Fixed memory leaks when working with snippets.
  9. MetaEditor: Fixed saving of files that are open in the browser in the MQL5 directory.
  10. MetaEditor: Optimized editing and compilation of large mq5 files.
  11. Fixed errors reported on the forum and in crash logs.
20 February 2011
MetaTrader 5 Client Terminal build 401
  1. Terminal: Fixed the start of the client terminal using the custom configuration file.
  2. Terminal: Fixed saving of negative angles for the label objects.
  3. Terminal: Added re-calculation of the width of chart scales after changing its properties.
  4. MQL5: Fixed the ChartApplyTemplate function.
  5. MQL5: Fixed reading of large strings from a file.
  6. MQL5: Fixed call of the OnDeinit method for custom indicators used simultaneously by several Expert Advisors or charts.
  7. MQL5: Changed the value of the OBJ_ALL_PERIODS flag (0x001fffff (2 097 51) instead of 0xffffffff (4 294 967 295))
  8. MQL5: Updated the Standard Library.
  9. MetaTester: The "Clear" command of the context menu of the tester journal removes all log files of the tester and local agents.
  10. MetaTester: Fixed the initialization of the history cache when shifting the testing start date.
  11. MetaTester: In the context menu of the tester journal, added command "Full Optimization Logs" - showing the logs on the completion of intermediate stages of optimization.
  12. MetaEditor: Added support for snippets - the automatic insertion of code snippets initialized by typing a key word. For example, in order to insert the class declaration, type class - after that the cursor shape will change, thus indicating that the word is the key word for a snippet:

  13. Then, when you press Tab, the key word is replaced by the class declaration. Change of the class name will automatically change the names of the constructor and destructor.

    The transition between active fields of the snippet (in our case between the class name, the name of the constructor and destructor name) is performed by pressing Tab (move forward) and Shift+Tab (move back). Currently the following snippets are supported:

    Keyword
    Value
    start
    Entry point OnStart
    initv Entry point void OnInit
    initi
    Entry point int OnInit
    deinitEntry point OnDeinit
    tickEntry point OnTick
    time
    Entry point OnTime
    trade
    Entry point OnTrade
    book
    Entry point OnBook
    chart
    Entry point OnChart
    test
    Entry point OnTester
    calc
    Entry point OnCalculate
    calcp
    Entry point OnCalculate
    struct
    Structure declaration
    for
    Declaration of the for loop
    while
    Declaration of the while loop
    do
    Declaration of the do while loop
    if
    Declaration of the if condition
    ife
    Declaration of the if-else condition
    enum
    Declaration of enumeration
    class
    Class declaration
    classbDeclaring a class with inheritance
    switch
    The switch selector
    case
    The case selector
    #imp
    Import declaration

  14. MetaEditor: Added search on MQL5.com by pressing Ctrl+F1.
  15. MetaEditor: Fixed search on MQL5.com in English.
  16. Fixed errors reported on the forum and in crash logs.
4 February 2011
MetaTrader 5 Client Terminal build 392
  1. MetaTester: Fixed setting optimization parameters.
  2. MetaTester: Fixed mass adding and deleting of agents.
  3. MetaTester: Added showing of single-test results immediately after they are obtained.
  4. Fixed errors reported on the forum and in crash logs.
3 February 2011
MetaTrader 5 Client Terminal build 391
  1. Terminal: Significantly increased speed of loading of the charts with a large number of graphical objects (hundreds of thousands).
  2. MQL5: Fixed commands for navigating through a chart from an Expert Advisor.
  3. MQL5: Fixed casting of numbers with a floating point to a string.
  4. MQL5: Fixed copying of structures.
  5. MQL5: Fixed an error in setting of parameters of running Expert Advisors.
  6. MQL5: Fixed errors in the StringReplace function.
  7. MQL5: Updated the Standard Library.
  8. MetaTester: Fix the generation of optimization cache.
  9. MetaTester: Optimized transmission and display of trade results of testing.
  10. MetaEditor: Added generation of classes in the MQL5 Wizard.
  11. MetaEditor: Fixed creation of an *.mqh file for an *.mq5 file for long function names.
  12. Fixed errors reported on the forum and in crash logs.
31 January 2011
MetaTrader 5 Client Terminal build 387
  1. Terminal: Added support for pasting from the clipboard into a list of trade servers in the dialog of new account opening.
  2. Terminal: Fixed saving and display of selected categories of news.
  3. Terminal: Added filtering of rows to be pasted from the clipboard in the fields of new account opening dialog.
  4. Terminal: Fixed calculation of total profits in the OpenXML statement of the trade history.
  5. Terminal: In the terminal log, added messages about enabling/disabling of automated trading.
  6. MQL5: Fixed getting of the Expert Advisor parameters.
  7. MQL5: Fixed passing of call of functions from the ArrayGetAs* family in x64.
  8. MQL5: Fixed definition of accessibility of protected and private class members.
  9. MQL5: Optimized event handling by Expert Advisors.
  10. MQL5: Fixed definition of the paths to resources.
  11. MQL5: Fixed output of messages about deletion of an undeletable or invalid pointer.
  12. MetaTester: Fixed saving of testing settings when running a single test from the optimization results.
  13. MetaTester: Fixed memory reserving when displaying 2D optimization results on large data volumes.
  14. MetaTester: Optimized passing of test parameters.
  15. MetaTester: Optimized display of the trade history in the tester.
  16. MetaEditor: Fixed update of the tester through LiveUpdate.
  17. MetaEditor: Fixed timely display of debugging points.
  18. MetaEditor: Added a command for creating an *.mqh file at an *.mq5 file for preparing the header files of libraries.
  19. MetaEditor: Fixed transition between the description and definition of the method.
  20. MetaEditor: Fixed opening of a file from the command line.
  21. MetaEditor: Fixed search through MQL5.com when connecting through a proxy server.
  22. Fixed errors reported on the forum and in crash logs.
19 January 2011
MetaTrader 5 Client Terminal build 384
  1. Terminal: Added a wizard for adding remote testing agents. In addition to manual entry and import from *.mt5 file, added the option of scanning the local network to find a working agent.
  2. MQL5: Added the possibility to store resources in *.ex5 files. To add a resource to *.ex5, the directive #resource is used, with the specification of a path to the file relative to the directory MQL5\Images of the client terminal. Foe example: #resource myexpert\button.bmp
    The files in the resource can be referenced to using a line: "script_name::resource_name". As the resource name, the file name (without extension) passed in the #resource directive is used.
  3. MQL5: Fixed passing as a parameter of the ArrayGetAsSeries function and similar errors.
  4. MQL5: Fixed false compilation warning "expression is always false".
  5. MQL5: Fixed the release of custom indicators used in MQL5 programs.
  6. MetaTester: Fixed crash of the tester with the release of custom indicators.
  7. MetaEditor: Added display of function arguments in the tooltip for the nested and multi-functions.
  8. Fixed errors reported on the forum and in crash logs.
18 January 2011
MetaTrader 5 Client Terminal build 381
  1. Terminal: Added email verification during the registration of a demo account - an email with the confirmation code required to open a demo account is sent to the specified email address. When using the same email address again, re-confirmation is not required.
  2. Terminal: Added a request to confirm attachment of an Expert Advisor to a chart where another EA is already running.
  3. Terminal: When connecting to a server, the used access point is specified in the terminal journal.
  4. Terminal: Fixed error of price history lading when changing the current account.
  5. MQL5: Fixed execution of the OnDeinit function of custom indicators at terminal shutdown.
  6. MQL5: Fixed setting of labels of custom indicators through #property.
  7. MQL5: Fixed drawing of levels of custom indicators.
  8. MQL5: Fixed error of global arrays operation for x64.
  9. MQL5: Fixed error of custom indicators calculation.
  10. MQL5: Fixed comparison of unsigned types with zero.
  11. MQL5: Updated the Standard Library: all library classes are now inherited from CObject.
  12. MQL5:Updated the Standard Library:  the Type() methods of classes CDealInfo, CHistoryOrderInfo, COrderInfo and CPositionInfo are renamed to DealType(), OrderType() and PositionType() respectively.
  13. MetaTester: Fixed terminal crash that could appear with the release of custom indicators.
  14. MetaTester: Fixed terminal looping when connecting to the tester.
  15. MetaEditor: Fixed auto substitution when using keywords.
  16. MetaEditor: In the EA and indicator creation wizard, added a step for selecting events to process with further generation of template functions.
  17. Fixed errors reported on the forum and in crash logs.
18 January 2011
New MetaTrader 5 for iPhone

Today we are releasing the mobile version of the MetaTrader 5 Client Terminal for iPhone, iPod Touch and iPad. Now everyone can take advantage of the freedom of mobile trading - the terminal can be downloaded free from AppStore.

With MetaTrader 5 for iPhone, you can trade, monitor your account and stay up-to-date with financial information 24 hours a day. With the mobile terminal, trading in the financial markets is available at anytime from anywhere in the world. MetaTrader 5 Mobile offers the user-friendly interface and wide variety of features.

Charts and analytic tools will be added soon to the mobile version of the MetaTrader 5 mobile terminal. The list of supported platforms will be expanded – as we are planning to release also MetaTrader 5 Mobile terminal for Android and Blackberry.

Download MetaTrader 5 for iPhone to acquire a powerful tool for trading in financial markets. What's more important, the terminal will always be with you.

27 December 2010
MetaTrader 5 Client Terminal build 375
  1. Terminal: Fixed an error in the parameters tab.
  2. MQL5: Fixed rebuilding of the base of graphical objects.
  3. MQL5: Fixed comparison of base type variables NULL.
  4. MQL5: Fixed warnings about memory leaks with DLL use prohibited.
  5. MetaTester: Showing of CPU of a remote agent is replaced by the testing progress.
  6. MetaEditor: Added an option for page numbering.
  7. MetaEditor: Added support for the Full Screen mode.
  8. Fixed errors reported on the forum and in crash logs.
26 December 2010
MetaTrader 5 Client Terminal build 373
  1. Terminal: Optimized history loading after it has been deleted from the terminal.
  2. Terminal: Improved positioning of chart windows for commands "Tile Vertically" and "Tile Horizontally". 
  3. MQL5: Looped Expert Advisors are now stopped faster.
  4. MQL5: Fixed work with local variables in recursive calls of virtual methods of the class. 
  5. MQL5: Raised the version of EX5 files - this requires recompilation of MQL5 programs.
  6. MQL5: Fixed error of color checking CLR_NONE.
  7. MQL5: Added an integer chart property CHART_BRING_TO_TOP, which allows to display the corresponding chart on top of other charts. 
  8. MQL5: Fixed errors in the standard library.
  9. MetaTester: Optimized data exchange between the client terminal and the testing agent.
  10. MetaTester: Improved detection of agents with problems.
  11. MetaTester: Improved update of remote testing agents. Now you can update and 32-bit and 64-bit remote agents, regardless of the bit mode of the client terminal.
  12. MetaTester: Introduced faster plotting of the balance/equity charts with a huge number of trades.
  13. MetaTester: Improved memory control in case there is a large number of trades.
  14. MetaTester: Accelerated return of testing results to the client terminal.
  15. Fixed errors reported on the forum and in crash logs.
15 December 2010
MetaTrader 5 Client Terminal build 370
  1. MQL5: Fixed operation of the iCustom function.
  2. MetaTester: Fixed stopping of 32 bit and 64 bit remote agents during the update.
  3. MetaTester: Instead of CPU usage of a remote agent, now the testing progress is shown.
  4. Fixed errors reported on the forum and in crash logs.
14 December 2010
MetaTrader 5 Client Terminal build 368
  1. Terminal: Fixed the formation of the economic calendar.
  2. Terminal: Optimized generation of trading and testing reports in HTML and OpenXML. Now the generation of large reports does not cause "freezing" of the terminal.
  3. MQL5: Raised the version of EX5 files - this requires recompilation of MQL5 programs.
  4. MQL5: If an error occurs in the StringReplace function, now the code of the last error is returned.
  5. MQL5: Fixed an error in the ArrayResize function for multidimensional arrays.
  6. MQL5: Fixed deinitialization of a custom indicator in case its parameters has changed.
  7. MQL5: Added a function for casting an enumeration to a string - EnumToString().
  8. MQL5: Fixed passing of a string by reference to a DLL for x64.
  9. MQL5: Updated the Standard Library.
  10. MetaTester: Fixed LiveUpdate for remote agents - the remote agents should be updated manually.
  11. MetaTester: Increased speed of testing and optimization - removed redundant operations during initialization and passing of results.
  12. MetaTester: Fixed passing of a tick before testing.
  13. MetaTester: Fixed calculation of the total testing time.
  14. MetaEditor: Fixed display of the "Date" box in the "Articles" tab.
  15. MetaEditor: Fixed downloading of a list of categories in the "Articles" and "Code Base" tabs.
  16. Fixed errors reported on the forum and in crash logs.
2 December 2010
MetaTrader 5 Client Terminal build 362
  1. Terminal: Dialogs for viewing logs of the terminal, tester and Expert Advisors are now nonblocking.
  2. Terminal: Fixed saving of graphic settings of the terminal when restarting the operating system with the terminal running.
  3. MQL5: Added the StringReplace function.
  4. MQL5: Fixed processing priority of the click event for the OBJ_RECTANGLE_LABEL object.
  5. MQL5: Fixed unconditional execution of the OnDeinit method when changing the parameters of a custom indicator.
  6. MQL5: Foxed check of structures\classes embedded in structures\classes.
  7. MQL5: Fixed reset of the calculated data counter during custom indicator initialization.
  8. MQL5: Fixed errors in classes of trade signals of the standard library.
  9. MQL5: In the standard library, added a trade signal class CSignal2EMA-ITF which uses the CSignalITF time filter.
  10. MetaTester: Fixed processing of outstanding tasks during optimization.
  11. MetaTester: Fixed handling of agents' errors during optimization.
  12. MetaTester: Fixed group update of agents.
  13. MetaTester: Fixed export and import of the list of testing agents.
  14. MetaTester: Fixed saving of testing parameters when restarting the operating system with the terminal running.
  15. Fixed errors reported on the forum and in crash logs.
25 November 2010
MetaTrader 5 Client Terminal build 360
  1. Terminal: Added a new graphic object OBJ_RECTANGLE_LABEL.
  2. Terminal: Fixed deletion of the last indicator in chart subwindows.
  3. Terminal: Fixed saving of the chart windows position.
  4. Terminal: Fixed errors in displaying of trade history in a chart.
  5. Terminal: Fixed collecting of crash logs with UAC enabled.
  6. MQL5: Fixed processing of a click event on the chart.
  7. MQL5: Fixed processing of the uint constant in case operators.
  8. MQL5: Added a compilation error message when declaring a class with incorrect modifiers.
  9. MQL5: Fixed functions ChartIndicatorDelete and ChartIndicatorName.
  10. MQL5: In the standard library fixed Shift methods in classes of dynamic arrays.
  11. MQL5: In the standard library fixed the FormatRequestResult method of the CTrade class.
  12. MQL5: Fixed errors of using array-type global variables.
  13. Tester: In the menu of the agents list added an option of disabling animation (showing of CPU usage by agents).
  14. Tester: Added an option for group deletion of agents.
  15. Tester: Fixed tester crash at the premature stop of testing.
  16. Tester: Fixed resetting of the forward testing date during optimization with a custom forward period.
  17. Tester: Fixed recording of events in the tester log.
  18. MetaEditor: Fixed loss of editor focus after closing the auto-substitution window.
  19. Fixed errors reported on the forum and in crash logs.
22 November 2010
MetaTrader 5 Client Terminal build 358
  1. Terminal: Removed drawing of descriptions of graphic objects of calendar events.
  2. Terminal: Fixed placing of SL and TP in the trade dialogs at position turn.
  3. Terminal: Fixed selection of a server in the dialog of demo account opening.
  4. Terminal: Optimized loading of graphic objects when opening a chart.
  5. Terminal: Optimized adding of tester deals history in a chart.
  6. Terminal: Optimized drawing of the OBJ_EDIT object.
  7. MQL5: Fixed error with input parameters of the COLOR and uint type.
  8. MQL5: Added methods for managing indicators on a chart: ChartIndicatorDelete, ChartIndicatorName, ChartIndicatorsTotal.
  9. MQL5: In the standard library, fixed the DeleteRange method in the classes of dynamic arrays.
  10. MQL5: Fixed the CTrade class in the standard library.
  11. Tester: Added export and import of the list of remote testing agents.
  12. Tester: In the testing journal, in addition to the performance rating now the information on the agent computer configuration is shown.
  13. Tester: Changed displaying of string parameters of testing.
  14. Tester: To optimize testing, the Stop Out check is performed once a minute (at the testing time), not for every tick.
  15. Tester: Fixed the algorithm of distribution of tasks to agents during optimization. Tasks are distributed only to successfully connected agents.
  16. Tester: Fixed generation of OnTimer events.
  17. MetaEditor: In addition to Enter, now the Space key can be used for selecting functions in the auto substitution menu.
  18. MetaEditor: Fixed downloading of files from MQL5.com - earlier downloaded files are not deleted in case of connection loss.
  19. MetaEditor: Fixed moving to the line with the error description after compilation.
  20. Fixed errors reported on the forum and in crash logs.
11 November 2010
MetaTrader 5 Client Terminal build 355
  1. Terminal: Fixed errors in the tooltips of graphic objects.
  2. Terminal: Added the preliminary check of funds before sending a request to a trade server.
  3. MQL5: Fixed comparison and check of conditions for operands of the long type.
  4. MQL5: Fixed error of addition with 64-bit constant in the 64-bit version.
  5. MQL5: Updated the standard library. In classes CDealInfo, CHistoryOrderInfo, COrderInfo, CPositionInfo added SelectByIndex methods for selecting appropriate entries by indexes.
  6. Tester: The priority of the local testing agent process is reduced for computers with single-core processors. This is done to enable normal operation of a user together with the testing process.
  7. Tester: Optimized performing of trade operations and checks.
  8. MetaEditor: Fixed errors in the wizard of trading strategies.
  9. MetaEditor: Fixed creation of a new file in the navigator tree.
  10. MetaEditor: Added possibility to disable background highlighting for parentheses matching.
  11. Fixed errors reported on the forum and in crash logs.
4 November 2010
MetaTrader 5 Client Terminal build 353
  1. Terminal: Fixed display of deals in the trading history.
  2. Terminal: Fixed drawing of indicators and custom indicators using histograms.
  3. Terminal: Optimized operation of the access points scanner for working with a proxy server.
  4. Terminal: Fixed displaying of the context menu of the trading window when working in the investor mode.
  5. MQL5: Added a function for comparing strings - StringCompare.
  6. MQL5: Fixed checking of a set line width for custom indicators.
  7. MQL5: Updated the standard library.
  8. Tester: Fixed the error that caused termination of testing on computers with processors that have no SSE 3 support.
  9. Tester: Fixed processing of the testing start date which is outside the existing history.
  10. Tester: Fixed checking of the volume of available history before the start of testing.
  11. Fixed errors reported on the forum and in crash logs.
The live update will be available through the LiveUpdate system.
29 October 2010
MetaTrader 5 Client Terminal build 350
  1. Terminal: Fixed formating of the list of news categories when switching between servers.
  2. Terminal: Fixed displaying of the depth of market.
  3. Terminal: Fixed update of history on the Refresh command.
  4. Terminal: Fixed drawing of the OBJ_EVENT object.
  5. Terminal: Fixed formation of the current day bars when passing midnight.
  6. Terminal: Fixed formation of the current day bars when switching between servers.
  7. Terminal: Fixed showing of time of the last quote in the header of quotes window.
  8. MQL5: Updated the standard MQL5 library. Added methods for accelerated trading and printing orders and deals.
  9. MQL5: Fixed checking of type modifiers.
  10. MetaTester: Increased speed of testing and optimization for the x32 platform.
  11. MetaTester: Optimized work of the local tester. The tester remains in the memory for 5 minutes after being used caching history data of the last testing which allows saving time on pre-synchronization and history building.
  12. Fixed errors reported on the forum and in crash logs.
12345678910111213141516