Cool, since it is the .1% situation, a manual solution after an automatic notification, and a auto filled out order "template", seems fine too. This is "better" under the assumption, that what went "wrong" could be caused by other things going on that you don't want to code for.
Is this the same for NYSE though? I would think so but I struggle to get this confirmed even after going through their online documentation...
2k/45k, unlikely that it had anything to do with the auction but rather an IBKR issue. Out of many thousands of MOCs, I've never had a missed fill. Your order can move the price, sometimes dramatically, in which case there's always someone to take the other side for the easy opportunity.
As far as I can recall (and I am too lazy to look it up) the MOC orders on NYSE are guaranteed. I think it's done to make the world more confusing, but the general idea is that big board stock have more liquidity and thus the exchange can get away with guaranteed execution.
You could have gone with a all-or-none order... An All-Or-None (AON) order is an order to buy or sell a stock that must be executed in its entirety, or not executed at all. AON orders that cannot be executed immediately remain active until they are executed or cancelled. The problem is you may not get your order executed. It has happened to me many times. But sometimes (on thinly traded stocks) it is more desirable to have a full lot (100) shares...Than the paperwork of dealing with a lot of 1 and 2 share trades (come tax time).
AON orders have the lowest priority so you'd always end up at the back of the queue, so you get dismal fill rates. Also, I might be wrong, but I think participation in opening and closing rotation can not be subject to AON order modifiers.
I believe you are correct. But, if it is a thinly traded stock...And you need 100 shares to do an option (being covered), sometimes it is the way to go (with patience). It becomes a much bigger problem the larger the trade 200-500 shares. I will weigh the average stock volume with the option prices at the time. Just saying it is a real headache to have two partial fills (different prices) on different days...To get my lots filled.
I didn't keep the whole record so can't tell exactly. My system ensures orders are placed at least 10 seconds before any cut-off times depending on the venue which would be 5 minutes for Nasdaq MOC, and the trigger for this particular order actually fired much earlier. But I don't rule out my own bug of course. It looks like the order was accepted at the exchange though, otherwise it would not fill even partially, no?