Do yourself a favor @earth_imperator... polish up your résumé and take the first halfway decent job you can find at an exchange, investment bank, broker/dealer, or big hedge fund. Then come back to us in five or ten years and tell us how interesting and sexy HFT is. You know who Brigitte Bardot is, right?
On most venues, order messages are sent over a TCP session while data messages are sent over UDP multicast. The trading participant can send or receive these messages through the specialized NIC and its userspace networking stack. Besides software optimizations, this networking stack takes advantage of any hardware offload capability of the NIC, e.g. TCP/UDP/IP checksum offload. There are several ways that trading participants can integrate this networking stack. The most common way is to do nothing special with your trading application — just implement it with standard BSD sockets. Then you can invoke a proprietary application that comes with the NIC, which starts your trading application, and uses `LD_PRELOAD` to overwrite any standard Linux networking syscalls, steering those to the userspace network stack. Insodoing, all incoming data packets and outgoing order packets bypass the kernel are processed faster. Yes, some exchanges use this technique for their matching engine implementation. Broker-dealers like Deutsche might use for any of their electronic trading activities, e.g. their algorithmic execution desk This is purely on client side so anyone can do it on any trading venue, so long as they're executing through a physical server. Almost half of our engineering team has a HFT background.
That's a great marketing blurb but let's face it... since: "there is no single definition of HFT" (1) basically anyone who trades and spent a few hours optimizing their software for speed of execution could make the same claim. The term "HFT" is one of the most used and abused in the Wall St. zeitgeist I've ever seen; hollow and almost meaningless in today's age where everyone carries a supercomputer in their pocket.
@Databento, thanks for the useful info. Which Linux library for this can you recommend? I have experience with low-level TCP/IP programming incl. raw sockets. but it was about a decade ago...
BB I of course know I indeed was interested at DB, asked their HR dept to give me a contact for some basic initial Qs by me to them. They said they have forwarded my request to their "Fachabteilung" and will inform me as soon as their dept replies. This was about 2 weeks ago... Still waiting for an answer from this Deutsche Bank in Berlin... But I'm not the slightest surprised... The job ads could be unreal, just marketing ads....
Did some online research: https://en.wikipedia.org/wiki/Express_Data_Path " XDP (eXpress Data Path) is an eBPF-based high-performance data path used to send and receive network packets at high rates by bypassing most of the operating system networking stack. It is merged in the Linux kernel since version 4.8. ... The idea behind XDP is to add an early hook in the RX path of the kernel, and let a user supplied eBPF program decide the fate of the packet. The hook is placed in the network interface controller (NIC) driver just after the interrupt processing, and before any memory allocation needed by the network stack itself, because memory allocation can be an expensive operation. Due to this design, XDP can drop 26 million packets per second per core with commodity hardware.[4] ... Along with XDP, a new address family entered in the Linux kernel starting 4.18. [9] AF_XDP, formerly known as AF_PACKETv4 (which was never included in the mainline kernel), [10] is a raw socket optimized for high performance packet processing and allows zero-copy between kernel and applications. As the socket can be used for both receiving and transmitting, it supports high performance network applications purely in user space. [11] ..." See also DPDK: https://en.wikipedia.org/wiki/Data_Plane_Development_Kit
We mean it in the conventional sense: firms doing at least 2+% ADV in any given market. Roughly the top 30 firms in the US/Europe by trade frequency.