Hacker News new | past | comments | ask | show | jobs | submit login

Sitting at the offices of an HFT firm here.

I think there's more than one kind of fast. There's development speed, and there execution speed. Both are important.

I don't know what qualifies as HFT these days, but a loose definition is people who trade more often than once a day. That's still a whole lot of different people.

At one end, there's textbook, pure footrace arbitrage. You something offered at 100 on one exchange and bid 101 on another. You rush to do them both. This is possibly the most obvious strategy ever, and the only thing that matters is how fast you can get those messages to the relevant exchanges.

On the other end, there's more intricate stuff like statistical arbitrages (a wide category), where there's more than one way to skin a cat. Some principles are known from finance 101, but your implementation will be slightly different to other people's. You still want to execute fast, because the opportunity may not be there forever, but it's not like every time you seen an opportunity you know it's first come, first served.

My sense is that those closer to the former will tend to use c++ over JVM. Most people are not going to have the time to carefully test what's faster, and c++ has the reputation as the thing that will be faster.

Similarly, JVM languages have a reputation for being faster to code in. As strategies get more complex, you need code agility. There's a lot of changing things up when you're writing strategy. Of course, results vary, but if you're building a strategy platform, you probably go for JVM.

But that's just what my gut feeling tells me. I've only met the people I've met, and it's not that easy to find public info on just what people are getting up to. I'd love to hear what kinds of strats are running on Azul.




It's been a while since I was working in HFT, but the HFT firms making the most money were all using Java predominantly. Yeah a lot of firms use C++ but I think that's more because of myth than actual benefits.

Pure simple arbitrage is a race to the bottom very quickly, and it's very difficult to remain profitable with those sort of simple strategies regardless of what language you use. Maybe FPGAs and radio networks could let you make money off of simple arbitrage (someone must be making money from it). C++ isn't going to give much advantage over Java with GC disabled.


I'm at a Denver based HFT firm, we are all Java. We do options market making, triangles on currency futures, calendar spreads, etc.


Can you give some insight into what kind of thing they're doing?




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: