Who is crucial to the success and viability of a hedge fund’s operations? The portfolio managers, who are smart cookie-like and decide whether to sell or buy, are the most important. What if computers make the decisions? Who are the key players in this scenario? Is it the people who design the complex algorithms, usually labeled either as systematic/algorithmic traders or quantitative portfolio managers? Or are they the programmers (the “quantitative developers”) who code them? What’s the difference?
Both of these jobs are crucial in practice. The quant developer, who designs the software, will not do much without the algo designer. Without a programmer, a theoretically profitable strategy is not possible.
Software engineers and quant trading types work together in most banks and hedge funds. You won’t see the traditional bureaucratic waterfall model of development where each system is developed in detail and then passed on to an implementation team. It’s a collaborative effort where a quant trader writes the prototype code for an algorithm to backtest and gradually transform into a solid production strategy.
They work closely together, so the skills of the systematic trader and quant developer are very similar. Both must be able to code. You would expect a software developer should know more than just a few programming tricks. But, why must systematic traders code?
First, systematic traders must test their ideas. Although it can use commercial programs to backtest trading strategies, few hedge funds will use them. Backtesting is done in a proprietary environment, where programming is required.
Second, code allows the trader and programmer to communicate in a common language. It makes joint development and communication much more accessible. Programming will give quantitative traders a better understanding of what is possible and how to implement it.
Programmers should have a basic understanding of the markets and the motivations behind any strategy. They also need to be able to understand the data used in trading decisions. If traders have to explain to programmers that U.S. bond prices are quoted as fractions, they can become very frustrated.
It is therefore not surprising that elite quant developers are highly skilled programmers and have a deep understanding of financial markets and algorithmic strategies.
The strategy being used will determine the precise combination of skills needed. High-frequency trading is at one extreme. The success or failure of a fund is almost entirely dependent on the software and hardware implementation. This space is often dominated by quantitative traders who do their programming. It is possible to build strategies within Excel spreadsheets that are automatically updated and manually traded. It allows for slower timeframes.
The top degrees for quant developers and systematic traders
Developers and traders may have similar educational backgrounds. These generic quantitative degrees, which can be in engineering, maths, or physics, are excellent preparation for software engineering. They are also common among traders who work in systematic trading firms that rely on data analysis to identify winning strategies.
A computer science degree, however, is excellent preparation for programming computers. Still, it is not very helpful if you are looking to trade algos (other than in the high-frequency space). While studying finance or economics at university can be very helpful for quant traders who are interested in becoming developers, it won’t give you the coding skills that you need to become a professional. These more specialized degrees will provide you with a better chance of being classified as either a trader or a developer.
If you’ve completed the appropriate degree, you can then work on other skills. Both traders and junior developers need to be able to program. It will allow them to have a good understanding of the financial market and help them to develop their strategies. You will need to spend more or less time in certain areas depending on the path you choose. A quantitative trader doesn’t need to learn the intricacies of code optimization or GPU programming. A software engineer would not be expected to interpret the results from a factor regression on a basket of U.S. equities.
My experience shows that there is a lot of programmers out there who want to be systematic traders. However, very few quant traders would prefer to work full-time as coders. There is some good news for wannabe traders who are stuck in the software development industry. It’s possible to move from programming up algorithms to designing them. Many programmers that I knew in my career now develop systematic strategies for a living.