This is such an easy problem to solve. All orders must stand for at least 1 minute before they can be cancelled. It stops all this crazy nonsense to try to move the price and arbitrage the pennies.
Even without the obvious impacts to market makers and the subsequent price increases to investors, this doesn’t help.
Most things trade with price/time priority. This means that first tie breaker is price but second tie breaker on what fills is who had their order into the market first. This means that market makers layer orders in as early as possible, some strategies I’ve seen layering them weeks or months in advance.
So this proposal would add cost to the market without changing anything about the cancel race.
The real solution to this sort of problem (which I don’t believe actually caused this issue) is the same mechanism you put in any request/reply system, rate limits. Most exchanges have them.
Rate limits, or discrete (in time) instead of continuous trading. An auction every minute or so, for three hours a day. That would be much better.
(When I started in equities in Hong Kong in 2007, the stock market was open for 4 hours a day... 10 to 12:30, two hour lunch break to drink and socialise^W^W^W have important business discussions with clients, then 14:30 to 16:00. Today it's open 5.5 hours a day. EDIT to add: "Reactions from both brokers and the restaurant industry were mixed." (1)
XETRA is open 8.5 hours a day without lunch break, while Frankfurt (FSX) is open 12 hours a day, from 8 to 8. WHY???)
More APIs than not on this planet are considered business critical and doesn't just close. Stock markets are strange as they must be highly available for a few hours and then can be shut down for the day. Imagine if AWS closed every night.
A lot of Amazon retail does close every night. You can put in a request but it won't be fulfilled and shipped until morning. Getting rid of that is a nice idea, but also "instant fulfillment" is not great either without "instant returns." The idea of "instant trading" seems like it can instantly put the system into a bad state with no recourse to fix it.
The real reason stock markets close is because financial institutions are very interested in keeping it that way. It is lucrative to play pretend stock markets after hours.
(This is a very real question all over Europe right now, and it is interesting to see which institutions talk the loudest about how beneficial a shortening of opening hours would be to just about everyone.)
It turns out they don't; they really want to meet their benchmarks, and trade where the liquidity is.
One data point - 40% of the French stock exchange's turnover is now in the closing auction. Other markets have a similar trend. Longer trading hours mean thinner liquidity throughout the day, and the direction of travel in Europe is strongly towards shorter trading hours.
The answer is also “foreigners”. Regular working hours for a German exchange can produce some pretty brutal trading hours for say, London. When I worked in finance they started serving breakfast at IIRC 5am, since some trading desks started their day then and ended around noon. Expanding those hours can entice foreigners to trade during non-insane local hours.
That's not a solution, it would mean most market makers instantly left your exchange, or just quote really widely (providing a worse spread, so people wishing to trade have to pay a worse price), because holding your orders in the market for a minute is incredibly dangerous given how much the value of the underlying product could move at any time, especially when it's correlated with something traded on another exchange.
Usually what works for such abuses is either to charge extra (tiers depending on volume) to discourage abuse or at lest to cover losses, or throttling the biggest offenders when getting unreasonable peaks in order to keep the system always running.
Both are used in many other sectors. If you have "industrial level" needs you usually have to pay extra either for the service or for additional infrastructure needed to provide you that service, or you simply get everything throttled to sustainable level (think water, electricity, etc). Most traders would not see any difference and the ones that would will have to think twice before DoSing.
>They could put tiered charging and above a certain volume of transactions apply an additional fee (one time or per transaction). This is a model used in many other sectors.
It's actually quite common for exchanges to offer discounts/rebates to firms that trade more, because these firms are essentially providing a service to the exchange (market making, and generating turnover). Much like how other industries offer discounts for buying in bulk.
>The other option is to rate limit the biggest offenders when the system's performance limit is reached.
I don't know why people always suggest solutions like this when it comes to exchanges. If it was an e-commerce service and somebody suggested "let's rate limit customers to reduce load", it's be shot down as a lazy solution (and a great way to lose customers). If a platform isn't good enough to support the load its customers place on it, then it needs to be improved. If AWS goes down during the world's biggest shopping day, we don't blame the customers, we blame Amazon.
> It's actually quite common for exchanges to offer discounts/rebates to firms that trade more
I reworded a bit to give a better idea of what I meant. In general there are bulk discounts but there's always some form of "QoS". Either you get throttled above a ceiling, or you pay through the nose to have that ceiling higher for yourself and have everyone else throttled.
All tiered systems work like this. The fixed price goes up and gives you access to better service, higher limits, lower price per usage, etc. As long as you don't have virtually unlimited capacity you can't treat your system as if you do.
Mobile operators have to do the same. They charge a base contract price that sets the tier, then charge per usage within that tier, give different ceilings, QoS priorities, and throttling rates. And no matter how big you are as a customer at some point you either pay a surcharge or get throttled so the system stays up and other customers are also served. (source: I worked both for a large telco, and for a customer that payed ~3million E per month to get the consumption costs for min/MB down to almost 0).
> I don't know why people always suggest solutions like this when it comes to exchanges.
By any chance do the suggestions always come after the exchange was down due to high transaction volumes? Sure, they could implement unlimited capacity. But since this is a tad unrealistic and actually crashing the system is worse than limiting to keep it just below crashing, perhaps the suggestion makes sense.
There aren't many sectors that I can think of which give you "unlimited usage no matter what". There's "rate limiting" even in hospitals, where lives are at stake.
>By any chance does the suggestion come after the exchange was down due to the high volume? Sure, they could have unlimited capacity. But since this is a tad unrealistic and actually crashing the system is worse than limiting to keep it just below crashing, perhaps the suggestion makes sense.
I don't see a problem with rate limiting in general, if it's applied fairly. Good design should already entail that (it shouldn't be possible for customers to "crash" an exchange any more than it's possible for them to crash google.com). And many exchanges in fact have something like you described (customers can pay to buy more transactions-per-second capacity). But I don't think referring to customers as abusers or applying punitive fines is the right approach; if the exchange API let the customers crash it, that's the exchange's problem, and the customers shouldn't be blamed for taking advantage of whatever rate limit the exchange gave them (even if it gave them too much for its system to handle).
You’re right - the requirement on order/trade ratios is more a policy requirement, but venues are required to have limits to control excessive message rates.
To be fair, executions ("customer purchases") are relatively rare events. If we want to keep with the analogy e-commerce, you can think of orders/cancels as merchants repricing their wares and changing their on-offer quotas hundreds of times per second. Each. As a marketplace owner you probably would want to at least rate-limit that.
In a physical store you wouldn't get to the shelves from the throng of clerks running around with sticker guns.
> If AWS goes down during the world's biggest shopping day, we don't blame the customers, we blame Amazon.
Yes. We do. But the customers blame us. It may not be our fault, but it's still our problem.
>To me, this form of trading has questionable economic effects in my opinion.
Have you ever actually researched the economic effects, or is that just a gut feeling?
If you look at it historically, as machines have come to dominate market making, spreads (the difference between buy and sell price) have continually fallen, meaning institutional investors and retailers can buy what they want at a better price. Machines are able to offer these better deals because they know they can get out of their position faster if the market suddenly moves; removing their ability to react faster would remove their ability to offer better prices.
The part about spreads being smaller because machines are making markets is true, but there are important caveats. The one that comes to mind first is that the tight market is only there for small quantities. If you want to trade in size, then you are out of luck.
Machine based market making tends to work well when markets are operating "normally". When some regime-changing news comes out, it's not uncommon for the over-fit algorithms to perform badly so the managers just turn them off. I.e. liquidity disappears just when it's needed most.
I actually did read about it. Wikipedia alone can enlighten you about respective controversies. I think critical voices sound more reasonable but it is an open question at least. It is still my opinion as stated.
Show me the produce, some say it is liquidity, and I withdraw my criticism.
Why do you call it gambling? The market maker doesn't want to take a position on the stock, that's why he tries to get out quickly if it starts moving. He just wants to provide liquidity (be willing to buy and sell to anyone at any time, so that buyers don't need to wait for a matching seller to come along), and collect a small fee for that in the form of a spread.
Is it even a legitimate problem? Exchanges are well-equipped to deal with this kind of thing and direct access to exchanges is moderated by broker-dealers. As a normal user (algo trader or otherwise), you cannot directly plug into the exchange and spam orders. And anyways, exchanges (even IEX) _want_ the arbitrage and liquidity that market makers offer.
Or make taxes on gains start at 100% and exponentially decay as you hold a certain instrument longer. If the final tax is 30%, that could be reached e.g. after a week.
> I fully agree with you. I have no idea why you are down-voted so heavily.
Maybe because they claimed it's easy to solve when the solution they proposed in fact has a whole lot of undesirable consequences that are obvious to anyone more familiar with how markets work.
Sending out orders and withdrawing them immediately after is market abuse, there is a regulation in Europe against it (MIFID II): the real question about the "whole lot of undesirable consequences" is, to whom? and who would benefit instead?
The truth is that the real effects of algo trading are still poorly understood as a system, and they have been able to crash markets a couple of time in the past, for no reason. Do we really need this form of speculation "because liquidity"?
>sending out orders and withdrawing them immediately after is market abuse
It's abuse if it's done for the purpose of manipulating the market (spoofing) or deliberately to slow it (quote stuffing), but not if it just happens because somebody put in a bunch of orders and then realised their mistake.
>"a whole lot of undesirable consequences" is, to whom
To all the institutional and retail traders on the exchange, who have to pay worse prices for their trades because the market makers can't quote so tightly.
Market makers routinely have to adjust their quotes as the price moves. If they set a price and then the market moves significantly, the price will soon be incorrect. If they leave the order on the book then they might get undesirable fills (losing money) or it might just sit there and never get executed because their price is worse than what the market is offering. In either case, it's useful for them to be able to adjust their quotes by cancelling previous quotes that are not up to date with the latest information.
Imagine if every time you go to the gas station and see the big price for a gallon you write it down. Should the gas station still have to offer you the lowest price over the past {day,week,month} if the price has gone up? "Cancelling" orders is this same idea of changing the offer, only at a much smaller time scale because markets trade extremely fast.
It’s not abuse if you’re trying to get your order filled. I make and immediately cancel orders frequently, simply to get a fill. Derivative prices move fast