Hacker News new | ask | show | jobs
by cli 3794 days ago
>It can be solved by an exchange that makes trades every second or on some time interval that is minuscule to a person but enormous to a computer.

I do not see how that will solve the problem. Suppose firm A and firm B both want to buy stock X at prize Z. There is only enough X at prize Z for one of those firms. Both firms send their trade orders withing milliseconds of each other. In your time interval scheme, which firm gets to buy the stock?

2 comments

CyberDildonics is basically proposing frequent batch auctions as described in the Budish paper. It won't work, largely for reason you state. The appropriate solution is for exchanges to add a _random_ delay to each order (emphasis on _random_, a fixed delay a la IEX does nothing). ParFX is doing just this.
Random delays already exist. The infrastructure of every exchange introduces them. Its a standard part of any HFT model to think about what happens when you hit one. It certainly doesn't remove the speed game.

I think a better way to change exchanges is to dramatically decimalize the price levels. Right now the difference between 2 price levels a) adds a floor to the minimum spread and b) prevents strategies from truly competing on price requiring them to compete on time.

I think a better way to change exchanges is to dramatically decimalize the price levels.

The idea that reduced tick sizes would force traders to compete on price rather than time is a popular HN market microstructure solution, but it's wrong or at least partly wrong.

1) Liquidity taking strategies will still "compete on time" in order to trade at the most favorable prices. Market making strategies will still "compete on time" in order to avoid getting picked off.

2) Inverted fee venues and midpoint order types offer sophisticated traders the opportunity to trade at prices within a 1 penny spread. If you watch the tape for a stock like ZNGA you will see this type of trading.

3) There are a number of high priced / high volume stocks that don't trade at a penny spread. GOOG is a good example. Do you find GOOG trading to be somehow cheaper, more orderly or efficient than e.g. MSFT? The GOOG spread is almost never a penny and is regularly over 20 cents. If the benefits are there, they ought to be obvious.

First, let me make it clear, I don't view market participants competing on time as a problem and physics means it will always be a component of the price of the risk associated with trading. But if we are going to be making changes to markets, I'd much rather change the pricing requirements than adding esoteric random time differences, or assuming batch auctions will make things better.

The reason I like reducing tick sizes (and I mean dramatically like 1/1000th or more) is less about the bid ask spread at the middle, but rather the competition at the +1 levels. A lot of the latency advantage right now is in being able to cancel a few levels near the midpoint while leaving tons of other orders stacked.

Reducing tick sizes would make these deep stacking strategies less viable, which seems (though I have no proof) like it would make the positions of the market makers less risky in a systematic way.

As for GOOG vs MSFT, I think that is obviously explained by the much higher price of GOOG right? Nothing is going to make holding a stock that costs more less risky, even speed.

I thought you were making the argument that reducing tick sizes would reduce the amount of effort put into reducing latency (or reducing the overall amount of prop HFT volume), but I guess I was wrong about that. The idea that reducing tick sizes would ultimately reduce market maker risk by making certain quoting strategies less viable is interesting.
I think ultimately I'm just not being clear about something I'm not certain of in any case, but a better restatement of my position might be:

"Having some participants whose primary competitive edge is speed is not in and of itself bad, but speed advantages tend to consolidate around a few natural monopolies, which is. So if we could add something else into the mix that allows for other participants to compete outside of those monopolies, that is good. Dramatically reduced tick sizes would do that, would at times make the spreads smaller, and might even make market making less risky systematically and doesn't seem to have the downsides of other options proposed".

Let me clarify: my random delay shuffles incoming orders, while random exchange delays (outside of CME iLink games) do not. Removing determinism hugely hurts speed.

The value of further decimalization seems questionable. It would in all cases reduce displayed size. Would transaction costs still decline due to tighter spreads? For the liquid lower-priced stocks, probably. For stocks whose natural spread is > 1 cent (most of the expensive stuff), certainly not. For everything else, hard to say.

Maybe a Japan/Europe-style tick increment schedule is a good compromise.

If there is more demand than supply, wouldn't you expect the price to go up?
You're not allowing it to, because your proposal quantized the market! That's what it means to batch trades and execute them at an interval: the price can't change inside that interval.
So you cancel the order, raise the price and let it go another cycle. Why wouldn't the seller want that?
Yes, but now you haven't accomplished what your proposal sets out to do, because the fastest people to the quantized order book get the best prices.
How? In every quantized unit of time everyone would be treated equally. If there is more demand than supply the prices goes up until there is not more demand than supply. This is also not even taking into account orders having ranges acceptable prices, which would add much more flexibility and granularity without needing more temporal resolution.
I don't think you've thought this through very carefully. Most orders in the market aren't "market orders"; they specify a price. Meanwhile, assume you resolve pricing in an automated auction: there's a spectrum of prices. Who gets the better prices?