[PROPOSAL] Use of a Quotes Synthetizer for deeper testing of EAs

 

Use of a Quotes Synthetizer for deeper testing of EAs

In electronics is a common practice to test signal-processing systems performance using specific signals that tests the system in each of the dimensions it process (amplitude, frequency, waveform, etc.)

The same principle used for optimization of EAs (testing a range of each input setting of the EA) could and should be applied to quotes too, testing a range of quotes in aplitude, frequency, waveform, etc.

Instead of testing using always the same historical data (that have a limited variability) we could test using synthetic quotes that purposely have a high variability, that usually occur in a much longer period of time (years). This can make a test quicker and deeper.
Moreover, testing each limit separately, we can spot more precisely where and when the EA performance drops, and how it behave in extreme conditions.

Some basic tests should be:

Amplitude sweep (increasing and decreasing)

Frequency sweep (increasing and decreasing)


Different waweforms


Level of white noise tolerable

and combinations of all these in a composite signal


A quotes synthetizer should be able to set start and end value of each dimension (amplitude, frequency, etc)
the average value, and generate the quotes with the format that History Center can import:

2014.07.23,09:42,1.70612,1.70613,1.70611,1.70613,8
2014.07.23,09:43,1.70611,1.70624,1.70611,1.70621,28
2014.07.23,09:44,1.70620,1.70629,1.70615,1.70629,38
2014.07.23,09:45,1.70628,1.70628,1.70623,1.70624,19
2014.07.23,09:46,1.70624,1.70624,1.70624,1.70624,8
2014.07.23,09:47,1.70624,1.70626,1.70624,1.70624,9
2014.07.23,09:48,1.70623,1.70628,1.70623,1.70623,21
2014.07.23,09:49,1.70622,1.70633,1.70621,1.70632,21
I don't know if is possibile to create a custom/dummy currency pairs just to save these synthetic quotes, but it would be handy.

Anyone interested to develop this idea and share possible solutions is welcome. :)

 

You can't create custom symbols and custom quotes history in MT5, but you can do this in MT4 (for more info you may search this site for Period_converter, for example, just as a starting point). As a workaround for MT5 you can create a library (or even indicator) generating quotes on the fly and passing them to a specially crafted expert via MqlRates structures. This will not work with an arbitrary 3-d party expert.

But, I don't think testing on such artificial data is of a great interest for traders.

You may visit the Freelance section in order to get your idea developed.

 

Hello 

Interesting idea. But the idea already exists between statistician and econometrician. Also the limitation of the method is well known too.

One thing you should be careful is that why do you think sine wave or other Synthetic data represents the property or characteristics of historical price or future price. If they don't, it is almost no point to go though this kind of extended simulation because they won't reveal anything.

One thing  we know for sure is historical variation. You might tackle this using Monte Carlos simulation approach. Variation is only one property of our price series among many other properties. So it is far from being perfection and satisfaction in my view. 

I hope this comment is useful for your future development work and good luck with them. 

Kind regards.

Application of the Eigen-Coordinates Method to Structural Analysis of Nonextensive Statistical Distributions
Application of the Eigen-Coordinates Method to Structural Analysis of Nonextensive Statistical Distributions
  • 2012.08.08
  • MetaQuotes Software Corp.
  • www.mql5.com
The major problem of applied statistics is the problem of accepting statistical hypotheses. It was long considered impossible to be solved. The situation has changed with the emergence of the eigen-coordinates method. It is a fine and powerful tool for a structural study of a signal allowing to see more than what is possible using methods of modern applied statistics. The article focuses on practical use of this method and sets forth programs in MQL5. It also deals with the problem of function identification using as an example the distribution introduced by Hilhorst and Schehr.