"I'm a systematic trader. Here's how I use Github"
If you work in finance outside of a role which involves coding, it’s unlikely you’ve used GitHub. In fact, I suspect the first time most folks heard of GitHub, was when Microsoft bought them last year, for $7.5bn. Even for Microsoft this is probably not exactly small change...
So why exactly is GitHub such an important resource for developers and why does Microsoft think it’s so valuable? GitHub is basically the most important code repository for open source code on the web and is bigger than most.
GitHub is built on top of the Git version control tool, so you can see how code has been changed over time. If you do any coding whatsoever, I’d strongly recommend getting to grips with version control and Git which can literally be a lifesaver, to rollback changes which break your code.
As a systematic trader, there are several ways I use GitHub. Firstly, I use it to discover open source libraries. Before I do any project, I go on GitHub to see what type of similar libraries are out there. In many cases, rather than bothering to recreate the wheel, if I find something close enough to my use case on GitHub, I’ll use that library instead. I can judge how good the library is by several metrics, such as how many stargazers it has (which is like a bookmark) and how many times it has been forked (people copying and modifying the library under their own GitHub username. You can also see how often the code has been updated to see if it is being properly maintained, and also look at the code itself to see how well it is written (or poorly written it is).
I also use GitHub to publish my own finance open source code libraries to the community, such as finmarketpy. Users comment on my code, pointing out what features they’d like and also flagging any bugs they find (which is obviously very valuable feedback for me).
GitHub makes it easier to collaborate when writing code in a team, as any changes are marked with the users who added them. Think of it like Word with track changes enabled, but much more powerful. When I know lots of people are going to look at my code on GitHub, it also acts as a powerful incentive to make sure my code is readable and written properly!
However, GitHub isn’t only for open source projects. GitHub can also host private code repositories, so I can use it to backup and host my own client projects. Of course, I could create my own code repo on my own computer, using Git, but it’s just easier to use GitHub. Plus, it also helps that it’s all backed up and I’m already used to using GitHub for my open source projects. It also makes it easier to work with clients when I share code with them on GitHub, so they can track my changes.
If it sounds like GitHub could be useful for you, I’d also take the time to check out similar sites like Bitbucket. There are differences most notably in the pricing but also in the functionality.
Saeed Amen is the founder of Cuemacro. Over the past decade and a half, Saeed Amen has developed systematic trading strategies at major investment banks including Lehman Brothers and Nomura. He is the author of Trading Thalesians: What the ancient world can teach us about trading today (Palgrave Macmillan) and is currently co-authoring The Book of Alternative Data (Wiley) with Alex Denev. Through Cuemacro, he now consults and publishes research for clients in the area of systematic trading. He has developed many Python libraries including finmarketpy and tcapy for transaction cost analysis. His clients have included major quant funds and data companies such as Bloomberg. He has presented his research at many conferences and institutions including the ECB and the Fed. He is also a co-founder of the Thalesians.
Have a confidential story, tip, or comment you’d like to share? Contact: email@example.com in the first instance. Whatsapp/Signal/Telegram also available.
Bear with us if you leave a comment at the bottom of this article: all our comments are moderated by human beings. Sometimes these humans might be asleep, or away from their desks, so it may take a while for your comment to appear. Eventually it will – unless it’s offensive or libelous (in which case it won’t.)