Earlier this year I was testing market making ideas in detail. To quickly recap, the idea of making a market entails placing limit orders either at the current best bid and best offer (BBBO) or further away. When the limit order gets filled, the trader achieves a major advantage. Spread costs no longer weigh on the returns.
A failed trading experiment with MB Trading to earn commissions segued into a trading project that I ran on behalf of a client. The key issue was that the strategy could only profit if trading costs were kept to an absolute minimum. The easiest way to reduce cost is to not pay the spread.
Creating a limit order at the best bid/best offer accomplishes that. Whenever a buy limit placed at the current bid price receives a fill, the trader can immediately sell the trade at the bid free of charge.
That’s the theory, anyway. The BBBO idea makes the assumption that another bid or offer would continue to stand behind my own at the same price. Like most trading experiments, that assumption flopped. The NinjaTrader strategy would post the order, then leave it at the original price without changing. Sometimes the order sat for 10-20 minutes. It was only when the price crossed a custom indicator line in the opposite direction that the strategy cancelled the order and placed a new one at the best bid/best offer (BBBO).
The most informative insight that I learned about the experience was the fill rate on the orders. Curiously, placing them at BBBO only resulted in execution 75-80% of time on several hundred attempted trades. MB Trading’s ECN program is rather small. I chalked the low execution rate up to a lack of price takers, even on a major pair like the EURUSD.
So, we switched to Interactive Brokers and tried again. I was quite surprised to find the same result; orders placed at BBBO only filled 75-80% of the time. The really profitable trades always got skipped over as the market found its stride and zoomed upwards.
I don’t know how much of this falls in line with normal market mechanics and what responsibility high frequency algorithms might play in the low execution. It appears commonly accepted that HFT algos routinely engage in games where false orders are displayed with the intention of lifting the market prices, only to slam them back down again when a sucker accepts the lifted price. An interview with a high frequency trader made me wonder if perhaps the HFT algos were lifting the price hoping that my strategy would be their sucker. An interview from two months ago added to my lingering suspicion.
A second example: HFTs can model other traders’ behavior. When someone trades through Scottrade or Interactive Brokers, their order has a unique number attached to it – the same number every time a client places an order. This number is bundled with all relevant trade information (time, price, etc.) and sold as an encrypted “enhanced data feed.” An HFT can then use those past results to predict the trader’s behavior.
I don’t believe this happens at MB Trading, although my order sizes were admittedly so small it’s easy to see individuals among the order stack. I routinely look at the market depth and feel like I can identify the orders of individual retail traders.
I can’t help but wonder how many people experience a surprisingly low fill rate using limit orders at BBBO. Use the comment section below to share any relevant stories that you may have.