12:00:00.000 - Alice - SELL $10.00
12:00:00.100 - Eve - BUY $10.00
12:00:00.200 - Eve - SELL $10.01
12:00:00.300 - Chuck - BUY $9.95
12:00:00.400 - Chris - BUY $9.90
12:00:00.500 - Charlise - BUY $9.80
Oops. Compare: 12:00:00.000 - Alice - SELL $10.00
12:00:00.300 - Chuck - BUY $9.95
12:00:00.400 - Chris - BUY $9.90
12:00:00.500 - Charlise - BUY $9.80
Eve took the day off. Alice is screwed.With HFT, some trades will go according to your first scenario; others will go according to the scenario you responded to. On net, Alice sells all her stocks to Eve and gathers in $100 every day.
If Eve stays home, instead Alice unloads perhaps six of her stocks to Bob at $10.05 each, and is still holding on to four of them. She doesn't want to end the day with $60.30 and four stocks she doesn't want, so she unloads the remaining stocks to Chuck and nets $100.10. Except that Chuck takes Mondays off, so on Monday she might end up selling to Chris and only finish with $99.90.
So what Eve (HFT) really accomplishes here is she grabs 10 cents of Alice's potential profit on most days or 10 cents of Alice's loss on Monday. Alice is happy with this arrangement because she gets the certainty of getting her $100 each day for the minimum effort. Eve is happy because she's grabbed an average profit of 6 cents per day (40 cents for T-F, -10 cents for M) in exchange for taking on a little bit of risk.
The real loser in this scenario is Freida, who is trying to do the same thing as Eve but is a little bit slower.
12:00:00.000 - Eve - BUY $10.00
12:00:00.000 - Eve - SELL $10.01
12:00:00.200 - Alice - SELL $10.00
12:00:00.300 - Bob - BUY $10.01
Eve was there before Alice & Bob. This is KEY to understanding what is going on here. Even is NOT jumping in the middle. Eve provided a service to both Alice & Bob and got paid for it.Here's another way to think about it:
Alice wants the ability to sell her stock whenever she wants for a "correct" price. Right? That doesn't come for free. Someone has to figure out what the correct price is. That takes effort and costs money. Humans used to do this (they were called market makers). Now computers do it because they're better/faster/cheaper at it (just like they're better at a lot of things humans used to do).
They're also cheaper at it. The cost to Alice of getting to sell whenever she wants at a good/correct price has actually gone down from what it used to be. You can see this in the shrinking spreads. It used to be we only had price accuracy to a dime or a quarter. Now it's generally down to only a penny! Even though Eve is making money Alice is getting a way better deal than she used to before someone figured out how to program Eve to do it instead of the slow and expensive Harry the Human.
12:00:00.000 - Alice - SELL $10.00
12:00:00.100 - Eve - BUY $10.00
12:00:00.200 - Eve - SELL $10.01
12:00:00.300 - Bob - BUY $10.05
(Eve could have issued her BUY order before Alice's order arrived, SELL after Bob's BUY, etc.)
If Eve stayed home for the day, Alice and Bob would have happily traded with each other and Alice probably wouldn't have minded the extra 200ms delay but would have appreciated the extra $0.05 per share. But instead Eve decided to jump in and extract a bit of money from the transaction. And again, there's nothing wrong with that. But I fail to see how Eve is adding any value to the market here. There was no lack of liquidity.