SigTech says Python is set to remain the programming language of choice for backtesting investment strategies, as new research reveals the world’s most popular systematic trading language is set to become even better.
SigTech says Python is set to remain the programming language of choice for backtesting investment strategies, as new research reveals the world’s most popular systematic trading language is set to become even better.
Some developers and researchers transitioning from more traditional compiled programming languages like Java, C++ and C often criticise Python’s runtime performance. However, Sigtech says with careful optimisation, speed need not be an issue.
In 2013, Sigtech decided to build its systematic investment strategy platform from the ground up in Python. To ensure optimal runtime of its platform, it continuously monitors strategy runtime performance benchmarks for its codebase. These benchmarks are critical in maintaining the current performance status quo and to protect the framework against sub-optimal code changes.
Since the rise of cloud computing, Sigtech sees even more compelling reasons to continue to run its framework in Python. It says some parts previously coded in Python have been moved to a cloud computing infrastructure or were optimised using Cython. This has already improved Sigtech’s backtesting engine performance by 2x across the board, and in some areas, even greater improvements have been seen: for example, in equity universe construction where the cloud compute delivers 10x improvement compared to an equivalent Python implementation.
Historically, the Python core developer community did not focus on improving runtime performance because Python was typically used in situations where ease of writing code outweighed speed. As the applications of Python have grown (such as backtesting in Python), Sigtech says speed and performance are becoming more important, and accordingly are now being focussed on by some of Python’s most influential programmers.
SigTech users have already seen a pronounced improvement in terms of speed over the last few years, and with these upcoming changes to Python, it expects this trend to continue.
A new paper by SIgTech looks at the runtime for a 10-year backtest of a systematic strategy using minute bar data and reveals trading has decreased markedly over the last few years. Within another two years, it expects the backtest to be complete in under two minutes – an improvement of >95 per cent.