and any exchanges does not seem to be 'instant', and +3-5 % when using cc
The exchange fees vary by exchange. Coinbase is popular and available in Canada. As long as you're not concerned about sharing your identity with Coinbase you can link a bank account (create an account specifically for your crypto currency transactions) and then buy Bitcoin, Ethereum, or Litecoin with Coinbase funded through that bank account. The transaction fees via bank account purchase are less than 2%. The transaction will take a week to settle but you'll lock in your price at the point of sale.
If you don't want to use Coinbase we can share many other options for you to consider.