Software development and coding is at the forefront of technology. The technology behind Big Data and AI are emerging in most industries and sectors. As we transition to a more tech-based world, coding will become a fundamental skill set.
From an investor’s perspective, this is no different. Many traders have been using software programming since the 1990s to develop an edge in the markets. Algorithmic trading and software can help traders quantify their systems and remove emotion. This leads to improved risk-adjusted returns and profitability. Typical programming languages include C++, Java, C#, Python, and R for finance. You can find out more about the coding languages one should learn as an aspiring trader here.
Why learn to code?
Coding is a versatile skill with many benefits. Many job adverts now request some basic level of understanding of coding. Careers in trading require knowledge of programming for their roles. Much of institutional finance on both the buy-side and sell-side utilise algorithmic trading. It now makes up an entire field of finance - quantitative finance. This field uses computerised mathematical models managed. It was pioneered by Jim Simons, of Renaissance Technologies (RenTech) in the late 1980s.
Quantitative finance now exists in three main use cases:
Order execution – used in high frequency trading (HFT) to make thousands of trades per second.
Arbitrage – purchasing and selling an asset to exploit a price difference between two markets.
Trend following - a rules-based trading system which follows a trending market or asset class. This is the ultimate example of buying low and selling high.
Quantitative finance of this nature is a front-office role, where the software engineer or trader will develop and fine-tune the trading system. Back office roles will develop and maintain the systems used by the bank or fund.
More recently, HFT has taken a darker turn, popularised in the book Flash Boys by Michael Lewis. Firms like Citadel Securities have upended financial markets in recent times. These firms trade the order flow from exchanges, executing thousands of orders a second. They are usually located inside a computer as near the exchange as possible. Oftentimes, inside it! Citadel securities is touted to have booked $2.36Bn in H1 2020, according to Bloomberg Quint.
A very simple example of algorithmic trending would be to trade moving average (ma) crossovers. When the 50ma goes above the 200ma, this could imply a buy order, while the 50ma dipping below the 200ma could imply a sell order. This type of strategy can be programmed using code because it can be quantified using rules. The trader does not need to use discretion on the entry/exit and can remove emotion and psychology from the trading.
Benefits of learning to code:
Learning to code has many benefits, some of which include:
Improved problem-solving skills
Automated personal tasks like email and file downloading
Calculated statistics for your stock portfolio
Developing your own proprietary trading system
Coding is a powerful skill set that will benefit you both personally and professionally. It can help us to think about problems differently while helping us to save time. For those active in the markets, it can help us to define our trading strategies, refine a discretionary strategy, and give statistical insight into a portfolio.