You can now place orders in Canada if you have an IB linked account. And if you hold positions already you will be asked to reconcile the positions tomorrow.
We have switched to sending FIGIs to IB. While IB claims to fully support FIGIs, they don't have clear instructions on how to use them with FIX. We ended up discovering by trial and error (for real) that in North America we have to use Country Composite FIGIs, but in Europe we have to use Exchange level FIGIs.
However, we're still having problems reconciling European orders. They only send us ticker+currency, which is not enough in Europe. So for the moment sending trades in Europe is still not enabled.
I have some orders successfully sent and executed/working, but I also ran into a few issues.
Orders for Class A and B shares (.A and .B symbols) are getting rejected by IBKR.
Mixed lot orders are rejected and need to be sent as round lots.
#1 is obviously the bigger issue, as names like LAS.A and AGF.B are getting rejected with "BROKER_OPTION: Unknown Contract".
For #2, I did not round to round lots when generating my initial wave of delayed orders, that I'm releasing one at a time by editing the transaction. All but one of these orders is bigger than the lot size but since they're mixed lots, IBKR rejects them with the error "BROKER_OPTION: Order size must be multiple of lot size if it is larger than lot size". There is a "Use round lots" option check box on the Edit Transactions screen but it does not appear to have any effect. Not sure if it is working correctly for new transactions, but having better odd lot handling would be helpful here, e.g. a sticky setting for the strategy to always "Use round lots" and to have it modify order quantities under "Edit Transactions". Does this option when working round down or to nearest lot?
For now, I'm manually rounding to lots as I'm releasing each order. So far, I've successfully tested limit, VWAP, and POV orders.
Hmm, there is a reddit thread from 6 months ago with some context on this error message. Notably, here's the response from Interactive Brokers Canada from one user:
Initial Description: Issue with Placing or Modifying Orders via TeamViewer on IBKR Response from IBCS at 04-Sep-2024 Dear Mr. , Thank you for contacting Interactive Brokers. Interactive Brokers Canada Inc. (IBC) will no longer allow you to use your own trading application to electronically submit order for equities traded on a Canadian exchange or other marketplace through our proprietary application interface or API. This decision has been made further to multiple and extensive communications between IBC compliance and personnel and senior management of the Investment Industry Regulatory Organization of Canada (IIROC), our self-regulatory organization. IIROC has implemented IIROC Dealer Member Rule (DMR) 3200 A. 1. (b) (i) which prohibits IIROC registrants, including IBC, from allowing its clients to use their own automated order systems to generated orders. Unfortunately, 3rd parties like TradingView must abide by the same Canadian regulations when making use of the API. Kind regards, IBKR API Support - Technical Assistance Center|
It seems like this only applies to Canadian stocks for Canadian domiciled users? Are you able to submit orders for US stocks through P123?
After checking this further, it seems IBKR accepts odd lot, round lot, and mixed lot orders for limit orders for Canadian stocks with no issues. But its algo orders, VWAP or POV, etc., only support round lot orders for Canadian stocks -- mixed or odd lot algo orders will be rejected.
I'm guessing this probably originates from the fact that TSX has separate limit order books: the central one for round lot quantities and a separate odd lot order book. The distinction by IBKR seems somewhat arbitrary as TSX will split a mixed lot order between the two books, but I'm guessing we'll have to just deal with IBKR's limitation for the time being.
To that end, it would still be useful to have a "Use round lot" option that works for order quantities calculated automatically from following a live strategy. It seems that the current checkbox only takes effect when setting a target order quantity as a percentage of the equity.
I am still getting the error "API/CTCI orders". Just wondering if there will be a solution, or if the automation between P123 --> IBRK CAN will never work?
Personally, I would reach out to both IBKR Canada to seek further clarification on the CIRO 3241 1. (ii) (a) rule which states:
Order execution only account services
(1) A Dealer Member approved by the Corporation to provide order execution only account services
within either a separate legal entity or a separate business unit, must:
(i) implement the policies and procedures required by Corporation requirements, and
(ii) not allow its order execution only account service clients to:
(a) use their own automated order system, as defined in securities laws, to generate
orders to be sent to the Dealer Member or send orders to the Dealer Member on a
pre‐determined basis, or
Perhaps there's an argument to made that because the orders are generated, reviewed, and sent by a human that's clicking rebalance, setting order types, and clicking send, that the orders sent through from p123 through the API should be exempt from this restriction.