a robot holding a cup

Questrade: Custom Indexing extends to CAD stocks, more AI platform support

Questrade has been beavering away on a raft of new features, some of which were promoted with great fanfare in an online event last month. I covered that in some detail in a previous post. There are already some significant developments to these features so I thought I’d mention them here so you have the latest view.

Custom Indexing now includes Canadian Equities

Custom Indexing, in Questrade’s estimation, allows you to

“Combine the control of picking stocks with the ease of owning ETFs to put your own spin on the market. Then, keep the whole thing in sync with one click.”

Questrade website: Custom Indexing

Custom Indexing wasn’t actually part of last month’s event, but was quietly released earlier in the year. I covered its first release in this post. In essence, it gives you the ability to create your own all-in-one fund. In its first release, I thought it showed promise but as it only permitted the inclusion of US Equities, the feature was of limited use to most people. (Including me, since I’m nearing the end of my multi-month initiative to kick USD out of my retirement portfolio.)

Now that Custom Indexing supports Canadian equities, you can build your own all-in-one fund, and save on the additional management fees these funds typically attract (I broke down how much a fund like XEQT costs in a previous post). It’s quite easy to set up, I built an equivalent to XEQT in about 5 minutes using its underlying funds (XTOT, XIC, and XEF). And with one click you can reset the desired percent allocations of each fund)1.

I could see using this in my TFSA accounts as a result; I’d really like to use this in my RRIF accounts, but you can’t have a RRIF that uses custom indexing, inexplicably.

Questrade’s MCP expands

If you missed it, the MCP is what allows your Questrade accounts to be connected to an AI platform. I’ve been experimenting with Anthropic’s Claude. I talked about my experiences using it previously. But already it’s expanded in scope.

  • The MCP now supports ChatGPT, Cursor, Codex and VS Code
  • The MCP now supports trading — all trades have to be approved via push notification

I continue to tinker with this feature. There’s a lot of promise here to get rid of some of the manual tasks I have to execute on a monthly basis. Using free versions of these AI platforms is in itself a bit limiting2, but since I’m still learning, I don’t mind.

  1. For longtime Questrade customers, this will seem eerily familiar; “one click rebalancing” is one of the features of Passiv Elite, a service that used to be offered gratis to Questrade users. ↩︎
  2. For example, I can’t connect both my wife’s Questrade accounts and my Questrade accounts to the same instance of Claude without paying for a Claude subscription. But I can use multiple AI programs, no big deal. ↩︎

ai chat interface on laptop screen

Mini-Review: Questrade MCP support for AI agents

I’ve had AI on the brain lately; it’s partly because I’m always curious about new technology — but I also recognize that my own portfolio management is more labour-intensive than it needs to be. That’s partly because I enjoy the tinkering, partly because I like things done in a certain way. My spreadsheets help a lot with making things more mechanical, but I still have to manually update them to get useful results1.

Now, I’m far from an expert on this sort of thing, but I’ve been experimenting with Anthropic’s Claude2 for a few days, getting familiar with how it works, and downloading the desktop client to my laptop.

Coincidentally, this week, I noticed a new little popup in my Questrade portal this week which promoted a new capability, namely MCP support: How to Connect Questrade to AI Tools with MCP3.

“MCP” stands for “Model Context Protocol”. Gemini helpfully describes it as “… a universal USB-C port for artificial intelligence”. Clear enough. In other words, MCP allows Claude read-only access to my Questrade account, which sounded rather useful and instead of pages of documentation (typical for an API integration), I got a three step process to make the connection.

  • copy the MCP URL from Questrade
  • Plop it in Claude’s Custom Connectors setting
  • Login to Questrade and permit access from Claude

I successfully followed these three steps in roughly 60 seconds, and next thing I knew, Claude was able to give me a list of my Questrade accounts and balances4.

That’s easy stuff, admittedly, so I figured I would ask it to please calculate the number of XGRO shares I would have to sell in order to make my monthly RRIF minimum payment. (This is something I actually do every month; you can see the steps I have to take to get paid in retirement over at What do you have to actually DO to get paid?

Claude was happy to help me — and it knew enough to ask me how old I was and what the value of my RRIF was at the beginning of the year. (This is how RRIF minimum is calculated, if you’re new to how RRIFs work, you might want to give Demystifying RRIFs a read).

But since I already know what my monthly RRIF minimum payments are, I told Claude to please use those. And it correctly calculated how many shares to sell based on the live cash balance in the RRIF account and the live quote for XGRO.

Claude immediately offered to set up a monthly schedule to do this…but, unfortunately, Claude scheduling is one of those capabilities that requires a not-free Claude subscription. The entry level subscription would be $24/month, or around $300 a year. In the grand scheme of things, that’s not a ton of money, but as a rule I’m a bit reticent about subscription-based services since they have a way of slowly adding up and becoming a drain on your hard-earned savings5.

That was a silly, easy question to ask, and failing that test would have resulted in mockery.

So I asked Claude a more difficult question, namely to tell me how much Canadian Equity exposure I had across my entire portfolio.

Claude was quickly able to identify my 100% Canadian equity holdings (currently VCN, XIC and HXT), and correctly pointed out that my all-in-ones (XGRO, XEQT, ZEQT) were also sources of Canadian equity. With a confirmation to proceed, Claude was able to quickly create an aggregated table that showed all my Canadian equity holdings6.

But there remained a problem. Claude failed to uncover the Canadian equity portion of AOA, which is a USD-based 80/20 fund. My own calculation put the Canadian equity portion of AOA at 2.64% so it’s small, but not zero. But since I have a pretty large (if dwindling7) portion of my savings in AOA, this is a signifiant miss. I pointed this out to Claude who agreed (naturally) and fixed it8, along with a helpful and accurate observation9:

“Notes on AOA specifically: it’s a US-domiciled fund, so its 3.03% Canada weighting is small and comes through its international-developed-markets sleeve rather than a dedicated Canada allocation — nowhere near the home-country tilt you get from XEQT/XGRO/ZEQT. Its USD value was converted at the last USD/CAD rate we pulled (1.4087); today’s rate may differ slightly.”

Anyway, this experiment proved to be interesting, but without additional automation10, not particularly helpful to me. The key gaps right now are that it does not currently provide access to my spouse’s accounts (this I blame on Questrade’s design and decisions regarding how to treat TA accounts), and the lack of an MCP connector to Wealthsimple11 (where I have some retirement holdings). Have you connected your DIY accounts to an external tool? Tell me about it at comments@moneyengineer.ca!

  1. Questrade (my primary broker) has had API access for quite a long time, and I kept thinking I would figure out how to make it useful but I do find the security aspects of messing with this a little daunting. And there have been enough negative posts about its reliability and availability it makes me wonder whether it’s worth my time. ↩︎
  2. The free version, naturally. I am still a cheapskate. ↩︎
  3. It appears that the promotion of this capability is not showing up in everyone’s account. Whether it is being selectively enabled on a per account basis is unknown. ↩︎
  4. Well, not all of them. I’ve long complained about how Questrade handles accounts for which I have Trading Authorization (i.e. my spouse’s accounts). There’s no unified view from my login and this also shows up in my interactions with Questrade via Claude. Claude also doesn’t know about the accounts for which I have TA. ↩︎
  5. “Pay yourself first” (cfr The Wealthy Barber) cuts both ways. If you set aside money for savings before you ever see it land in your bank account, it is a bit like magic over time. If you are billed for a subscription service that automatically renews, it’s like magic for the provider of the subscription service. They’ve done the work to land a client, and now they can just watch the monthly revenues roll in, knowing that automatic renewals are unlikely to get noticed immediately, if ever… ↩︎
  6. It appears Claude took a look at the real time Canadian equity exposure of (for example) XEQT. I don’t myself bother doing this because XEQT (for example) has a stated objective of keeping the Canadian equity portion of its fund at 20% and it rebalances periodically to do this. So 20% is good enough for me. ↩︎
  7. I’m actively kicking USD assets out of my portfolio: Kicking USD out of my retirement portfolio ↩︎
  8. It set the percentage at 3%. ↩︎
  9. This wasn’t new or helpful to me since I own AOA, but I include it just to show the sorts of things Claude mentions. ↩︎
  10. Which may be possible; I’ll have to play with it a bit more ↩︎
  11. There are some 3rd party integrations I’ve seen, but I’d prefer it to come from the source. ↩︎

a person is holding a package with their hands

What companies are in my retirement portfolio?

I cover what I hold in my retirement portfolio every month (latest update is here), but as you can see, I only hold ETFs. What’s underneath the ETFs? Let’s take a look!

Calculating this is straightforward:

  1. Use the percentages I have of each ETF from the June update
  2. Look at the “Holdings” section of ETF or in the case of AOA/XGRO/XEQT, “Aggregate Underlying Holdings”1 and write down the percentages of each stock. I stopped when I accounted for 20% of each ETF.
  3. Multiply (1) by (2) and add them all up.

By doing this exercise, I can now account for the 20 companies that make up 20% of my retirement portfolio:

These 20 companies are really the tip of my personal investment iceberg — my aggregate retirement portfolio has at least 32,000 holdings, since that’s what’s actually inside AOA, the one ETF I own with the most holdings2. But the fate of these 20 companies will have an outsized influence on the overall performance of the portfolio. The only surprise for me is that there is only one company outside North America in the list. I would have expected one or two more.

It will be interesting to see what kind of differences I see once I complete kicking USD out of my retirement portfolio and go back to a list of only seven magnificent ETFs. I’m not sure there will be big changes, given that I’m keeping my asset allocations constant throughout, but I’m expecting some differences3. We’ll see come January 2027, I guess.

Just for fun, and given my recent article on the SpaceX IPO, I wanted to know how much I held of that particular company. AOA hasn’t included it yet4, but XGRO and XEQT have already. As of June 30, 0.02% of my portfolio is invested in SpaceX.

  1. In most cases, as of June 30. VFV only shows to May 30. ↩︎
  2. XGRO has 22000, for reference. I think the extras in AOA come mostly from fixed income (bond) products since they have broader geographic coverage. ↩︎
  3. The biggest changes won’t be visible since they occur in the bond side of my holdings. AOA and XGRO have very different approaches to this part of the market, but as it’s only 15% of my retirement holdings, they don’t show up as a “top” holding in my retirement portfolio . ↩︎
  4. And won’t until SpaceX is profitable. AOA includes IVV, which is an S&P 500 index fund, and the S&P 500 requires companies to be profitable before inclusion in that index. ↩︎

different flavor of pizzas on a wooden surface

News: Questrade adds fractional share support for (some) Canadian ETFs

“Fractional Shares” allow you to buy less than a single share of the stock or ETF that supports it. Fractional shares ensure that every last penny of cash in your account is actively invested, which, in my view, is a Good Thing. Non-interest earning cash isn’t helping you meet your retirement goals.

Questrade currently holds the majority of my retirement savings, mostly because they were offering free money last year to move accounts over to them1.

They provided support for fractional US ETFs over a year ago, to great fanfare, with Canadian ETFs “coming soon”. It would appear that “soon” is “now”. There’s no way to see which Canadian ETFs have support for fractional trading in any sort of list, but here’s the status of the Canadian ETFs on my magnificent seven ETFs list2, which you can see if you ask for a quote of any symbol you’re interested in.

ETFFractional share support?
XGROYes
XEQTYes
XICYes
VFVYes3
XCBNo
ZSTNo
ZMMKYes

I’ve tested it out, and the one flaw I’ve found is that you cannot enter a dollar amount for a trade when using the Edge Web version of the Questrade platform. You’re free to do the math yourself and enter a decimal number of shares when using Edge Web4.

Wealthsimple also offers fractional ETFs, and there I have found no restrictions. Questrade is catching up, but still behind Wealthsimple in this regard.

  1. And if you are considering Questrade yourself, you can earn a bit of free money if you use my referral code: 755609544498867 ↩︎
  2. These are the ETFs that make up the lion’s share of my retirement portfolio. ↩︎
  3. Fractional VFV is particularly valuable since its unit cost is north of $100. ↩︎
  4. Which you are forced to do if you want to make trades on accounts for which you are the authorized trader. ↩︎
dollar cut in half

Another quarter, another gambit

Every quarter, I convert some of my USD to CAD using Norbert’s Gambit. A good chunk of my retirement holdings are in USD, but since I spend in CAD, I need a cheap way to convert. I’ve been tracking my actual costs using Questrade’s platform for the past year. You can read about that over here.

Anyway, over the past year, the conversion has been effective. I have never paid the usual FX rates charged by Questrade (1.5% over the spot rate). My most recent conversion was the most expensive one to date, and that was a rate 0.7% over the going rate on the day I started the process. On three other occasions, I actually made out better than the spot rate, but that was because the foreign exchange rate moved in my favour in between the purchase and the sale.

My need for US cash has evaporated now that I have a no-FX fee credit card. (You can read about what cards I’m using over here.) So this makes me wonder if it’s time to get rid of the majority of my US holdings. Note this doesn’t mean that I will stop investing in US equities — that would be unwise — it just means I will stop holding assets denominated in US dollars.

The are downsides to holding USD-denominated assets, of course:

  • It adds complexity to the portfolio. AOA is the US equivalent of XGRO; both are 80/20 asset allocation ETFs. But because AOA is a US ETF, it holds a paltry amount of Canadian Equity, and I have to make up that difference elsewhere by holding pure Canadian Equity ETFs like HXT or XIC.
  • If you hold too much USD (or any foreign property) in non-registered accounts, you’ll be obliged to file a T1135 with CRA1.
  • It may limit the universe of online brokers you can deal with. Wealthsimple, for example, does not currently support USD RRIF accounts.
  • Foreign exchange can work for or against you. It’s another variable that can impact your returns. I’m not convinced this is a downside, but it does make tracking things like ACB in a non-registered account a little more tedious.

    One big hesitation I have about converting all my USD holdings would be the time I’d have to be out of the market while the Gambit runs its course. As you can see in from my tracking, each conversion means I’m not invested in AOA for 3-4 trading days. I just hate that idea. I also hate the idea of converting at a time when the CAD<->USD exchange rate is perhaps not optimal. (A low Canadian dollar would be a good thing for me in this case.)

    One place I sort of like having the USD assets is in my cash cushion, especially since US interest rates are quite a bit higher than Canadian rates. (I track current rates over at HISA and short-term bond table (Canada & US)).

    So perhaps I just need to craft a plan where I make more aggressive conversions over a fixed time frame. x% every month, with a deadline. This helps mitigate the “time out of market” and “exchange rate” issues. Crafting the plan with fixed milestones also takes emotion out of the equation; if I set a series of future transactions, then all I have to do is press the button mechanically.

    More to come on that.

    1. If your cost base exceeds $100,000 CAD ↩︎