DISCLOSURE: This is not investment advice. Please do your own research before investing. I am not affiliated, compensated or in any way associated with featured applications in my posts.
What is Compound?
Compound: https://compound.finance
Compound Interface: https://app.compound.finance/
White-paper: https://compound.finance/documents/Compound.Whitepaper.pdf
The Compound Protocol is a group of smart contracts deployed on the Ethereum blockchain that enable borrowing from pools of supplied assets instead of a centralized exchange or peer-to-peer platform.
Compound Interface is a user-facing application that allows suppliers and borrowers to interact directly with The Compound Protocol’s smart contracts. This tutorial will cover Compound Interface but there are many other front-facing applications which you can use to interact with the protocol.
What makes Compound unique?
Each asset pool is a money market with a floating interest rate which is algorithmically adjusted based on the supply and demand for that asset. Meaning as more people borrow from a pool of supplied assets, the floating interest rate will increase based on the demand curve (centrally codified by Compound). Higher interest will incentivize suppliers to add more liquidity to that asset pool, bringing interest rate down until market equilibrium.
Because the interest rate is algorithmically derived and the supply is aggregated, users do not have to negotiate terms such as maturity, interest rate, or collateral with a peer or counter-party.
Interest accrues every block (~15 seconds).
Suppliers are able to withdraw supplied assets and accrued interest at anytime.
Best use-case:
Supplying stable-coins (coins pegged to $1 such as USDC/Dai) to earn interest.
Why?
Compound offers one of the safest positive-yield approaches to storing assets available on the market with non-custodial smart contracts.
Competitive alternative to traditional savings/CD/money market accounts. Currently ~13% annual interest rate for supplying DAI and ~9% for USDC compared to <3% average across traditional finance accounts.
Supplying stable-coins as opposed to crypto-assets avoids exposure to market volatility and focuses on generating guaranteed interest income, which is also denominated in stable-coins, and is available for withdrawal back to USD at anytime. Hence stable-coins are top markets on Compound:
Source: https://compound.finance/markets
Dai: value is guaranteed by collateral (Ethereum) which is locked in order to generate Dai coins (up to 66% of collateral’s worth). As of Aug 1st, 2019: Circulating supply = 77.2M and Volume (24hr) = 35.3M (full network stats: https://mkr.tools/tokens/dai). NOTE: you do not need to collateralize Ethereum in order to generate Dai, you can simply convert your fiat directly to Dai without getting exposed to ETH price fluctuations.
USDC: value is guaranteed by a centralized exchange - Coinbase. As of Aug 1st, 2019: Circulating supply = 435M and Volume (24hr) = 81.9M (more info: https://www.coinbase.com/usdc)
Why is DAI interest rate > USDC even though they are both stable-coins? Most likely it’s because DAI to USD exchange rate sometimes drops a few points while Coinbase exchange always guarantees a 1 to 1 conversion for USDC-USD. Coinbase users are also able to convert USD to USDC with no-fee while USD to DAI conversions incur a fee. Thus DAI suppliers came to a higher interest rate equilibrium to make up for any conversion slip-age and exchange fees.
Interest to borrow is always higher than to earn. Many might ask: who would ever take out a loan like this and how does the system make sure interest is getting paid? Well there are 2 types of investors: (1) those that just want to generate interest by supplying Dai/USDC and those who want to increase their exposure to ETH and are willing to pay the interest. People who are taking out loans by collateralizing ETH are most likely going to use borrowed Dai to buy more ETH, therefore increasing their exposure to ETH overall (initial ETH collateral + purchased ETH with borrowed funds). Investors who think ETH is going up and are going to hold on to it anyways are the ones taking out these loans. When it comes to repaying: in order to take out a loan (Dai) you need to put up collateral (ETH). This collateral is always worth more than the loan. For borrowers to get their collateral back, they need to repay their loan + accrued interest up until that point OR if the value of their collateral drops below a set threshold - the collateral will be automatically liquidated to pay back the loan + interest owed. So as you can see suppliers will always be compensated by borrowers and borrowers are willing to pay higher fees because they believe ETH price will appreciate more than what they are paying to borrow.
How it works:
Deposit USD to Coinbase Pro (no fee).
Convert USD to USDC (no-fee) or DAI (~1.5% fee).
Purchase $2-5 worth of Ethereum to cover transactional costs.
Install a Metamask Chrome extension and create a new wallet (no fee).
Deposit USDC/DAI + ETH into your Metamask wallet (small miner fee).
Visit Compound App and connect your Metamask wallet (no fee).
Enable USDC/DAI (~$0.25 smart contract fee paid in ETH).
Supply your USDC/DAI and start accruing interest (~$0.50 SC fee paid in ETH).
Withdraw accrued interest and supplied USDC/DAI at anytime (~$0.50 SC fee paid in ETH).
Convert USDC (no-fee) to USD or other assets (~1.5%-2.5% fee).
Important disclosures and potential risks:
Users are required to convert their fiat currency (USD) to stable-coins (DAI/USDC) to start using to Compound and then back to fiat if they want to take profits, which could incur exchange fees. Coinbase users are able to convert USD to USDC with no-fee (except NYS residents) while USD to DAI conversions incur a fee (~1.5%). So in order to make up for the fee paid for DAI conversion, DAI suppliers would need to accrue interest for almost 3 months. But they will start compounding more interest by month 5 compared to USDC suppliers. Essentially, if you are willing to hold DAI for longer than 5 months, you will earn more compared to USDC even though you suffered a loss initially when you converted USD to DAI. Quick sample scenario below:
Users are required to have some ETH to interact with the Compound protocol (~$0.25/smart contract transaction).
Compound team has central control over the ability to list new asset markets, update interest rate models per market, update the oracle address and withdraw asset reserves.
Even though Compound smart contract code is verified on Etherscan and 3rd party audit was released by Trail of Bits, some unknown bugs might be discovered in the future for hackers to exploit.
Since the interest rate is based on supply and demand, a big investor might deposit a large amount into your liquidity pool and bring the interest rate down. So the interest rate you see when you initially provide liquidity is not the rate you will receive throughout your lock up. The rate changes literally every time someone supplies liquidity, takes out a loan, or repays a loan.
If you want to better understand the security risks of putting money into Compound, check out detailed Ameen Soleimani’s analysis: https://medium.com/@ameensol/what-you-should-know-before-putting-half-a-million-dai-in-compound-fafdb2645f77
Walk-through tutorial:
Deposit USD to Coinbase Pro (takes a few days to clear).
Purchase USDC with no fee.
Note: USD/USDC trading pair is not available in some areas such as NY state. If you cannot purchase USDC, your next best bet is to purchase ETH and immediately convert it to DAI which will amount to around 1.5% in fees. So if you are purchasing $1000 you will get 985 DAI.
Purchase $2-5 worth of Ethereum to cover transactional costs.
Note: You can complete Coinbase’s Earn Tutorials to get free DAI and ETH to cover these costs: https://www.coinbase.com/earn
Install a Metamask chrome extension from https://metamask.io/ and create a new wallet (make sure to back-up and store your private key offline).
Note: You can use almost any other web or hardware wallet.
Deposit USDC/DAI + ETH from Coinbase into your Metamask wallet (small miner fee).
Visit Compound App and connect your Metamask wallet (no fee).
Enable USDC/DAI (~$0.25 smart contract fee paid in ETH).
Checking Etherscan, enabling Dai costs $0.20:
Supply your USDC/DAI and start accruing interest (~$0.50 SC fee paid in ETH).
Checking Etherscan, supplying Dai to Compound resulted in a $0.49 transaction fee:
Withdraw accrued interest and supplied USDC/DAI at anytime (~$0.50 SC fee paid in ETH)