---
title: "MetaTrader 5 build 3440: New trading account report - Release Notes"
description: "Added new account trading performance report. It is similar to the already familiar Signals reports in terms of statistics availability... - Release Notes"
image: "https://www.metatrader5.com/c/17/0/webterminal__1.png"
url: "https://www.metatrader5.com/en/releasenotes/terminal/2251"
---

# MetaTrader 5 build 3440: New trading account report

## Added new account trading performance report. It is similar to the already familiar Signals reports in terms of statistics availability and data presentation

17 September 2022

### Terminal

1. Added new account trading performance report. It is similar to the already familiar [Signals](https://www.mql5.com/en/signals) reports in terms of statistics availability and data presentation. The following performance data will be available in the platform:

     - Graphs and tables visualizing monthly growth metrics
     - Equity chart
     - Radar chart which enables quick account state evaluation
     - Trading statistics by instrument
     - A variety of additional metrics for trading analysis

    The report can be viewed directly in the platform, without the need to export it to a file. To open it, select Reports in the View menu.

   ![](https://www.metatrader5.com/c/17/0/terminal-report__1.png)
2. Fixed [options board](https://www.metatrader5.com/en/terminal/help/trading/options_board) filling for Call and Put contracts with unmatching quantity or symbol type.
3. Fixed position selection in the Trade dialog during [Close by](https://www.metatrader5.com/en/terminal/help/trading/performing_deals#closeby) operations. The error occurred for opposite order lists sorted by any column other than the ticket.
4. Accelerated platform logging.
5. Fixed display of comments on [custom symbol](https://www.metatrader5.com/en/terminal/help/trading_advanced/custom_instruments) charts.

### MQL5

1. Fixed [CArrayList::LastIndexOf](https://www.mql5.com/en/docs/standardlibrary/generic/carraylist/carraylistlastindexof) function operation. Previously, it always returned -1 instead of the index of the last found element.
2. Added new matrix and vector method - Assign. It replaces matrix/vector elements with the passed matrix/vector or array data.

   ```
   bool vector<TDst>::Assign(const vector<TSrc> &assign); bool matrix<TDst>::Assign(const matrix<TSrc> &assign);
   ```

   Example:

   ```
     //--- copying matrices   matrix b={};   matrix a=b;   a.Assign(b);      //--- copying an array to a matrix   double arr[5][5]={{1,2},{3,4},{5,6}};   Print("array arr");   ArrayPrint(arr);   b.Assign(arr);   Print("matrix b \n",b); /* array arr         [,0]    [,1]    [,2]    [,3]    [,4] [0,] 1.00000 2.00000 0.00000 0.00000 0.00000 [1,] 3.00000 4.00000 0.00000 0.00000 0.00000 [2,] 5.00000 6.00000 0.00000 0.00000 0.00000 [3,] 0.00000 0.00000 0.00000 0.00000 0.00000 [4,] 0.00000 0.00000 0.00000 0.00000 0.00000 matrix b [[1,2,0,0,0] [3,4,0,0,0] [5,6,0,0,0] [0,0,0,0,0] [0,0,0,0,0]] */
   ```
3. Added new matrix and vector method - CopyRates. It copies price data arrays into vectors and matrices.

   ```
   bool matrix::CopyRates(string symbol,ENUM_TIMEFRAMES period,ulong rates_mask,ulong from,ulong count); bool vector::CopyRates(string symbol,ENUM_TIMEFRAMES period,ulong rates_mask,ulong from,ulong count);
   ```

   The copied data type is specified in the rates_mask parameter using the ENUM_COPY_RATES enumeration. The following values are available:

    COPY_RATES_OPEN COPY_RATES_HIGH COPY_RATES_LOW COPY_RATES_CLOSE COPY_RATES_TIME COPY_RATES_VOLUME_TICK COPY_RATES_VOLUME_REAL COPY_RATES_SPREAD COPY_RATES_OHLC COPY_RATES_OHLCT

    The last two values enable the simultaneous selection of multiple bar parameters: Open, High, Low, Close and time. If multiple data types are selected (only available for matrices), the order of the rows in the matrix will correspond to the order of values in the enumeration.
4. Fixed display of Text Label objects. When using [OBJPROP_XOFFSET and OBJPROP_YOFFSET](https://www.mql5.com/en/docs/constants/objectconstants/enum_object_property#visual_rectangle) properties, a wrong image fragment could be displayed on the chart.
5. Fixed error when changing a constant parameter which has been passed to a function as an object pointer reference.

   The [const](https://www.mql5.com/en/docs/basis/variables#const) specifier declares a variable as a constant to prevent it from being changed during program execution. It only allows one-time variable initialization during declaration. An example of constant variables in the [OnCalculate](https://www.mql5.com/en/docs/event_handlers/oncalculate) function:

   ```
   int OnCalculate (const int rates_total,      // price[] array size                  const int prev_calculated,  // bars processed on previous call                  const int begin,            // meaningful data starts at                  const double& price[]       // array for calculation    );
   ```

   The below example contains a compiler error which allowed an implicit pointer casting for reference parameters:

   ```
   class A {}; const A *a = new A; void foo( const A*& b )   {    b = a;   } void OnStart()   {         A *b;         foo(b); // not allowed         Print( a,":",b );   }
   ```

   The compiler will detect such illegal operations and will return the relevant error.

### MetaEditor

1. Fixed display of complex number references in the [debugger](https://www.metatrader5.com/en/metaeditor/help/development/debug).
2. Improved [MQL5 Cloud Protector](https://www.metatrader5.com/en/metaeditor/help/development/mql5_cloud_protector). Previously, file protection could fail under certain conditions.
3. Fixed errors reported in crash logs.

### New MetaTrader 5 Web Terminal

We have released a revised MetaTrader 5 Web Terminal which features an updated interface and a redesigned core. The new interface is similar to the terminal version for iPad:

![](https://www.metatrader5.com/c/17/0/webterminal__1.png)

It also features a plethora of new functions:

- Ability to request real accounts with the detailed registration form and document submission options
- Support for price data subscriptions and the ability to receive delayed quotes
- More analytical objects with convenient management options
- Market entries and exits displayed on charts
- [Economic Calendar](https://www.mql5.com/en/economic-calendar) events displayed on charts
- Convenient configuration of instruments in the Market Watch, along with the daily price change data
- Simplified interface to assist beginners in getting started with the terminal: removed chart context menu and top menu; all chart control commands, objects and indicators are available on the left-hand side and top panels, while other commands can be accessed through the hamburger menu
- Interface dark mode

Try the [new web terminal at www.mql5.com](https://web.metatrader.app/terminal) right now. It will soon become available for your brokers.

**Earlier publications:**

- [MetaTrader 5 build 3390: Float in OpenCL and in mathematical functions, Activation and Loss methods for machine learning](https://www.metatrader5.com/en/releasenotes/terminal/2247)
- [MetaTrader 5 build 3320: Improvements and fixes](https://www.metatrader5.com/en/releasenotes/terminal/2243)
- [MetaTrader 5 build 3300: Fast compilation and improved code navigation in MetaEditor](https://www.metatrader5.com/en/releasenotes/terminal/2241)
- [MetaTrader 5 build 3280: Improvements and fixes based on traders' feedback](https://www.metatrader5.com/en/releasenotes/terminal/2239)
- [MetaTrader 5 build 3270: Improvements and fixes](https://www.metatrader5.com/en/releasenotes/terminal/2238)
