Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Event Driven Backtesting Engine Speed

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.

like image 650
SimonZ Avatar asked Dec 07 '25 06:12

SimonZ


1 Answers

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.

like image 172
Samuel Utomo Avatar answered Dec 09 '25 18:12

Samuel Utomo