"We risk becoming the best informed society that has ever died of ignorance"
- Rubén Blades

"You can't make up anything anymore. The world itself is a satire. All you're doing is recording it"
- Art Buchwald

"It's getting exciting now, two and one-half. Think of everything we've accomplished, man. Out these windows, we will view the collapse of financial history. One step closer to economic equilibrium"
- Tyler Durden

"It is your corrupt we claim. It is your evil that will be sought by us. With every breath, we shall hunt them down."
- Boondock Saints

Tuesday, July 24, 2012

OoOoOoOoOoO That Smell

Life was great when equity prices traded in fractions.  Within a given dollar handle, there were only 8 price points.  Once the SEC implemented decimalization, 100 price points became accessible.  Now, thanks to physicists who deal in "abstract reality", a reality anyone outside that field is not aware of, we have sub-penny pricing, which offers 10,000 price points for each dollar handle.  Smells like HFT to me.  It's hard to picture why someone would feel the need to value Apple down to 4 decimal points in a country that has a debt level taking on 15 spaces to the left of the decimal.  Unless of course this was some sort of lucrative scalping perhaps by some bad algorithm or maybe one of those groups that the CIA pinned as Financial Terrorists.

I had an instance a few weeks back in a stock where I placed a limit order for $17.04 and as the price fell from $17.10, someone's computer kicked on and took the price to $16.98, filling me at $17.0399 along the way.  That's not the price I asked for because (a) I have no use to be bidding for points to the right of the decimal and (b) I didn't see it on any of the books on any of the lit exchanges in the US.  

Personally I didn't care that it happened.  And as of this morning, I still didn't.  Once afternoon rolled around today and I scrolled through my TweetDeck list of key characters, I saw a post from Nanex on Sub-Penny Price Anomalies.  What I realized as I read their report was that even though I was saved $0.0001 by being filled at $17.0399 instead of $17.04, someone's computer managed to come in and grab $0.0099 on the $17.03 handle, giving me a better price and burning the $17.04 offers I thought I was sending my order to hit.  And if the computer borrowed shares at $17.04, sold them to me at $17.0399 then covered the position on the $17.0300 handle, it is nearly a risk free move that nets $0.0099 every time.

Below is some of their report.  Nanex likes to embed their own charts and offer a simple way to compare and scroll through them.  To preserve that experience and also provide readers access to any updates to the post (which Nanex does frequently), CC is only publishing a portion of the report.

We recently grouped all trade execution reports priced with 3 or more decimal places into 100 different bins by using the 2 digits that represent hundredths of a penny. We only include trades priced above $5 from NYSE, ARCA, and Nasdaq listed equities. For example, a trade with a price of 27.8099 is added to bin 99  (last 2 digits), while a trade with a price of 56.2520 is added to bin 20. We did this to see if anything interesting came out of the data (and found quite a surprise, see below).

Two columns of sub-penny price examples showing the hundredths place (becomes the bin number)

It helps to understand a few dynamics of how and why sub-penny trade executions occur. Dennis Dick over at PremarketInfo.com has written two excellent articles explaining sub-penny trade executions: Retail Price Improvement Scam, Exploring the Hidden Costs of Retail Price Improvement , and Dark Secrets: Where Does Your Retail Order Go? 

Expressing a price in pennies requires 2 decimals places (0.01) and prices that lie between 2 pennies (sub-penny) requires 3 or more decimal places. For example, the price 31.4601 lies between 31.46 and 31.47. Retail investors can only place orders priced to the nearest penny. But eligible market makers can enter orders priced to 4 decimal places, and often do this to give a retail order a "better" price.

It is important to understand that every trade that undergoes this price improvement process involves 3 parties and results in a trade execution price with more that 2 decimal places printed to the tape. The 3 parties are: the retail investor (Investor A) whose order receives a slightly better price, the market maker (we use the abbreviation HFT) who provided the slightly better price, and the other retail investor (Investor B) whose order was not executed because HFT stepped ahead with the slightly better price. The benefit to Investor A is obvious. The loss to Investor B is sometimes chalked up as a lost opportunity cost (missed trade execution), but is actually easy to calculate. We know the cost that Investor B would incur to ensure their trade executed at the time HFT stepped in front of their order - it's simply the best bid (if Investor B was selling) or the best offer (if they were buying). The best case scenario therefore would be the loss of the bid/ask spread which would be at least 1 cent per share. Likewise, we can simplify and say HFT benefits by the amount of Investor B's loss minus the price improvement to Investor A's trade (HFT will also capture exchange rebates, but for simplicity, we'll leave that out).  Basically, HFT and Investor A split a profit of a penny per share, the same one that was lost by Investor B (calculated from opportunity cost).

That leaves the question of how Investor A and HFT split the 1 cent profit. If we assume HFT will only part with the absolute minimum amount necessary, we can assume that trades executing just 1/100th of a cent away from the next penny will be split 99/100ths to HFT and 1/100th to Investor A. Likewise, prices 2/100ths of a cent away will be split 98/100ths to HFT and 2/100ths to the investor. This split continues all the way down to a price that is exactly halfway between two whole cents, such as 75.0050. Now these are special cases, because several brokers will execute retail orders meeting certain criteria at the mid-point of the bid-ask spread (which in many cases are priced in 1/2 cents). Therefore, we will exclude any trades priced exactly halfway between two whole cents, because we have no way of differentiating this group.

By using the criteria above, we can calculate the amount gained and lost by Investor A, HFT and Investor B, by simply grouping sub-penny trade executions using the last 2 digits (tenths and hundredths of a penny). This results in 99 bins (1 through 99). Bin 1 represents prices 0.0001 away from the nearest cent, and bin 99 also represents prices 0.0001 away from the nearest cent (12.2699 is 0.0001 away from 12.2700). Therefore we can combine bins 1 and 99, 2 and 98, 3 and 97 and so forth up to bins 49 and 51. That gives us 49 combined bins and one remaining bin 50. Since bin 50 represents prices exactly between cents, and these can result from other mechanisms, we'll exclude bin 50, leaving us with 49 bins.

The image below shows the trades for July 19, 2012 grouped by these 49 bins. You can download the spread sheet here.

The 1st column indicates the bin. Bin 1 represents trade executions that ended in 1 or 99. Bin 2 represents trade prices ending in 2 or 98 and so on up to bin 49 which represents trades ending in 49 or 51.
The 2nd column represents to sum of shares for each trade in each bin and the 3rd column represents the sum of the trade value (tradePrice * size) for each bin. With this information, it is possible to estimate the gain or loss for Investor A, Investor B and HFT.

For the first bin, Investor A gains 1/100th of a cent per share traded or the product of the number of shares and 0.0001. For bin 2, Investor A gains 2/100ths of a cent per share. For all bins, Investor B will lose the bid/ask spread (we assume the best possible case of a 1 cent spread), which is the product of the number of shares and 0.01. Using our simple model where HFT and Investor A split the penny lost by Investor B, we can attribute the gain to HFT as being the negative of Investor B's loss, minus the Investor A's gain. For July 19, 2012, trades with sub-penny prices (excluding 1/2 cent) consisted of 415 Million shares and had a dollar value of $14 billion. Out of those $14 billion worth of trade executions, Investor A group as a whole, received price improvement totalling $570,016, while  Investor B group lost $4.1 Million, and HFT made a profit of $3.6 Million.


The Anomaly

So what is the anomaly?

If we separate the price bins back out (instead of combining bin 1 and 99, 2 and 98 and so on) and then plot the total shares and $value for each bin, the resulting graph will show a remarkably consistent mirror image between the two price bins previously combined. That is the number of  shares and $ value of trades with prices ending in #.##01 will be remarkable similar to trades with prices ending in #.##99. Share counts and $ value of trades with prices ending in #.##02 will mirror trades with prices ending in #.##98. Likewise for 3 and 97, 4 and 96 and so on all the way to 49 and 51.

Step through the charts below which show many different trading days (from the flash crash, to pre-holiday trading session, to recent days) and every one shows a very consistent mirror image. The wiggles in the lines to the left of center will track the same wiggles in the lines to the right of center. The center (0 on the x-axis, between 95 and 5 ) is a whole cent boundary.

Each image also includes an pie chart inset showing the break down of the $ value of trades in various price bins. These charts show, for example (see red wedge), that 20% to 36% of all price improvements were just 1/100th of a cent from the next whole penny. That means Investor A got a whopping price improvement of 1/100th of a cent per share, while HFT kept the other 99/100 of a cent per share. 

A lot like robbing Peter of $100, paying Paul $1 and pocketing $99.