How to Start with Metatrader 5 - page 97

Sergey Golubev
Moderator
107432
Sergey Golubev  

The Easy Way to Evaluate a Signal: Trading Activity, Drawdown/Load and MFE/MAE Distribution Charts 


Subscribers often search for an appropriate signal by analyzing the total growth on the signal provider's account, which is not a bad idea. However, it is also important to analyze potential risks of a particular trading strategy. In this article we will show a simple and efficient way to evaluate a Trading Signal based on its performance values:

The Easy Way to Evaluate a Signal: Trading Activity, Drawdown/Load and MFE/MAE Distribution Charts
The Easy Way to Evaluate a Signal: Trading Activity, Drawdown/Load and MFE/MAE Distribution Charts
  • 2016.09.28
  • MetaQuotes Software Corp.
  • www.mql5.com
Subscribers often search for an appropriate signal by analyzing the total growth on the signal provider's account, which is not a bad idea. However, it is also important to analyze potential risks of a particular trading strategy. In this article we will show a simple and efficient way to evaluate a Trading Signal based on its performance values.
Sergey Golubev
Moderator
107432
Sergey Golubev  

FAST DIVE INTO MQL5


There may be many reasons why you have decided to study the modern MQL5 trading strategies' programming language, and we welcome your decision! Experienced users can easily navigate in the language documentation, as well as in the variety of articles and services presented here. But, if you have just discovered the MetaTrader 5 client terminal, many things may seem to be unusual and confusing at first.


Sergey Golubev
Moderator
107432
Sergey Golubev  

Forum on trading, automated trading systems and testing trading strategies

How to Start with Metatrader 5

Sergey Golubev, 2016.05.08 20:17

Welcome,

  • Usually people who can't code don't receive free help on this forum, though it could happen if you are lucky, be patient.
  • If you show your attempts and describe well your problem, you will most probably receive an answer from the community.
  • If you don't want to learn to code, nothing bad, you can either look at the Codebase if something free already exists, or in the Market for paid products (sometimes free also).
  • Finally, you also have the option to hire a programmer in the Freelance section.
Good luck.

Sergey Golubev
Moderator
107432
Sergey Golubev  

Just some information about the Signal Service:

This is the information about where to start to.

Trading Signals showcase in MetaTrader 4/5
Trading Signals showcase in MetaTrader 4/5
  • 2015.03.09
  • www.youtube.com
How to choose a trading signals and subscribe to it in MetaTrader Platforms? Its easy! Watch the video and you will know everything about trading signals.
Sergey Golubev
Moderator
107432
Sergey Golubev  

Forum on trading, automated trading systems and testing trading strategies

New MetaTrader 5 Platform Build 1570: Improved Market showcase and extended MQL5 template functions

MetaQuotes Software Corp., 2017.03.22 17:03

New MetaTrader 5 Platform Build 1570: Improved Market showcase and extended MQL5 template functions

MetaTrader 5 platform update is to be released on March 24, 2017. The update will feature the following changes:

  1. Terminal: Updated the showcase of the MetaTrader Market store of applications. Now, you can browse through trading robots and technical indicators more conveniently. We have updated the design and added product selections:

    • The main page now features popular experts, indicators, new Market products, as well as top free applications.
    • The Experts, Indicators and Utilities sections now have subsections: grid and hedging robots, trend and multi-currency indicators, and much more.




  2. Terminal: Fixed the client terminal update and built-in purchases in the Market, Signals and Virtual Hosting when using a Windows account with limited rights.
  3. Terminal: Fixed occasional incorrect sorting of position history.
  4. Terminal: Optimized and fixed display of the Exposure tab.
  5. MQL5: Added support for overloading template functions using parameters. For example, we have a template function that writes the value of the second parameter to the first one using typecasting. MQL5 does not allow typecasting string to bool. However, we can do that ourselves. Let's create an overload of a template function:
    //+------------------------------------------------------------------+
    //| Template function                                                |
    //+------------------------------------------------------------------+
    template<typename T1,typename T2>
    string Assign(T1 &var1,T2 var2)
      {
       var1=(T1)var2;
       return(__FUNCSIG__);
      }
    //+------------------------------------------------------------------+
    //| Special overload for bool+string                                 |
    //+------------------------------------------------------------------+
    string Assign(bool &var1,string var2)
      {
       var1=(StringCompare(var2,"true",false) || StringToInteger(var2)!=0);
       return(__FUNCSIG__);
      }
    //+------------------------------------------------------------------+
    //| Script program start function                                    |
    //+------------------------------------------------------------------+
    void OnStart()
      {
       int i;
       bool b;
       Print(Assign(i,"test"));
       Print(Assign(b,"test"));
      }
    As a result of the code execution, we can see that the Assign() template function has been used for the int+string pair, while the overloaded version has already been used for the bool+string pair during the second call.
    string Assign<int,string>(int&,string)
    string Assign(bool&,string)

  6. MQL5: Added explicit specialization of template functions. To do this, specify typification parameters before the list of the call parameters:
    template<typename T>
    T Func() { return (T)0; }
      
      
    void OnInit()
      {
       Func<double>();   // explicit template function specialization
      }
    Thus, typification is performed by explicit specification of types rather than via the call parameters.

  7. MQL5: Optimized display of custom indicators with the DRAW_ZIGZAG drawing type.
  8. MQL5: Added the new values to the ENUM_DEAL_TYPE deal types enumeration:

    • DEAL_DIVIDEND — dividend operations.
    • DEAL_DIVIDEND_FRANKED — franked (non-taxable) dividend operations (tax is paid by a company, not a client).
    • DEAL_TAX — charging a tax.

  9. MQL5: Fixed display of custom indicators with the DRAW_FILLING drawing type. In case the upper and lower line coordinates coincide, a thin line is drawn.
  10. MQL5: Fixed calculating the Bitmap Label object coordinates when setting the CHART_SHOW parameter to 'false'. The parameter is set by the ChartSetInteger function and allows hiding all price chart elements to create a custom program interface.
  11. MQL5: Fixed re-encoding of 24-bit images when placing them to MQL5 application resources.
  12. MQL5: Fixed printing structures using the ArrayPrint function.
  13. MQL5: Updated the MQL5 standard libraries.
  14. MetaEditor: Added translation of the user interface into Malay.
  15. Signals: Fixed opening a signal page in the terminal when moving from the MQL5.community website while not connected to a trading account.
  16. Tester: Fixed the CopyTicks function operation in the strategy tester.
  17. Tester: Fixed sorting Withdrawal trades when generating a report.
  18. Tester: Fixed modifying pending orders.
  19. Hosting: Fixed display of the virtual hosting wizard on ultra-high resolution screens (4К).
  20. Updated documentation.

The update will be available through the LiveUpdate system.


Sergey Golubev
Moderator
107432
Sergey Golubev  

Forum on trading, automated trading systems and testing trading strategies

Press review

Sergey Golubev, 2017.03.24 07:07

MQL5 WIZARD: HOW TO CREATE A RISK AND MONEY MANAGEMENT MODULE


MetaTrader 5 provides a powerful tool that allows you to quickly check various trading ideas. This is generation of Expert Advisors using the MQL5 Wizard on the basis of ready trading strategies. An Expert Advisor created with the MQL5 Wizard, is based on four pillars - four base classes:
...


Sergey Golubev
Moderator
107432
Sergey Golubev  

It may be good to look at the following thread with many indicators:

MT5 versions of indicators
https://www.mql5.com/en/forum/179671 

Metatrader 5 versions of indicators ...
Metatrader 5 versions of indicators ...
  • www.mql5.com
Some of you might remember this one : originally it was a part of an expensive system...
Sergey Golubev
Moderator
107432
Sergey Golubev  

Forum on trading, automated trading systems and testing trading strategies

How to Start with Metatrader 5

Sergey Golubev, 2017.02.15 06:04

TESTING TRADING STRATEGIES ON REAL TICKS

 

The article provides the results of testing a simple trading strategy in three modes: "1 minute OHLC" using only Open, High, Low and Close prices of minute bars; detailed modeling in "Every tick" mode, as well as the most accurate "Every tick based on real ticks" mode applying actual historical data. 

Forum on trading, automated trading systems and testing trading strategies

MT4 & MT5 backtest

Sergey Golubev, 2017.02.17 20:53

If you are backtesting EA on MT5 using 'every tick based on real ticks' so it will be almost same with trading on MT5 platform with some particular broker (because it is based on actual historical data).

Example, read this thread: Why is it better MT5 than MT4?? Does it have fewer limitations ??? - this is the quote from the first post of the thread:

  • In MT5 you can backtesting robots with the closest possible conditions to the real market natively  (real tick data, real variable spreads, lag, slippage, etc). In MT4 you can't natively. You only can if you pay for a third-party software. If so, you also have to download history data from a few sources (there are many few, almost everyone uses the same source), transform it to MT4 format and open the platform through this third-party software in order to patch MT4 behavior. You take many hours to complete this process, and you have to repeat it every time you want to incorporate new data. 
    We have all seen hundreds of robots that obtained spectacular results in backtesting, but when operating in real account the results were very bad. This is mainly because they were made with conditions that had nothing to do with real market conditions.

For more information about it - read this summary.

--------------

As i know - some coders/traders are converting their MT4 EAs to MT5 just to backtest them and/or to find the settings with optimization to get the backtesting results that are closest to reality.