Ask HN: What programming languauges does the High Frequency Trading Firms use?
I have recently read an article about IEX and brad katsuyama on bloomberg website.And have also read the book 'FLASH BOYS' by michael lewis. after reading about all this i wanted to know what programming languages does these guys in big banks use??
12 comments
[ 15.9 ms ] story [ 960 ms ] thread- C++
- C
- Java
- Verilog/VHDL or what ever language your FPGA tooling requires.
As for support tooling then python and R are very popular.
It's important to note that its not only speed that dictates what you use in HFT, the shear amount of data you need to handle also dictates what you use. As an example C++'s inplace new operator helps for things like object pooling.
I'm not UHFT or HFT and we can get by with F# and C#. We are at the stage where we have to think about our data structures and memory access patterns but we aren't throwing away readability and maintainability just to get the best possible performance.
From my experience, its much more typical for funds to target performance around this level than the HFT level.
I guess it should be said that you can name almost any programming language and you'll find that someone is using it and claiming to be an HFT shop, ie someone will probably mention OCaml due to Jane Street.
This question http://quant.stackexchange.com/q/12618/743 on the quant stack exchange shows that pretty much every language gets used.
Just one awesome fact...they structured their code such that they only have one GC event a day (and it's tuned to happen at night). Watch it, pretty cool compared to anyone doing plain vanilla java dev at an enterprise.
https://www.youtube.com/watch?v=iINk7x44MmM
Aside from this, you can verify this by just looking at the job postings.
1) It was added well after I had already added an answer that included C++
2) it was only 2 words with additioanl information meaning that it didn't really add any value to the question.
I have no doubt you probably know the HFT scene and could probably add some color to people outside of it, but your first answer didn't really help in any appreciable way and this was probably why it was down-voted.