1.2. Why Should Traders Learn to Code?

Transcript


You might be thinking:

"I'm a trader, not a programmer."
"I work at a bank, not a tech company."
"Why on Earth should I bother learning to code?"

And that's a common train of thought! While this sounds reasonable at the surface level, I suspect you’re not that naive. In fact, I'd bet you've had "learn to code" on your to-do list for a while. It's unsurprising that people kick the can of learning new tech skills down the road, often due to fear, frustration, or a lack of time, but why do they write it there in the first place?

The real reason is because when you think a little deeper, learning to code is an fantastic way to advance as a trader. At a minimum, you're gaining a hard skill with tangible and widely recognized value. But what exactly is it that makes coding so valuable in trading? Off the top of my head, I can think of 3 reasons learning to code is essential.

1. It gives you total control over data and information.

If information is the lifeblood of markets, then the vast network of computer hardware and software powering the world's financial infrastructure are the veins in which it flows. You can think of code as a tool that consumes, analyzes, interprets, and reacts to all that information faster and better than any human. People are great at creative problem solving and horrible at ruthless execution, perfect detail-orientation and scalable efficiency.

When you think about it, by what process is trading alpha generated? The answer is simple: alpha is generated by consuming, analyzing, interpreting, and reacting to information better and faster than your competition. Clearly, a computer is the machine that does this better than any human ever could.

Another fun thought experiment is to ponder why Michael Bloomberg is worth $70+ billion. Well, in 1981, Bloomberg, then the head of equity trading at Solomon Brothers, recognized that software was going to completely revolutionize the financial world. His company invented and sells the single most valuable source of electronic financial news available, the Bloomberg Terminal, and is the reason he's so wealthy today.



A Bloomberg Terminal

A Bloomberg Terminal

The best source of real-time financial information on the market, one of these will run you $25,000+ / year.


Okay, so we've established success in financial markets goes hand-in-hand with success in acquiring and managing information. If that's case, then code is the ultimate tool to do it. A skilled coder has complete flexibility and capability in writing custom processing logic, transforming data, building models, performing analysis, and extracting actionable results from raw financial data. When you can code in Python, there are no artificial or random limits to the power of your computing platform like there are in Excel or Tableau. This skill makes you the ultimate master of your data and information.

2. It elevates your productivity through scale and automation.

Having the ability to code immediately elevates your capabilities as a trader or analyst to a level that's impossible to achieve by a human alone. For example, would you manually go to 100 websites to download 100 datasets, merge them together by hand in a spreadsheet, and do it every day at exactly 9 AM? Would even the most desparate team of interns do that? And would they do it flawlessly in under a minute? Of course not, but with code achieving this can be done trivially. And the one-time effort of a few hours of development provides you with an entirely new automated capability - the code itself is an asset to your workflow.

That example focuses on data collection, but there's another side to it that includes efficient and automated trade execution. Imagine that you want to enter a large position on an asset with poor liquidity. A common execution approach is time-weighted average price, or TWAP, where you divide your total size into chunks and send market orders at a fixed time interval until all the cash is deployed. Let's say your time interval is 5 minutes and you split your total size up into 100 chunks, then you'd have to sit at your computer for over 8 hours sending the same order over and over again!

What if instead you wanted to send orders in reaction to certain events, signals, or triggers? Obviously, being the first to correctly react to new information means a very high likelihood of a profitable trade. Again, these things are foundational to being a trader and easily achieved through code.

3. It multiplies your options, opening doors to a new world of opportunities.

What I'm about to say should maybe be taken with a grain of salt, and I'm going to acknolwedge that this is totally with loss of generality and not universal, but typically, if you are a trader your future career options are limited to being a more senior trader/portfolio manager. If you are an analyst, your future career options are: associate. These are excellent roles! But admittedly the options are only between a select few jobs (there's always business school!).

However, if you can code this changes immensely. If you want to work at a prop firm, you can now become a developer, researcher, or quant trader. If you want to work at a hedge fund, you can become a data scientist or simply the most sophisticated, data-driven investment analyst on the team. Or if you get burnt out and want to leave the industry entirely, a cushy 40 hours a week job for similar pay at Google or Facebook isn't completely out of reach anymore.

This all culminates into a strong case for learning how to code, but if you're still not convinced, consider what Bloomberg, Business Insider, and WSJ have to say about it:

From Business Insider:

If you want to work in electronic trading, you’ll absolutely need to know that Python is more than a reptile. And with an increasing proportion of trades happen electronically, familiarity with Python and other coding languages looks pretty imperative.

Most junior traders now come ready-equipped with coding knowledge. “A lot of the guys who are coming through now have learned how to code at university and have electrical engineering or computer science degrees,” says Nathan Haynes, senior consultant in quantitative finance at recruitment firm GQR. “Coding is second nature to them.”

From Forbes:

Before retiring from top-tier investment bank Goldman SachsMarty Chavez, the firm’s tech evangelist, predicted that it will be as important for traders to know how to code as "writing an English sentence." 

Over the summer, Goldman Sachs announced that the bank is hoping to recruit more than 100 engineers who will sit on the trading floor. Adam Korn, the co-head of engineering for Goldman's trading division, seeks coders, data scientists, engineers and others who can build better trading programs and help automate part of the bank’s trading business. Goldman is respected as the leader in trading-related activities on Wall Street. Its pivot toward tech hiring will certainly be followed by other banks.

The message is becoming crystal clear—if you want a job on Wall Street, you’ll need to heed Chavez’s advice and learn how to code.

From a forum discussion on Wall Street Oasis:

College Student: Do I Need To Know How To Code To Be A Trader? Is this really a necessary skill to learn to be a trade nowadays, or are there other skills that are equally, or more important to know?

Senior Portfolio Manager: This shouldn't even be asked. Yes you need to know how to code... I don't understand why it's so hard to just pick up a book or learn online. Is it pure laziness? Ask yourself this: If you were a senior trader or a desk head and you had to choose someone who knew how to code and someone who didn't... same education background... both had no trading knowledge.... who would you pick?

Complete and Continue