Back to Community
Algo Execution

Does Quantopian use smart order routing to adapt to different market structure, regulatory frameworks and liquidity (backtesting and live)? If not, is it possible to build this into algo?

3 responses

In live trading with Interactive Brokers (IB), you can specify if you want your order routed to exchanges via IB’s Smart Routing or to be routed to IEX. By default, orders will use IB’s Smart Routing method.

Full details available here:

Thank, Mohammad! Do you know if this can be specified during backtests ?

Smart Order Routing is provided by a broker- if you connect to Interactive Brokers, they have a smart order router that will execute your order. As Mohammed mentioned, you can send a directed order, aka send directly to an exchange such as IEX or bats as well through IB, though I personally have not looked at the API in depth to see if thats available in Quantopian. The reason being you do not want to send flow directly to IEX or any other exchange unless you have level 2 data. IEX is extremely overhyped- there is zero need for a quantopian trader to want to route to a single destination exclusively.

Robinhood is extremely opaque about how it actually executes orders- presumably it routes to a broker or an algo provider as well, but at least from their website, they don't say much about it. $1/trade is a small price to pay IMHO for transparency about where your order is routed and what they are actually doing with your flow.

You can not specify this during a backtest, it doesn't really make sense- a better question is how are executions modeled in backtests.

Maybe a short answer is the defaults will smart order route for you, and that's all you really need to know for now.