Suppose Alice doesn't want to pay for liquidity. She can just as well say, I'm going to wait for a buyer willing to pay the ask price. She doesn't trade with an HFT and instead takes the risk that a buyer never shows up or that the market moves against her. This is equivalent to an add-liquidity-only order. She won't be crossing the spread, and she therefore she won't pay the bid-ask spread.
It's the same thing if you're buying. If you don't want to pay for liquidity you don't have to. You state your price, say you'll only add liquidity, and when a seller comes along who's willing to give it to you at that price, you'll be matched.
Obviously if the buyers and sellers hold fast then no trades get made: The buyers are offering less than the sellers are willing to accept. If you want to make a trade then someone has to cross the spread -- either the buyer has to pay $100.10 or the seller has to accept $100.00. This leaves room for speculators: When a seller decides they want to trade right now and they cross the spread, the speculator can buy the shares and then hold them until a buyer comes who is willing to cross the spread, and then the speculator profits by buying at the bid price and selling at the ask price. The speculator is taking the risk that in the meantime the price of the stock may go down and they'll lose money, and that risk is what earns the profit.
But HFT isn't that. HFT is having fast computers sitting in Chicago and New York, so that when a buyer crosses the spread in Chicago at the same time as a seller crosses the spread in New York, the HFTer can arbitrage the transactions with the foreknowledge that both trades will clear immediately. The HFTer is not taking a risk proportional to the profit but rather is profiting from trading with superior information. Moreover, the HFTer is only holding the shares for milliseconds. How does that provide any useful amount of liquidity? Why can't we arrange the exchanges so that if a buyer and seller both cross the spread at approximately the same time, they split the difference and no third party takes anything?
Can you explain this in more detail? How does the HFT know that someone is crossing the spread? How is the HFT able to transact with two market-crossing orders after the fact? What financial instrument is being traded in Chicago and NY?
So suppose the bid for some particular stock is $100.00 and the ask is $100.10 in both Chicago and New York. They could be different between the two exchanges, but the prices between exchanges will generally be the same or very close to each other at any given time because any significant divergence is an arbitrage opportunity.
Now somebody wants to buy some shares of that stock in Chicago, so they cross the spread and put in a bid for $100.10. They immediately buy all the shares in Chicago that are available at $100.10. Now the ask in Chicago will go up because all the shares available for $100.10 in Chicago have been purchased, so now the bid in Chicago is $100.10 and the ask is, say, $100.20. At the same time, in New York, somebody wants to sell some shares of the same stock. So they cross the spread and make shares available for the bid price in New York, which is $100.00. That seller sells to everyone in New York who is willing to pay $100.00, so now the ask in New York is $100.00 and the bid is, say, $99.90. Both the buyer in Chicago and the seller in New York are still willing to buy and sell more shares at $100.10 and $100.00 respectively, i.e. the new bid in Chicago is higher than the new ask in New York.
The HFTer sees the new prices before most other traders because their computers are faster and closer to the exchanges. As soon as the buyer at $100.10 learns there is a seller at $100.00 or vice versa, they would get together and trade all the shares they want to trade at some price in that range. But the HFTer learns the pricing information first and, before the buyer and seller find out about each other, the HFTer buys the seller's shares in New York at $100.00 and immediately resells them to the buyer in Chicago at $100.10.
There is $.10 of surplus here. Who (if anyone) should get it, how, and why?
By all means educate us then.
> There is $.10 of surplus here. Who (if anyone) should get it, how, and why?
That seems like kind of a philosophical question. Who ever should get any surplus? A better question might be, how can non-HFT traders arrange to capture the surplus currently claimed by HFT?
> if there is no HFT involved how would you propose that this situation be resolved?
The situation now is that whoever is fastest gets the surplus, even though being milliseconds faster provides very little utility. If you remove all HFTers somehow by magic but the situation remains that whoever is fastest gets the surplus then whichever of the buyer and seller can adjust their prices faster would get it. But suppose we go a different way and have the exchanges sort it out: Automatically send all offers to buy or sell to every exchange where that security is traded and allow the other exchanges several seconds to match bids with asks. The highest bid is always matched with the lowest ask on any exchange and the price paid is the midpoint between them. That seems inherently more efficient than creating a huge financial incentive for private actors to shave invisibly small slices from the amount of time it takes to trade between exchanges.
What would have really happened in your scenario would have been on of the following:
1. The orders would have been partially filled and the balance would be cancelled (order were Immediate Or Cancel)
2. The orders would be partially filled and the balance routed to other exchanges which are displaying the same price (Orders were routable)
3. The orders would be partially filled and remain active (but undisplayed) at the exchanges (this is dependent on what order type is used and at what exchange).
> how can non-HFT traders arrange to capture the surplus currently claimed by HFT?
By posting their order and waiting to be filled. In a two sided market your options are to pay up and be filled immediately or to get in line with everyone else that wants to keep that extra $.01 and wait for someone more impatient (or informed) to come along and sell to you. By providing liquidity you take time and price risk (you don't know when you will get filled, if ever, and the market may move away from you requiring you to have to pay more later) and by taking it you don't (but you pay the liquidity provider for the privilege).
"Someone will always be faster." That will always be true no matter what new trading format is being considered. There will always be a way for someone to get relevant information more efficiently and act on it. Always. Slowing down markets or obscuring/delaying quotation hurts price discovery and increases uncertainty. This increases volatility, widens spreads, and in all likelyhood actually tilts the playing field in the favor of high-speed computerized trading rather than away from it.
You misunderstand what HFTs are doing. They are in the business of selling liquidity. You have to pay them for that. Luckily the cost of liquidity (due to automation & competition) has gone down by a factor of 10 which is great for you (and everyone else)!
Brad Katsuyama (weirdly the hero of the Michael Lewis book) is in the business of making sure you DON'T get the best price. The HFTs are working against him to make sure you do.
Also think about this in terms of what happened, the two counterparties got to interact without being in the same place or product. Yes, they could have traded if they were both in the same place, but they weren't. Surely providing that service is worth something. You could buy your meat wholesale, but the grocery store isn't ripping you off by selling it for $1 more a pound somewhere closer to home.
Think about what would happen to others if the HFT wasn't there, too. Prices would diverge and traders on one of the exchanges would be trading away from the real value. By keeping prices in line, information is transmitted from market to market more efficiently. A trader who isn't concerned with cross-market arbitrage doesn't need to connect to and watch multiple markets to get a fair price.
HFTs are obviously motivated by profits, but the level of profit is extremely low for the amount of service they provide. Virtu trades over 5% of the US markets and made slightly over $100 million. They only have a couple hundred employees. Think about how many people were required to make markets globally before technology. Only a fool would argue that we should go back to that system.
Who is even suggesting that?
Distinguish between the result and the method. Having prices be the same on all exchanges is obviously desirable. But why do we have to reach that result in this way? Why not instead have the exchanges talk to each other and have trades on any exchange automatically go to all the other ones, so that prices are always the same programmatically without having to pay any third party to keep them that way?
Anyway most HFTs are not keeping prices the same between exchanges. There simply aren't enough times during the day when quotes are crossed to make this viable. Most are market makers or are doing arbitrage/psuedo-arbitrage trades like ETF vs. basket, futures vs. cash, etc. that move liquidity from product to product.
It's a distributed system. You want it to keep working (be available) all the time right? Guess what, you're gonna have to lose some consistency.
Moreover, you don't strictly need a distributed system. You could instead elect one exchange at any given time as the primary and clear all inter-exchange trades through that exchange.
Don't miss the forest for the trees.
And you can't hand wave away the fact that the implications of the CAP theorem are minimal on a distributed system with a high level of interconnect redundancy. If you can ensure with high probability that there will not be a partition in the network then you don't need partition tolerance. If against all odds you have a partition anyway then you lose availability, but that isn't a characteristic unique to the CAP theorem or distributed systems -- any system will lose availability if enough redundant components fail simultaneously.
In other words, sure, definitionally it's liquidity, but since the trade would have gone through a sub-second later anyway, it's not meaningful liquidity: the liquidity was already there on a reasonable timespan (again, sub-second) for the seller. Thus, nothing has been gained.
What am I missing here? Do sellers really need additional sub-second liquidity beyond what the market would provide without HFT?
Also very few HFTs have sub-second average holding periods. There aren't many instances where the market trades both sides so quickly. Probably average in the 10s of seconds at least if not longer.
Imagine if you could have the house off your hands, at market price, in a day instead of listing it for months. That's b what liquidity does for you. Almost all HFT is market making, there's plenty of information about what that means...
*There are some highly predatory algorithms that try to do this. The problem is that if you are fast enough to do this routinely, you are sophisticated enough to do legitimate market making and make more money.
Maybe start here to better understand things:
http://www.bloombergview.com/articles/2014-03-31/michael-lew...
You should narrow your question to how the latency arms race provides liquidity, and if it would be different it latency was capped at some amount.
Everyone knows you can get more for a used car if you sell it yourself instead of trading it in. Yet millions of people trade in their cars. Why? Because it's easier and faster.
The difference in price they get from the dealer vs Craigslist is the price they are paying for liquidity in the transaction.
HFT's are very good at providing liquidity (and obviously so), under that definition.