Performing a "large" backtest - which VPS is suitable?
Taewoo Kim last edited by Taewoo Kim
I have a test case where I'm testing combination of 5 variables with about 7-8 variations.. so between 5^7 and 5^8 scenarios (using optstrategy)
I have a pretty decent laptop (intel i7 + 12 gig memory) but it takes way too long. I tried splitting the tests into 6 and launching them separately onto 8gb ram VPS on digitalocean (that claim 4 "CPUs" => not clear if vCPU or physical). They are even slower than my machiine ( i ran them over night - 8 hrs -
and spit out < 100 results per vps).
As far as optimization goes.. i'm using sklearn in algo and pandas to feed cerebro . I made sure I pickled everything and load pickle as necessary. But that's about it. I specified "maxcpus" to match that of the VPS.
As far as passing data, I'm passing 1 year worth:
- first data (data0) is pickled pandas data frame
- second data (data1) is the same, resampled at higher timeframe
I am launching multiple tests with different time frames (1min / 1 hr, 15 min / 2 hr, 1hr / 1 day... you get the idea). One thing I noticed was that with a year's worth of data with optstrategy, there's a SIGNIFICANT delay between cerebro.run() and the first strategy.next() call. Where is the delay coming from and how can I speed it up?
I've read the optimization post... and from htop, it looks like CPU is maxing out before ram ever even hits 50%
Any ideas on server / speeding it up?