It is very common to find examples of stock quotes changing rapidly - hundreds and sometimes thousands of times per second in a single stock. At the extreme, we've seen in excess of 25,000 quote changes in a single stock in one second of time or less (this page has a chart that documents every extreme example). Often there are no trades during these events. Sometimes a simple pattern evolves from the quote price changes, such as in the case of a certain High Frequency Trading (HFT) algorithm that we've recently seen run every day in Google stock.
This particular algorithm starts with a bid (or offer) several dollars away from the bids (offers) from one of the other 10 exchanges trading Google Class A stock (symbol GOOGL). We've also seen this algo running in other higher priced stocks. The algo in this example only appears to run from the Nasdaq-Boston (BOST) exchange. In the chart below, we show bids and offers color coded by reporting exchange (there are 10 exchanges in GOOGL). Note that these are "top of book" quotes - that is, they are the highest bid price and lowest ask price from that exchange. The best top-of-book bid and ask become the National Best Bid/Offer (NBBO) and is shown as light gray shading in these charts. Note, this algo only affects the NBBO when it gets near the end of its price stepping loop.
The algo starts with an order to buy 100 shares at $581.87. This is replaced, sometimes only milliseconds later, with an order to buy 100 shares at $581.88 (1 penny higher). Over the course of 1.5 seconds, this process repeats another 253 times, ending with a order to buy at $584.41. Within less than a second, the $584.41 order is canceled and replaced with an order several dollars lower, and the cycle repeats.
In the case below, the number of quote changes from this HFT algo is averaging 175 per second, but during some periods the rate approaches 1000 per second (1 per millisecond).1. GOOGL bids and asks color coded by reporting exchange over a 5 second period of time.
Now, some folks (particularly the math/physics challenged) will say:
"So what? HFT needs to be able to cancel quotes fast so they can tighten spreads, add liquidity and lower costs."
The problem is that when HFT cancels a quote after just 1 millisecond (ms), then anyone located more than 93 miles (150 km) away will see a stale quote. Worse, they won't know it's stale unless and until they try to act on it and wait for a response. The animation below shows how this works. Note, this animation assumes zero processing time on the part of the investor or any other real-world delays. In other words, this is the best possible case, and it will be much worse for the investor in the real-world.
Effectively, when HFT changes its mind 1000 times a second (or after 1 millisecond) anyone located outside the (93 miles/150 km) circle below will receive stale quotes:
An expanded map is shown below. Each red circle shows how far quotes can travel before expiring at different update rates. For example, the ring labeled 150 is how far quotes will get if HFT is canceling and replacing 150 quotes each second. At 150 quotes/second, people in Chicago will be processing quotes they can't act on! People in Los Angeles have it even worse - quotes changing just 38 times a second will render them all obsolete by the time Los Angelians or anyone on the Google Campus in Stanford California first sees them.
Now, look back at the example in Google above - that HFT algo was changing Google quotes an average of 175 per second, which means those quotes were expiring somewhere between the two rings labeled 150 and 250 in the map below.
Back to our Google example, let's zoom out and see how often this HFT algo is running.2. Zoomed out to just under 30 seconds of time (the zoom box is detailed in chart 1 at the top).