Ready Trader Go - European Market Making competition
This is a one month market making competition organised by Optiver where every weeks we had to submit an autotrader to maximize our P&L in a tournament against other teams. There were 350 teams, made of 1 or 2 people. Our team name was Shapeshifters.
Once the competition started, we divided our tasks to approach the problem from different angles: simple heuristics executed with minimal latency, and a more complex model aiming to capture the very-short-term dynamics of the market that was being simulated here, accompanied by custom data visualization tools to efficiently iterate on our submission as the competition progressed. We were operating under deployment constraints: few whitelisted external libraries (Boost in C++; numpy, pandas and scikit-learn in Python). Approaches that would have been very simple to implement without restrictions on the available libraries thus became more complex. We have implemented various strategies, both based on quantitative finance principles, and related to optimizing our specific implementation. From machine learning to using advanced C++ features to rewrite Optiver-provided code, to optimizing Boost.Asio’s Future executors, we explored as much of the available surface as possible to improve our performance, retaining only what our tests showed to be relevant. Our final submission was relatively straightforward, but very effective, with a net profit at the end of the simulation more than twice that of the 2nd best team. In addition to the satisfaction of a job well done, our victory came with a 30,000 euros prize to share between the two of us, and recruitment opportunities at Optiver.