follow-up on Flash Boys

In my previous post, I discussed market microstructure.  I hypothesized that limit orders directed to exchanges paying for order flow rather than paying market makers would be executed first.  I couldn’t think of a good reason to route limit orders to IEX.  So, I just ran a preliminary test of the hypothesis by sending 5 orders of 100 shares each to various exchanges, including the InteractiveBrokers Smart Router.  Note that the exchange rebate structure has changed since the publication of Flash Boys.  BYX is now the exchange that pays the most for order flow.  Here are the results.

trades and volume

trades and volume

You can see that I traded on BYX first, as expected.  I paid the seller about 20 cents for the order flow.  A minute later, a larger sale came in and I received about 20 cents on each of BATS, ARCA, DirectEdge, and Island.  The Smart Router had chosen Island.  Then, someone sold 100 shares at 19.16 without knowing he could have made $3 more on IEX.  And a minute and a half later, my IEX order got filled.  To state the obvious, it sucks to have a $19.19 bid go unfilled as someone else sells for $19.16.

Here’s a full view of the bids and asks during this time.  You can see how the BYX trade happened while the asset was still being quoted at its original level.  Even though I paid 40 cents more for those 100 shares, it was a better deal than the second set of trades.  They occurred just as a big sale came in and drove the value down around 5 cents ($5 per 100 shares).  And then the IEX trade didn’t occur until the ask came down to $19.19.

bid, ask, and last trade

bid, ask, and last trade

Another way to see that the IEX execution was bad is to think of it this way:  You want to always be buying on the white line and selling on the blue line.  The BYX trade was good because the white line and blue line didn’t move when we bought on the white line.  The second set of trades were okay because even though the white line dropped as soon as those trades occurred, the blue line still remained above the trade price.  The IEX trade was bad because we bought on the blue line.  Someone had announced intention to sell at $19.19 to the entire market and that’s when IEX sent our order over to match with that seller.

I have another experiment planned, so stay tuned.