Today’s article got a little “tabloid” title, because I have started the speed testing and I did not know how it will end up.
On Friday, August 10, 2018, we released a new version of StrategyQuant – build 108 (downloadable for full license owners HERE), where we managed to significantly increase the speed. Let’s look at how can StrategyQuant X quickly test strategies using two methods. Normal and modern.
Let´s begin with the testing conditions.
I tested everything on my personal computer with 56 kernels and 64 gigabytes of RAM. However, SQ had only 4 processor kernels, 4 gigabytes of RAM, and was installed on a regular disk (not SSD) to match with the computers that most users have at home.
First, we will perform normal method test, ie testing on accuracy M1. In this case, we monitor open, high, low and close prices on M1 ticks and we exactly simulate real price movements. We have data for 15 years.
As a second modern method test, we will use the advanced technology we implemented in StrategyQuant X. In this method, we are testing the strategy only on a given timeframe, so we do not look at M1. However, if the strategy passes the test and meets the conditions of the strategy with a high quality backtest, we will automatically test it with M1 accuracy and then we save it to the database.
The modern method is based on the fact that backtest is much faster at a given timeframe, and when the strategy meets the conditions, it usually has better results, almost never worse. That’s why we can afford to have the M1 precision test for the second step and the strategies that do not meet the conditions are therefore tested much faster.
What we will test:
- EURUSD strategies: M1, M5, M15, M30, H1, H4 and D1
- Strategies for two timeframes on EURUSD: M5 and H1, H1 and D1
- Strategies for two markets: EURUSD + GBPUSD, both M15 and H1
- All for MT4 and for both methods
Overall, we will have a nice collection of tests and we will see how fast the current version of StrategyQuant X is and we will get a comparison of the normal and modern testing method.
Test results for standard method:
The lower the timeframe is, the more trades are being made and therefore the slower the test. Therefore, with a higher timeframe we get a higher speed.
Results (tested strategies per hour):
StrategyQuant X can build strategies not only for one market, but also scan within more timeframes, more markets, etc. Therefore, let’s look at the results from this test, where we will combine two versions of EURUSD: low or high timeframes.
M5 and H1: 2600
H1 and D1: 6900
StrategyQuant scans 2 markets simultaneously, in this case EURUSD + GBPUSD.
The average is 5310 strategies per hour, which is a very good result. With that, you can test 127440 strategies per day without having to program, manually backtest or move your finger 😊. Now let’s take a look at the modern method of testing whether it is faster and if, then how much.
Test results for the modern method:
The modern strategy performs test only on the given timeframe (H1 for H1 only) and does not look at more detailed movements based on the M1 chart. This comes in the second step for strategies that have meaningful results on a given timeframe. This method is faster.
We test the same thing as in the previous case, so let’s just look at the numbers.
Timeframes (EURUSD market)
Results (tested strategies per hour):
Two timeframes (EURUSD)
M5 and H1: 3800
H1 and D1: 30500
Two Markets (EURUSD + GBPUSD)
The average is 17135 strategies per hour, an increasement of 209%! It is mostly visible at higher timeframes, at low (especially M1) the speed is limited by computer RAM.
Graphical comparison of the results of both methods:
StrategyQuant X is much faster. Building strategies, of course, is not just about searching them, with strategies we must work further. But a quick search saves us time and we find the strategy faster.