I'm current developing an event-driven backtesting engine in Python. I would like to have an idea about how fast a high speed backtesting engine should be, especially in Python. Right now, I can replay one year of 1 min bar data about 10 hours.Is it fair to say the speed now is acceptable?
I know there are some open source backtesting engine on Github, like Pipline. I don't really know whether it is event-driven , because I did not play around with it before.
Anyone has a good idea of how fast a good quality event driven backtesting engine should be ? Thank you so much for your help.
That's terribly slow. I run backtest on 350k+ min bars, including multiple signal generations, portfolio optimization, rebalancing, and execution priority algorithm, in around 40 mins. Pure python, no pandas, jit, or cython.
IMO, it will depend a lot on the level of sophistication and complexity on the many of your moving parts.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With