Discussion of article "How to Test a Program Before Buying it from MQL5 Market"

 

New article How to Test a Trading Robot Before Buying it from MQL5 Market is published:

MQL5 Market allows you to test a trading robot and its features before buying it. Every Expert Advisor offered in MQL5 Market comes with a demo version that can be tested in the Strategy Tester. It is quite simple and does not take much of your time.


Thus, any trader can independently assess the real earning power and risk characteristics of a trading robot. Read the article "How to Test a Trading Robot Before Buying it from MQL5 Market" to verify the stated program parameters and assess its trading efficiency.

Author: MetaQuotes

 

Very helpful.

Thanks

 
When testing a trading robot, one key factor is to consider the need, to run the robot in the same type of price pattern, that it traded in, when it was designed. In other words, If you use a robot designed on past price feeds of a Bull Market, you need to be sure to run the trading Robot, in a current Bull Market. The Trading Robot will not have the same results in a Bear Market. One would need to look at the trades, compare to the past market, and determine if the current market is in the same trending pattern, and predict how long it will probably last. What is the top and bottom of the trend? You need to know this, because trading the Robot in the wrong market conditions will probably result in losses. Let's say you are analyzing a Robot that traded in a back test for one year. Was the market for that year in a Bull Trend or a Bear Trend? Is the current Market trending Bullish, or is it trending Bearish? Where is the price, in the trend? At the beginning of the trend, in the middle, or at the end. Run the signal Accordingly. The identification of trend direct must be known, and the probability of future market direction must be accurately predicted.
 
KenMcCormick:
When testing a trading robot, one key factor is to consider the need, to run the robot in the same type of price pattern, that it traded in, when it was designed. In other words, If you use a robot designed on past price feeds of a Bull Market, you need to be sure to run the trading Robot, in a current Bull Market. The Trading Robot will not have the same results in a Bear Market. One would need to look at the trades, compare to the past market, and determine if the current market is in the same trending pattern, and predict how long it will probably last. What is the top and bottom of the trend? You need to know this, because trading the Robot in the wrong market conditions will probably result in losses. Let's say you are analyzing a Robot that traded in a back test for one year. Was the market for that year in a Bull Trend or a Bear Trend? Is the current Market trending Bullish, or is it trending Bearish? Where is the price, in the trend? At the beginning of the trend, in the middle, or at the end. Run the signal Accordingly. The identification of trend direct must be known, and the probability of future market direction must be accurately predicted.
You can only test before you buy in the Strategy Tester . . .
 

The strategy tester version I bought appears to be different from the real EA.

Can I get to the code to tweek it up ? 

 
Pat494:

The strategy tester version I bought appears to be different from the real EA.

Can I get to the code to tweek it up ? 

Nope.
 
Merci
 

is there a difference in testing using mql4 or mql5?

i am trying to post some products in the market but i keep getting comments back from whomever is  approving them saying that i am getting errors that i can not reproduce.

 
thanks
 

I believe that this article can be improved with the following points to minimize curve fitting and to reject poor EAs.

 

1) It is important to back test a system over 10 years with at least 1,000 trades. Why? Two to three years trading results are prone to curve fitting. Less than 1,000 trades do not provide a large enough statistical sample.

2) It is important to used fix 0.1 lot for testing over the entire period. This will unmask any manipulation of money management to hide poor drawdown. Fixed 0.1 lot testing will show the true reward and risk of a trading system.

3) For MT5 EAs checking, it is important to utilize MT5's MOST ADVANCE and HIGHLY ACCURATE "Every Tick" setting. If an EA can generate a positive result with "Every Tick" setting, then it will have a good chance to survive in the real market. 

 
Winsor Hoang:

I believe that this article can be improved with the following points to minimize curve fitting and to reject poor EAs.

 

1) It is important to back test a system over 10 years with at least 1,000 trades. Why? Two to three years trading results are prone to curve fitting. Less than 1,000 trades do not provide a large enough statistical sample.

2) It is important to used fix 0.1 lot for testing over the entire period. This will unmask any manipulation of money management to hide poor drawdown. Fixed 0.1 lot testing will show the true reward and risk of a trading system.

3) For MT5 EAs checking, it is important to utilize MT5's MOST ADVANCE and HIGHLY ACCURATE "Every Tick" setting. If an EA can generate a positive result with "Every Tick" setting, then it will have a good chance to survive in the real market. 

- Time length of backtest is not too important.  It is more important to test different market conditions and see how your EA performs.  It is possible to do this in 2-5 years....maybe less.  But if you do try to tick data backtest 10 years, you have to keep in mind that spreads, liquidity, and other trading conditions could have been different 5-10 years ago from what they are now.  You must take that into account and also consider that it can change in the future as well.

- Why would someone need to use fixed lots?  Not everyone uses a fixed lot strategy.

- Mt5 does not allow for importing of 3rd party data.  mt4 can still create FXT files using Birts csv2fxt script.    you can also use Birts TDS to enable real variable spreads for backtesting with tick data precision.  So with mt5 backtest, your 'Every Tick' setting will not be precise to know exactly what occurred in the market.  It is ok to test a function is programmed correctly in most cases......but to fully test, especially to fully simulate live trading condition, you need to import your own tick data. 

Reason: