New MetaTrader 5 Platform Build 2485: iCustom improvements and overall optimization in MQL5

To add comments, please log in or register
MetaQuotes
Moderator
221041
MetaQuotes  

The MetaTrader 5 platform update will be released on Friday, June the 5th, 2020.

Recompile your products in the Market

We urge the programmers who publish their products in the Market to recompile files using the new platform version and to upload the updated files into the Market. The current version provides important fixes in MQL5. The errors can negatively affect the execution of programs and we therefore recommend recompiling your files.


The new version features the following changes:

  1. Terminal: Optimized and significantly accelerated bar history editing for custom financial instruments. The improvement also concerns the CustomRatesUpdate function.
  2. Terminal: Fixed exporting of custom symbol settings to a JSON file.
  3. MQL5: This version features a revised custom indicator loading algorithm via iCustom.

    If the backslash '\' is indicated before the custom indicator name, the EX5 indicator file is searched relative to the MQL5 root folder. So, for a call of iCustom(Symbol(), Period(), "\FirstIndicator"...), the indicator will be loaded as MQL5\FirstIndicator.ex5. If the file is not found at this path, error 4802 (ERR_INDICATOR_CANNOT_CREATE) is returned.

    If the path does not start with a backslash '\', the indicator is searched and loaded based on the following sequence of actions:

    • The EX5 file is searched in the same folder, where the caller program's EX5 is located. For example, the CrossMA.EX5 Expert Advisor is located at MQL5\Experts\MyExperts. It contains the following call: iCustom(Symbol(), Period(), "SecondIndicator"...). In this case, the indicator is searched at MQL5\Experts\MyExperts\SecondIndicator.ex5.
    • If the indicator is not found, a search relative to the Indicators root directory is performed: MQL5\Indicators. Thus, file MQL5\Indicators\SecondIndicator.ex5 is searched. If the indicator is not found, the function returns INVALID_HANDLE and error 4802 (ERR_INDICATOR_CANNOT_CREATE) is raised.

    If the indicator path is set in a subdirectory such as MyIndicators\ThirdIndicator, the search starts in the folder of the calling program (the Expert Advisor is located in the folder MQL5\Experts\MyExperts) at the following path: MQL5\Experts\MyExperts\MyIndicators\ThirdIndicator.ex5. In case of failure, file MQL5\Indicators\MyIndicators\ThirdIndicator.ex5 is searched. Please note that the path separator should be specified as a double backslash '\\'. For example: iCustom(Symbol(), Period(), "MyIndicators\\ThirdIndicator"...)

    Also, if a custom indicator call via iCustom is found in the program code, the compiler will implicitly add the "#property tester_indicator XXX" directive if it is not specified.

  4. MQL5: Optimized and significantly accelerated HistorySelect function, which allows requesting the history of deals and orders.
  5. MQL5: Fixed an occasional error in tick requesting via the CopyTicksRange function. The error caused the range beginning to be set to the day beginning rather than to the specified time.
  6. MQL5: Optimized and significantly accelerated display of alerts via the Alert function.
  7. MQL5: New property SYMBOL_TIME_MSC for the symbol's last tick time in milliseconds. The property can be obtained using the SymbolInfoInteger function.
  8. Fixed errors reported in crash logs.
The new version will be available through the Live Update system.
Nelson Wanyama
987
Nelson Wanyama  

Awesome. I hope you keep updating until all my desired features are available.

I wouldn't post them here, knowing they will 'never?' be considered.

Good work.

Abubakar Saidu
4654
Abubakar Saidu  

Awesome..

there is some issue with the metaeditor's search button..

the new version its different from the previous

and cannot decrease the width by dragging..

is there a possible way to switch or change to the previous version of Search window?

Thanks

Ramzi Alzraiqi
20
Ramzi Alzraiqi  

Hi , 

Need  to remove Trade History arraws , it appears always  , I can not deactivate it in the new Ver.mtr5  ,please check this Issue 

nicholish en
2675
nicholish en  
If the backslash '\' is indicated before the custom indicator name
How will this affect indicators that begin with valid escape sequence letters? For example "\nicholishen_ind", will you need to escape the backslash? ie. "\\nicholishen_ind"?
Yu Zhang
9002
Yu Zhang  

Recompile products in the Market?   This is a lot of work. 

if the product don't use icustom, does it should be recompiled?

 

William Roeder
22428
William Roeder  
nicholish en: How will this affect indicators that begin with valid escape sequence letters? For example "\nicholishen_ind", will you need to escape the backslash? ie. "\\nicholishen_ind"?

\n is the LINE FEED character. You always need to escape the backslash or you never had one.
          Language Basics / Data Types / Integer Types / Character Constants - Reference on algorithmic/automated trading language for MetaTrader 5

Nelson Wanyama
987
Nelson Wanyama  

The newest version 2485 feels awesome already. I hope it doesn't disappoint me in the long run. Good job!


sss

Sergey Golubev
Moderator
117007
Sergey Golubev  
Updated -

Nelson Wanyama
987
Nelson Wanyama  
Nelson Wanyama:

The newest version 2485 feels awesome already. I hope it doesn't disappoint me in the long run. Good job!



Oooh no!!

crash

Second time in two days.

I did nothing special. Just created a script and boom! Freezes then has to be forcefully closed.
Icham Aidibe
11830
Icham Aidibe  

Does a product need to be reuploaded if re-compilation with the new standard has been alright ?

I take this as a "no" <Deleted>

The errors can negatively affect the execution of programs and we therefore recommend recompiling your files.
To add comments, please log in or register