Back to Community
Why doesn't Quantopian support MOO/MOC orders?

Pardon me if I've asked this question before, but I don't think I've ever gotten a satisfactory answer.

On Quantopian we are discouraged from designing algos that trade at/near the open, due to the typical high volatility and wide spreads in the first minutes of trading. We are encouraged to instead wait until 30-60 minutes after open before rebalancing our portfolios, because at that point prices have stabilized, spreads have tightened, and liquidity supposedly is higher.

Elsewhere I've read that a major reason why traders wait an hour after open before placing orders is because in the context of day-trading you need to wait that long in order to see how the price movement establishes itself. However, on Quantopian we are not day-trading -- we are usually entering longer-term trades based on already stale information (pipeline uses yesterday's data at the latest) so waiting an hour means that signal has only gotten more stale/noisy.

I've also read elsewhere that the opening and closing auctions are the most liquid times of day. I've had trouble finding information confirming that spreads wouldn't be an issue during the auctions, but it seems to be the case. Liquidity is also better than 1 hour after open, right? Also, presumably during the auctions you don't need to worry about HFT detecting your "whale" order and front-running you, whereas during normal trading hours this is a very real risk, no?

So why doesn't Quantopian support Market On Open (MOO) and Market On Close (MOC) orders? These order types seem to offer some real benefits to the Quantopian paradigm.

1 response

Also, a related question -- The order optimizer is already taking care of much of the execution logic for our alpha signals, which is great because it seems an execution algo is an entirely different skillset than statistical arbitrage. So why isn't the order optimizer setup to simply be fed its target portfolio in pre-market and then take care of breaking up and placing the orders as liquidity presents itself (e.g. target <5% of open auction volume, slow down during the first minutes of trading while spreads are wide, and then pick up speed again once spreads tighten)?