How HFT has changed the allocation of the pie between various market professionals is hard to say. But there has been one unambiguous winner, the retail investors who trade for themselves. Their small orders are a perfect match for today's narrow bid-offer spread, small average-trade-size market. For the first time in history, Main Street might have it rigged against Wall Street.
http://www.wsj.com/news/articles/SB1000142405270230397830457...
Matt Levine's followup post. http://www.bloombergview.com/articles/2014-04-02/high-freque...
I understand that at other parts of the order chain this might matter. But inside the matching engine there isn't "retail priority".
http://www.amazon.com/review/R28Y8AI4PIPYZ2/ref=cm_cd_pg_nex...
I have no personal experience in this, but I've heard that the order book is now very "shallow" due to HFT, such that it's hard to sell/buy a meaningful quantity of stocks at the market price. Does that make sense?
It's true that markets now respond faster to large sales so if you're a hedge fund trying to unload $BIGNUM shares of MSFT you'll have a harder time. But that's good for everyone else. If that hedge fund has proprietary information that MSFT is undervalued you want that information getting out to the market as fast as possible leading to more efficient prices.
That makes some sense, but who have you lost it to?
I was thinking about it the other day, and it seems that the "liquidity is good" argument can make some sense if people are not willing to make a transaction immediately. If I want to sell a bag of apple for 1$ _right now_, and someone else is willing to buy that bag for up to 1.50$ in a week, then I can appreciate that there's a middleman (providing liquidity) willing to hold the bag for me during that time and that he makes some profit from the spread. However, if the buyer and seller are both willing to make the trade at roughly the same time, then it's much better if they do it themselves (splitting the 50 cents of value amongst themselves) than if a middleman gets into the picture.
More or less the argument made here: http://smbc-comics.com/index.php?id=3890
If you don't want to trade with a market maker you can avoid purchasing their liquidity by placing a limit order that doesn't cross the spread. You'll then wait until someone else comes along to trade with you. Of course, you're taking a risk that the stock price will move away from you and you'll never trade. Normally this is the risk the market maker takes for you (which is why you pay him) but you can always do it yourself if you want.
In that comic the first caveman is getting a price that is right in front of him. He's not willing to wander around hoping to find a better price in another cave. That's a service that the 2nd caveman is performing for him. That's why the 2nd caveman gets paid.
The key thing to realize is that market makers don't just "get into the picture" by muscling their way in when other people don't want them there. Think of them off to the side selling liquidity for anyone who wants to walk up to them and buy it.
But isn't the point about HFT (at least, the part that is described in the comic) being "insider information" reasonable? Some people are willing to sell now for a low price, and some people are willing to wait longer for a better price, but I don't think anyone is unwilling to wait 1 millisecond for a significantly better price, no? Does liquidity on the millisecond scale make sense?
> He's not willing to wander around hoping to find a better price in another cave. That's a service that the 2nd caveman is performing for him.
I can see that, and in some contexts it's a very valuable service.
But suppose I'm caveman 1. I know that CaveBob is a middleman. Everytime he comes to see me, it's because he knows something I don't, and I end up regretting my trade with him because a few hours later, I invariably realize that I could have made a much better trade. Then I'll stop trading with CaveBob, of course, and I'll naturally bump into those needing my meat a few hours later.
In a stock exchange, I can't stop trading with CaveBob's, as far as I know. If a stock market without market makers and HFT rises by 5% every year, then by participating, I can hope to make as much if I'm average at trading. In a market with HFT, they will be taking part of the 5% with very low risk (through technological advantage), so it's not clear what's left, and the decision to participate is not so clear.
Two things here:
1) Is 1 penny better when trading a stock that costs $50 bucks really significant?
2) The issues is that you aren't guaranteed to be able to trade at a better price 1 millisecond from now. Maybe someone comes along and takes your price or maybe the stock moves away from you and you can never ever get that price again ever (or even the price you could have gotten from the market maker). It's a risk. And it's a risk you are free to take, or it's a risk you can pay the market maker to take for you. Your choice.
> In a stock exchange, I can't stop trading with CaveBob's, as far as I know.
You can absolutely stop trading with CaveBob! You can do this, as I said, by "placing a limit order that doesn't cross the spread." So if Bob is selling $STOCK for $10, and buying for $9.95 and you want to buy you can place a limit order to buy for $9.95. CaveBob won't sell to you at that price but maybe someone else will come along later to take it from you.
But again, it's a risk.
It's also a risk with an adverse selection problem if you think about it.
Does that solve the issue? Suppose that I'm usually selling meat at 10$/kilo, but the buying side is at 9.50. Then when there's a catastrophe (some other vendor burned down), I could sell them at a higher price, 20$/kilo. If the news reach the HFT 1 millisecond before it reaches me, they can buy it at 10$ from me, then sell it at 20$/kilo for a big profit, but I would much rather have sold it at 20$/kilo myself. Is there any limit order that prevents that?
This is one of the other services that you are paying the market maker for: price discovery. If you want you can do this job on your own. You can expend a lot of effort to keep up with all the latest news so you know what price you should be selling at. Or you can let market makers all compete to buy from you at the best price taking into account all of the latest information. In your meat example, keep in mind that there isn't just one trader who will buy from you for $10 to sell at $20. They're all competing to buy from you for the best possible price so they will very very quickly bid the price up to something very very close to $20.
This is why most people love market makers! If you trade with them you can be assured that you are (more or less) getting the best possible price taking into account all of the latest information.
Going back to your comic, this is what's happening in frame two. The ship arriving (for some unclear reason) is changing the price of neckerchiefs. It's generally to everyone's benefit if this new information enters the market as fast as possible. Rather than thinking something shady is going on we should think this is great, and feel good about paying them a few pennies to keep the information flowing quickly.
[1] Which is the exact same risk liquidity sellers normally take! This is why, in flash boys, Brad Katsuyama sees the price move when he tries to make a large trade. All the people selling liquidity are worried that there is some new piece of information they don't know about yet so they move their prices so they don't get run over.
This is why you sometimes see complaints that so many orders from HFT traders are cancelled. They're constantly monitoring all kinds of news sources so that they can keep their prices accurate. The fact that they're cancelling orders isn't a sign of shadiness, it's just a sign that prices are moving.
If I put a market order to sell meat at the market price of 10$ at 10AM (because I just produced a bunch more), then the first HFT to get the news of the catastrophe at 10AM + 1 microsecond will buy them from me at that price, but if I had gotten the news at the same time as they did, I would have withdrawn my market order and refused to trade at 10$.
Maybe HFTs/market makers serve many different purposes and we're talking past each other. I agree with the liquidity argument, to the extent that I understand it. Is getting the news slightly faster really providing value?
> You can expend a lot of effort to keep up with all the latest news.
The news that my competitors burned down doesn't require a lot of effort to keep up with in the age of the Internet, but it does require large amounts of capital to get it 1 microsecond before everybody else.
If trades were only allowed every 60 seconds like the comic suggests, to allow everyone time to process the news, what value would be lost? Should society rejoice when an HFT gets 10% closer to the speed of light?
Yes, at 10AM (before news happens) you can take the $10 price. And, unfortunately for you, the world might change 1 microsecond later. And it sounds bad when you say "1 microsecond" but what if you say "5 minutes" or "1 hour" or "1 day"? You're probably going to feel just as bad about missing out on a better price even if the timescale is a human one instead of an electronic one.
There is no way to avoid this. The world can change after your sell your meat. It might change 1 microsecond later or it might change a week later. You chose to sell when you chose to sell. You can't say oopsies and complain if the world changes after you made your decision. The fact that the world can change after you make your trade has absolutely nothing to do with high speed trading.
Very high speed price discovery actually works in your favor here! At least the price jumps to $20 really really fast after the news now. Without computers it might take 5 or 10 minutes (or whatever). The sooner the news is incorporated the smaller the time window in which you can accidentally screw yourself.
While thinking about this, keep in mind also that the price might drop (maybe there is a bumper crop of cows). If you sold now for $10 but then the price dropped to $5 you'd feel great. When you sell now you're taking the risk of a price change (in either direction) off the table. You can't on one hand, avoid a price drop, but on the other hand think that you should get the benefits of a price rise.
> the first HFT to get the news of the catastrophe at 10AM + 1 microsecond will buy them from me at that price,
This is actually wrong and not what happens. The trade you're talking about happened at 10AM (before the news). You put in a market order which means "take whatever price is being offered right now." not "put my meat out for sale and wait for someone else to trade with me."
So no trade is happening at 10AM + 1 microsecond (after the news).
> If trades were only allowed every 60 seconds like the comic suggests
Ah yes. Everyone eventually hits on this idea, but it doesn't work. What happens if, at a given price, the # of buyers and sellers doesn't match up at the time you want to execute all the trades?
1. Execute the trades that put in their orders first. Well then you're back to where you were before.
2. Execute some % (less than 100%) of one side of the trades so that everything matches up. But then you create a very unstable situation. If I think that maybe only 50% of the trades are going to execute you've incentivized me to say I want to trade 2x of what I really want to trade. But wait, everyone else is also thinking the same thing. So maybe 4x? Repeat ad nauseam. This is a very unstable game-theory heavy sort of situation that's actually pretty dangerous.
And really even if you do this you haven't removed the need for high speed computers & communication. Lets say that a block closes at precisely noon. I definitely don't want to input my trade at 11:59:01. What if there is news in the next 59 seconds? I really want to wait until the last possible microsecond to input my trades for the block right? So...we're back to where we were before anyways.
The real world is continuous. It's not really possible to make markets based on the real world operate discretely.
That's totally right, I blundered my hypothetical scenario. Let me try again.
1. 10AM catastrophe happens
2. 10AM + 1 ms: news reach some HFT
3. 10AM + 2 ms: I put out a market order, ignorant of the news
4. 10:01AM: the news reach me
That's what I meant. But I suppose that given the competition between HFTs, the market price should have reached 20$ by then, so I get to sell it at the better price.
Does that mean that HFTs do not generally make money from getting the information before everybody else unless some non-HFT trader used a limit order?
If some HFT holds a lot of some company Y and gets the news early that Y had a bad quarter, won't they make money from that by selling Y to a non-HFT investor who hasn't received the press release yet? But maybe if no one but HFTs use limit order and everyone has a decent-speed internet connection, this is a vanishingly small occurrence?
Ah yes. Everyone eventually hits on this idea, but it doesn't work. What happens if, at a given price, the # of buyers and sellers doesn't match up at the time you want to execute all the trades?
1. Execute the trades that put in their orders first. Well then you're back to where you were before.
2. Execute some % (less than 100%) of one side of the trades so that everything matches up. But then you create a very unstable situation. If I think that maybe only 50% of the trades are going to execute you've incentivized me to say I want to trade 2x of what I really want to trade. But wait, everyone else is also thinking the same thing. So maybe 4x? Repeat ad nauseam. This is a very unstable game-theory heavy sort of situation that's actually pretty dangerous.
And really even if you do this you haven't removed the need for high speed computers & communication. Lets say that a block closes at precisely noon. I definitely don't want to input my trade at 11:59:01. What if there is news in the next 59 seconds? I really want to wait until the last possible microsecond to input my trades for the block right? So...we're back to where we were before anyways.
All good points. Although there's probably a game-theoretic solution to that...
In general this is somewhat true. Market makers would actually love it if prices were very stable. Just sit there and buy at 9.99 and sell at 10.00 and make a penny a trade all day long. They need to respond very very quickly not so much to make money, but to avoid losing money when prices change.
Now whether or not HFT adds more value seems debatable. But it seems to be a fairly harmless result that naturally arises.
These discussions always happen whenever HFT is brought up. I've thought a LOT about how to remove a latency advantage from this game, and I just can't find a way to do it. I'd love to be proven wrong though. (And actually, so would the HFT shops - they hate the speed race).
As far as more decimals, it doesn't sound plausible that all the market makers are gonna come up with the same price to 8 decimals. So the time priority will give way a bit to price priority.
That wouldn't be fair, an order book is a line, such a rule would allow people to cut line and get shares at better prices before you allowing them to drive the price up or down even though you were in line before them.
> As far as more decimals, it doesn't sound plausible that all the market makers are gonna come up with the same price to 8 decimals. So the time priority will give way a bit to price priority.
That's how it used to be, compete on price first, but a minimum decimal put in place by law, the sub penny rule, to try and dampen HFT, it's only made latency more important since HFT traders can no longer compete on price. And he's right, there's always a minimum price below which there is no profit, so whoever posts that price first wins. Orders compete on time and price because that what is fair. Latency is inherently part of fair trading, you can't remove it and keep the market fair.
Well, I think the problem is less that the book is a line and it's not fair (the definition of fair would change in this system, it would be fair that you had the same chance as everyone else in that time frame), but more that you open yourself up to different problems, such as the larger players being able to split their orders up in to many smaller orders, to increase they chance a large percentage of their orders will go through before any supply has dried up.
There's actually another industry that has to deal with these problems, and especially with pecieved fairness. Online event ticketing. Ticketmaster runs a queue. AXS runs a randomized pool. Both are gamed. Interestingly, I think some brokers actually do colocate close to TM servers, which makes the parallel fairly obvious.
Event ticketing is a market, and as such there will be people that want to invest (even if it's just fans who intended to go and then decided they couldn't, or the money they could get for the tickets is too much to pass up). Scalpers (brokers) provide a service, liquidity. Often they go too far, and use technology to get tickets in unethical ways (ignoring site policies, bypassing captchas, using software to tie up thousands of tickets they have no intention of buying, etc). But the fact that they continue to exist is because there is demand (and now TicketMaster is in on the game as well, their TM+ service allows you to resell tickets on their site along-side their own, unsold tickets).
As far as sub penny, presumably different firms would have different costs, so the level of profitability would be different. While dominated by exchange fees (or rebates), at 8 decimals there's still room to compete. (Perhaps with new order types that allow displaying your quote rounded, so as to not trigger another feedback loop where firms keep lowering by 0.00000001.)
Like I said, there are systems that do exactly this.
It's unfair to the trader who put his order in first just as it'd be unfair to walk up to a sales desk and cut in front of people who there before you. All this does is slow down trading, it doesn't make it any more fair and now you can play the latency game for putting your orders in at the last second while allowing more time to analyse the data. 5 seconds is a long time to a computer.
That such systems exist is beside the point, they are less fair than simply allowing the fastest trader to trade first.
In any case, quantising to eg 1s, allowing arbitrary sub-penny bids, and fulfilling by prize and using time as a tiebreaker would be `most fair' in some sense:
The counterparty gets the best price. And people are only able to `cut in line' if they make a better price.
(I don't think the fairness of waiting in line is a fundamental thing. It's just one way for humans to allocate scarce resources, and it's not very economically efficient---it just works well with human psyche and social norms.)
I didn't make that claim, best price should be ahead of place in line. But place in line is the next most fair thing.
> In any case, quantising to eg 1s, allowing arbitrary sub-penny bids, and fulfilling by prize and using time as a tiebreaker would be `most fair' in some sense:
Remove quantising to 1s and I agree. Quantising makes it in no way more fair and removes the ability to use time as a tiebreaker. If time is the tie breaker, you don't need to quantisize as it adds nothing.
> (I don't think the fairness of waiting in line is a fundamental thing. It's just one way for humans to allocate scarce resources, and it's not very economically efficient---it just works well with human psyche and social norms.)
It works well with the human psyche and social norms precisely because it fits our innate ideas of fairness, and thus fairness is a fundamental thing. It's so fundamental in fact that it's evolved into us as experiments with monkeys and fairness show it to be innate.
As for the speed race, why not limit transactions so that they can only be executed on the dot, once every $TIME_STEP? You won't be able to see what orders others have been put out, so you don't gain that much of an advantage by sitting on a very low latency connection.
It is not necessarily a bad thing to have a price floor. Removing the floor is a good thing for the parties that meet at the tighter spread, but there is an externality where somebody who wants the shares nearly as much has their order go unexecuted despite providing price discovery to the market by showing their order. Look at GOOGL for example. It is $700 with a $0.01 price increment. Somebody can jump in front of your order by paying just 0.0014% more, there is little incentive to show limit orders on the market, which this makes the order book very thin. There is probably a better balance where the tick is large enough to avoid people jumping your order, but small enough that traders can compete: https://www.sec.gov/comments/4-657/4657-40.pdf has more comments on these effects.
You can trade in a single price auction in almost every market worldwide. A large amount of volume in US equities trades in this way, so people already have this option, but many choose not to use it.
Sure you do, you're still first in whatever line there is; latency still matters no matter how much you try and slow execution speed down. Latency isn't about the speed of trading, it's about being first in line regardless (speed to the sales counter) of what speed the trades are limited to.
(There's also more complicated rules possibly, like trades only execute when there's a certain demand, or other liquidity based measures. Not sure they're good but it's an option.)
> (There's also more complicated rules possibly, like trades only execute when there's a certain demand, or other liquidity based measures. Not sure they're good but it's an option.)
Well, I'm not sure any set of rules isn't able to be gamed in some manner. Larger players will have an advantage as long as rules don't specifically penalize them, as they have all the capabilities of smaller players plus extra capabilities provided by economies of scale and dedicated resources. Even when you specifically penalize specific participants to reduce "unfair" advantages, I think what generally happens is that some participants move into the niche just outside those penalty definitions, to eke some of the prior advantage in the new grey area. This seems to be the norm in almost all regulation, IMO. Not that the regulation is always useless, but you can't game a system without rules, and regulation by it's nature provides more rules to look for specific ways to exploit.
Or even the NYSE: https://www.nyse.com/markets/amex-options/order-processing