MetaTrader 5新功能

桌面版,移动版和网页平台的更新历史

20 三月 2015
MetaTrader 5 Platform Update Build 1100: Faster Testing and Optimization of Expert Advisors

Tester

  1. A status of connection to MQL5 Cloud Network is now displayed in the Agents Manager. This allows users to easily check if they can receive tasks from the cloud computing network after they install agents.


    A status of connection to MQL5 Cloud Network


  2. Some improvements and bug fixes have been made in the operation of the Strategy Tester. Time spent on intermediate preparatory operations and network latency has been significantly reduced. Testing and optimization are now faster in all operating modes: working with local testing agents, with a farm of agents in the local network and using MQL5 Cloud Network.

Trading Terminal

  1. Added display of the number of unread emails in the "Mailbox" tab of the Toolbox window.


    Added display of the number of unread emails


  2. The Navigator window now contains the list of Expert Advisors running on the active trading account. In addition to the Expert Advisor name, a chart on which the EA is running is specified in the list. An icon indicates whether the EA is allowed to trade.


    The Navigator window now contains the list of Expert Advisors running on the active trading account


    The context menu contains commands for enabling or disabling automated trading for any of the Expert Advisors, as well as for viewing its properties or removing it from the chart.
  3. Improved accuracy of the algorithm for determining access points available for connection to a trading server.
  4. Fixed an error that could occasionally clean the database of client accounts when a terminal was reinstalled over an existing one.
  5. The terminal interface has been further adapted for high resolution screens (4K).

Market

  1. Fixed updating of the MQL5 account balance after purchasing or renting a product.

Virtual Hosting

  1. Fixed migration of custom indicators to the virtual hosting environment.
  2. Fixed updating of the virtual hosting status in the Navigator window.

MQL5

  1. Fixed errors which could occasionally interfere with the optimization of Expert Advisors in MQL5 Cloud Network.
  2. Fixed call of OnDeinit when deleting an Expert Advisor using the ExpertRemove function during testing. Previously, under the conditions described the OnDeinit event was not called.
  3. Fixed errors in use of resources in EX5 libraries.
  4. Fixed errors in the analysis of macros.

Fixed errors reported in crash logs.

Updated documentation.

The update is available through the LiveUpdate system.

16 二月 2015
MetaTrader 5 平台在 Build 1085 中的更新

MetaTrader 5 客户终端 build 1085
  1. 终端: 现在可以使用新的虚拟主机服务,可以在客户终端中位一个交易账户直接租用一个虚拟服务器,它提供了对交易服务器稳定的连接以及用于在EA进行的不间断的计算操作,交易复制现在也变得更加简单了。

    虚拟服务器是由 MetaQuotes 软件公司的伙伴公司维护的。
    分配一个虚拟服务器
    为了在虚拟服务器上取得虚拟终端,请使用所需的交易账户连接并通过上下文菜单中的"注册一个虚拟服务器"命令来执行。




    虚拟主机向导窗口出现,它展示了虚拟主机网络是如何工作的。获得一个虚拟服务器的过程包括三个步骤:首先, 您将了解到如何准备迁移;在那之后,您将可以选择距离经纪商交易服务器最近的虚拟服务器,以最小化网络延迟;



    您可以选择提供给每个MQL5.community注册用户的免费一天主机服务,或者选择一种提供的服务计划;最后,您将可以根据您的目标来选择数据迁移的模式:

    • 如果您需要同时运行EA交易/指标和复制交易,就需要完整迁移;
    • 如果不需要订阅信号,则只有EA交易和指标;
    • 只有交易的复制 - 只有信号复制设置(没有图表或者程序)被迁移。

    在选择了迁移模式之后,您可以通过点击“现在迁移”来立即运行虚拟服务器,或者晚些在任何时候这样做。

    准备迁移
    在运行虚拟终端之前,您应当为它准备一个活动的环境 - 图表,载入的指标和EA交易,信号复制参数和终端设置。

    • 图表和市场报价 - 从市场报价中隐藏所有不需要的资产以减少流量。关闭不需要的图表。在终端设置中,指定"窗口中的最大柱数"所需的值 - 终端在那之后会重新启动。
    • 指标和EA交易 - 把所需的EA和指标附加到图表上。在市场上购买的以及在图表上载入的产品也会被迁移,它们会保留完整功能,并且可用的激活数不会减少。所有指标和EA交易的外部参数应当正确设置。
    • 电子邮件, FTP 和信号 - 如果 EA 交易要发送电子邮件,通过 FTP 上传数据或者复制信号的交易,要确保指定了所有所需设置。在社区页面正确设置您MQL5.community账户的登录名和密码,这对信号复制是必需的。
    • 交易和复制信号的许可 - 在虚拟终端中永远允许自动化交易,为了操作信号,要在信号部分设置复制的参数。
    • WebRequest - 如果在虚拟终端中运行的程序使用WebReqest()函数来发送 HTTP 请求, 您应当设置许可并且在EA交易页面列出所有信任的URL。


    迁移
    迁移就是把当前活动的环境从客户终端中传输到虚拟终端中,
    迁移是在每次客户终端的同步中进行的。同步永远是单方向的过程 - 客户终端的环境被转移到虚拟终端中,而永远不会反过来。虚拟终端的状态可以通过请求终端来监控,还有EA交易的记录以及虚拟服务器的监控数据。
    为了进行同步,要打开账户的上下文菜单并选择迁移类型。




    这样,您就一直都能改变图表的数量和交易品种列表,运行的程序和它们的输入参数,终端设置和信号的订阅等等。

    当进行迁移时,所有的数据都记录在客户终端的记录中。


    在同步之后,打开虚拟终端的主日志可以检查其中执行的操作。




    操作虚拟终端
    租用的虚拟服务器状态也可以客户终端中很容易地监控,在上下文菜单中执行 "详细" 命令。



    信息在四个页面中作展示:

    • 详细 - 虚拟服务器本身的数据以及终端的活动环境。
    • CPU 使用 - CPU 使用图表, %.
    • 内存使用 - 内存使用图表, Mb.
    • 硬盘使用 - 硬盘使用图表, Mb.
    如需了解有关该服务的更多信息,请阅读文章"如何准备迁移到虚拟主机上的交易账户""虚拟主机服务的使用规则"

  2. 市场: 现在, 可以租用MetaTrader 市场中的产品了,租期为1,3,6或者12个月。这对开发人员和买家来说都是很有利的,作者可以通过允许潜在买家以较低花费检验他们的产品而极大地增强用户的信心,对于买家来说,租用也是在买入产品之前对它进行评估的另一种方法。和试用版不同,租用的产品除了有效的使用期限之外没有任何限制。
    任何市场产品的开发人员都可以选择他们的产品是否可以租用以及设置租用的价格。




    开发人员也可以选择不出租他们的产品,而只是在完整版中提供没有限制的使用。
    如果产品可以租用,它的网页上显示的可能选项是: 租用时间和价格。点击租用并选择租用的时间,



    在租期过期之后,用户可以续租或者购买完整版。

  3. 终端: 删除了在终端中使用“另存为图片”命令或者通过MQL5的Screenshot()函数保存图表截图中的 "MetaTrader 5, @ 2001-2015 MetaQuotes-Software Corp."版权信息,这使得屏幕截图的发布更为简单。




  4. 终端: 修正了内建的 Gator 振荡技术指标的计算和参数的管理。
  5. 终端: 提高了连接到交易服务器时对连接点的扫描。
  6. 终端: 修正了偶然发生的 LiveUpdate 运行错误。
  7. MQL5: 增加了 SIGNAL_BASE_CURRENCY 信号属性 - 信号提供商的存款币别 - 加到 ENUM_SIGNAL_BASE_STRING 枚举中。该属性可以通过 SignalBaseGetString 函数来读取。
  8. MQL5: 修正了在继承时确认访问父类成员权限时的编译错误。
  9. MQL5: 修正了通过参数调整重载类方法的编译错误。
  10. 测试器: 优化了 MQL5 云网络代理的工作,现在,代理不需要时间来做所谓的"热身" - 连接云网络服务器并发布任务,代理一直可以接收和执行任务了,这加速了通过 MQL5 云网络进行的优化。
  11. 测试器: 提高了在策略测试器中本地,远端和云代理的展示状态,
  12. 修正了崩溃记录中报告的错误;
  13. 更新了文档。


MetaTrader 5 安卓版 build 1052

新版本的安卓版 MetaTrader 5 已经在 Google Play 可以下载,它包含了一些错误修正,并且提高了稳定性,很快会再加上分析对象和信息系统。

该应用程序可以在这里下载: https://download.mql5.com/cdn/mobile/mt5/android?hl=en&utm_source=www.metatrader5.com


更新可以通过 LiveUpdate 系统完成。

16 一月 2015
MetaTrader 5 平台在 Build 1045 中的更新: 新的 WebRequest

交易终端

  1. 用于支持在 MetaTrader 5 平台上虚拟主机的准备性工作。虚拟主机服务使您可以租用一个终端来持续运行而不会被您的 MetaTrader 5打断。它的一个主要特性是可以选择距离经纪商服务器最近的服务器而最小化网络延迟。




  2. 测试器代理现在只能在64位系统下工作了,这是由信息技术工业的发展而决定的,切换到新的技术提高了计算性能,也使 MQL5 云网络有进一步的发展。



    平台组件的变化:

    • 在32位终端中不能再使用远程代理和MQL5云网络代理了,会显示“只在64位版本中可用”的信息,而不是代理列表。
    • MetaTester 5 代理管理器只能在64位版本中使用,所以,只能在64位系统中安装代理。


  3. 当在终端设置中人工指定了语言列表时,会固定根据语言过滤新闻。
  4. 有很多开启的订单时进行了优化。
  5. 加速发送交易请求。
  6. 界面采用了高分辨率的屏幕 - 全高清乃至更高。

MQL5 语言

  1. 增加了 WebRequest 函数新的格式:
    int WebRequest (string method, string url,string headers,int timeout, const char &data[], int data_size,char &result[], string &result_headers)
    这个函数使您可以明确构建HTTP请求头部的内容,以提供更加灵活的机制来与各种Web服务作交互。

  2. 增加了新的交易账户属性,AccountInfoDouble 函数中可用的属性:

    • ACCOUNT_MARGIN_INITIAL - 账户中当前的初始保证金;
    • ACCOUNT_MARGIN_MAINTENANCE - 账户中当前的维持保证金;
    • ACCOUNT_ASSETS - 当前账户资产;
    • ACCOUNT_LIABILITIES - 当前账户负债;
    • ACCOUNT_COMMISSION_BLOCKED - 当前被阻止的账户手续费。

  3. 增加了新的交易品种属性:

    • SYMBOL_OPTION_STRIKE - 期权合约的预购价格,这个属性是通过 SymbolInfoDouble 函数得到的;
    • SYMBOL_BASIS - 交易品种的基础资产名称,这个属性是通过 SymbolInfoString 函数得到的;
    • SYMBOL_OPTION_MODE - 期权模式, 其数值是使用 ENUM_SYMBOL_OPTION_MODE 枚举设置的; 
    • SYMBOL_OPTION_RIGHT - 期权权利, 其数值是使用 ENUM_SYMBOL_OPTION_RIGHT 枚举设置的,属性是通过 SymbolInfoInteger 函数得到的;

  4. 增加了 SymbolInfoMarginRate 函数 - 取得初始和维持保证金的数值,它们是对应交易订单的类型和方向的;
  5. 修正了 ChartIndicatorName 函数在策略测试器中运行的问题;
  6. 修正了使用 ## 替换名称的宏的编译问题;
  7. 修正了当打开新文件时重置文件结束标志的问题;

修正了崩溃记录中报告的错误;

更新了文档。

这些更新内容将可以通过 LiveUpdate 系统进行更新。

12 十二月 2014
MetaTrader 5 Platform Update Build 1035: Option Strategy Builder and Access to Ticks

Trading Terminal

  1. Implementation of functions for trading options is currently underway. The Option Strategy Builder has been added. It helps users combine different options in one investment portfolio, and to assess the possibilities and potential risks.



    The Builder is easy to use: a trader chooses the option based on the expiration date and the underlying asset, and then selects one of the more than 30 available strategies. The Builder displays the appropriate combination of options and calculates evaluation parameters - the so-called Greeks. The profit/loss chart and the Greeks based chart appear at the bottom of the window.

    In addition to a large number of built-in strategies, traders can create and save their own strategies for later use.

  2. Added display of the number of newsletters received in the last 24 hours.




  3. Optimized and accelerated synchronization of large history of trading orders and deals.
  4. Fixed launch of several custom indicators in one chart subwindow.
  5. Fixed recalculation of Bill Williams Market Facilitation Index for a changed chart period.
  6. Fixed minimization of the "Toolbox window".
  7. Fixed generation of the account state report published over FTP.
  8. Updated translation of user interface into German.
  9. Added translation of user interface into Greek and Uzbek.

MQL5 Language

  1. New function for working with the tick history CopyTicks. The function is used for receiving an array of ticks accumulated by the terminal for the current session. The depth is limited to the last 2000 ticks.

    The new function expands the possibilities for developing scalping trading robots. The OnTick function does not handle every tick, it notifies the Expert Advisor of market changes. It can be a batch of changes: the terminal can simultaneously make a few ticks, but OnTick will be called only once to notify the EA of the latest market state. The CopyTicks function allows you to receive and analyze all the ticks.
    int  CopyTicks(
       const string      symbol_name,           // Symbol name
       MqlTick           &ticks_array[],        // the array where ticks will be placed
       uint              flags=COPY_TICKS_ALL,  // the flag that defines the type of received ticks
       ulong             from=0,                // the date starting from which ticks will be received, specified in milliseconds since 01.01.1970
       uint              count=0                // the number of latest ticks that should be received
       );
    Ticks can be requested by the date if the 'from' value is specified, or based on their number using the 'count' value. If none of the parameters are specified, all available ticks are received, but not more than 2000. Ticks can also be requested based on their type using the 'flags' parameter. Available values:

    • COPY_TICKS_ALL - all ticks.
    • COPY_TICKS_INFO - only information ticks (Bid and Ask).
    • COPY_TICKS_TRADE - only trade ticks (Last and Volume).

  2. Added an option for overloading template functions using array parameters.
  3. Added an option for overloading a method based on its constancy.
  4. Added generation of the CHARTEVENT_MOUSE_MOVE event (in the OnChartEvent entry point) at the right mouse button click on the chart.
  5. Fixed the functioning of the Switch operator if the case condition contains a negative value.
  6. Improved calculation accuracy in functions ObjectGetValueByTime() and ObjectGetTimeByValue(), used for receiving the price value for the specified object time and vice versa - time value for a price.

Strategy Tester

  1. MQL5 programs purchased in MetaTrader AppStore can now be tested and optimized on the MQL5 Cloud Network agents and on remote agents.
  2. Fixed calculation of swaps in points for positions with less than 1 lot.
  3. Fixed check and normalization of Stop Loss and Take Profit levels when opening a position for the trading instrument with "Market Execution" type.
  4. Fixed behavior of the ObjectGetValueByTime function. In some cases, the behavior of the function in the tester could be different from its behavior in the terminal.

MetaEditor

  1. Fixed MetaEditor crash when debugging and profiling looped programs.
  2. Added translation of user interface into Greek and Uzbek.

Fixed errors reported in crash logs.

Documentation has been updated.

The update is available through the LiveUpdate system.

31 十月 2014
MetaTrader 5 Trading Terminal build 1010: New Signals, Market and Options
Trading Signals
  1. The showcase of signals has been completely redesigned. New features have been added, the Signals service design and usability have been improved.



    The new features in the list of signals:

    • The list of signals now contains growth charts similar to those displayed on the MQL5.community site. A green icon in the lower left corner of the chart indicates that this is a real account based signal.
    • Now subscription to a signal is available directly from the list. To subscribe, press the button with the price indication (or the word 'Free', if the signal is free). This will open a subscription confirmation dialog.
    • Now signals can be added to Favorites. Click the star icon at the end of the signal line. After that, the signal can be easily found in the "Favorites" tab.
    • The context menu has been removed. Now to find a signal to which you have subscribed, go to any signal. The top panel shows the signal you are subscribed to and a link to it.

    A signal view page has been updated. A new option allows to add signals to Favorites. The status of the signal account is displayed when hovering the mouse pointer at "Growth".

    Signals statistics have expanded:

    • The total amount of subscribers' funds.
    • Trading account lifetime since its first trading operation.
    • The average position holding time.



    New tabs:

    • Risks - information about the best and worst trading operations and series of operations, and information on drawdowns.
    • Reviews - reviews of signal subscribers.
    • News - through this tab the signal provider can inform subscribers of any change in the signal and post other useful information.

Market

  1. Revised display of products in MetaTrader AppStore. Applications, magazines and books feature the new design. A new option allows to add products to Favorites. Click the star icon in the product view mode. After that, the product can be easily found in the "Favorites" tab.




Trading terminal

  1. The terminal now features an options board and a volatility chart. Implementation of tools for trading options is currently underway. Tools for analyzing option strategies will be added in the next version.




    Options Board
    The options board displays a series of options based on the expiration date for an underlying asset (a class of options) selected in the "Underlying" field. The following parameters are displayed for the options:

    • Bid CALL - the bid price of a call option.
    • Ask CALL - the ask price of a call option.
    • Theo CALL - the theoretical (fair) price of a call option calculated for the specified strike based on historical data.
    • Strike - an option execution price.
    • Volatility - an implied volatility. It is specified as a percentage, and characterizes the expectations of market participants about the value of the underlying asset of the option.
    • Theo PUT - the theoretical price of a put option calculated for the specified strike based on historical data.
    • Bid PUT - the bid price of a put option.
    • Ask PUT - the ask price of a put option.

    Volatility Chart
    Option strikes are shown along the horizontal axis of the chart, and the implied volatility is shown along its vertical axis.




  2. Added display of ping values ​​in the list of access points.




  3. The terminal interface has been adapted for high resolution screens - Full HD and higher. Menus, toolbars, window titles and the status bar are now large enough for easy viewing and working on touch screen of Windows-tablets.

  4. Added a command for managing trading symbols in the "View" menu and on the toolbar. Accessing symbol settings is now as easy as never before:



MQL5 Language

  1. Added conversion of a macro parameter to a string and concatenation of the macro parameter. Below is an example, in which the concatenation of macros allows to organize the automatic removal of the class instances.
    //+------------------------------------------------------------------+
    //|                                                     MacroExample |
    //|                        Copyright 2014, MetaQuotes Software Corp. |
    //|                                       https://www.metaquotes.net  |
    //+------------------------------------------------------------------+
    #property script_show_inputs
    input bool InpSecond=true;
    
    #define DEFCLASS(class_name) class class_name:public CBase{public:class_name(string name):CBase(name){}};
    #define TOSTR(x) #x
    #define AUTODEL(obj) CAutoDelete auto_##obj(obj)
    #define NEWOBJ(type,ptr) do { ptr=new type(TOSTR(ptr)); \
                             Print("Create object '",TOSTR(type)," ",TOSTR(ptr),"' by macro NEWOBJ"); } \
                             while(0)
    //+------------------------------------------------------------------+
    //| The basic class required for automatic deletion of objects       |
    //+------------------------------------------------------------------+
    class CBase
      {
    protected:
       string            m_name;
    
    public:
                         CBase(string name):m_name(name) { }
       string            Name(void) const{ return(m_name); }
    
      };
    //+------------------------------------------------------------------+
    //| The object auto-delete class makes watching of created           |
    //| objects unnecessary. It deletes them in its destructor           |
    //+------------------------------------------------------------------+
    class CAutoDelete
      {
       CBase            *m_obj;
    
    public:
                         CAutoDelete(CBase *obj):m_obj(obj) { }
                        ~CAutoDelete()
         {
          if(CheckPointer(m_obj)==POINTER_DYNAMIC)
            {
             Print("Delete object '",m_obj.Name(),"' by CAutoDelete class");
             delete m_obj;
            }
         }
      };
    //+------------------------------------------------------------------+
    //| Declaring two new classes CFoo and CBar                          |
    //+------------------------------------------------------------------+
    DEFCLASS(CFoo);
    DEFCLASS(CBar);
    //+------------------------------------------------------------------+
    //| The main script function                                         |
    //+------------------------------------------------------------------+
    void OnStart()
      {
       CFoo *foo;
    //--- Creating an object of the CFoo class
       NEWOBJ(CFoo,foo);
    //--- Creating an instance of the CFoo foo object auto-deletion class
       AUTODEL(foo);
    //---
       if(InpSecond)
         {
          CBar *bar;
          //---
          NEWOBJ(CBar,bar);
          AUTODEL(bar);
         }
    //--- No need to delete foo, it will be deleted automatically
      }
    //+------------------------------------------------------------------+
    
  2. Added the OBJPROP_ANCHOR property for the "Bitmap" and "Bitmap Label" objects. The property defines the anchor point of the graphical object on the chart: the upper left corner, center left, lower left corner, bottom center, etc.
  3. Added reading of the CHART_BRING_TO_TOP chart property (the chart is on top of all the others) in the ChartGetInteger function.
  4. Fixed the compilation and generation of the ternary operator "?".
  5. Fixed passing of a class member static array.
  6. Fixed applying of a template to the list of initialization of the template constructor class members.

Trading signals

  1. Restrictions on signal subscriptions became milder:

    If the trading history of the signal contains symbols that are not available in the subscriber's terminal, the subscription is now allowed (was prohibited in previous versions). The actions with the positions for which the subscriber does not have symbols are ignored. The following log appears in the Journal:
    2014.08.26 16:44:29.036    '2620818': Signal - symbol GBPNZD not found
    If the subscriber has positions and/or pending orders, a warning dialog suggesting to close/delete them appears (as before). Now, however, it is not an obligatory condition to continue working with signals.



    Synchronization with the signal provider will be performed. Positions and orders that were opened not based on the subscription signal are left unchanged. The user can perform any operations with them.

    Users can now perform trade operations manually (or using an Expert Advisor), being signed to a signal. The Signals service will ignore the positions and orders opened by the trader.
    Keep in mind that placing orders manually affects the amount of available margin on the trading account. Opening positions manually increases the overall load on the account as compared with the signal provider's account.
  2. Added support for a copied percent for the volumes with a floating point. The minimum percentage of copied volumes for signals has been reduced from 1% to 0.001%.

Strategy tester

  1. Fixed freezing of testing agents when working with the MQL5 Cloud Network.
  2. Fixed calculation of swaps in points for the minimal volumes of trading positions.

MetaEditor

  1. Fixed hotkeys for commands "Navigate Forward" and "Navigate Backward".

MetaViewer

  1. Fixed page navigation on the toolbar.
  2. Fixed text search based on the current interface language.

Fixed errors reported in crash logs.

Documentation has been updated.

The update is available through the LiveUpdate system.
1 八月 2014
MetaTrader 5 Trading Terminal build 975: Displaying Expert ID

Trading Terminal

  1. Added display of a trade ID (magic number) set by an Expert Advisor. The ID is displayed as a tooltip in the list of open positions and orders, as well as in the trading history.


    Displaying Expert ID


  2. Optimized work with a large number of trading symbols (thousands and tens of thousands).
  3. Fixed display of alerts on the price chart. The alert's price level was sometimes displayed in the indicator's subwindow.
  4. Updated interface translations into Chinese, Turkish and Japanese.
  5. Fixed displaying the list of chart templates in the application's main menu.
  6. Fixed displaying the list of trade symbol sets in the context menu of Market Watch window.

MQL5 Language

  1. Fixed errors in working with built-in structures that could occasionally disrupt the operation of IndicatorParameters and MarketBookGet methods.
  2. Fixed type conversion from bool to string.
  3. Fixed working with virtual functions.
  4. Fixed an error in the operation of FileReadStruct and FileWriteStruct functions within EX5 libraries.
  5. Fixed a compiler error that occurred in case a key word was present in a comment.

Strategy Tester

  1. Fixed calculation of swaps in points when testing.
  2. Fixed passing the file defined in #property tester_file. An error occurred if the file was in the common folder of the client terminals.
  3. Greatly improved selection of the nearest cloud server by the tester agents working within MQL5 Cloud Network of distributed computing. Thus, their operation speed is increased significantly.

MetaEditor

  1. Fixed text replacement when the list of MetaAssist tips is collapsed.

Fixed errors reported in crash logs.

Updated documentation.

The update is available through the LiveUpdate system.

27 六月 2014
MetaTrader 5 trading terminal build 965: Smart Search, OTP and Money Transfer between Accounts

Trading terminal

  1. Completely revised built-in search. The new search is a smart and powerful system. Search results are now conveniently arranged by categories.

    As you type in search query, the system instantly offers possible options:



    In order to search by one of the previous queries, place the cursor to the box and click Down Arrow key to open the query history. Selection of a search area is not available in the search bar any more, as the system automatically selects the most relevant results arranging them by categories conveniently:



    For better representation, search results now contain not only texts but also avatars of articles, books and applications. Use the top panel to view the search results by MetaTrader Appstore Products, Code Base, Signals, MQL5.community Forum and Documentation. If a category has no results, it is highlighted in gray.

  2. Added the OTP authentication feature. Use of OTP (one-time password) provides an additional level of security when working with trading accounts. The user is required to enter a unique one-time password every time to connect to an account.

    One-time passwords are generated in the MetaTrader 5 mobile terminal for iPhone . The same one-time password generation option will be added in the mobile terminal for Android soon.

    How to enable OTP
    To start using one-time passwords, a trading account should be bound to a password generator, which is the MetaTrader mobile terminal 5 for iPhone.
    The use of the OTP option should be enabled on a trade server.
    Go to the Settings of the mobile terminal and select OTP. For security reasons, when the section is opened for the first time, a four-digit password should be set. The password must be entered every time to access the password generator.



    In the window that opens, select "Bind to account".



    Next, specify the name of the server on which the trading account was opened, the account number and the master password to it. The "Bind" should be kept enabled. It must be disabled, if the specified account should be unbound from the generator and one-time passwords should no longer be used.

    After the "Bind" button located in the upper part of the window is tapped, a trading will be bound to the generator, and an appropriate message will appear.



    Likewise, an unlimited number of accounts can be bound to the generator.

    The one-time password is displayed at the top of the OTP section. Underneath, a blue bar visualizes the password lifetime. Once the password expires, it is no longer valid, and a new password will be generated.

    Additional Commands:

    • Change Password - change the generator password.
    • Synchronize Time - synchronize the time of the mobile device with the reference server. Accuracy requirement is connected with the fact that the one-time password is bound with the current time interval, and this time should be the same on the client terminal and the server side.

    How to use OTP in the desktop terminal
    After binding a trading account to the generator, a one-time password will be additionally requested when connecting to it from the desktop terminal:




  3. Added an option for transferring money between accounts within the same trade server. Money can be transferred only from the currently connected account. Select it in the "Navigator" window and click "Transfer funds" in the context menu.



    In the dialog box, select the account to which funds need to be transferred. The transfer amount is specified in the deposit currency of the current account. It cannot exceed the current balance and the current amount of free margin of the account.

    To transfer funds, a master password must be specified for both accounts. If OTP authentication is used for the account, from which funds are transferred, the one-time password should be additionally specified.

    Transfer of funds is provided in the form of balance operations: a withdrawal operation on the current account and depositing operation on the recipient account.
    • The money transfer option should be enabled on the trade server. Depending on the settings, there are some restrictions on the accounts, between which transfer is allowed. In particular, money transfer can be allowed only for accounts with identical names and emails.

    • Funds can be transferred only within the same trading server and only between the accounts of the same type. From a real account funds can be transferred only to another real account, from a demo one - only to demo.
    • The accounts, between which funds are transferred, should use the same deposit currency.
  4. Added an option for changing the password of any trading account in the "Navigator" window. Previously, it was possible to change the password only for the currently connected account.

    Now any account can be selected in the "Navigator" window and its passwords can be changed by clicking the appropriate command in the context menu:




  5. Added the possibility to set SL and TP levels on the chart by dragging the trade level of the corresponding position (using drag'n'drop). Hover the mouse over the level of the position on the chart. Click the left mouse button and hold it to move the level up or down.



    For long positions dragging down allows to set stop loss, up - take profit. And vice versa for short positions. When a level is dragged, the possible profit/loss in pips and currency, which may occur when this level triggers, is shown.

  6. Changed the location of commands in the "Window" menu. Now the "Tile window" option is displayed first, hotkeys Alt+R have been assigned for this command. This command has also been added to the standard toolbar.




  7. In the "Navigator" categories "Indicators" and "Custom Indicators" have been combined into one category "Indicators".



    All custom indicators, examples, and indicators purchased from the MetaTrader AppStore are now shown together with the built-in technical indicators. Four categories of built-in indicators are always displayed first.

  8. Revised the Navigator's context menu.

    Login has been renamed to "Login to Trade Account". Authentication in MQL5.community is available not only via the terminal settings but also via the context menus of the "Accounts" section and its subsections.



    The following changes have been implemented to the account's context menu:
    • Moved "Open an Account" command to the first position.
    • Added "Change Password" feature.
    • Added "Register a Virtual Server" command.

  9. Fixed display of the Label and Bitmap Label graphical objects with the anchor point located in one of the bottom corners of a chart.

MQL5 Language

  1. Added WebRequest() function for working with HTTP requests allowing MQL5 programs to interact with different websites and web services.

    The new function allows any EA to exchange data with third-party websites, perform trades based on the latest news and economic calendar entries, implement analytics, generate and publish automatic reports, read the latest quotes and do many other things that could previously be achieved only by using third-party DLLs of questionable reliability. The new feature is absolutely safe for traders, as they are able to manage the list of trusted websites the programs have access to.

    WebRequest function sends and receives data from websites using GET and POST requests. The new feature is absolutely safe for traders, as they are able to manage the list of trusted websites the programs have access to.




    This option is disabled by default for security reasons.

  2. Added access to signals database and managing signals subscription from MQL5 applications.

    Now, a user can receive the list of signals, evaluate them according to user-defined criteria, select the best one and subscribe to it automatically from a MQL5 program. In fact, it means the advent of the new class of trading robots that periodically look through available signals and subscribe to the one that is most suitable at the moment.

    For this purpose new signal management functions have been added to the MQL5 language:

    • SignalBase*() — functions for accessing the signals database.
    • SignalInfo*() — functions for receiving signal settings.
    • SignalSubscribe() and SignalUnsubscribe() — subscription management functions.

    Thus, a user can not only copy trades, but also to select signals for copying. Both processes are automated.

    By default, a trading robot is not allowed to change signal settings for security reasons. To enable this function, tick the "Allow modification of Signals settings" option in Expert Advisor settings.




  3. Added new properties of the client terminal that are available through the TerminalInfo* functions:
    • TERMINAL_MQID - the property shows that MetaQuotes ID is specified in terminal settings.
    • TERMINAL_COMMUNITY_ACCOUNT - this property shows that MQL5.community account is specified in the settings.
    • TERMINAL_COMMUNITY_ACCOUNT - this property shows that MQL5.community account is specified in the settings.
    • TERMINAL_COMMUNITY_BALANCE - value of balance on the MQL5.community account.
    • TERMINAL_NOTIFICATIONS_ENABLED - shows whether sending notifications through MetaQuotes ID is allowed.

  4. Added functions for working with cryptographic algorithms: CryptEncode() and CryptDecode(). These functions allow you to encrypt and decrypt the data, for example, when sending data over the network using the WebRequest() function. They also allow you to calculate checksums and make data archiving.

    Function signatures:
    int CryptEncode(ENUM_CRYPT_METHOD method,const uchar &data[],const uchar &key[],uchar &result[]);
    int CryptDecode(ENUM_CRYPT_METHOD method,const uchar &data[],const uchar &key[],uchar &result[]);
    A new enumeration ENUM_CRYPT_METHOD has been added for working with the functions:
    CRYPT_BASE64,      // BASE64 encryption (re-encoding)
    CRYPT_AES128,      // AES encryption with 128-bit key
    CRYPT_AES256,      // AES encryption with 256-bit key
    CRYPT_DES,         // DES encryption (key length is 56 bits - 7 bytes)
    CRYPT_HASH_SHA1,   // calculation of HASH SHA1
    CRYPT_HASH_SHA256, // calculation of HASH SHA256
    CRYPT_HASH_MD5,    // calculation of HASH MD5
    CRYPT_ARCH_ZIP,    // ZIP archive

  5. Added an option for changing the size of the properties dialog of MQL5 programs.




  6. Added ability to debug the template functions.
  7. Added definition of the custom indicators that are executed too slowly. If the indicator is slow, "indicator is too slow" entry appears in the Journal.
  8. Fixed the value returned by the IsStopped() function. This function is used for determining the forced stopping of MQL5 programs in custom indicators. Previously, this function always returns FALSE.
  9. Fixed verification of input parameters of MQL5 programs by data type. In particular, for the parameter type uchar, one could specify a value greater than 255.
  10. Fixed an error in StringConcatenate() function.
  11. Fixed FileSize() function for files that are available for writing. Previously, the function returned the file size without considering the latest write operations.
  12. File operations have been revised. Now work with files has become faster.

Trading Signals

  1. Fixed copying of SL and TP values of trade positions in case the number of decimal places in the symbol price of the signal source differs from that of the subscriber.
  2. Fixed copying of trade positions from signal providers with incorrect settings of trade instruments on the side of the trade server.
  3. Fixed closing of positions opened by a trading signal when account Equity value falls below the value specified in the signal copying parameters. In some cases, closing of positions could lead to terminal crash.

MetaEditor

  1. Optimized work with large source text files (tens of megabytes). Increased operation speed and reduced memory consumption.
  2. Fixed navigating through a source code using "Ctrl + -" and "Ctrl + Shift + -" shortcuts.

Fixed errors reported in crash logs.

Updated documentation.

The update will be available through the LiveUpdate system.

11 四月 2014
MetaTrader 5 Build 930

Market

  1. Another new product category has been added to MetaTrader AppStore following trading and financial magazines - Books. Now, you can purchase the works of well-known traders and analysts along with trading robots and indicators. The range of books is increasing daily.


    Books in MetaTrader Market

    Just like MetaTrader 5 applications, books can be purchased at MQL5.community Market as well as directly via MetaTrader 5 terminal. All books are accompanied by descriptions and screenshots:




    Before making a purchase, you can download a preview - the first few pages of a book. The exact number of available pages is defined by a seller.

    To buy a book, you should have an MQL5.com account and the necessary amount of funds on it. The account data should be specified at the Community tab of the terminal settings:



    Click Buy on the book's page to purchase it. Purchase confirmation dialog appears:



    To continue, agree to the rules of using the Market service and enter your MQL5.community password. After that, the specified amount of funds will be withdrawn from your account and the book will be downloaded. Buy button will be replaced by Open one.

    Book files are downloaded to My Documents\MQL5 Market\Books\. The download may be performed in two formats:

    • MQB - this protected format is used for paid books. When purchasing and downloading a book file, it is encoded so that it can be opened only on the PC it has been downloaded to. Generation of an encoded copy is called activation. Each book can be activated at least 5 times on different hardware. Book sellers can increase the number of activations at their sole discretion.
    • PDF - this format is used for free books and previews. After downloading, such file can be moved and viewed on other devices.

    The special component called MetaViewer has been added to MetaTrader 5 terminal allowing users to view book files. MetaViewer is a convenient application for viewing books and magazines in MQB and PDF formats. Keyboard arrows are used to turn over the pages: left and right arrows - for page-by-page navigation, while up and down arrows - for scrolling.


    MetaViewer


Trading terminal

  1. Fixed display of Fibonacci Fan graphical object's levels when zooming. A layout could be displaced in earlier builds.
  2. Fixed an error that in some cases prevented graphical objects from being drawn on the chart.
  3. Fixed errors and terminal crashes when working in Wine (for Linux and Mac OS), including crashes that occurred while opening the user guide.
  4. Updated translation of the interface into Arabic.

Market

  1. Revised display of products in MetaTrader AppStore. Applications, magazines and books feature new design:


    Revised Display of Products in Market

  2. Market: Fixed resumed download of large files (primarily, magazines and books) from the Market.

MQL5 Language

  1. Changed StringSplit function operation. Previously, ";A;" string was split into NULL and "A" substrings using ';' separator. Now, it is split into "","A" and "" substrings.
  2. Fixed checking and tracking parameter and operand constancy.

Trading Signals

  1. Added additional checks for the allowed trading modes at a symbol when copying signals. If a signal arrives at a subscriber's account but only closing of positions is allowed at that symbol, this will no longer cause complete termination of signals copying and forced closing of all positions. Now, if a signal for position opening arrives at a subscriber's account, the platform perceives that as the command to synchronize subscriber's and provider's accounts. A signal for position closing is handled as usual.

Strategy Tester

  1. Added interface translations into French, Japanese and Arabic. Updated translations into German, Italian, Polish, Portuguese, Russian, Spanish, Turkish and Chinese.

MetaEditor

  1. Fixed highlighting and navigation through a hieroglyphic text.
  2. Fixed selecting a default trading symbol during an MQL5 application profiling. The default symbol is specified in Debug tab of MetaEditor options.
  3. Fixed display of the tab characters in search results. Previously, the tab characters were ignored and string content was displayed with no spaces.

Fixed errors reported in crash logs.

Updated documentation.

The update will be available through the LiveUpdate system.

7 三月 2014
MetaTrader 5 build 910

Trading terminal

  1. Fixed errors and crashes when working in Wine (for Linux, Mac).
  2. Fixed display of Gann Grid graphical object's central line when zooming.

MQL5 Language

  1. Fixed an occasional error when downloading .ex5 files.
  2. Fixed operation of StringToCharArray and StringToTime functions.
Fixed errors reported in crash logs.
Updated documentation.
28 二月 2014
MetaTrader 5 Build 900
  1. Market: Added new product category in MetaTrader AppStore — Magazines. Now, users can buy not only trading applications but also trading and financial magazines quickly and easily.

    Just like MetaTrader 5 applications, magazines can be purchased at MQL5.community Market as well as directly via MetaTrader 5 terminal. All magazines are accompanied by detailed descriptions and screenshot galleries:

    The latest magazine issues are always displayed in the showcase, while the previous ones can be found on the Archive tab.

    To buy a magazine, you should have an MQL5.com account and the necessary amount of funds on it. The account data should be specified at the Community tab of the terminal settings:

    Click Buy on the magazine's page to purchase it. Purchase confirmation dialog appears:

    To continue, agree to the rules of using the Market service and enter your MQL5.community password. After that, the specified amount of funds will be withdrawn from your account and the magazine will be downloaded. Buy button will be replaced by Open one.

    Magazine files are downloaded to My Documents\MQL5 Market\Magazines\[Magazine name]\[Issue name]. The download may be performed in two formats:

    • MQB - this protected format is used for paid magazines. When purchasing and downloading a magazine file, it is encoded so that it can be opened only on the PC it has been downloaded to. Generation of an encoded copy is called activation. Each magazine can be activated at least 5 times on different hardware. Magazine sellers can increase the number of activations at their sole discretion.

    • PDF - this format is used for free magazines. After downloading, such file can be moved and viewed on other devices.

    The special component called MetaViewer has been added to MetaTrader 5 terminal allowing users to view MQB files. This application is launched when you click Open at the downloaded magazine page. If User Account Control system is enabled on the user's PC, the user will be prompted to allow the terminal to associate MQB files with MetaViewer during the first launch. After the association, MQB files are automatically opened in MetaViewer when launched from Windows file explorer.

    If you click ÎÊ, the files are associated and the selected magazine issue is opened in MetaViewer immediately. If you click Cancel, only the magazine issue is opened.

    MetaViewer is a convenient application for viewing books and magazines in MQB and PDF formats. Keyboard arrows are used to turn over the pages: left and right arrows - for page-by-page navigation, while up and down arrows - for scrolling. MetaViewer menu and control panel contain additional commands for setting the journal's view and navigation:

    • File - commands for opening the files and exiting the program.
    • View - display settings: interface language, page look, enabling control panel and status bar, as well as page rotation.
    • Navigation - navigation commands: switching between the pages, moving to the first, last or selected page.
    • Zoom - page scale management commands: zooming in and out, fitting height, width and actual page size.
    • Help - information about the program and useful links.
  2. Terminal: Added MQL tab to EX5 file properties. The tab contains the program's icon as well as its name and description specified in the application's source code via the appropriate #property parameters.

    The tab appears only after MetaViewer is registered in the system. If a current user has sufficient rights and User Account Control system is disabled, MetaViewer is registered automatically during the terminal's first launch after the update. Otherwise, the user will see the dialog window requesting a one-time elevation of rights for MetaViewer during the first attempt to open a magazine.

  3. Terminal: Added MQL5.community fast registration dialog in case a user has no account. Now, an MQL5.community account can be created without the need to leave the terminal.

    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:

    • MetaTrader 5 AppStore - users can buy MetaTrader 5 apps or download them for free directly from the terminal. MetaTrader 5 AppStore offers hundreds of various applications and their number is constantly increasing.
    • Signals - users can subscribe to trading signals provided by professional traders and make profit. Trading operations are automatically copied from provider's account to subscriber's one. The service also allows selling your own trading signals. A trading account can be connected to the monitoring system in a few clicks.
    • Jobs - a freelance service allowing customers to securely order the development of MetaTrader 4 and 5 applications. The orders are executed by experienced programmers. The service also allows you to make profit by developing programs ordered by customers.

  4. Terminal: Added information about margin charging rates for various order types, as well as the list of spreads that may include orders and positions for the symbol, to the trading symbol data dialog.

    Margin Rates:

    A multiplier for calculating margin requirements relative to the margin's main amount is specified for each order type. The main amount of margin is calculated depending on the specified calculation method (Forex, Futures, etc.).

    • Long positions rate
    • Short positions rate
    • Limit orders rate
    • Stop orders rate
    • Stop-Limit orders rate

    Calculation of margin requirements is described in details in the client terminal user guide.

    Spreads:

    The margin can be charged on preferential basis in case trading positions are in spread relative to each other. The spread is defined as the presence of the oppositely directed positions at related symbols. Reduced margin requirements provide traders with more trading opportunities.

    The spread has two legs - A and B. The legs are the oppositely directed positions in a spread - buy or sell. The leg type is not connected with some definite position direction (buy or sell). It is important that trader's positions at all leg's symbols are either long or short.

    Several symbols with their own volume rates can be set for each spread leg. These rates are shown in parentheses, for example, LKOH-3.13 (1).

    Take a look at the following example:

    • leg À consists of GAZR-9.12 and GAZR-3.13 symbols having the ratios of 1 and 2 respectively;
    • leg  consists of GAZR-6.13 symbol having the ratio of 1.

    To keep positions in the spread, a trader should open positions of 1 and 2 lots for GAZR-9.12 and GAZR-3.13 respectively in one direction and a position of 1 lot for GAZR-6.13 in another.

    Margin column displays margin charging type at this spread:

    • Specific values mean charging a fixed margin for a spread in a specified volume. The first value specifies the volume of the initial margin, while the second one specifies the volume of the maintenance one.

    • Maximal - initial and maintenance margin values are calculated for each spread leg. The calculation is performed by summing up the margin requirements for all leg symbols. The margin requirements of the leg having a greater value will be used for the spread.

    • CME Inter Spread - the rates (in percentage value) for margin are specified: the first one is for the initial margin, while the second is for the maintenance one. The total margin value will be defined by summing up the margin requirements for all symbols of the spread and multiplying the total value by the specified rate.

    • CME Intra Spread - two values for margin increase are specified: the first value is for the initial margin, while the second is for the maintenance one. During the calculation, the difference between the total margin of A leg symbols and the total margin of B leg symbols is calculated (the difference in absolute magnitude is used, so that it does not matter what leg is a deductible one). According to the type of the calculated margin, the first (for the initial margin) or the second (for the maintenance one) value is added to the obtained difference.

    The specified margin is charged per spread unit - for the specified combination of positions. If any part of the position does not fit the spread, it will be charged by an additional margin according to the symbol settings. If the client's current positions have the volume the specified combination fits in several times, the charged margin is increased appropriately. For example, suppose that A and B symbols with the ratios of 1 and 2 are in spread. If a client has positions for these symbols with the volumes of 3 and 4 respectively, the total margin size is equal to the doubled value from the spread settings (two spreads: 1 lot of A and 2 lots of B, 1 lot of A and 2 lots of B) plus the margin for the single remaining A symbol lot.

    Spreads are described in details in the client terminal user guide.

  5. Terminal: Fixed the depth of market freezing when the best bid price is higher than the best ask one.
  6. Terminal: Fixed setting the fill policy type for market trade requests depending on the trade symbol's execution type and allowed filling modes.
  7. Terminal: Fixed display of incorrect SL and TP values in the position open dialog in case there is a position with placed SL and TP levels and the levels are placed "In Points". Incorrect SL and TP level values in points have previously been inserted to these fields. Beginning with the new build, the values in the above mentioned case are displayed in prices regardless of the level placing mode.
  8. Terminal: Fixed occasional incomplete display of the trading history for the current day.
  9. Terminal: Reduced memory consumption during MQL5 Code Base and MQL5 Market operation.
  10. Terminal: Fixed working with context menus when using touch screen devices powered by Microsoft Windows 8 or higher.
  11. Market: Added product activation confirmation dialog displaying the number of remaining activations.

    Each application purchased in MetaTrader AppStore is additionally protected, so that it can be launched only on the PC it has been downloaded to during the purchase. Generation of an encoded copy is called activation. Each product can be activated at least 5 times on different hardware. Sellers can increase the number of activations at their sole discretion.

    The new dialog protects users from wasting activations by informing that their number is limited.

  12. MQL5: Fixed crash when initializing primitive type arrays by a sequence.
  13. MQL5: Fixed errors when working with #ifdef/#else/#endif conditional compilation macros.
  14. MQL5: MQL5 language compiler moved to MetaEditor. The compiler will be available for download as a separate .exe file.
  15. Signals: Added information about a signal, to which an account is subscribed, to the Navigator window:

    If the account is subscribed to the signal, the appropriate icon with the signal's name is shown for it. When hovering the mouse cursor over the name, the subscription's expiration date is displayed. The context menu contains commands for viewing the signal and unsubscribing from it. The latter one is displayed only if the appropriate trading account is currently active in the terminal.

    The subscription icon makes working with signals more convenient.

  16. Signals: Added legend for equity, growth, balance and distribution graphs. Also, marks displaying funds depositing and withdrawal have been added to the equity graph. When hovering the mouse cursor over the balance operation triangle, a tooltip with the operation sum is displayed:

  17. MetaEditor: Fixed the loss of focus in the code editing window that occurred after the first compilation.
  18. MetaEditor: Fixed automatic scrolling of the compilation window to the first warning if there are no errors.
  19. MetaEditor: Fixed highlighting predefined _DEBUG and _RELEASE macros in the source code.
  20. MetaEditor: Fixed operation of snippets if the automatic entering of line indentations is disabled.
  21. Fixed errors reported in crash logs.
  22. Updated documentation.
7 十二月 2013
MetaTrader 5 Trading Terminal build 880: Terminal Journal with Milliseconds and MQL4BUILD/MQL5BUILD Macros

Trading Terminal

  1. The time is displayed up to milliseconds in the client terminal's, MetaEditor's and MetaTester's Journal.

    The time is displayed up to milliseconds in the client terminals

  2. Improved scanning and searching for servers in demo account opening dialog - scanning speed has been increased and additional search for access points for the servers having no connection has been added.

    Improved scanning and searching for servers in demo account opening dialog

  3. Fixed and optimized client terminal, MetaEditor and MQL5 help.
  4. origin.txt file is automatically generated in the terminal data folder. This file contains the path to the installation directory that data folder corresponds to.
  5. Fixed display of the context help in a number of dialogs, windows and control elements.
  6. Fixed occasional terminal freezing during prolonged continuous operation (longer than 2-3 days).
  7. Fixed occasional loss of the list of saved client accounts.
  8. Fixed an error causing "pack bar error" messages in the Journal.
  9. Added MetaTrader 5 terminal and MQL5 language helps in Turkish

Market

  1. Fixed and optimized MQL5 Market data storage and update.

MQL5

  1. Fixed an error in overloading the function templates.
  2. Added __MQL4BUILD__ and __MQL5BUILD__ macros - MQL5 compiler versions in MetaTrader 4 and MetaTrader 5 client terminals respectively. These macros can be used for displaying information about the compiler version used for compiling EX4\EX5 file in Experts log of the client terminal:

    //+------------------------------------------------------------------+
    //| Expert initialization function                                   |
    //+------------------------------------------------------------------+
    int OnInit()
      {
    //---
       Print(__FILE__," compiled with ",__MQL5BUILD__," build");
    //---
       return(INIT_SUCCEEDED);
      }

MetaTrader Trading Signals

  1. Fixed comparison of Forex trading symbols of EURUSD <=> EURUSD.ABC form in case there are several symbols having similar main part (EURUSD), and trading is disabled for one of them.
  2. Fixed signals copying when performing balance and credit operations on the subscriber's account. The total amount of client's funds is changed after a balance/credit operation is performed. If the percentage value of signals copying has decreased by more than 1% afterwards (the volume of copied trades is calculated considering the ratio of the subscriber's and provider's balance), the subscriber's account is forcedly synchronized with the provider's one. This is done to correct the subscriber's current positions according to the new copying percentage value.

    If the subscriber's funds have increased due to the balance or credit operation, no forced synchronization is performed.

  3. Fixed copying positions in case Fill or Kill (FOK) market order execution mode is forbidden.

MetaEditor

  1. Fixed working with the clipboard when inserting non-Unicode text.
  2. Fixed scrolling the navigator tree when moving folders using drag'n'drop

Fixed errors reported in crash logs.
Updated documentation.

The live update is available through the LiveUpdate system.

The MetaTrader 5 Trading Terminal can be downloaded at https://download.mql5.com/cdn/web/metaquotes.ltd/mt5/mt5setup.exe?utm_source=www.metatrader5.com

2 十一月 2013
MetaTrader 5 Trading Terminal build 871

MQL5

  1. Fixed an issue that prevented testing of experts containing custom indicators in the form of a resource . Error affected including experts from MQL5 Market.
  2. Added support for conditional compilation # if [n] def, # else and # endif.
  3. Added macros _DEBUG and _RELEASE, when compiled *. Mq5 macro __ MQL5__, when compiled *. Mq4 __ MQL4__.

Market

  1. Optimized with MQL5 Market when using multiple instances of the client terminal.

Strategy Tester

  1. Fixed display of tabs and test results when testing the indicator.
  2. Fixed display of signatures by using the cursor in the "crosshairs" to measure the distance between the bars in the visual test.
  3. Fixed crash tester at the completion of testing.

Fixed errors reported in crash logs.
Updated documentation.

The live update is available through the LiveUpdate system.

The MetaTrader 5 Trading Terminal can be downloaded at https://download.mql5.com/cdn/web/metaquotes.ltd/mt5/mt5setup.exe?utm_source=www.metatrader5.com

24 十月 2013
MetaTrader 5 build 868: Unconditional Synchronization of Signal Positions and Fixing Errors

Trading Terminal

  1. Added automatic setting of the alert expiration time when placing it via the depth of market.
  2. Fixed display of the depth of market in the extended mode when showing trading symbols with a large spread.
  3. Fixed display of search results in the terminal working under Wine (Linux and Mac).

MetaTrader Trading Signals

  1. Added the option for unconditional synchronization of positions between a signal source and a subscriber's account. If enabled, synchronization of positions (including closing open positions not related to the signal) during the initial synchronization of the subscriber's and signal source's state is performed without additional confirmation.

    Added the option for unconditional synchronization of positions between a signal source and a subscriber's account

    Thisption 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.

MQL5

  1. Removed unconditional display of the symbol name in Chart graphical object.
  2. Fixed ConvertTimePriceToXY function behavior - now, ERR_CHART_WRONG_PARAMETER error code is returned in case correct calculation is impossible.
  3. Standard Library. Fixed CIndicators::TimeframesFlags method.
  4. Standard Library. Controls. Now, drop-down lists are always displayed on top of other controls.

Strategy Tester

  1. Fixed testing stop when using custom indicators with an infinite loop in OnInit entry point.

MetaEditor

  1. Fixed errors causing a memory leak during the mass replacements of a substring in a document.
  2. Fixed an error in the custom indicator generation wizard that added OnTradeTransaction entry point.

Fixed errors reported in crash logs.
Updated documentation.

The live update is available through the LiveUpdate system.

The MetaTrader 5 Trading Terminal can be downloaded at https://download.mql5.com/cdn/web/metaquotes.ltd/mt5/mt5setup.exe?utm_source=www.metatrader5.com

4 十月 2013
MetaTrader 5 Trading Terminal build 858: Push Notifications of Transactions and Alerts on the Chart

Trading Terminal

  1. Added ability to send push notifications of transactions occurring on the client account: placing, changing and removing orders and deals, activation of pending orders and SL-TP, margin call and stop-out events.

    Added ability to send push notifications of transactions occurring on the client account

    Added ability to send push notifications of transactions occurring on the client account

  2. Added display and managing alerts from the chart.

    Added display and managing alerts from the chart

    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 of the appropriate level on the chart.

  3. Added a tooltip having stop and limit prices for stop-limit orders in the list of open orders and positions.
  4. Added ability to sort a symbol list in Symbols dialog.
  5. Added the possibility to scale the price chart using the mouse wheel while holding down Ctrl button.
  6. Improved display precision of Gann and Fibonacci graphical objects and their levels.
  7. Improved the vertical scaling algorithm for tools having a set price increment.
  8. Fixed errors in displaying the interface in Wine (for Linux, Mac).
  9. Fixed errors in generating trailing stop placing menu.
  10. Fixed an error in closing a chart having a custom indicator that could sometimes lead to lagging when closing a chart.
  11. Fixed display of text news in the news dialog.
  12. Fixed an error that sometimes hindered from publishing screenshots on MQL5.com website.
  13. Fixed assignment of "hot keys" for the built-in indicators.
  14. Updated translation of the interface into Bulgarian and Italian.

Trading Signals

  1. Fixed subscription to signals in Wine (for Linux, Mac).

MQL5

  1. Now, CHARTEVENT_CHART_CHANGE event is generated when the chart's scale is changed.
  2. Added MQL5_MEMORY_LIMIT(available via MQL5InfoInteger function) - it returns the maximum amount of dynamic memory for an MQL5 program in megabytes. This limitation applies only to the dynamic objects of MQL5 applications (arrays, objects, strings).
  3. Multidimensional arrays of primitive types can now be initialized by a one-dimensional sequence:
  4. int a[2][2]={0,1,2,3}; 

    Previously, the following entry has been necessary

    int a[2][2]={{0,1},{2,3}};
  5. Fixed an error when the call of Bars() function sometimes did not lead to reconfiguration of the price history caches when it was necessary.
  6. Fixed passing the link to the array of pointers.
  7. Fixed FileSeek function operation when using SEEK_CUR flag and reading from file till this function is called.
  8. Standard Library. Added CFlameCanvas class ("Include\Canvas\FlameCanvas.mqh") and an example of its application called Flame Chart ("Indicators\Examples\Canvas\FlameChart.mq5") - this example demonstrates the possibilities of generating custom images on the chart by means of MQL5.

  9. Example demonstrates the possibilities of generating custom images on the chart by means of MQL5

Strategy Tester

  1. Fixed initial deposit's value reset in the testing window when changing its size.
  2. Fixed testing stop when using custom indicators with an infinite loop in OnInit entry point.
  3. Fixed filtering deals in the history tab of the visual tester. The error has occurred in case there have been deals at more than two symbols.
  4. Fixed recalculation of custom indicators simultaneously working on a single symbol with different time frames.

MetaEditor

  1. The works on using the single compiler and MQL5 IDE for MetaTrader 4 and MetaTrader 5 are underway:

    MQL5 on MetaTrader 4 and MetaTrader 5

    Instead of working on MQL4 -> MQL5 compatibility, we have decided to go the opposite way. We have transferred 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 with MetaTrader 4
    It will be easier for developers to manage source code versions, participate in team operations and synchronize files.

    Improving the security of application codes in MetaTrader 4
    New EX4/EX5 files are provided with a serious and completely revised protection, as compared to the old EX4.

    Market of MetaTrader 4 applications
    Transition to the new compiler that supports resources and conventional protection suited for each user's PC will allow users to develop and sell full-fledged applications. There is no need to worry about the protection of EX4/EX5 files sold via the Market - they do not contain bytecode but only a pure native code signed by our private key. This solution puts in order all the diversity of existing programs and protects the sellers.

  2. Fixed highlighting MetaAssist entry points.
  3. Fixed search without considering letter case in the line consisting of non-Latin characters.
  4. Fixed input using the standard on-screen keyboard.
  5. Fixed updating the contents of Articles and Codebase tabs.

Fixed errors reported in crash logs.
Updated documentation.

The live update is available through the LiveUpdate system.

The MetaTrader 5 Trading Terminal can be downloaded at https://download.mql5.com/cdn/web/metaquotes.ltd/mt5/mt5setup.exe?utm_source=www.metatrader5.com

12 八月 2013
You Can Now Deposit Funds to Your MQL5.com Account via Visa QIWI Wallet

We have expanded MQL5.community payment system options by adding QIWI Wallet as a new way to deposit funds to your account.

This is already the fourth method of depositing money: now, you can use Visa QIWI Wallet along with WebMoney, PayPal and bank cards. Payment is made in rubles, charged commission is 1%, minimum payment is 100 rubles.

To deposit funds to your account, go to Payments section of your MQL5.com profile, select "Deposit to account" and choose QIWI Wallet from the four available options.

Deposit Funds to Your MQL5.com Account via Visa QIWI Wallet

On the new page, specify the amount of funds in rubles to be deposited and your mobile phone number which is used as an identifier in the Visa QIWI Wallet payment system.

Specify the Amount of Funds in Rubles to be Deposited and Your Mobile Phone Number

After the payment is confirmed, secure connection with Visa QIWI Wallet service is established, and you are offered to pay for an automatically generated invoice.

QIWI Wallet Invoice

You can pay for it in several ways:

  • Online payment in Visa QIWI Wallet service. This is the easiest and fastest way, if there is enough money on your account in this payment system. Simply log into the system by entering a password and confirm the payment with one-time code that you will receive by SMS.

  • Payment kiosk. This option is convenient, as you can pay for invoice in cash using any QIWI payment kiosk.

  • Bank card. If a bank card is bound to your Visa QIWI Wallet, then after authorization you will need to confirm the payment by entering card data and CVV2 or CVC2 verification code.

  • WebMoney. If WebMoney purse is bound to your Visa QIWI Wallet, then after authorization the invoice will be paid using funds on your WebMoney purse.

You can find detailed instructions on the first two Visa QIWI Wallet invoice payment methods (online and payment kiosk) in the appropriate section of MQL5.community Payment System article.

When depositing funds to your account, standard QIWI commission of 1% from the specified amount is charged. After the funds have been successfully transferred, they appear on your account immediately.

Choose the most convenient way to deposit funds to your account and use built-in MQL5.community services: Jobs freelance service, MetaTrader 4/5 AppStore and Trading Signals for MetaTrader platforms!
25 七月 2013
MetaTrader 5 Trading Terminal build 842: Scalper Depth of Market for All Symbols

Trading Terminal

  1. Added display of the scalper Depth of Market for the symbols having no external one:

    Added display of the scalper Depth of Market for the symbols having no external one

    The new Depth of Market allows placing, modifying and deleting orders quickly and with maximum clarity providing best opportunities for profitable trading.

  2. Added ability to place stop orders via the Depth of Market:

    Added ability to place stop orders via the Depth of Market

    When pressing buy or sell button on a price level, the terminal automatically defines the type of the placed order - stop or limit - and passes it to the trade server.

  3. Added command for displaying the history of deals on the chart:

    Added command for displaying the history of deals on the chart

  4. Added execution time of successful trading requests in the terminal journal:
    2013.07.24 11:22:14    Trades    '1085833': deal #125358548 buy 2.00 EURUSD at 1.32148 done (based on order #131370869)
    2013.07.24 11:22:14    Trades    '1085833': order #131370869 buy 2.00 / 2.00 EURUSD at 1.32148 done in 37 ms
    2013.07.24 11:22:14    Trades    '1085833': accepted instant buy 2.00 EURUSD at 1.32148
    2013.07.24 11:22:14    Trades    '1085833': instant buy 2.00 EURUSD at 1.32148
  5. The time of opening and closing of orders, execution of deals and placing positions is now displayed up to seconds in the list of opened orders and positions, trading history and trade reports.
  6. Added display and ability to manage Limit price for Stop-Limit orders to the chart's trading levels.
  7. Fixed drawing the indicators having DRAW_SECTION, DRAW_ZIGZAG, DRAW_COLOR_SECTION and DRAW_COLOR_ZIGZAG display styles when using a shift in the indicator.
  8. Fixed saving the chart after debugging or profiling.
  9. Fixed display of SL-TP levels in the Depth of Market.
  10. Fixed display of market orders in the Depth of Market.
  11. Fixed symbol display in the trading dialog in case description is too long.
  12. Optimized terminal operation in case of a large number of selected symbols.
  13. Fixed and enhanced translation of the graphic interface into Italian, Portuguese and French.
  14. Fixed terminal help update in Portuguese.
  15. Added translation of the client terminal's help in French

Trading Signals

  1. Added display of Equity chart and signal reviews to the information about a signal. Added warning of the last trading transaction date.

    Added display of Equity chart and signal reviews to the information about a signal

  2. Added display of new signals that have appeared over the past 3 days to the signals tab.

MQL5

  1. Added ResourceReadImage function - this function passes the graphic resource data created by ResourceCreate() function or saved in EX5 file during compilation to the array.
bool  ResourceReadImage(
   const string      resource_name,       // name of the graphic resource for reading
   uint&             data[],              // array for receiving data from the resource
   uint&             width,               // width of the copied area from the resource
   uint&             height,              // height of the copied area from the resource
   );
  1. Added ResourceFree function allowing MQL5 application developers to manage memory consumption when actively working with resources.
  2. Added additional operation mode for working with OpenCL for CLContextCreate function - CL_USE_CPU_ONLY - only OpenCL emulation on CPU is allowed.
  3. Fixed MQL5 programs execution errors when working in 64-bit Windows 8.
  4. Limited the number of warnings delivered during compilation down to 100 ones.
  5. Added CLGetInfoInteger() function for obtaining properties of OpenCL devices.
  6. Standard Library. Improved controls library - added ability to work with several applications in one subwindow.

Strategy Tester

  1. Fixed setting position ID when executing rollovers with re-opening.

MetaEditor

  1. Fixed undoing changes when working with MQL5.Storage.
  2. Fixed operation of "Make Uppercase" and "Make Lowercase" commands in case there are non-Latin characters in the line.
  3. Fixed MetaAssist operation.
  4. Added translation of online help into Chinese.

Fixed errors reported in crash logs.
Updated documentation.

The live update is available through the LiveUpdate system.

The MetaTrader 5 Trading Terminal can be downloaded at https://download.mql5.com/cdn/web/metaquotes.ltd/mt5/mt5setup.exe?utm_source=www.metatrader5.com

8 七月 2013
Social Trading with the MetaTrader 4 and MetaTrader 5 Trading Platforms

What is social trading? It is a mutually beneficial cooperation of traders and investors whereby successful traders allow monitoring of their trading and potential investors take the opportunity to monitor their performance and copy trades of those who look more promising.

You monitor real-time trading of a number of traders, connect to the most successful ones and copy their trades in automatic mode - that's what social trading is about. For novice and inexperienced traders who have just turned to financial markets for additional income, it is probably the best opportunity to actually start trading.

Social Trading with the MetaTrader 4 and MetaTrader 5 Trading Platforms

You do not need to be a professional trader with a great bundle of knowledge and skills in order to trade professionally. Nor do you need to follow and analyze the news from financial markets, work out and implement trading strategies and be prepared to change the ones that fail to keep monitoring their performance in the new market conditions. Thanks to social trading it all becomes unnecessary since you can simply copy trades of all those who follow the news, analyze markets and create profitable strategies.    

Is it difficult to start mirror trading and how much does it take? While hedge fund investing was not available to many due to high entry threshold (hundreds of thousands and millions of dollars), social trading is a highly affordable system available to absolutely any trader with any income level. It opens up access to a large market with vast opportunities that you, too, can use.

Social trading advantages are obvious:

  • Additional income for both traders and investors
  • Investment diversification
  • Opportunity to connect to the most successful traders and automatically mirror their trades
  • Low entry threshold: you can start with a minimum budget
  • Practice opportunities: you can trade on demo accounts in a training mode
  • Time saving
  • High operability and user-friendly interface

Ready to take the opportunities offered by social trading but don't know where to start? MetaTrader 4 and MetaTrader 5 are the most famous and popular platforms for social and mirror trading, with Trading Signals service being a very convenient, advanced social trading feature offered in these platforms. Social trading with the MetaTrader platforms is very straightforward: the user chooses the signal directly in the terminal, subscribes to it and from that moment on all trades are copied in his account.

Trading Signals with Automatic Execution on Your Account

Social trading with MetaTrader will allow you to monitor trading activity and profitability of successful traders, and most importantly, copy their trades. If you see a positive trend in performance of one of the traders whose signal is available for subscription, go ahead with it and start copying his trades. The trading terminal will automatically mirror all trades of the signals provider in your account, without any manual intervention necessary.

So, after subscribing the trader can earn money using the Signals service, without effort, skills or trading experience.

After all, social trading should be simple and straightforward to be easily understood by traders with any background. We cannot but admit it. In this light, MetaTrader trading signals appear to be perfectly adequate. They are available to any user, regardless of their trading experience. Here, you are not required to sign an agreement with a provider of the selected signal or a broker, nor is there any paperwork or manual control necessary. Everything is done automatically.

All you need is to specify your broker and enter the number of your account on the broker's server. Nothing more than that. Subscription process will take very little time. The description of a step-by-step subscription procedure is available in the article entitled "How to Subscribe to Trading Signals". After reading it, you will subscribe to the signal of your choice quickly and easily. 

How to Subscribe to Trading Signals

Despite being seemingly complicated, choosing a provider of the suitable signal has been made as simple as possible - the Trading Signals section features a regularly updated list of providers. By default, signals on the list are sorted by quality ensuring that top positions are taken by signals with higher credibility and better financial performance. However, for your convenience trading signals can also be sorted by monthly growth, number of subscribers, price and other parameters.

Social trading with the MetaTrader trading platforms is easy, straightforward and available to everyone. Out of thousands of available signals providers, you just need to choose the one that suits you more and measures up to your parameters!

14 六月 2013
MetaTrader 5 Trading Terminal build 821: Updated Signals Window and Trading Signal Registration Command

Trading Terminal

  1. Added ability to set Stop Loss and Take Profit levels in market order placing dialog for symbols having Market and Exchange execution types. If the values of the levels are specified in points, the final value of placed Stop Loss and Take Profit prices is calculated based on the order's market price at the moment the request was placed in the client terminal.


    Added ability to set Stop Loss and Take Profit levels in market order placing dialog for symbols having Market and Exchange execution types

  2. Added display of trading levels' deviation from the market's, position's or order's price in points and client deposit currency when dragging trade levels of orders and stops.

    Added display of trading levels' deviation from the market's, position's or order's price in points and client deposit currency when dragging trade levels of orders and stops

  3. Added display of trading levels' deviation from the market's, position's or order's price in points and client deposit currency into trade levels' tooltips.

    Added display of trading levels' deviation from the market's, position's or order's price in points and client deposit currency into trade levels' tooltips

  4. Added "Enable dragging of trade levels with 'Alt' key" option - when enabled, dragging of trade levels is performed only in case Alt key is pressed.


  5. Added currency display in the client account's status bar.

    Added currency display in the client account's status bar

  6. Modified drawing Fibonacci Arc object - the arcs are drawn "to the past" only till the graphical object's midpoint level to facilitate visualization.
  7. Added MQL5 application publication date column at Code Base tab.
  8. Fixed display of the empty Depth of Market in Extended mode.
  9. Fixed errors in trade commands of the Depth of Market's context menu.
  10. Now, graphical objects created from MQL5 applications cannot be restored after deletion using Undo command (Ctrl+Z).
  11. Fixed highlighting the deals performed by SL\TP at the trading history tab.
  12. Fixed assignment of "hot keys" for MQL5 applications in the context menu of Navigator window.
  13. Fixed behavior of signals at Alerts tab - conditions related to prices are checked at the moment the price changes instead of periodical checks performed without considering prices.
  14. Fixed restoring SL\TP values in points in the trade requests placing dialog after the failure of a trade request.
  15. Fixed errors of results normalization in the terminal's and tester's trading reports.
  16. Fixed display of custom indicators with DRAW_COLOR_HISTOGRAM2 style.
  17. Fixed display of quick trade panel when changing the chart's color scheme.
  18. Fixed default generation of trailing stop level sets.
  19. Fixed occasional incorrect activation of alerts.

MetaTrader Trading Signals

  1. Revised display of signal list:

    • Added signal price column and paid/free signals filter.
    • Added signal type column - Demo, Contest or Real.
    • Removed brokerage company and trading server names.

    Revised display of signal list

  2. Added command for registering a trading signal bound to the allocated account on MQL5 web site to the trading account's context menu of the Navigator window.


    Added command for registering a trading signal bound to the allocated account on MQL5 web site to the trading account's context menu of the Navigator window

  3. Revised the dialog for unsubscribing from a signal in order to reduce the risk of the accidental unsubscribing from paid signals. Now, users should additionally agree to unsubscribing terms before performing the action.

MQL5

  1. Now, CHARTEVENT_CHART_CHANGE event is generated when the chart's vertical scale is changed.
  2. Fixed check of price and stop level validity when placing and modifying pending orders - now, TRADE_RETCODE_INVALID_PRICE response code is returned in case of the order's invalid price instead of TRADE_RETCODE_INVALID_STOPS.
  3. Fixed launch of Expert Advisors when the terminal is launched from the command line and Symbol parameter is absent in the parameters list - in this case, an Expert Advisor is launched at the first chart of the current profile.
  4. Fixed compilation of an application having a large number of resource files (more than 256).
  5. Standard Library. Added diagram generation mode - "with accumulation" - CChartCanvas::Accumulative() property.
  6. Standard Library. Added control of the allowed order and order expiration types before placing trading orders in CTrade class.

MQL5 Market

  1. Added the button for testing paid Expert Advisors and indicators directly from Market tab. Test button appears after downloading Expert Advisors' demo versions and indicators. When pressing the button, Strategy Tester tab with the appropriate Expert Advisor or indicator appears.


    Added the button for testing paid Expert Advisors and indicators directly from Market tab

Strategy Tester

  1. Fixed an error in caching trading history that could sometimes lead to receiving incorrect deal properties.
  2. In the visual testing mode, fixed indicator chart display in a separate subwindow in case this indicator has been generated based on another one.
  3. Added permission for placing SL and TP from MQL5 applications in Exchange and Market Execution modes during testing and optimization.
  4. Fixed an error during re-optimization in All symbols optimization mode.
  5. Fixed handling expiration of pending orders with Specified day mode.
  6. All properties (ChartGetDouble, ChartGetInteger functions) of the main chart are now displayed during the visual testing, except Window Handle value.
  7. Presence of OnTester access point is checked when launching optimization according to Custom max criterion. In case the point is absent, optimization is not launched and the appropriate entry appears in the journal.

MetaEditor

  1. Added ability to change window size in the debugger.


    Added ability to change window size in the debugger

  2. Added edit commands:

    • "Increase Line Indent (Tab)"\"Decrease Line Indent (Shift +Tab)" - add/remove indentation at the beginning of the highlighted lines.
    • "Make Uppercase (Ctrl+Shift+U)\Make Lowercase (Ctrl+U)" - convert all the characters of the highlighted text to uppercase/lowercase

    Added edit commands

  3. Added prohibition against adding files larger than 64 megabytes to MQL5.Storage.

Fixed errors reported in crash logs.
Updated documentation.

The live update is available through the LiveUpdate system.

The MetaTrader 5 Trading Terminal can be downloaded at https://download.mql5.com/cdn/web/metaquotes.ltd/mt5/mt5setup.exe?utm_source=www.metatrader5.com

19 四月 2013
MetaTrader 5 TradingTerminal build 803: Full Display in Depth of Market and Dragging Expert Advisors from Code Base

Trading Terminal

  1. Added ability for "full" display in the Depth of Market - each price tick is displayed as a separate line in the Depth of Market.

    Added ability for full display in the Depth of Market

  2. Fixed an error that sometimes occurred in trailing stop operation.
  3. SL-TP levels for the order are automatically shifted when moving the order in the Depth of Market using drag'n'drop.
  4. Fixed display of Templates in the chart's context menu.
  5. Improved Code Base tab - now, MQL5 application can be added to the chart by dragging it from Code Base tab. Added the column with the name of an Expert Advisor and removed the column with publication dates.

  6. Improved Code Base tab - now, MQL5 application can be added to the chart by dragging it from Code Base tab

  7. Restored Trading tab in Market Watch window.
  8. Fixed deletion of an account in Navigator window in case of large login values.
  9. Fixed reset of the current bar in price history when working with exchange tools.
  10. Added logging of deals with trailing stops.

  11. Trading Signals

  12. Fixed an error in handling position closing signals when renaming trading symbols (EURUSD <=> EURUSD!).

MQL5

  1. Fixed making chart screenshots using ChartScreenShot function from custom indicators at OnCalculate entry point.
  2. Added ability to present binary data using b prefix:

    int val=b'101010'; // 42
  3. Added the timer event setting function specifying frequency in milliseconds EventSetMillisecondTimer - when using this function, OnTimer entry point can be called at more than once per second.

    This feature is designed for the cases when high-resolution timer is required. In other words, timer events should be received more frequently than once per second.

    The minimum interval of 1000 milliseconds is used in the strategy tester. In general, when the timer period is reduced, the testing time is increased, as the handler of timer events is called more often. When working in real-time mode, timer events are generated no more than 1 time in 10-16 milliseconds due to hardware limitations.

  4. Standard Library. Updated CPieChart and CChartCanvas classes for creating diagrams.

Strategy Tester

  1. Fixed history synchronization error during repeated optimization passes that sometimes led to mismatches in optimization results.
  2. Fixed an error that in some cases could lead to "freezing" of forward testing after optimization.
  3. Changed calculation of "Balance + max Profit Factor" optimization criterion. In case there is no calculated profit factor (no loss-making deals), the final balance is now used as the optimization criterion.
  4. Fixed an error that in some cases could lead to "freezing" of forward testing after optimization. In some cases, forward optimization could suddenly stop after the "large" genetic optimization.

MetaEditor

  1. Added ability to format the output of integers in the debugger: in binary form - using "b" modifier, in hexadecimal form - using "x" modifier.

    Added ability to format the output of integers in the debugger

  2. Added ability to show the values for the fields of structures and classes:

    Added ability to show the values for the fields of structures and classes

Fixed errors reported in crash logs.
Updated documentation.

The live update is available through the LiveUpdate system.

The MetaTrader 5 Trading Terminal can be downloaded at https://download.mql5.com/cdn/web/metaquotes.ltd/mt5/mt5setup.exe?utm_source=www.metatrader5.com

4 四月 2013
MetaTrader 5 Client Terminal build 794: Scalper Depth of Market and New Tools for One-Click Trading

Trading Terminal

  1. Revised one-click trading system:

    • When One-Click Trading mode is enabled, the trading dialog is closed right after a successful operation. In case of an error, the dialog displays its cause.

      When One-Click Trading mode is enabled, the trading dialog is closed right after a successful operation. In case of an error, the dialog displays its cause

    • When One-Click Trading mode is enabled, Close Position command in the position's context menu results in an immediate closing of the position without showing the trading dialog. Added ability to remove SL-TP in one click in the list of open orders and positions.

      When One-Click Trading mode is enabled, Close Position command in the position's context menu results in an immediate closing of the position without showing the trading dialog

    • Added the context menu for trading levels on the chart. The menu allows managing the level right from the chart.

      Added the context menu for trading levels on the chart

    • When One-Click Trading mode is enabled, dragging trading levels of orders and positions results in an immediate modification of the appropriate order or stop level without showing the trading dialog.

    • A double click on the trading level displays order or position modification dialog.

    • Revised the context menu of trading from the chart, limit orders are now set in the main menu, added ability to set alerts right from the chart.

    • Revised the context menu of trading from the chart, limit orders are now set in the main menu

    • Removed Trading tab from Market Watch window. Now, any trade operations can be performed right on the chart.

  2. Replaced conventional Depth of Market with the scalper one focused on the minimum time for performing a trade operation. When One-Click Trading mode is enabled, all trade operations are executed immediately without showing a trading dialog:

    Replaced conventional Depth of Market with the scalper one focused on the minimum time for performing a trade operation

    • SL and TP levels are specified in points.
    • Close button closes the current position.
    • A limit order is placed by pressing the market entry button at the appropriate level.
    • A limit or stop order is removed by pressing the appropriate button while holding Shift key.
    • Order or stop price can be changed by simply dragging an order to a new level.
    • When dragging a pending order via the level of best prices, the order automatically changes its type from Limit to Stop and vice versa.
    • Market order is placed by pressing Buy or Sell buttons.

  3. Fixed an error when changing a vertical scale for symbols with a specified tick size on a chart.

  4. Added a tab displaying brokerage company's technical support web site.

    Added a tab displaying brokerage company's technical support web site

  5. Changed scaling algorithm in trading dialog's tick chart - now, the scale is chosen so that the levels of a trading order and stops are displayed on the chart.

  6. Fixed Navigator window's multiple update when compiling the directory in MetaEditor.

  7. Fixed an error leading to changing of the value in the order price field when switching between different modes of modification and setting a new order in the trading dialog.

  8. Trading Signals

  9. Added insufficient funds warning message when trying to subscribe to paid signals.

    Added insufficient funds warning message when trying to subscribe to paid signals

  10. MQL5 Market

  11. Added ability to download free applications from MQL5 Market without registering on MQL5.

  12. MQL5

    1. Added new return codes when performing trading operations:

      • TRADE_RETCODE_INVALID_ORDER - placed order has forbidden or incorrect type.
      • TRADE_RETCODE_POSITION_CLOSED - operation with the position is impossible, as the position is absent.

      Implemented changes to CTrade class of the Standard Library.

    2. Added new values to ENUM_BOOK_TYPE enumeration: BOOK_TYPE_SELL_MARKET and BOOK_TYPE_BUY_MARKET - requests to sell and buy at market price, respectively.
    3. SendFTP function operation now does not depend on the fact if publication of FTP reports in the terminal settings is allowed.
    4. Fixed an error when working with alpha channel for images from the resources that led to the loss of transparency.
    5. Fixed an error leading to the crashes of MQL5 applications when working in 64-bit Wine (for Linux, Mac).
    6. Fixed passing the cause of deinitialization in OnDeinit entry point parameter for custom indicators.
    7. Fixed debugging point's operation when exiting the function.
    8. Standard Library. Added drawing Ellipse, Arc and Pie graphical primitives and their versions with filling to CCanvas class.
    9. Standard Library. Fixed display of the calendar in Date Picker control element (MQL5\Include\Controls\DatePicker.mqh).
    10. Standard Library. Fixed display of a drop-down list in Date Picker and Combo Box control elements.
    11. Standard Library. Added diagram classes:

      • CPieChart (MQL5\Include\Canvas\Charts\PieChart.mqh) - pie chart.
      • CHistogramChart (MQL5\Include\Canvas\Charts\HistogramChart.mqh) - histogram.
      • CLineChart (MQL5\Include\Canvas\Charts\LineChart.mqh) - line chart.

      Examples of using the classes are added to MQL5\Scripts\Examples\Canvas\Charts.

    Strategy Tester

    1. Fixed crashes when working with charts in visual testing mode in case multicurrency Expert Advisors are tested.
    2. Fixed display of a basic chart during the visual testing of multicurrency Expert Advisors.
    3. Fixed the launch of visual testing when working in 64-bit Wine (for Linux, Mac).
    4. Fixed generation of ticks and trading exchange symbols.

    MetaEditor

    1. Fixed errors occurred when working with joint projects via MQL5 Storage.
    2. Fixed debugging and profiling of files from projects directory.

Fixed errors reported in crash logs.
Updated documentation.

The live update is available through the LiveUpdate system.

The MetaTrader 5 Trading Terminal can be downloaded at https://download.mql5.com/cdn/web/metaquotes.ltd/mt5/mt5setup.exe?utm_source=www.metatrader5.com

12345678910111213