Hacker News new | ask | show | jobs
by amelius 1704 days ago
If your strategies were implemented in FPGA, they were probably not very complicated (considering the things you can do on a regular CPU).

Wouldn't markets function better if every participant had a reasonable amount of time to make decisions?

4 comments

It’s not always that straight forward. In the hft space you’re essentially always responding to 1 event, a trade, an order, a cancellation etc. Events are generally spread far enough apart that you can consider them independently (obviously not always, but often) So it doesn’t matter how complicated your model is, if you can pose the question “what would you do if X happened” to your model then you can prepare your fpga with “if X happens do Y”. As long as your universe of possibilities is tractable (which it often is) then an arbitrary model can have all latency sensitive events offloaded to fpga.
The part of the strategy that lives on the FPGA has to be fairly simple, but that doesn't have to be the only part of the strategy. You can do all sorts of deep and meaningful computation on a real computer, then export some settings for a simple event-driven model to the FPGA, updated many times a second.
As a retro computing enthusiast who does algo trading from my Commodore 64, I would very much like more time to compute my trades.
I'd love to read about you trying to persuade the exchange to let you put that C64 in the colo.
This is interesting. May I ask how do you do it from software poinr of view? As for CPU and memory for sure it is possible, but I'm more interested about how do you connect into exechange/broker?

Contiki, SLIP, PPP, or maybe some ethernet expansion ?

>they were probably not very complicated

They use linear models and soft cores. Plenty complicated for the kind of arb you could get executing 500ns tick to trade better than the next firm.