-
EAs : Don't do per tick what you can do per bar, or on open.
If you are waiting for a level, don't reevaluate, wait until price reaches it (or a new bar starts, and you recalculate.)
If you are waiting for an order to close, only look when OrdersTotal (or MT5 equivalent) has changed.
How to get backtesting faster ? - MT4 - MQL4 programming forum (2017) -
Indicators: Code it properly so it only recomputes bar zero (after the initial run.)
How to do your lookbacks correctly. (2016)
3 Methods of Indicators Acceleration by the Example of the Linear Regression - MQL5 Articles. (2011)
Or, reduce Tools → Options (control+O) → Charts → Max bars in chart to something reasonable (like 1K.)

- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
You agree to website policy and terms of use
Good Afternoon,
I would like to know what is the best computer set up for algorithmic trading.
I recently developed an algorithm but now I'm in the process of parameter selection which will require me to backtest 28 different currency pairs simultaneously. Ideally I would like to conduct this on every tick and use multiple indicators to filter out potential trades. I recently purchased an iMac 24 with 1TB and 16GB of unified memory although it is not processing historical data as fast as I thought. I currently use the Mac version of MT5 and downloaded every tick information through this platform. When using normal indicators with 'open prices only' I can backtest 12 months of data within 10 seconds although the moment I use custom indicators such as KAMA or Money Flow Index, it takes longer than 45mins. The weird thing is, other custom indicators don't slow the backtest at all like the Aroon and Efficiency Ratio.
How can I speed up the speed of these backtests? Specifically when using certIain custom indictors. Some of them don't impact speed whereas others make it take 1000x longer. Should I download Parallels and use the MT5 Windows version? Should I be using an SSD to improve RAM? Or should I purchase another computer? Are there other solutions? Or is this the best I can do?
Much appreciate the help in advance!