You have no idea how to actually write an informational comment rather than hinting at some received wisdom and greater general understanding without actually revealing any of it, wrapped in condescension which actually lands far of the mark and fails to address the points raised here, do you?
"Rather than buying Wigets-R-Us at $100/share, the HFT slips in with a, say, $99.99 offer to the seller, and offers you $100.01."
So, 2 possibilities, you don't say, but you are sending a limit order to buy at $100 or a market (or marketable limit, or fill-and-kill) order to buy at $100. Apparently, you seem to be suggesting that there is a seller in the market, presumably offering at $100. Now, you seem to be suggesting that the HFT sees your order before it hits the matching engine (nonsense) and also that they can somehow re-negotiate with the seller and get him to lower his limit sell to 99.99 (I'm not sure how, do they send goons around to kneecap him if he doesn't? All in the 20 milliseconds your order is on the way to the market?).
" and offers you $100.01"
...but let's assume that somehow the magic omnipotent packet-sniffing HFT knows your order is enroute to the exchange, can force market participants to lower their offers, now you're claiming that it can force you to buy at $100.01. Why didn't you send a limit buy at $100, if that's the price you wanted, you saw, and were prepared to pay?
>wrapped in condescension
If you want to write entire paragraphs about something you know nothing about, you're not really adding to the conversation are you? So you'll open yourself up to a little condescension.
Thanks, that's better than your first pass, though I'm still not buying the story. My social engineering effort worked though.
I'll freely admit I find this confusing. And that's with having studied this shit in school and worked in the financial industry (in trading no less).
There are a number of methods of getting inside or around the order book, most of which involve breaking rules. But the regulators aren't even playing catch-up, they're so far behind.
HFT is very time sensitive, operating at or within the 250 microsecond window -- that's the time a light beam takes to travel 75 km. So one way of jumping in on the order is being, say, a few thousand km closer to the exchange than some other trader.
As to limit orders (and you really haven't explained how the order book avoids this), by beating others to the trade on both sides of the order, the HFT can get in and spin the equity, taking a cut, or stealing your trade (you look to buy at $100, seller is at $99.99, HFT buys at $99.99 but finds a buyer at $100.01).
The point is that by inserting themselves between other traders, by virtue of speed, HFTs skim a proft. It's small (and was enabled largely by decimalization), but can be made up for in volume.
The saving grace is that the HFTs are up against one another (at least until they start colluding), so they're weaving complexity traps against one another that wear down the advantage. Though there's the risk of more flash crashes and other disasters resulting from processes they barely understand themselves.
You're still not getting it. You send your messages on a private link to the exchange. Then the exchange processes them (either puts an order in the order book) or matches a trade, and only then publishes that this has happened on the public market feed. At which point other participants can react.
This:
"So one way of jumping in on the order is being, say, a few thousand km closer to the exchange than some other trader."
...is silly. No one gets to jump in front of anyone. Being closer to the exchange allows you to react quicker to a public event, but not a private one (which you can't see). In fact, even if you could somehow see someone else's TCP packets departing, from point A to the exchange, and you were in co-location next to the exchange at point B, you'd still have to get the information in their packet from point A to point B, run decision logic on it, then dispatch your own orders to the exchange (point B to the exchange). Faster than their already in-flight packet could arrive. It would still be impossible. What you're talking about is a common public misconception, that somehow the HFT bogeyman sees your order before it arrives.
Relevant quote:
"He became convinced exchanges were providing such an edge after he says he was offered one himself when he ran a high-speed trading firm—a way to place orders that can be filled ahead of others placed earlier. The key: a kind of order called "Hide Not Slide."
Whether it is legal is highly questionable but it appears that exchanges indeed offer this feature to sophisticated traders.
Bodek is a failed trader, and one who apparently can't read exchange API manuals (here's BATS explaining it for him: https://www.batstrading.com/resources/features/bats_exchange...). Now he's trying to make money from sensationalism and poorly written books.
That aside, Hide not Slide orders are an interesting case. They exist only in US equity markets, and they're a great study in unintended consequences. US equities are quite fragmented (the same security can be traded on several different exchanges), so well intentioned US regulators introduced something called the NBBO (National Best Bid Offer), ostensibly to "protect investors" from getting a worse price on one exchange. What this meant is that different exchanges trading in the same product could never be "locked" - you could never have one exchange showing say 101 on the bid when another has 101 on the ask (because in theory then they are crossed and should trade). Pretend the tick size is 1 for following discussion...
This leads to a situation where every equity exchange in the US may be trading 100/102 (with an empty tick in the middle), but as long as one remaining exchange is trading 100/101, you aren't allowed to insert a bid at 101 on the other exchanges (since the interpretation of the rule is that this would be unfair on the resting 101 offer). But HFTs are all very keen to be the first to fill that 100/102 gap in the spread - to be the first on that new queue is an advantage since you get filled first. And obviously that one holdout exchange will soon get filled and the price will tick up. But the other exchanges legally can't accept a bid at 101 yet.
So exchanges started to either reject orders or "slide" them - you submit that 101 Buy and they slide it down to a 100 Buy. Which leads to this:
10 SUBMIT BUY@101
20 IF RESPONSE = "SLIDE TO 100" THEN DELETE, GOTO 10
All of a sudden the exchanges are being flooded with messages, as algos are pinging the exchange constantly wanting to put that 101 bid in. Which leads us to 'Hide not slide' - the exchanges promise to sit on your order until the NBBO ticks up and put it in the queue then. The problem is that these order types, while documented and available to all who are connected to the exchange directly, aren't usually going to be available to someone who is trading through an intermediary - a broker or some retail trading platform. So that's the story of how a well intentioned bit of regulation ended up disadvantaging US investors.
US equity markets are full of weird quirks like this, the NBBO needs to be done away with.
So ... the exchange processing the trade -- where's it getting its liquidity from? If it can't satisfy the trade internally, it's getting buy/sell orders from elsewhere, correct?
Or flip this around: instead of telling me how HFTs can't arbitrage their trades, tell me what's actually happening. Because HFT's like deepwater oil drilling: it's an awfully expensive hobby to be doing if there's no profit in it. Where's the profit? And who's that coming from? Because in the world of the financial market, it is a zero-sum game, where one set of traders extracting value means another set isn't getting it. It's not as if they're building widgets for a value-added proposition.
I've seen the HFT trade price-seeking patterns -- bandsaw and crop circle visualizations from NANEX (this is now a few years old, so ancient history, but):
The point is that by being able to generate thousands or millions of buy/sell orders, across a band of price points, the HFT is getting in on any movement faster than any slower trader.
You're also not addressing straight out fraud where book is open, which is what I understand queue jumping to be. It's one thing if everyone's playing by the rules. Something tells me that's not the case. Oh yeah. That's my former officemate doing time at Club Fed for insider trading.
In the simplest case, an order book is generated from all outstanding buy and sell limit orders, assuming none have crossed (if they have, the matching engine will immediately transact those orders). The price is discretized, so there is a minimum tick size, and each price has a FIFO queue of orders.
HFT provides liquidity to all other traders, including other HFT. They are paid in either the bid-ask spread (in the case that HFT is passive) or arbitrating bid-ask spreads between different exchanges, e.g. they aggress and take out an offer on exchange A which is below the bid on exchange B, providing liquidity to the standing offer on exchange A immediately instead of letting the prices disjoin.
The answer to the last two lines are the same -- there is no meaningful difference between a buy and a sell. The net effect is more liquidity than without any short term market making, for both market and limit orders (IMO market orders should simply not exist, but that's a small aside).
>Now, you seem to be suggesting that the HFT sees your order before it hits the matching engine
HFTs pay brokers for order flow so they get orders before they hit the exchange and decide to trade on them from their own book (at NBBO) or pass them on to the exchange. Besides jumping the order book at the exchange they get advance information on orders about to hit the market.
True enough, I was discussing direct market access. If you're going through a third party, it's up to you to vet them and make sure they are trustworthy. I agree almost word-for-word with Optiver's submission on payment for order flow: