while backtesting, I've run into the problem that NT becomes unresponsive and to me it appears the problem is that it no longer functions properly once swapping occurs.
In order to locate the issue I've tested the SampleMACrossOverStrategy with following parameters and nothing else running:
Fast: 10;50;1
Slow: 100;300;1
Period: 1 minute
Instrument: ES
Time period: YTD, ~5 months.
Iterations: ~8000
RAM: 16 GB
CPU: i7, 4 cores 8 threads
Case 1. Keep best result#: 500
No problem at all, no swapping, no lock ups
Case 2. Keep best result#: 1000
ok
Case 3. Keep best result#: 2000
starts to swap and maybe one micro stutter
Case 4. Keep best result#: 3000
lock ups start past the half way mark but completes in 8 minutes, best estimate was 2 minutes. The delay was due to the lock ups and not iterations taking longer
I've started with a fresh workspace before each test in order for garbage collection to occur in case it matters.
Once swapping happens NT becomes unusable despite CPU utilization dropping to about 1 core.
The swapping did not occur until 4000-5000 iterations, which makes me wonder if results exceeding 3000 were really disposed of, but then again it was fine with 500.
Maybe the root of the issue is not on NT's side and the obvious solution is to add more RAM and test fewer cases.
It wasn't obvious that RAM was the source of the problem but the documentation mentions limiting the result size.
https://ninjatrader.com/support/help...a_strategy.htm
Comment