Overview

Compound is a decentralized money market with an open-source codebase based on the Compound Whitepaper published in 2019. The protocol defines the working mechanics of a decentralized borrow-lending market that algorithmically sets interest rates based on supply and demand.

Interest rates fill the gap in an economy between people with a surplus of assets they can’t use and people without assets. By trading the time value of assets in money markets, both parties can benefit from a relationship of non-zero-sum wealth.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F5acd92f1 5d0f 43f2 88e2

Compound is a protocol that establishes money markets where lenders and borrowers can exchange assets through a liquidity pool that algorithmically adjusts interest rates based on supply and demand. This is all done in a decentralized manner without having to negotiate loan terms such as maturity, interest rate, collateral, or counterparty. COMP is the governance protocol of the protocol and allows holders to have a say in governance decisions.

Users who want to become lenders supply their tokens to a lending pool and start receiving interest on their deposits according to the current supply APY. Borrowers access the funds from the lending pool to take out loans and return the capital plus interest at a future date (there is no maturity date and all loans are perpetual by default).

Users deposit assets into a liquidity pool and these funds are then matched and passed down to borrowers. Compound achieves this by having depositors aggregate their funds in a lending pool. The assets supplied to a market are represented by an ERC20 token balance called cToken. cTokens entitle depositors to an increasing amount of the underlying asset that is being lent to borrowers. As borrowers take funds out of the pool (by pledging collateral), the lending pool for that market accrues interest. In this way, cTokens become convertible into an increasing amount of the underlying asset.

Lenders (depositors) provide funds to borrowers in return for interest on their deposit, and borrowers (loan takers) are willing to pay interest on the amount of money they borrowed in exchange for having access to capital immediately.

The interest that lenders receive and the interest that borrowers have to pay are determined by the ratio between the supplied and borrowed tokens in a particular market.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0afd96d e82c 4262 a2f0

In other words, the interest that is paid by borrowers is the interest earned by lenders. This means that the borrow APY in a particular market will be higher than the supply APY.

Why the Project was Created

The protocol was ideated in 2018 as an alternative to meet borrowers and lenders in a decentralized market through a series of economic incentives dominated by algorithmically set interest rates. Compound was co-founded by Robert Leshner and Geoffrey Hayes. Before launching Compound, both of them held executive roles in Postmates, an America-based food delivery service. Currently, Robert is the CEO and Geoffrey acts as the CTO.

Prior to Compound, there were two major flaws in most blockchain assets:

  • Borrowing mechanisms were extremely limited and capital inefficient, mostly due to illiquid and mispriced assets with excessively high valuations (mostly because there was no way to short them)
  • Blockchain assets had negative yield, which resulted from significant storage costs and risks. Besides, there was no natural demand to offset those costs. This led to a highly volatile environment where holding assets was disincentivized.

Before the creation of decentralized money markets, users were forced to trust centralized parties to custody their assets. These exchanges were limited to certain customer groups and only supported a small number of assets. Furthermore, these are virtual positions, meaning that you can’t move a position on-chain in order to, for example, participate in an ICO or use those assets across DeFi.

In the past, peer-to-peer protocols attempted to facilitate both collateralized and uncollateralized loans between market participants. However, these solutions did not get too much traction, due to the significant costs and friction associated with matching lenders and borrowers who demand similar loan requirements.

In the beginning, Compound was a tokenless protocol where protocol upgrades were made unilaterally by Compound Labs. The protocol was still in a non-custodial stage and followed a process of progressive decentralization with the launch of the COMP token.

With regards to the protocol upgrade from Compound v2 to Compound v3, Robert Leshner, founder of Compound, mentioned that “the architecture of Compound V2 was too risky in that one bad asset can theoretically drain the entire protocol. In Compound V3, even if one asset plummets to zero, there is no risk for uses of other assets”.

In addition to reducing the number of assets supported by the protocol, Compound v3 also cracks down on unauthorized forks. All subsequent forks will require approval from governance. This will prevent situations such as a reentrancy bug that was exploited in multiple Compound forks, leading to over $100M in combined losses.

Roadmap

Compound launched on mainnet in September 2018. Compound V2, the default and predominant version of the protocol, was deployed in May 2019. This upgrade introduced additional assets with individual risk models.

Compound does not have an official roadmap. In a medium post published in 2019, Robert Leshner noted the importance of handing control of the protocol over to the community. Meanwhile, the core team would focus on the creation and collateral factor for supported assets and the establishment of a decentralized governance system.

A year later, this became effective and Compound completed a process of gradual decentralization after the launch of the COMP tokens. This reduced the administrative privileges of the core tema by replacing the administrator contract with a timelock function and adding a Pause Guardian to the protocol. Community governance went live in April 2020 and the COMP token distribution started in June 202o (COMP tokens being distributed linearly over the next 4 years).

Encumber

Encumber was introduced on July 7, 2023.

Encumber serves as a mechanism that allows users to separate their token ownership from the ability to transfer those tokens. When a token owner encumbers their tokens to another account, they grant that account the exclusive right to transfer the tokens, all while retaining ownership. This functionality empowers token holders to commit to specific terms within a smart contract without actually transferring ownership of their tokens to an external address.

Through the use of Encumber, token holders can maintain certain ownership privileges like receiving airdrops, participating in governance decisions, or accessing content and events, all while actively engaging in DeFi activities. Encumber aligns with the non-custodial principles of DeFi, and it simplifies various DeFi use cases, including serving as collateral for lending markets, facilitating options contracts, and enabling swaps.

The Encumber functionality works by adding two main actions, encumber and release, to existing token standards. These actions are facilitated through the following functions:

  • encumber(taker, amount) – Token owners can lock a specified amount of their tokens to a particular taker. This allows the taker to move tokens when necessary (e.g. by calling transferFrom) and also prevents any other action from reducing the available balance below the amount.
  • encumberFrom(owner, taker, amount) – Approved addresses can encumber on behalf of a token owner.
  • release(owner, amount) – An address that has received an encumbrance can relinquish it and return to the owner the ability to move their tokens.

The use cases for “encumber” are diverse and offer innovative ways to interact with tokens within the blockchain and DeFi ecosystems, including:

  • Collateral for Lending Markets: Borrowers can encumber tokens as collateral when participating in lending markets. This arrangement ensures that tokens are accessible for potential liquidation in the event of default while allowing the owner to retain the tokens and their associated benefits.
  • Aligning Incentives in Protocol Governance: Token holders may be required to encumber their tokens in a governance contract to demonstrate their commitment or “skin in the game.” Tokens can be released once certain conditions are met, such as the execution of a governance proposal.
  • Short-term Financing and Temporary Ownership Schemes: Token holders can transfer tokens to another account and simultaneously create an encumbrance through a smart contract. This contract can track ongoing payments, effectively allowing the temporary rental of tokens or setting a time period for the tokens to revert to the original owner.
  • Options Contracts: Token owners can encumber their assets by interacting with a logic contract that sells the right to purchase the tokens at a future date and price. If the specified conditions are not met, the contract can release the encumbrance, ensuring that tokens never leave the seller’s account unless the contract is executed.

These use cases demonstrate how “encumber” can enhance the functionality of tokens in various scenarios, providing greater flexibility, security, and alignment of incentives within the blockchain and DeFi applications.

V2 Markets Deprecation

The Compound community had expressed interest in deprecating the v2 market along with Gauntlet recommendations, with the goal of pausing of supply for v2 tail assets.

Phase 1 of the v2 deprecation plan was executed on September 19, 2023.

Phase 2 was executed on October 20, 2023.

It is expected that users on v2 $USDC markets will eventually migrate over to V3.

Team

Compound Labs relinquished control of the Compound protocol to the Community in 2020, following the introduction of decentralized governance through the COMP token. Compound Labs is an open-source software development company building tools, products, and services for the decentralized finance (DeFi) ecosystem.

Compound Labs has a team of around 20 people. Some key members include:

  • Jayson Hobby – CEO. Previously VP of Product at Compound, Product Design Lead at Coinbase, and Senior Product Designer at Uber.
  • Geoffrey Hayes – Founder and CTO. Previously founder and CTO of Safe Shepherd. Geoffrey was previously Engineering Manager at Postmates by Uber as well.
  • Jared Flatow – VP of Engineering. Jared was previously a senior staff engineer and director of protocol within Compound before moving to his current role. He also founded a tech company – Quasi Convex Union, that brings machine learning and optimization methods to consumer products.
  • Reid Cuming – VP & GM. Reid has previous experience in product management with Stripe, and subsequently Head of Product at Chime, a fintech company offering banking services. He is also an advisor to two other companies, Cypher Accelerator – a remote, non-dilutive accelerator for startups building a decentralized future, and Sora ID – an identity verification service.
  • Jim Hiltner – Head of Sales. Jim has previous sales experience being the Sales Director at Visible Alpha – an investment technology firm and was the VP of Partnerships at Pagaya Investments – a fintech company that enables institutions to expand access to more customers through its AI network. Jim is also head of BD at Portfolios with Purpose – an annual philanthropic stock competition.
  • Joseph Lih – Head of Marketing. Joseph was previously Head of Digital and ABM at Handshake – a career platform for students and graduates. He is rich in marketing experience, previously being Senior Marketing Manager and subsequently Director of Demand Generation at Tubular Labs – a social video intelligence company, and digital marketing supervisor at RPA – an ad agency.

Sector Outlook

According to DefiLlama, Compound V2 is the second most forked project after Uniswap.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a0a6c79 060d 4e72 9633

Competitive Landscape

Decentralized money markets are one of the most liquid and dominant dApps on Ethereum mainnet. Since its launch, Compound has faced competition against prominent projects such as Aave and Maker. Although Maker has the largest TVL, its lending operation focuses on providing DAI-denominated loans. In contrast, protocols like Aave, Compound, or Euler focus on supporting multiple cryptocurrencies on both sides of the market (lending and borrowing).

While Maker, Compound, and Euler deploy on Ethereum mainnet, Aave has taken the lead when it comes to multi-chain expansion, especially across layer 2s. With the release of Aave Portals, Aave will facilitate interoperable protocol interactions across all deployments (users will be able to supply on one chain and borrow on another).

More specifically to Compound, it is worth noting that, while the absence of intermediaries removes the need for extra fees, it is still an overcollateralized protocol, which makes it capital inefficient. In practice, this means that users must be actively monitoring their collateral value and making sure that it does not drop below the predefined borrowing limit. At the same time, it is also worth noting that Compound has a yield-earning advantage since users can earn COMP rewards just for using the protocol.

Daily token holders for Compound, Aave, and Euler in the past 180 days

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F2939f42a 1fb0 41be b527

Daily fees for Compound, Aave, and Euler in the past 180 days

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf989f4d 6619 4712 93d7

Daily revenue for Compound, Aave, and Euler in the past 180 days

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F66162cc3 b3bb 47c5 816b

Daily token incentives for Compound, Aave, and Euler in the past 180 days

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdae68352 5e3e 4a02 8a5a

Daily & Monthly Unique Active Users for Aave, Compound, and Euler

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F1607f680 2398 4272 8dee

Deposits & Outstanding Loans for Aave, MakerDAO, and Compound

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7513334 3d53 473f b583

Institutional Adoption

The Compound Treasury offers cash management solutions for institutions and accredited investors, all of it is supported by the Compound Protocol and the Compound Treasury assets.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F29f826f4 8609 49d5 a3d4

In 2021, Compound launched an institutional cash management solution powered by the Compound Protocol and offered a 4% APR on USD and USDC. Clients include fintech companies, crypto enterprises, and banks. In May 2022, the Compound Treasury became the first DeFi-backed company to receive a credit rating from a major agency. The Compound Treasury received a B- rating from S&P Global Ratings. A few months later, in September 2022, institutions were allowed to borrow from the Compound Treasury using digital assets as collateral.

After assigning the first credit rating to a DeFi company, S&P Global cited the uncertain regulatory regime for stablecoins (USDC), and stablecoins to fiat conversions, as the major risks. However, it was admitted that the “Compound Treasury is predictable, liquid, compliant, and transparent”. As part of ongoing discussions, Compound Treasury’s ratings could be upgraded in upside scenarios such as greater regulatory clarity for the digital assets industry.

Institutions can use BTC, ETH, or ERC20 tokens as collateral to borrow with an open-ended term and no repayment schedule. This provides flexibility for borrowers, who have the ability to draw liquidity and repay balances as they please as long as their positions remain overcollateralized.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F6bbe668b 161d 457d 8475

Overall, the biggest threat to Compound’s success is the competitive landscape of money markets. The protocol has an advantage on the institutional side of things and could benefit from a multichain approach and expansion of its operations to other Ethereum-based layer 2s. The team is currently working on enabling cross-chain features.

Chains

Compound is available on the following chains:

  • Ethereum
  • Arbitrum
  • Base
  • Polygon

For Users

Users who want to become lenders supply their tokens to a lending pool and start receiving interest on their deposit according to the current supply APY. Borrowers access the funds from the lending pool to take out loans and return the capital plus interest at a future date (there is no maturity date and all loans are perpetual by default).

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F36a3eaef 4b2c 4983 98bd

Users deposit assets into a liquidity pool and these funds are then matched and passed down to borrowers. Compound achieves this by having depositors aggregate their funds in a lending pool. The assets supplied to a market are represented by an ERC20 token balance called cToken. cTokens entitle depositors to an increasing amount of the underlying asset that is being lent to borrowers. As borrowers take funds out of the pool (by pledging collateral), the lending pool for that market accrues interest. In this way, cTokens become convertible into an increasing amount of the underlying asset.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F897295f2 cb88 458d 947c

Lenders (depositors) provide funds to borrowers in return for interest on their deposit, and borrowers (loan takers) are willing to pay interest on the amount of money they borrowed in exchange for having access to capital immediately.

The interest that lenders receive and the interest that borrowers have to pay are determined by the ratio between the supplied and borrowed tokens in a particular market.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0afd96d e82c 4262 a2f0

In other words, the interest that is paid by borrowers is the interest earned by lenders. This means that the borrow APY in a particular market will be higher than the supply APY.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F711f1918 1657 4ce5 8045

cTokens

Every time there is a deposit, the protocol issues cTokens as a receipt. By minting cTokens, users earn interest through the cToken’s exchange rate. In this way, cTokens will increase in value relative to the underlying asset in order to represent the accrued interest from loan repayments. Because of that, cTokens can be used by depositors to reclaim their collateral and earn yield from interest.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F48e61ed2 4c37 466a b5a3

cTokens are the primary means for users to interact with the protocol. Every time there is loan deposit, borrow, repayment, or liquidation, users will interact with the cToken smart contract.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F974936e4 f380 4458 b570

How to Calculate Accrued Interest

Interest rates are updated on each market every time there is a block in which the ratio of borrowed assets to supplied assets has changed. The magnitude of the change in interest rates depends on both the interest rate model implemented on each specific market and the amount of change in the borrowed-to-supplied assets ratio.

Interest accrues to all suppliers and borrowers in a market. Whenever there is a deposit, withdraw, borrow, or loan repayment event, a function will trigger an update to reflect the accrued interest. This function will cause the interest to be added to the underlying balance of every lender and borrower in the market.

When a market is launched, the cToken exchange rate (e.g. how much ETH one cETH is worth) begins at 0.02. After that, this rate will increase at a rate equal to the compounding market interest rate.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e13ef83 9744 4afd 815c

Examples:

  • A user that supplies 1,000 DAI to Compound when the exchange rate is 0.02007 would receive 48,825.61 cDAI (1,000 / 0.02007). A few months later, when that user decides to withdraw its DAI deposit, if the exchange rate is now 0.021591, the 49,825.61 cDAI tokens will be worth 1,075.78 DAI (49,825.61 * 0.021591).
  • A supplier that supplies 10 ETH when the market is just created would receive 500 cETH (10 / 0.02). After supplying the assets, the user can hold their cETH tokens. If, for example, the exchange rate of cETH to ETH increases by 0.0000000002 every block and we assume that the rate of increase remains the same for a month we would expect an interest of 0.0000432 (0.0000000002 * 5 * 60 * 24 * 30). Adding this interest to an exchange rate of 0.021 we can determine that the user would be able to redeem their cETH balance for 10.5216 ETH ((0.0000432 + 0.021) * 500).

We assume 12 seconds per block (as in Ethereum Proof of Stake)

Interest Rate Model

Instead of having individual borrowers and lenders negotiate loan terms, Compound uses a dynamic interest rates model that achieves an interest rate equilibrium based on supply and demand.

According to economic theory, interest rates (the cost of money) should increase as a function of demand.

  • When demand is low, interest rates should decrease in order to incentivize borrowing
  • When demand is high, interest rates should increase in order to disincentivize borrowing

Compound measures this equilibrium with a Utilization Ratio for each market that unifies supply and demand forces into a single variable.

The utilization ratio can be described as the percentage of money that is borrowed out of the total money supplied by deposits

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1ca400a 35d0 4457 86f9
  • Borrows refers to the amount of capital being borrowed
  • Cash refers to amount of capital left in the system
  • Reserves refer to the amount of capital that Compound keeps as profit

For example, if Alice supplies $500 and Bob supplies $500 in USDC, but Charles borrows $100 USDC, the total borrow is $100 and the total cash is $900 ($500 + $500 – $100), which results in an utilization rate of 10% (100 / (900 + 100)).

  • High utilization rates indicate that a lot of borrowing is taking place, which causes interest rates to go up in order to attract more depositors and incentivize borrowers to repay their loans.
  • Low utilization rates indicate that the demand for borrowing is low, which causes interest rates to go down in order to disincentivize new deposits and attract more borrowers.

Thanks to this parameter, the demand curve can be expressed as a function of utilization:

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcf52fe5 1329 42af a2f5

This way, the interest rate earned by suppliers is implicit and equals the borrowing interest multiplied by the utilization rate.

  • In periods of high demand for an asset, the liquidity of the protocol (amount of tokens available to borrow or withdraw) will decline.
    • When this happens, interest rates increase in order to incentivize deposits and disincentivize borrowing.
  • In periods of low demand for an asset, the liquidity of the protocol will increase.
    • When this happens, interest rates decrease in order to disincentivize deposits and incentivize borrowing.

Compound’s Standard Interest Rates Model

Compound’s borrowing rate calculation depends on an interest rate model – the algorithm used to determine the borrow and supply rates in a money market.

The interest rates model takes in two parameters:

  • Base rate per year (the minimum borrowing rate)
  • Multiplier per year (the rate of increase in interest rate with respect to utilization)

Borrow Interest Rate = Base Rate + Multiplier * Utilization Rate

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff27ae294 0726 4490 aabc

For example, using wBTC’s legacy model,  if there are 10,000 WBTC being supplied to the protocol and users are borrowing 1,000 WBTC, this means that the utilization rate is 10%.

With a base rate of 2% and multiplier of 30%, the borrow rate would be:

Borrow Rate = 2% + 30% * 10% = 5%

Assuming a reserve factor of 20%, we can calculate the supply rate as:

Supply Rate = 5% * 10% * (1 – 20%) = 0.4%

Note that interactive graphs on the Compound WBTC market’s summary page can be different due to the inclusion of COMP rewards APY

According to Proposal 31, the Reserve Factor is a percentage of the borrowers’ paid interest which can be used by governance or act as insurance against borrowers’ default (which protects depositors in situations where liquidations are untimely or inefficiently executed).

Hypothetical Scenarios

Following the example above, if a whale decided to withdraw 8,000 WBTC, the utilization ratio would now be 90% ((8,000 + 1,000) / 10,000)

This would yield:

  • Borrow Rate = 2% + 30% * 90% = 29%
  • Supply Rate = 29% * 90% * (1 – 20%) = 20.88%

Note that the Supply Rate has increased by 5,120% while the Borrow Rate has only increased by 480%. The reason for this is that the Supply Rate is proportional to the square of the utilization rate, whereas the Borrow Rate is only linearly proportional to the utilization rate.

Compound’s Jump Interest Rates Model

Some markets in Compound follow a jump rate model that has the following parameters:

  • Base rate per year (the minimum borrowing rate)
  • Multiplier per year (the rate of increase in interest rates with respect to utilization)
  • Kink (the point in the model in which the model follows the jump multiplier)
  • Jump multiplier per year (the rate of increase in interest rates with respect to utilization after the kink)

Borrow Rate = Base Rate + Jump Multiplier * max (0, U – Kink)  + Multiplier * min (U, Kink)

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c88ba63 a611 4f38 8093

For example, using the USDC rate model with the following parameters:

  • Base rate: 0% / year
  • Multiplier: 5% / year
  • Kink: 80%
  • Jump Multiplier: 109% / year
  • Reserve factor: 7%

If the market had $180M in borrows and $20 in cash, then

  • Utilization Rate = $180M / ($180M + $20M) = 90%
  • Borrow Rate = 0% + 109% * (90% – 80%) + 5% * 80% = 14.9%
  • Supply rate = 14.8% * 90% * (1 – 7%) = 12.5%

Comptroller

The Comptroller is the risk management module of Compound; it determines how much collateral a user is required to maintain, and whether (and by how much) a user should be liquidated.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd6f91bd eec6 4d16 9ae8

The Comptroller manages the risk exposure of the protocol by mapping user balances to the asset prices reported by a Price Oracle.

The Comptroller contract also designates a Pause Guardian address capable of disabling protocol functionality. This is only used in the event of unforeseen vulnerabilities.

  • The Pause Guardian can only disable a select set of functions: “Mint” (mint cTokens whenever there is a deposit into the protocol), “Borrow”, “Transfer”, and “Liquidate”.
  • The Pause Guardian cannot unpause an action.
  • The Pause Guardian cannot prevent users from calling “Redeem”, or “Repay Borrow” to close ongoing positions and exit the protocol.

COMP token holders designate the Pause Guardian address, which is held by the Community Multi-Sig

Collateral Factor

The collateral factor of any given cToken can range from 0 to 90%. This represents the proportional amount of liquidity that a borrower can receive by minting cTokens (upon supplying the underlying asset to the protocol).

The collateral factor determines how much can be borrowed based on the quality of the collateral.

Generally, large or highly liquid assets have high collateral factors, and small or illiquid assets have lower collateral factors. On a similar note, assets with a 0% collateral can’t be used as collateral, but they can still be borrowed.

Collateral factors can be increased/decreased through Governance, usually as a result of changes in market conditions.

Liquidations

Users who have negative liquidity in their accounts are subject to being liquidated by other users of the platform, which will return their accounts back to positive to ensure the solvency of the protocol.

When a liquidation occurs, a liquidator may repay some or all of an outstanding loan on behalf of the original borrower. In return, the liquidators will receive a discounted amount of the collateral held by the liquidated borrower.

The discount that a liquidator gets on a borrower’s collateral is the liquidation discount.

Liquidation Volume

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f03976a 8ab6 4354 9ddf

Compound V3 – Comet

Launched in August 2022, Compound V3 is an updated and more simplified version of the Compound protocol. The major difference with Compound V2 is that users can only borrow USDC (instead of any asset that is available in the lending pool). Also, collateral deposits will not earn interest but can borrow more with less risk and a lower gas fee. This new borrowing model facilitates single-borrowable and interest-earning assets, while all the other supported assets function as collateral.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe5b5a9e 795c 49de 990b

In Compound V2, if you were to borrow against an asset, say ETH, it was possible that ETH could be mixed with other available assets. Now in V3, users can only withdraw the collateral they have deposited.

There are separate interest rate models for each asset set by governance. Similar to V2, the supply and borrow interest rates are a function of the utilization rate of the base asset:

  • Users with a positive balance of the base asset earn interest denominate in the base asset based on a supply rate model.
  • Users with a negative balance pay interest based on a borrow rate model.

Supported interest rates models: https://observablehq.com/@jflatow/compound-interest-rates

Compound V3 employs Chainlink as the exclusive protocol price feed. Instead of relying on a custom price feed for price oracles, supply and borrow models can now be decoupled from other modules within the protocol and operate independently.

Liquidations are determined by liquidation collateral factors, which are separate and higher than borrow collateral factors (used to determine the initial borrowing capacity). This protects borrowers and the protocol. Whenever an account’s borrow balance exceeds the limits set by liquidation collateral factors, the position will become eligible for liquidation.

Individuals with long-term investments in assets that they do not want to sell can use Compound to get a higher return on their investment. By lending their assets to borrowers, they can collect interest payments paid out in the underlying asset they are lending. Other reasons include avoiding or delaying payments for capital gain taxes, or increasing leverage on a position.

dApps and exchanges can also use Compound as a source of monetization and incremental returns. On the one hand, lenders deposit assets to earn interest on loan repayments. On the other hand, borrowers take out funds deposited by lenders as loans. The yield received by lenders is the interest paid by borrowers on their loans.

Compound provides an option for holders of cryptocurrency to lend their tokens and generate income in both COMP (liquidity mining rewards) and the token they have deposited (interest). In the case of V3, users can only borrow the base asset, which is USDC.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d54c12b 62f9 4c19 82e5

Unlike other money markets, Compound does not have any minimum requirements on borrowing or lending amounts.

Borrowing Assets

Compound allows users to borrow from the protocol pool using cTokens as collateral. This means that borrowers must pledge collateral assets to the protocol in order to take out loans from the lending pool.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e0857a6 19e7 4628 9bfc

Unlike peer-to-peer protocols, borrowing from Compound does not require any sort of negotiation regarding loan terms, such as maturity dates, funding periods, or interest rates. Similar to supplying an asset, each market will have its own floating interest rate, which determines the borrowing costs for each asset as a function of market forces (supply and demand).

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa8441a4 706c 4f19 8859

Collateral Value

Assets held by the protocol (represented by ownership of cTokens) are used as collateral to borrow from the protocol. In other words, every borrower must be a lender.

Each market has a collateral factor ranging from 0 to 1. This variable represents the portion of the underlying asset value that can be borrowed from the protocol. To ensure solvency, illiquid and small-cap assets have lower collateral factors; while liquid and high-cap assets have higher collateral factors.

Users are able to borrow up to, but not exceeding, their borrowing capacity. It is not possible for any account to raise the total value of borrowed assets above their borrowing capacity. This protects the protocol from default risk.

Risk and Liquidations

If the value of an account’s borrowing outstanding exceeds its collateral obligations (borrowing capacity), a portion of the outstanding capital being borrowed must be repaid in exchange for the user’s cToken collateral. This repayment is done at the current market price minus a liquidation discount. The reason for that is that the liquidation discount serves as an incentive for third-party liquidators to step in and reduce the borrower’s exposure, which at the same time protects the protocol against default risk. Liquidations can be performed by any Ethereum address that holds the borrowed asset. During the liquidation, the liquidator will exchange the borrowing asset for the borrower’s cToken collateral.

If a user decides to borrow funds from the protocol, the value of the borrowed capital must always stay lower than the value of their collateral times its collateral factor. As long as this condition holds, there is no limit on how long a user can borrow funds.

Liquidations allow participants (liquidators) to repay up to 50% of an outstanding loan in exchange of receiving a proportionate amount of the loan’s collateral at a discount (liquidation discount).

The proportion of outstanding borrows that can be closed is represented by a close factor, which ranges from 0 to 1. The process of liquidation can be continued until the user’s borrowing is less than their borrowing capacity.

Target Users

The function of a money market is to enable use cases for dApp consumers, traders, and developers:

  • dApps can borrow tokens to use them across DeFi (provide liquidity, swap assets with other Daos…
  • Traders can get access to leverage through recursive borrowing
    • Your LTV never changes (you can borrow more with the same exposure to risk)
    • You are getting paid for borrowing
  • Traders who want to short an asset can borrow the asset, send it to an exchange, and sell the token (profiting from price declines in overvalued assets)

Recursive borrowing or looping is a technique used in DeFi to gain access to leverage. This is achieved by repeatedly supplying and borrowing the same assets and then doing the same over and over again in order to increase your APY.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b601b13 9839 4208 a2ef

To gain leverage with looping, the user supplies an asset and borrows against it. After the first borrow, the user then deposits the borrowed money again into the protocol.

  • Looping is only profitable when the supply APY exceeds the borrow APY
  • Traders must ensure that their borrowing costs are less than their liquidation threshold. For example, if the liquidation threshold is 80%, the amount of leverage should be lower (e.g. between 60 and 75%).

For Investors

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc882ba4d dfe3 4bd8 a005

Investing Strategies

Recursive lending and borrowing is one of the most used strategies in decentralized money markets. Due to how overcollateralized loans work in DeF, it is possible for a borrower to earn money from the supply APY at the same time, and even gain access to extra capital with the same amount of exposure to risk.

Recursive lending takes advantage of the fact that the net borrowing rate (after incentives or liquidity mining rewards) is higher than the net lending rate.

For example, if the supply rate for USDC is 2.25% and the borrow rate is 3.77% and, on top of these yields, lenders will receive 0.93% in COMP tokens and borrowers 1.38% in COMP, then it becomes possible to borrow USDC at 2.39% (3.77% – 1.38%) and lend at 3.18% (2.25% + 0.93%).

Since borrowing is overcollateralized, it is not possible to borrow indefinitely. However, with a collateral factor of 80%, users can borrow $80 with $100, then redeposit that $80 to borrow $64 (80% of $80), and so on…

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb04d71cd ffd4 41ed a449

At a collateral ratio of 80% it becomes possible to lend $5 (1 / (1 – 0.8)) with $1 of capital and borrow $4. The total ROI would then be equal to the Lending Rate + 4 * (lending – borrow rate), with the lending rate and borrow rate being net of COMP rewards.

The returns of this strategy are quite volatile, due to the intervention of multiple factors such as:

  • COMP token prices, due to liquidity mining rewards being subsidized in the native governance of the protocol
    • Market-neutral users will try to lock in returns by hedging in advance the amount of COMP tokens they expect to receive (usually in perpetual futures on centralized exchanges).
  • TVL increases lead to a dilution of the rewards that investors will receive. For instance, a 10% increase in TVL has the same impact as a 10% drop in the price of COMP.
  • Utilization rates cause interest rates to increase slowly until reaching a point of optimal pool utilization (to urge borrowers to supply assets and lenders to reduce borrowing)
    • As the utilization rate drops, (fewer people borrowing with a constant amount of lending), since COMP rewards are fixed (e.g. 450 COMP tokens per day) traders will earn an increasing percentage of funds (which makes recursive borrowing more profitable and offsets the decrease in the lending rate).
https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a8f0664 77cc 4c43 85d5

It is worth noting that the APY from COMP rewards will vary from time to time due to adjustments being made to the inflation rate or distribution between lending and borrow APY.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ee69863 309f 413d b8f8

However, the same approach can be used in other money markets. For example, over $33M in cbETH was supplied to the Euler money market to make a profit by borrowing against cbETH.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f52f126 c3d8 4be9 bff0

For instance, this trader profited from a low utilization rate in cbETH and managed to pay  $2,500 in interest while earning $8,500 in EUL tokens.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa130f86a 2792 4944 b88c

Business Model

Compound has a protocol reserve that is generated in two ways:

  • The difference between the interest paid by borrowers, and the interest earned by suppliers is accrued as protocol reserves.
  • Liquidations can add to protocol reserves (based on the target reserve level set by governance).

Revenue Streams

Protocol revenue is represented by the amount of interest that the protocol receives through the Reserve Pool. This is calculated using the Reserve Factor for each token and using historical prices denominated in USD.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a71383a 2b1f 478c 92ed

The Reserve Factor is the portion of interest from loans that is set aside to be kept by the protocol. Each market has its own Reserve Factor.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F74c6f6a4 dd44 4bd6 98fe

Economics

Treasury value per asset:

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F1584c282 3871 42c5 a50d

Fee Breakdown

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f2fe91d 2372 4feb 979f

Operating Expenses

  • Deposit incentives in USD are the amount of COMP tokens paid to depositors as an incentive for providing liquidity to the protocol (denominated in USD).
  • Borrow incentives in USD are the amount of COMP tokens paid to borrowers as an incentive for borrowing tokens (denominated in USD).
https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F7efaa565 4138 4cdd 8d99
  • Deposit incentives in COMP are the amount of tokens given to depositors in exchange for providing liquidity to the protocol.
  • Borrow incentives in COMP are the amount of tokens paid to borrowers as an incentive for borrowing tokens.
https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe861b98 22f8 47a1 a32b

Composition of Token Incentives:

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d7f218c a302 4b8c b106

Tokens

The COMP token is an ERC-20 token deployed on Ethereum mainnet to propose and vote on changes to the protocol.

COMP was explicitly not marketed as an investment, although it is implicitly regarded as a value-capture mechanism by users who believe in the decentralized governance protocol.

Token Allocation

Tokens were initially distributed to shareholders of Compound Labs. Afterward, as the user base increased and there was a need for decentralized governance, Compound began releasing COMP tokens. These COMP token rewards follow a continuous distribution over 4 years and are directed toward lenders and borrowers of the protocol as liquidity mining incentives.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1416a57 d28c 4d3b af70
  • 42.15% to liquidity mining over a 4-year period
  • 23.95% to shareholders
  • 22.46% to founders and team (4-year vesting)
  • 7.73% to community
  • 3.71% to future team members

Supply Schedule

There is no dedicated staking feature for COMP since the total supply was pre-mined. Rather than having users stake their tokens to receive COMP emissions, Compound relies on a reward system by which users can earn COMP tokens simply by interacting with the protocol by lending and borrowing. In other words, whenever a user deposits funds into the protocol, they become eligible to earn COMP tokens from liquidity mining incentives.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F02b15f4a 7135 4821 916b

The initial token launch took place on June 15, 2020. COMP has a maximum supply capped at 1,000,000,000 tokens that will have an inflationary emission rate since genesis. The supply of COMP is expected to be fully vested by July 2024.

COMP Rewards Adjustments

On April 21st, 2022, Proposal-131 failed due to a majority of votes against it. This proposal suggested ending the current COMP rewards program and starting a new one with the sole purpose of kickstarting new markets.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd18c826f ff09 4ec8 b030

This is one of the most controversial governance decisions ever held in the history of the protocol. The proposal suggested that the initial objective of COMP rewards was not being achieved, since most users instantly sold off the COMP tokens that they got just for using the protocol. This selloff was the result of a practice that would farm COMP tokens just to consolidate a profit, which brings no value to the protocol and its users.

Jeff Amico, partner at A16z claimed that newly-minted COMP rewards go to “recursive positions that are not a valuable use of limited supply of tokens. Amico estimated that it costs the Compound protocol ~$60M per year to pay these rewards. According to this, users were draining value from the protocol by depositing collateral to borrow more of the same asset and earn COMP tokens that were later sold on the market.

Those who voted against the proposal, including Compound’s co-founder and CTO Geoffrey Hayes, pointed out that the proposal could harm Compound’s level of decentralization. By distributing a token across a wider user base, this mechanism lessens the chances that the ownership of the protocol ends up being concentrated in a few hands.

Token Distribution of Holders

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F65174843 0831 45d2 a49c

Governance

Compound is governed and updated by COMP token holders using 3 distinct components: the COMP token, the Governor Bravo Governance module, and a Timelock. Together, these contracts allow the community to propose, vote, and modify protocol parameters, support new markets, or introduce new functionality to the protocol.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9ef8f2 e4d0 4568 8a77
  • There is a set timeframe to execute the entire workflow, where each step has its own fixed duration
  • There is a requirement to hold more than 1% of all governance tokens in order to submit a proposal (helps to reduce noise by only allowing relevant members to create proposals)
https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa15a6f0 140a 42bc ae38

COMP token holders can delegate their voting rights to themselves or an address of their choice, but only addresses that have been delegated to at least 25,000 COMP can create Governance Proposals. However, it is still possible for any address to lock 100 COMP tokens to create an Autonomous Proposal, which will become a Governance Proposal after being delegated 25,000 COMP.

When a governance proposal is created, it will be subject to a 48-hour review period. After that, a 72-hour voting period will begin. If at least 400,000 votes are casted and there is a majority vote, the proposal will be queued in the Timelock in order to be implemented after 48 hours. In total, this process is guaranteed to take at least one week.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd52bf766 5bed 4f78 8501

Governance Roles

There are 3 key roles in Compound Governance:

  • Delegates receive voting power from community members or through self-delegation. Anyone can become a delegate and anyone with more than 1% of COMP can propose a governance action.
  • Delegators are community members who hold COMP and have entrusted their voting power to a delegate.
  • Contributors are community members who participate and dedicate their time and effort to the Compound DAO. This participation is achieved by building protocols built on top of Compound or by participating in the DAO via grants or partnerships.

Governance Proposals

Governance proposals can be of 4 types:

  • Compound governor proposals are used to authorize smart contract executions (such as risk parameters, COMP distribution parameters, or administrative functions.
  • Compound Improvement proposal can be further separated into 3 subcategories:
    • Meta-process proposals improve the coordination of governance, development, or  community efforts
    • Protocol enhancement proposals involve any changes to smart contracts involved in the Compound Protocol and Governor
    • Tooling and support proposals involve any action or modification to off-chain infrastructure, tooling, documentation…
https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb744fdc 2b4b 45fc af0f

COMP

COMP is an ERC-20 governance token used by the protocol to delegate voting rights and participate in governance voting.

Governor Bravo

Governor Bravo is the governance module of the protocol. This framework allows addresses that hold more than 25,000 COMP tokens to propose changes to the protocol.

  • Every proposal will have a required minimum number of votes (quorum votes)
  • Every proposal will have a proposal threshold that represents the minimum number of votes required for an account to create a proposal
  • It is possible to specify the maximum number of actions (smart contract function calls) that can be taken in a proposal (up to 10 actions)
  • Proposals can specify a voting delay to determine the number of Ethereum blocks that must be added to the chain before the voting period for that proposal starts
  • The voting period of a proposal refers to the duration of voting (in Ethereum blocks)
  • A proposer cannot create another proposal if they currently have a pending or active proposal.
  • It is not possible to queue two identical actions in the same block (due to the limitations of the Timelock) and, if two proposals require to perform the same action, they must be queued in different blocks.

After a proposal has succeeded, it is moved into the Timelock by calling the queue functions, which will force a waiting period of 2 days. After the Timelock waiting period has elapsed, the proposal can be executed on-chain.

Timelock

Each protocol contract is controlled by the Timelock contract, which can modify system parameters, or smart contracts logic in a “time-delayed” upgrade. The Timelock follows a hard-coded delay of2 days.

List of proposals: https://compound.finance/governance/proposals

Governance in Compound V3

A key area of focus for Compound V3 is to give more governance control to the community. To improve user participation, the governance process will be managed in a single smart contract called “Configurator”. Compound also transferred exclusive control over all future deployments and adjustments of market parameters to the community.

All instances of Compound V3 are controlled by the Timelock contract, which is the same administrator as in Compound V2. The governance system has control over each proxy, the Configurator implementation, the Comet factory, and the Comet Implementation. Every time an immutable parameter is set via governance, a new Comet implementation must be deployed by the Comet factory. If the proposal is approved by the community, the proxy will point to the new implementation upon execution.

Currently, Compound V3 has introduced a business license to its codebase. This is a preventive measure that protects against unauthorized forks. All requests to modify or copy the codebase will require governance approval.

Governance in Compound V3

Compound currently has two pathways for funding:

  • Direct funding through governance, where service providers can reach an agreement with the Compound DAO in exchange for a payment
    • OpenZeppelin is an example of a service provider to the Compound DAO
  • Compound Grants Program is an attempt to improve the following areas of the protocol:
    • Multi-chain strategy
    • Developer tooling
    • Security tooling
    • New protocol ideas and dApps

Risks

Since interest rates are variable and they are not locked in at the time of borrowing, users are vulnerable to interest rates changes. Because of that, borrowers should be aware of the underlying interest rate model for the asset they are borrowing.

Protocols like Voltz and Ipor offer interest rate swaps as a way for borrowers and lenders to hedge their risk.

  • Borrowers are exposed to increasing rates (they would have to pay more interest on their loan) and they should hedge their risk by going long (pay-fixed and receive-floating) interest rates. This way, if rates were to increase, they could pay that increase with the profit they make on an interest rate swap (since they were long interest rates).
  • Lenders are exposed to decreasing interest rates (they would earn less yield if interest rates went down) and they should hedge their exposure by going short interest rates (pay-floating and receive-fixed). This way, they are protected against decreasing interest rates since they would be at a profit on their interest rates swap (since they were short interest rates).

Security

All contract codes and balances are publicly verifiable, and security researchers are eligible for participation in bug bounty rewards.

  • In October 2021, Compound had a bug that let borrowers claim more than their intended share of COMP tokens. This bug involved two of the protocol token vaults (pools of funds on the smart contract). The exploit allowed users to call a function called “drip()” on the Reservoir vault and this would allow those same users to refill the Comptroller vault, which would automatically distribute large amounts of COMP to invalid addresses.
https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb76666ae 1bf2 4913 98d0
  • After $80M in COMP was transferred to the wrong people, the core team rushed to patch a fix. However, this code upgrade required a governance voting proposal that was created on October 2 and finally accepted on October 9. During this period of community debate, $68.8M was drained from the vaults.
  • By tweeting “Anyone who returns COMP to the community is an alien giga-chad; and if a squad of alien giga-chads ever summon me, I will appear”, Robert Leshner (founder of Compound) managed to achieve the return of half of the funds that had been previously lost.
https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff616a03b d056 4ca7 8c78

Audits

Compound V2 has been reviewed and audited by Trail of Bits and OpenZeppelin

Compound V2 has been formally verified by Certora as well. The following issues were discovered and patched:

  • The cToken contract must not have the role of minter, redeemer, borrower, or liquidator
  • When exchanging cTokens, a nonzero number of tokens should never produce zero cTokens

Compound V3 has been reviewed and audited by OpenZeppelin and ChainSecurity

  • OpenZeppelin audit in July 2022: https://blog.openzeppelin.com/compound-iii-audit/
    • A high-severity vulnerability was reported after identifying that funds could be sent but not withdrawn from the Comet contract. Similarly, the Bulker contract could receive ETH and leave the ETH balance untouched (only ETH coming from unwrapping WETH would be used). This could lead to a situation where the assets remain locked. While this was partially fixed in commit 3681613, the team claimed that they think it is a good idea to add a “sweep” function to the bulker to prevent funds from being locked in the contract and that they purposely made the “receive” function in Comet “payable” in order to support future upgrades.
    • A medium severity reported that the “governor” could approve anyone to transfer the base and collateral assets within the Comet contract. This was acknowledged and fixed by the team in PR#414. The team claimed that their intention was to allow governance to transfer out any ERC20s accidentally sent to Comet. Nonetheless, OpenZeppelin noted that in the case of a governance attack, the attacker could circumvent calling the “approveThis” function by upgrading the implementation of Comet to whatever they pleased.
  • ChainSecurity audit in May 2022: https://chainsecurity.com/wp-content/uploads/2022/07/ChainSecurity_Compound_Comet_audit_May-30th-2022-1.pdf
https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed5df0bd 5d2b 4450 bc86

Bug Bounty Program

Compound encourages the community of security researchers and auditors to disclose any issues of vulnerabilities they might find in the protocol’s contracts. This program is intended to recognize the value of working with independent researchers.

Compound offers economic rewards for all discoveries that can prevent the loss of assets, the freezing of assets, or harm to a user. Eligible discoveries will be compensated with payouts ranging from $500 to $150,000 based on the scope and degree of the vulnerability.

Economic Attack Vectors

Gauntlet has constructed a simulation-based market stress-testing platform to evaluate the economic security of the protocol as it scales and supports more assets. Gauntlet’s report rains stress tests on historical data and simulates the expected and worst economic outcomes for the protocol. The report concluded that Compound can scale to a larger size and handle high volatility scenarios.

  • Gauntlet found statistically significant evidence that even when ETH realizes its maximum historical volatility, Compound is able to grow in total borrowed value by more than 10x while still having less than 1% chance of default ( default means undercollateralized in the context of this report).
  • The system stays significantly overcollateralized in extreme scenarios
  • Current liquidation incentives are enough for most liquid collateral types, like ETH

Despite the fact that Compound has grown past 9 figures of USD value, without any depositors losing capital, it is still technically possible, under extreme conditions, for borrowers to default on their loans and cause lenders to lose their principal. This would be a combination of security risk, governance risk, and market risk.

From Gauntlet’s report, see below a simulation of liquidations during the worst day of price action in Ethereum’s history (February 5, 2018). This simulation assumes $100M of ETH daily trading volume and a total sum of outstanding debt value of $50M.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa85e9a9b a85d 4842 b2ed

Dependencies and Access Controls

The top addresses by voting weight are largely dominated by VCs

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ca939d5 7da1 45f7 a72d
  • Top 3 address have 30.91% of voting power
  • Top 5 address have 40.05% of voting power
  • Top 10 address have 53.24% of voting power
  • MonetSupply is the entity with most passed proposals (100)
  • Robert Leshner, founder of the protocol, has a 1.61% voting power and has participated in 60 votes.
https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc000b25b e376 4dbf 9f8e

In February 2022, Justin Sun borrowed 99,000 COMP tokens (worth over $13M at the time) that were later sent to Binance. One day later, an entity that owned $9M worth of COMP tokens on Binance made a proposal to add TUSD as a collateral asset on Compound. TUSD had been previously moved over to an Asia-based consortium that would work with TRON to support the development of TUSD on Ethereum and Tron. This example shows one of the most obvious problems attributed to token-weighted governance models.

Liquidity Risk

In order to borrow from Compound, a borrower must first deposit collateral with a value greater than the amount being borrowed (overcollateralization). If the value of that collateral declines below the amount being borrowed (before liquidators can close the position), the borrower is not incentivized to repay their position and the protocol may accumulate “bad debt”. If the total amount of “bad debt” is higher than the reserves held by the protocol, some users may not be able to withdraw assets from the protocol.

More specifically, the primary exogenous risks to the protocol come from:

  • Shocks to market prices of collateral that cause the contract to become insolvent due to under-collateralization
  • Loss of liquidity in an external marketplace, leading to liquidators being disincentivized to liquidate defaulted collateral
  • Cascades of liquidations impacting external market prices, which in turn lead to further liquidations (deflationary spiral)

Gauntlet was selected by the community to manage collateral requirements and assess the robustness of risk parameters on an ongoing basis.

Borrow Limit and Liquidation Risk

On Compound, users earn yield by supplying assets, but those same assets can also be used as collateral to borrow other tokens. By maintaining different collateral factors for each asset, borrowers must be aware of the capital amount they are actively borrowing at a given point in time. The reasoning behind this is to avoid the account exceeding its borrow limit, which would lead to a liquidation.

  • Users borrowing stablecoins with non-stablecoin collateral are at risk of liquidation if the price of the collateral assets falls.
  • Users borrowing volatile or non-stablecoin assets are at risk of liquidation if the price of the borrowed asset increases.

The risk of liquidation occurs when the value of the collateral becomes less than the value of the loan. 

The main levers for Compound to reduce the risk exposure of the protocol are the collateral factor and the liquidation incentive.

  • The collateral factor controls the riskiness of borrowers – the closer it is to 100%, the more likely it is that risky borrowers will default by borrowing stablecoins against volatile collateral
  • The liquidation incentive controls how likely it is that liquidators decide to participate and take liabilities off of the smart contract’s balance sheet.
    • The higher the liquidation incentive, the less time a defaulted borrowed asset will be a liability on Compound.

Under normal market conditions, when liquidations are independently distributed (uncorrelated), the collateral factor and the liquidation incentive control the borrower’s risk and the supplier’s ability to recoup their losses respectively. However, then liquidations are correlated (liquidation cascade), these parameters affect both borrower and supplier behavior.

Liquidation incentives create an arbitrage opportunity or a price discount for the liquidator in exchange for the reduction of Compound’s risk exposure. The higher the liquidation incentive, the higher the number of liquidators that will participate in the liquidation process, since they will get steeper discounts on the borrower’s collateral relative to the asset’s market price.

  • The risk inherent in the collateral factor is connected to the nature of shocks to the market price of the collateral
  • The risk that liquidators with low time preference face is connected to the loss of liquidity in an external marketplace
  • Cascading liquidations affect both the collateral factor and the liquidations incentive because they create a feedback loop due to price shocks and a loss of liquidity.

Collateral factors define the maximum borrowing capacity for each asset supported by the protocol. They are the signal for borrowers to manage their own debt and keep their loans overcollateralized. As collateral prices fluctuate, this margin of safety will dynamically adjust to reflect the borrower’s risk profile.

When market volatility is high, risk-averse borrowers maintain a high margin of safety to avoid having their collateral liquidated. On the opposite side, risk-seeking borrowers will maintain a lower margin of safety and actively refinance their debt obligations to optimize for the usage of the borrowed funds.

Liquidation incentives also have an influence on a borrower’s decisions to borrow an asset from the protocol. This is because when a borrower’s loan is liquidated, the liquidation incentive can be seen as a bonus amount of the borrower’s collateral that is given to the liquidator as a reward and to compensate for the risk of taking a liability off of the protocol’s balance sheet.

If the liquidation incentive is too high, a borrower might be unwilling to borrow that asset. As a rule of thumb, it is expected that increasing liquidation incentives have a negative impact on borrowing demand.

Project Investors

The token launch took place on June 15, 2020.

There have been 2 major investment rounds for COMP and a total raise of $33.2M:

Additional Information

Partnerships

Integration

  • BitGo – Provides the most secure and scalable solutions for the digital asset economy, offering regulated custody, borrowing and lending.
  • Argent – Smart Contract Wallet
  • Huobi Wallet – Huobi Exchange Wallet
  • Ledger – Self-custody Wallet
  • Linen – Self-custody Wallet
  • Eidoo – Multi-currency wallet and exchange
  • Floatify – Fiat to Compound on-ramp
  • InstadAPP – DeFi Smart account
  • LSDai – Supply interest rate derivative
  • Dharma – Non-custodial smart wallet
  • Outlet Finance – Savings account built on Ethereum
  • Maple Finance – Crypto bond platform
  • ParaSwap – Swap & payment solution
  • Lumina – Provider of accounting reports, merged with BitGo
  • Sablier – Real-time streaming payment service
  • Frontier Wallet – Non-custodial DeFi wallet
  • Fireblocks – Fidelity-backed crypto security and wallet software provider
  • Coinbase wallet – Self-custody wallet
  • OKEx – Spot and derivative exchange
  • Crypto.com – Spot and derivative exchange
  • OKCoin – Stake and earn platform
  • Circle – Stablecoin issuer and services platform
  • Coinbase – A secure online platform for buying, selling, transferring, and storing cryptocurrency.

De-Fi Integration

  • iEarn Finance – Yield aggregator for lending platforms
  • Curve Finance – Stablecoin liquidity pool
  • Opyn – DeFi insurance
  • Ankr – Blockchain node-as-a-service provider
  • Binance DeFi staking – Allows users to supply to Compound directly via their interface
  • Pendle – Future yield hedging dAPP
  • Zapper – All-in-one platform to manage, track, and invest in crypto.

FAQ

What are the requirements for borrowing crypto assets from Compound?

  • The only requirement is that users must deposit collateral denominated in any of the collateral assets supported by the protocol. Afterward, users can take out loans denominated on any supported asset (in Compound V2) or USDC (in Compound V3).

How do cTokens earn interest?

  • cTokens accumulate interest earnings through an exchange rate. Over time, each cToken becomes convertible into an increasing amount of the underlying asset, even while the number of cTokens in your wallet stays the same.

Can I transfer cTokens?

  • It is possible to transfer cTokens. However, in doing so you would be transferring your balance of the underlying asset inside the Compound protocol.

Who sets the interest rates? When are they set?

  • Interest rates are set algorithmically on a block-by-block basis.
  • Interest rates are a function of the utilization rate (amount of liquidity available) for each market and fluctuate in real-time based on supply and demand.

Why is the supply rate lower than the borrow rate?

  • There is an excess of liquidity in each market (assets supplied > assets borrowed) in order to allow users to quickly withdraw or borrow funds from the protocol.
  • The interest paid by borrowers is earned by the suppliers of the asset. This interest is split across all suppliers. Because there are more suppliers than borrowers, the interest rate they earn is proportionally lower.
  • Note that a portion of the interest paid by borrowers is set aside as Protocol Reserves (Reserve factor).

How do the protocol’s price feeds work?

  • Compound users Open Price Feed as a source of price data reported by Chainlink. This data is then sanity-checked against Uniswap TWAP price data.

Community Links