Why are banks suddenly so into open source software?
Investment banks and hedge funds are normally very secretive organisations, carefully guarding the proprietary data that they view as key competitive advantages. Try and plug your USB stick into a work laptop, or email an attachment to your home email address, and it won’t be long before a team of compliance, tech and HR people are standing around your desk (or nowadays in a zoom call). You’re expected to keep secrets even after leaving. Non-disclosure agreements are par for the course, and at many hedge funds especially lengthy non-competes are compulsory.
History suggests firms are very willing to go to court if required to protect their secrets, and some will go even further: in 2009 Goldman Sachs had a former employee arrested and ultimately jailed on charges of stealing their proprietary software. So you might be surprised to hear that Goldman have recently released an in-house language, Legend, on an open source basis.
In fact it’s quite common for financial businesses to release software as open source, or contribute to existing open source projects. Of course they will never be as prolific as pure tech firms, like Google which lists 70 open source projects including Android: the operating system that 75% of smart phones run on. But plenty of banks and hedge funds have active open source projects.
Unsurprisingly, quant funds are even more likely to be involved with open source. The key python data library Pandas was spawned by hedge fund AQR. London based fund AHL, my former employers, also have several open source libraries. Another fund, Two Sigma, has eight open source projects and has contributed to several others.
On the sell side Goldman has dabbled in open source. There are currently 16 projects on their public github page, but the grandiosely titled Legend is an order of magnitude larger. JPMorgan and Morgan Stanley also have an open source presence.
So why do these firms, that normally protect their secrets so carefully, happily release their source code into the wild? Open source software has many clear advantages for smaller firms: it gets you a team of peer reviewers and testers at no cost. But financial behemoths have large teams of developers, and hordes of software testers.
There are a few reasons why a firm might choose to open source their software, and it depends very much on the type of project that has been released.
Many of the projects released by firms fall into the category of ‘handy tools’, rather than business critical logic. These tools are generally useful, but don’t contain any ‘secret sauce’ that could give other companies a competitive advantage. For example, the open source projects from hedge fund Man Group include a visualiser for pandas data, and a tool for productionising Jupyter notebooks (a popular tool for data scientists). Both are very useful for anyone working with data in python, but hardly top secret trading strategy code.
So there is almost no downside in releasing such code, but plenty of upside. Firstly, it’s great marketing. Trumpeting an open source project is a great way of raising your profile, although it’s unlikely that Goldman Sachs – the most famous, and infamous, investment bank in the world – is lacking in name recognition.
It also looks good: surely a bank that is willing to release code for free can’t be all that bad? Of course, few potential clients will check out a firms github page before signing up. But plenty of prospective employees might. A top computer science graduate, considering their employment options, will look more favourably on a firm that has an open source presence. More experienced developers working in tech, considering a move into finance, will be happier if they know they can continue to contribute to open source.
Indeed, quite a few open source projects are explicitly designed for recruitment purposes, including the Battleships game at Morgan Stanley, and Crazy Cricket from BlackRock.
However open source isn’t just about useful tools and games for recruitment. It’s also about creating common standards. If many firms are using the same software, or at least a common API, then it’s easier for them to pass data between them. This makes it easier for banks and funds to work with suppliers of data (like exchanges), and their own customers, as well as with competitors. The Legend project is definitely in this category. FINOS, the Fintech Open Source foundation, is sponsoring Legend; and it has several other high profile cross industry projects.
These kinds of projects are particularly common in the blockchain community, which has open source in it’s DNA (the blockchain protocol underpinning crypto currencies like Bitcoin is open source, and couldn’t function otherwise).
Although it might seem unintuitive to make it easier for your competitors to use a common platform, there is at least one advantage. If you are the first mover in an industry-wide initiative, then you get to control the standard. Although anyone can contribute to an open source project in the form of ‘pull requests’, these have to be approved by the project owner.
Of course sometimes you don’t have any choice about open source, if there is external pressure in the form of regulatory or legal requirements. As an example, the UK open banking initiative is a government programme to make it easier for start up fintechs to compete with established banks, by making their customer data accessible.
It seems likely that we’ll see more financial open source projects in the future. But if you are waiting for someone to release their secret trading strategies on github, then I wouldn’t hold my breath