Questrade allows you to hold USD (pseudo USD for this case), so that they don't do forced conversion of USD to CAD when selling, and CAD to USD when buying US stocks.
Pseudo is basically a USD fund created by Questrade. This is the only method that I know of that allows RESP holders to own USD in these accounts without violating the rules for RESP (whatever that may be).
Q: Why stocks in the US? I just want to invest in Canada.
A: Well, Canada's economy is really small in comparison to the US. And most of the Canadian companies aren't that promising.
Q: What about the dividends paid by US companies?
A: They will become the pseudo USD, if I remember correctly.
Q: Are there any fees for having such feature?
A: Yes, the fee is $5 every day you trade a US stock. You don't get charge the fee if you don't trade any US stocks on a single day. However, you only pay $5 extra for that day, not per trade. That means you can trade US stocks 1000 times on Monday, and still get charged only $5 extra.
Q: What so bad about RESP at other brokers?
A: Since you can not have a USD balance in RESP accounts, they will automatically get converted to CAD. The ForEx spread is around 1.5% to 2.5% more than the market. You can call it the ForEx fee. Back 10 years ago, the ForEx was around 1.5%, I am sure that is not the case anymore. It is around 2.0% to 2.5%.
So every time you sell a US stock, you get dinged. And every time you buy a US stock, you get dinged. So a full round trade will cost you from 3.0% to 5.0%.