The Future of Python in Commodities Trading
Over the last year or so, the requirement for Python developers within the commodities trading market has boomed, specifically within the EMEA markets. Global commodities trading businesses, niche merchants, PaaS and SaaS vendors for the commodities markets, and majors globally have begun rebuilding risk, analytics, and pricing platforms and tools in Python. The shift away from the traditional object orientated programming languages, such as C# and Java, have been pronounced, with many firms utilising these languages for legacy platforms while focusing on newer technology stacks for their new tooling.
Language Choice in Various Trading Players
Traditionally, commodities trading players built risk platforms and trading tools in C# and Java. Often, in larger firms or firms that had grown through mergers and acquisitions, you’d have businesses that used both. Mercuria, for example, utilised C# and Java, with the language focus being dependent on whether the technology supported the front office or the middle or back office. BP utilises Java for their oil desk, while using C# in their gas and power units. Castleton Commodities similarly utilises Java and C#, adopting Java as a key oil language when acquiring Morgan Stanley’s oil book where their legacy technology was utilising the technology. Their physical gas acquisition from Munich Re, in 2019, saw C# become a more prevalent language within their gas portfolio.
Python, until recently, was a language used for scripting or used as a secondary language for commodities trading players. There were, of course, a few exceptions. Citadel has been using Python as a primarily language for over five years; Gazprom M&T’s derivatives desk has utilised the language for over three years, and their Digital Trading team began utilising the language before finding that, for their needs, C# was more useful. Millennium utilise a hybrid of Python and C++ across their systems, dependent on asset and platform focus.
The banks have utilised Python for years, on a number of cross asset platforms, including JP Morgan’s Athena, Bank of America Merrill Lynch’s Quartz, and Goldman’s SecDB (which actually primarily uses Slang, a single-threaded language similar to Python in a way). Famously, JP is currently in the process of rewriting significant parts of the Athena code as the Python Software Foundation stopped supporting Python just over a year ago.
Now, however, Python is gaining traction across various businesses. Businesses that traditionally built in Java or C#, and sometimes C++, are looking to convert parts of or entire swaths of their technology framework into Python. If one were to simply look at the number of Python developer mandates coming from commodities houses, advertised on LinkedIn, you would see hiring at Gazprom M&T, majors like BP (their A1 trading team utilises Python heavily), recent entrants to the market including Cobblestone Energy, banks expanding their commodities desks including JP Morgan and Goldman, analytics platforms serving the commodities space like Beacon Platform, hedge funds such as Balyasny, and the list goes on. Beyond that, you have the firms that aren’t advertising, and are using Executive Search firms to cut across the talent market. Suffice to say, it’s a hot market.
The Talent Gap
Exceptional development talent in London, Geneva and Zurich is always difficult to secure, regardless of the technical languages utilised. These markets are awash with brilliant opportunities for developers, both within and external to the commodities markets. Competition is not limited to commodities traders, but these places are hubs for startups and Unicorns, major technology firms like Microsoft and Amazon, and trading players across multiple asset classes.
Python is a leading language across the start-up space, also normally incorporating some of the newer technologies by deploying in cloud-first environments (AWS, Azure and GCP primarily), working with Node, JavaScript, React, and various new technologies in continuous integration and continuous development pipelines. The lure of businesses with strong work-life balances, the ability to work remotely, and actively developing technologies themselves (like Amazon’s Amazon Web Services or Google’s Google Cloud Platform for example) is also attracting developers – Python, for example, is recognized as an official language of Google.
In more traditional trading businesses, firms from every asset class are utilising Python on desk and in their platform builds. This includes rates, currencies, fixed income, equities, bonds, and beyond. Citadel Securities, one of the globe’s leading electronic market maker, has been on a hiring spree. So has its sister company, hedge fund Citadel. The Python skill set here is imperative, though the bar to entry quite high.
Demand for Python developers is massively outstripping supply. Add in other requirements like the ability to work without business analysts, the need to be commercially minded, exposure to cloud-first environments, the ability to contribute to strategic projects, etc., is making recruitment tough and expensive. Python has not been an attractive technology in Commodities for an extended period of time, which means that the skill set demanding 5 or 10 years of experience normally means it needs to come from outside the asset. Python developers with exposure to Commodities, however, are commanding record-high salaries. Why? Because they have a plethora of options outside the market, including funds and technology companies willing to reach guaranteed remuneration packages beyond normal levels. Alternatively, there are offerings reaching six figure salaries that carry less stress than a trading floor, lower time commitments, and more flexibility. This makes the sell of a trading floor more difficult.
The simple fact of the matter is, if a developer is commercially facing, working with Python, and willing to move, it is likely they’ll have multiple offers on the table come decision time. Employers will have to start getting creative in how they move forward – what can you provide that another client cannot? Flexible working, alternate incentives, and guaranteed bonuses based on KPIs and milestones are some of the ways clients are getting creative. Other incentives include greenfield projects with team builds and remit to hire, bonuses tied to the commercial desks, or reporting into the portfolio managers and traders.
Acquiring this talent is not impossible, but it does, sometimes, take a little bit more time and a little bit more effort. Working with a specialist headhunter is a way to not only understand what talent is available in the market, but also to attract passive individuals with whom the headhunter already have relationships. Beyond this, it also provides an insight into competitor analysis and benchmarking of increasing salaries beyond traditional payscales through a true partnership methodology. Working with a headhunter allows for clients to gain insights to their candidates’ motivations that an individual may not share with a prospective employer directly, and also helps them understand details beyond what is readily available on a CV. These things allow for clients to not only speak to the best individuals but have an increased chance of securing them by understanding what they need to secure and retain these in-demand skill sets.
For a better understanding of the market, and the changing technology space, feel free to reach out to Managing Director, Stuart MacSween, at stuart.macsween@prococommodities.com.
by Stuart MacSweenview my profile