How to Make a Trade and Pool Coins on Uniswap

Uniswap is a decentralized exchange running on Ethereum and this post will describe how to make a trade on Uniswap using a Metamask wallet. Various Ethereum wallets can be used on Uniswap, but if you do not currently have a wallet, please follow this link to read my previous post on how to create a Metamask account. An Ethereum wallet is required to use Uniswap.

When I arrive on the Uniswap page, I choose the SWAP link from the top menu, then I can toggle the token I would like to sell and the one I would like to buy. I can enter the amount, and the price is calculated by Uniswap based on their current pool.

I decide to sell 0.5 ETH and receive 89 UNI. I notice that that the gas cost for the transaction is about 10% of the value of the transaction, so I adjust the gas price to only 2.5% of the transaction cost, thinking that if the gas is too low, it will just take longer to clear the ETH blockchain. I execute the exchange and see the transaction show up on Etherscan, click here to view the TX. But soon realize that my contract fails because it ran out of gas. I then see the 0.5 ETH returned to my wallet but my gas is lost.

So now I’ve wasted $20 worth of ETH gas, so I do some more research and see that it takes the same amount of gas to execute any size of transaction since the ETH blockchain needs ot execute the same smart contract each time. So a 0.1 ETH uniswap transaction and a 1 ETH transaction cost the same gas. Obviously it would be better to execute a bigger transaction to spread the gas fee over a larger amount.

So it turns out the price of ETH gas has a big impact on the cost of using uniswap. I decide to make 3 trades. I swap 1 ETH for 191 UNI, 1 ETH for 75 LINK, and 1 ETH for 1.5 MKR. At the time of writing, the gas for each transaction is about $25 USD and the notional value of each trade is about $1000 USD. So a gas cost of 2.5% per transaction.

Now I have three new ETH tokens to pool on uniswap, I go through this process next. I pool my three new coins with wrapped ETH on uniswap by clicking on the POOL link in the top menu, choose my pairs, and execute the transactions. Since my Metamask account is linked to my uniswap profile, the transactions execute by Metamask and once again I choose my gas amount to pay. Once again, I pay about 2.5% of the value I am pooling in ETH gas.

Overall, these transactions are expensive at the time of writing. This is a function of the high price for ETH gas. I suspect more miners will be drawn into ETH because of the currently high gas price. Seems like the volume of transactions happening on ETH are outpacing miners ability to add supply (hence the higher gas price).

The current annualized yield for the coins I pooled on uniswap are as follows based on the past 24 hours of data:

UNI/ETH = 28.99%

LINK/ETH = 31.39%

MKR/ETH = 23.43%

Let’s see what happens over time.

How to Create a Metamask Account

This post describes how to open a Metamask account. Metamask is an Ethereum wallet for your browser and works as browser plugin. It can be used to store ETH tokens.

The first step is to add the Metamask extension to your browser. Navigate to Metamask or the Chrome web store to download. After downloading, you will be presented with a welcome screen that will prompt you to get started. You’ll be asked to create a password (you already have an e-mail associated with your account based on you added Metamask as an extension to your Chrome browser). Next, you will be asked to generate a password phrase. This will be used to recover your account or used for the Metamask app on your mobile device.

Once you have created your account you’ll see the Metamask extension in your browser. I also added the Metamask app to my mobile device and was able to link my account. Do this by downloading the app on your phone and use your password phrase to link your account.

Calculating the yield on a Uniswap pool

This post will describe how to calculate the yield on a Uniswap pool. Uniswap is an ethereum protocol that provides the services of a decentralized exchange (DEX). It is governed by votes from the uniswap token (UNI).

Click here for a description from Binance about how Uniswap works.

Once I understood the mechanics of Uniswap, the next thing I was curious about is what the rate of return is for those who pool their coins on the platform pairs. Since pooled coins share the 0.30% fee applied to exchange transactions for each pair, a rate of return can be earned by pooling coins.

We cannot determine the future yield of a uniswap pair pool, but we can calculate the historical yield and the “current yield”. Navigate to the data website setup for uniswap called On this site you can search any pair. Take UNI/ETH for example

Total liquidity for UNI/ETH is $77 million, the 24 hour fees are $82,000. We can then calculate the 24 hour yield as 82,000 / 77,000,000 = 0.1065 or 38% annualized. This is a very raw calculation, but good enough to see what kind of rates of return are possible.

Another example at the time of writing is the USDC/ETH pair has $149 million of liquidity and $125,000 of 24 hour fees, so the annual yield is only 0.30% annualized.

I haven’t thought too much about why some pairs have higher/lower pool yields. Probably related to their use, ability to borrow, volitility, etc.

Using a Crypto Wallet

This post will describe a couple of the most popular crypto currency wallets for storing your Bitcoin, Ethereum, and other crypto currencies.

Crypto currencies are stored on blockchains, and each unit of crypto currency sits on an “address”. Each address is controlled by a user(s) with the associated address’s private key. Think about a private key like a password. Anyone can have your username (blockchain address) but without the password they cannot get your coins. Services are available that allow you to access blockchains with friend UX, these are called “wallets”. With this in mind, there are two broad types of crypto currency wallets: personal and hosted.

Personal wallets are those where you (and only you) control the private keys. This is good if you don’t want to risk anyone else having access to your coins, but its risky depending on how much you trust yourself not to loose your credentials. If you’re the type of person who likes to be responsible for their own passwords, use a personal wallet where you own the keys. But beware that if you even loose your private keys, you will not be able to access your coins ever again. There is no customer service desk that will reset your password (private key).

Hosted Wallets are those where a 3rd party holds (or shares) your private keys. The hosted wallet provider stores the keys for you and is responsible for their safekeeping. This is good if you don’t trust yourself to maintain your own private keys, but bad if you want to eliminate the risk of hacking, etc. Even though one of the main benefits of blockchains is they enable trustless anonymous transactions, turns out a lot (or most) users still prefer to use hosted wallets to store they crypto currencies because they prefer to rely on someone else for their security (or have a hosted wallet bail them out if they even loose/forget their passwords.

Within the hosted wallet space, there are two other main types of wallets. There are wallets where your coins are held together with all other user’s coins, and there are wallets where your coins sit on your own unique address. Once again, whether either way is better or not for you depends on your personal preference.

Two popular crypto wallets are Trust Wallet and For the average crypto enthusiast, either of these wallets should work well enough. You can either install an app on your phone and/or access through a web browser. These wallets allow you to hold your coins and transfer/receive them from other users. Each of these wallets also has other features such as trading, staking, and other tools such as explorers.

Once you have an account and/or download the app to either of these wallets on your phone, you can receive coins to your wallet from another user by sharing your deposit address, and having the other user send your coins to this deposit address. Each app will generate an address for you to deposit to. You can monitor transactions on the app and through the blockchain using a blockchain explorer.

Canadian Interest Rates Falling

Canadian Interest Rates are falling with the Bank of Canada keeping the door open to negative interest rates, the yield on High Interest Savings Accounts is near zero. I have updated my page on High Interest Savings Accounts, click here to view the latest rates.

This might be a time for Canadian investors to re-consider jacking up their home and rental property mortgages to take advantage of historically low interest rates, and also protect themselves from potential inflation. Canadian mortgage site RateHub lists 5-year fixed rates from the big banks at under 2%, and variable rates almost down to 1.50%.

QuadrigaCX and Kroll Associates

This post shows the text of a recent e-mail sent out by Miller Thomson on behalf of users of QuadrigaCX. For Canadians who want to buy bitcoin, I currently recommend using Shakepay or Coinberry.

Affected Users:

This communication is to give you an update on (1) ongoing cryptocurrency asset tracing; (2) timing for distribution; and (3) website updates.

(1) Retention of Kroll Associates Inc.

On August 17, 2020, at the direction of the inspectors of the bankruptcy estate of Quadriga  and its related entities (the “Inspectors”), the Trustee retained Kroll Associates Inc. (“Kroll”) to conduct further analysis on a subset of transaction data.

The Inspectors and the Official Committee have been working with the Trustee over the past eight months to obtain and consider proposals from third party crypto-currency asset tracing firms to conduct certain additional forensic analysis.

After conducting diligence and carefully reviewing proposals, the Inspectors directed the Trustee to select Kroll to conduct this additional forensic analysis.

Kroll, a division of Duff & Phelps, is a leading global investigative consultancy firm. Founded in 1972, Kroll has conducted thousands of wide-ranging internal and external investigations related to fraud, bribery, and corruption, and is a recognized leader in conducting complex financial and asset search investigations internationally. Kroll’s resources include nearly 3,500 professionals in 70 offices and 28 countries. Kroll’s global team – including former prosecutors, forensic accountants, former law enforcement officers and cryptocurrency experts, among others – has decades of experience conducting complex investigations.

Kroll is working on this assignment in collaboration with its strategic partner Coinfirm, a global leader in AML and analytics for cryptocurrencies and blockchain.  Since being founded in early 2016, Coinfirm has created a powerful analytics engine for blockchain tracing exercises.  The Kroll/Coinfirm partnership will use a combination of professionals as needed with experience in cryptocurrency, asset tracing/searching, asset recovery, fraud investigations, and data analytics.

The key terms impacting Affected Users are as follows:

Scope: Analysis of specific subset of data. Due to confidentiality, no further comment will be made on the specifics of Kroll’s engagement (the “Engagement”).

Fees: Fees are capped at a maximum of $50,000 USD.

Indemnity: There is a contractual indemnity provided by the Trustee in favour of Kroll which has capped the Trustee’s indemnity at $150,000 USD (three times the professional fees). 

In Representative Counsel’s view, the indemnity provision is highly unlikely to have the effect of delaying distribution.  The Trustee’s obligation to indemnify Kroll expires on the earlier of:

  1. 1 year after completion of Kroll’s Engagement and any additional work if instructed to do so, and payment of Kroll’s fees; and
  2. the Ontario Superior Court of Justice (Commercial List) grants a court-ordered release in favour of Kroll.

Due to the sensitive nature of these transactions, as well as the ongoing involvement of law enforcement, Representative Counsel will not be providing further public comment on Kroll’s retention.

Crypto Capital

As a secondary update, Representative Counsel has forwarded the information gathered from Affected Users regarding Crypto Capital to the Trustee to add to the information that the Trustee had already collected to date regarding Quadriga’s activities and affairs. Representative Counsel understands that based on the Trustee’s review of the information provided by Affected Users and information in its possession, there is currently insufficient evidence to establish that Crypto Capital owed any funds to Quadriga as of the date of bankruptcy.

If new information arises regarding funds owed to Quadriga by Crypto Capital as of the date of bankruptcy, the Trustee will consider recovery avenues available to the Quadriga estate.

(2) Timing for Distribution

Under the Bankruptcy and Insolvency Act, R.S.C. 1985, c. B-3 (the “BIA”), as required by the Inspectors, the Trustee will declare and distribute dividends to unsecured creditors with valid claims from time to time. However, where there is or may be a claim by a taxing authority (such as the CRA), some additional requirements are imposed.

Practically, in Quadriga’s estate, in order for the Trustee to be able to distribute funds, the following needs to occur:

  1. Final determination of unsecured claims; and
  2. Completion of the CRA Audit.

Under the BIA, the Trustee is responsible for examining proofs of claim and wholly or partially allowing or disallowing them.  The Trustee may also disallow any right to priority claimed by a creditor.  If a Trustee disallows a claim, the creditor has the right to appeal the Trustee’s decision to a court within 30 days of receiving written notice of the Trustee’s decision.

In its Interim Claim Status Report dated May 12, 2020, the Trustee reported receiving 16,959 proofs of claim. The Trustee advised that they continue to receive and review proofs of claim.

Each claim will have to be determined. Depending on the nature of an Affected User’s claim, an Affected User may only have indicated on their proof of claim that they agree with the quantum of their claim according to Quadriga’s books and records, as disclosed by the Trustee on the claims website. Representative Counsel does not anticipate a significant expense or delay from the determination of such claims.

In other instances, such as Affected Users with a completed withdrawal or pending withdrawal claim, the Affected User was required to provide documentation satisfactory to the Trustee in order to prove their claim. Representative Counsel anticipates that such claims will require time and expense to determine as the evidence provided by an Affected User will need to be individually assessed by the Trustee and/or its counsel. 

The final determination of unsecured claims will also require the Trustee to address certain proofs of claim that have technical deficiencies, such as a lack of a signature, claim status issues, and improper claims to priority. The Trustee has advised that it anticipates to address these technical issues by way of a court order. Representative Counsel supports this approach; the alternative would be an expensive back-and-forth process between the Trustee and each applicable creditor to address these technical deficiencies.

The most material impact on the speed of distribution will be the CRA’s audit of Quadriga’s tax liabilities. On April 14, 2020, the Court granted an order authorizing the Trustee to comply with a production demand made by the CRA for the purpose of completing an audit. The Trustee complied with the production demand by providing the CRA with a copy of the database. The CRA has advised Representative Counsel that they are reviewing the information received by the Trustee. The CRA did not confirm a timeline of when the CRA Audit will be completed given the COVID-19 pandemic. 

(3) Website Updates

Please note that Representative Counsel regularly updates its website at with status updates for Affected Users, alongside more significant email communications that are sent out directly to Affected Users.

Representative Counsel is committed to responding to Affected Users, rather than members of the general public or the media, and notes that email is the preferred form of communication with Representative Counsel. Further instructions on how to contact Representative Counsel, along with other FAQs, can be found on Representative Counsel’s website.

Buy Bitcoins with Shakepay

If you buy bitcoins in Canada, Shakepay is the easiest way, with very little verification. This post describes changes in verification process at Coinberry and suggests using Shakepay instead. Recently, I logged into my Coinberry account to buy some bitcoins and was greeted with a prompt asking me to verify more information. See the image below. Up until now, I was able to make transactions with just my e-mail, phone and bank account linked. Now Coinberry is asking me for a ID docs, proof of address (utility bill I assume), and I suspect the enhanced security will be a confirm from one of their staff.

While I don’t think that Coinberry asking for more info is bad in general, as it shows they are trying to comply with AML rules in Canada. I’m a little bit annoyed and it takes time to verify an account so I’d rather just go somewhere that asks me for less info. Shakepay still allows me to buy bitcoins in Canada without any further identification checks. I’ve written another post on how to buy bitcoins with Shakepay, click here to read it.

Shakepay offers a deposit bonus of $10 if you buy more than $100 of bitcoins, click here to take advantage of this offer.

Click here to see my post comparing Shakepay to Coinberry.

USD HISA Rate Update

I’ve updated the rates on my USD HISA rates page, where I list High Interest Savings Accounts available to Canadian investors using brokerage accounts. These HISAs can be bought and sold like mutual funds.

Click here to view current USD HISA rates

Interest rates available to Canadian investors using these USD savings products are almost identical to Canadian rates. NBC101 from National Bank is 0.25%, and so are both RBF2014 from RBC and TDB8152 from TD. Scotiabank’s DYN1350 is currently 0.40% which is the highest in the survey.

Air Canada Share Structure


Air Canada is a Canadian based airline with a multiple class share structure. This post briefly describes Air Canada’s share structure.

Generally, I avoid investing in companies with multiple class voting shares. I think having some shareholders subordinate to others is poor corporate governance and doesn’t promote the best business outcomes (this is not a fact, just my opinion 🙂

To find the share structure of any Canadian public company, navigate to and find the company’s “Management Information Circular”, then find the section usually entitled “Principal Shareholders”. This section will list the principal shareholders and any shareholder with more than 10% ownership of any share class.

In the case of Air Canada, they have two classes of shares (A & B) both have votes but only Canadians can hold the B shares traded on the TSX symbol AC. There are a bunch of voting rights issues associated with the share classes to prevent foreign takeover of Air Canada. Otherwise, the two share classes have the same rights to assets/dividends.