The 'fight club' of quant coding languages competing with C++
When it comes to quantitative finance, the name in everybody’s mouths is C++. Some love it, some hate it, but it’s incredibly widely used when you're building a high speed trading platform. Languages like Rust have been touted as the C++ killer but none have yet been up to scratch.
There’s a language that’s gone under the radar, however. It’s a language not even included in the Stack Overflow survey. According to one Reddit user, “hearing about it is like hearing about fight club.” For those that don’t know, it’s a language by the name of Ada.
What is Ada?
Ada is primarily known for its application in defence, for which it was created in the 1980s. Adacore, a software solutions provider specializing in the language have over 80 clients in that field, with other major areas including avionics and space.
In amongst these highly industrial companies are just two in the finance industry. They include investment bank BNP Paribas and proprietary trading firm Deep Blue Capital.
The French bank’s support for it indicates a greater appreciation for the language in France, which makes sense given that the country makes up 25% of European defence capabilities. That the creation of the language was led by French computer scientist Jean Ichbiah surely plays no small part either.
Deep Blue Capital have stated clearly their intentions behind the use of Ada in a press release. Given that ‘their business requires their computers to run continuously’, they need software that’s “efficient and reliable”. Using Ada means that their system “is immune to issues like integer overflow that plague systems developed in other languages.”
What appears to make Ada so useful, then, is its safety. If it can handle military operations and space shuttle launches, it can probably handle a hedge fund.
But just because a language is effective doesn’t mean it’s good to code with. What do the developers have to say about it?
Ada for Developers
Robert Tice, former lead of technical account management at Adacore, describes Ada it as a “bit of a departure from the normal programming workflow.” As a C developer, he notes that a big difference for Ada is that “the developer spends more time specifying than implementing.”
However, quantitative trader Andrea Ricciardi, who spent over five years at Deep Blue Capital, is highly praiseworthy of the language. Ricciardi tells us he really enjoyed writing in Ada, "as it's very safe." This is effective in trading: "Just like you don't want a plane to crash when errors occur, you don't want to risk losing a lot of money if an error occurs."
Ada has another enormous advantage for developers. "It's easier to learn than C++" Ricciardi says. While it is much harder to define things like probability types in them, "Ada has type ranges, which are dynnamic checks on the range of the type."
Ada code is easy to read and understand. Ricciardi says this because "the specification of a package is split from its body as two separate files." He adds that this makes things "much clearer as you don't need to know how a program is implemented in practice."
However, while Ada is good for quant funds, it might not be good for the really high speed quant funds or trading houses. Ricciardi says its safety comes at the cost of speed and for those that really value every millisecond, that could be a dealbreaker.
Ada may not have universal applicability, but when it’s needed, it’s very good at what it does. That’s what makes it such a secret weapon.
Have a confidential story, tip, or comment you’d like to share? Contact: email@example.com in the first instance.
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.)
Photo credit: eFinancialCareers/Dall-e