MT4 is not muti-threaded . . as far as I have read and in my experience so far . . . If you get a quad core CPU and have Hyperthreading enabled you will have 8 virtual cores ( 4 real ones). You can run 4 x MT4 terminals and each will run at 4.5 GHz . . . these 4 MT4 terminals will run on all the cores, Windows and the CPU handle how the work that each MT4 terminal is doing is spread across the cores . . . it is nothing to do with MT4.
I tried running recently with and without Hyperthreading . . . Hyperthreading seems to be beneficial, even for MT4.
it seems not on the surface, but it is threaded during runtime in accordance to scripts, experts, etc.
Scripts and experts work in their own thread. Custom indicators work in
the main interface thread. If a custom indicator has been called with
the iCustom() function, this indicator works in the thread of the
program that has called it. Library (imported) functions work in the
calling program thread, as well.
I am learning MMT4 also.
When I backtest on MT4, I see about 4 cores running(Mine is i7 3770) But RAM is stay still at 2.34 GB used :(. any trick to boost the Ram used?
By the way, since my strategy is set and forget on H4 and D1, so I don't worry much about tick-by-tick. All I need is H/L/O/C.
I find it ways faster to test on other statistical software.
One test take 1 hour on MT4 can be done in a matter of less than 3 minutes on those stat software.
Just my 2 cents.
I will try to make a drawing showing what i mean. it makes it faster for you to understand.
okey here is a drawing showing what i need
hope it is at use for you.
see attachment please
I went down this rabbit hole i.e. overclocking i7 to 5GHz to speed up backtesting and etc. After 3 months and several thousand of dollars, I came to the same conclusion i.e. skip ticks testing. Here are the reasons why:
1) If you properly code your EA, the ticktesting and the open candle test will yield the same results within 5% to 10% accuracy over 12-year period.
2) You can have 17 years of 1M data vs only 12 years of tick data.
3) If your EA is sensitive to tick testing, then it will be sensitive to different broker price feeds. You will then have other headaches.
4) You can have faster optimization with open price.
Anyhow, I can list 10 more reasons but it is up to the individual. You know that you get it right when you have a system running for more than 20 weeks - see here https://www.mql5.com/en/signals/77991