- Matt Stein
DAO Governance in Euler’s DeFi Lending and Borrowing Protocol
Updated: Feb 7
#21 Governance Series
Protocols like Aave and Compound provide users with access to lending and borrowing capabilities for a handful of the most liquid ERC20 tokens. However, these protocols were not designed to handle the risks associated with lending and borrowing illiquid or volatile assets. These lending protocols have therefore relied on a permissioned listing system to protect their users from the risks associated with such assets.
This has left a gap in the market, and there remains significant unmet demand for lending and borrowing of long-tail crypto assets. Euler is a permissionless lending protocol that allows users to lend and borrow more Ethereum-based tokens than ever before. Those assets with low liquidity and low trading volume are risky to interact with, but Euler is able to meet this demand using innovative technical implementations and strong governance mechanisms. Euler’s revolutionary new approach to lending and borrowing allows the community to safely onboard long-tail assets while still acting in the best interest of the protocol.
Euler lets users determine which assets are listed. Any asset that has a WETH pair on Uniswap v3 can be activated by anyone with a few simple clicks.
It may seem risky to allow anyone to activate a borrowing and lending market. However, Euler handles these liquid assets using new methods of managing risk and relying on risk-adverse governance. Here are some examples of their innovations and the role governance plays in them.
In order to list long-tail assets safely Euler categorizes each asset into one of three tiers. Upon activation, an asset is initially classified as ‘isolation-tier’. Isolation-tier assets can’t be used as collateral and can’t be borrowed alongside any other asset. This classification is used for the riskiest of assets and allows users to borrow or lend these assets without endangering the entire protocol. This helps mitigate the risk of “domino-effect” style liquidations across lending pools.
If an asset is deemed less risky, its tier can be changed through a governance vote. The next tier is Cross-tier. These assets can’t be used for collateral, but can be borrowed alongside other cross-tier and collateral-tier assets. For example, MKR was promoted to cross-tier. It was deemed safe enough to promote because it is backed by a robust oracle on Uniswap v3, is widely distributed and decentralized, and has relatively high liquidity on numerous decentralized exchanges.
Finally, the safest of assets can be voted into Collateral-tier. These assets can be used as collateral for loans as well as borrowed along with other assets. USDT was promoted to the collateral tier because it was stable, had high liquidity, and would attract more capital to Euler, increasing the TVL.
EULs’ Role in Governance
$EUL is the token issued by Euler. $EUL holders can vote to promote or demote assets from isolation-tier to cross-tier or collateral-tier or vice versa. Promoting assets increases capital efficiency on Euler because it allows lenders and borrowers to use capital more freely. However, it may also expose protocol users to increased risk. It is therefore in EUL holders' interests to balance these concerns and promote or demote assets accordingly. Additionally, if an asset is deemed too dangerous for anyone to interact with such as FTT it can be blacklisted to protect users and the protocol. StableLab became a delegate for Euler finance in November 2022. As a professional delegate, we carefully analyze the pros and cons of promoting or demoting an asset to improve the efficiency of the protocol without endangering it.
Risk-adjusted Borrowing Capacity
Other lending protocols calculate how much a user can borrow using collateral factors to adjust the value of a borrower's collateral assets. However, this approach only adjusts for the risks of a borrower's collateral assets decreasing in value and fails to account for the borrower's liabilities increasing in value.
Euler uses a two-sided approach to arrive at a “risk-adjusted liability value”. To ensure that the value of a user’s collateral remains higher than the value of their liabilities, Euler uses a new “borrow factor” in addition to the traditional collateral factor. This allows Euler to account for the asset-specific risks of both an increase and decrease in price. This approach improves capital efficiency and safety as the liquidation threshold of every borrower is specific to the assets they are borrowing and using as collateral.
Governance plays a key role in deciding these collateral factors (CF) and borrow factors (BF). DAO members must assess the risks of each asset to determine a CF and BF that prevents Euler from accumulating bad debt while still keeping them at a level that promotes efficient use of capital.
For example, in eIP 5, the community agreed to increase the BF for multiple assets. This allows users to borrow more of these assets and therefore improve capital efficiency. Increasing the BF can be risky as it means it is more likely the user will get liquidated. However, the Euler community reasoned that these assets were safe enough that increasing the BF would allow for more efficient use of capital without dramatically increasing the chance that the protocol would be left with bad debt.
Another example can be seen with eIP 25 where the CF was decreased for UNI and LINK. The community reasoned that these assets allowed users to take out too large of a loan against these assets which could lead to bad debts for the protocol. The Euler community is constantly examining the BF and CF of all assets to assure that the protocol remains safe but is still able to maximize capital efficiency.
Another way Euler accounts for risk while still maintaining capital efficiency is with their interest rate methodology. Other lending protocols use static linear or piecewise linear interest rate models to calculate the cost of borrowing. This means, as borrowing demand increases or supply decreases, interest rates go up. When supply increases or the demand for borrowing decreases, interest rates go down. However, if these models are parametrized incorrectly the cost of borrowing will be underpriced. This can lead to over-utilization of a pool and leave lenders unable to withdraw their assets. Additionally, incorrect parameters can also lead to the cost of borrowing being too expensive, which limits capital efficiency.
Instead of hoping that the parameters for the interest rate are set correctly, Euler uses a proportional–integral–derivative controller to increase or decrease the rate of change of interest rates when utilization is above or below a target level. These reactive interest rates adapt to market conditions for the underlying asset in real-time without the need for ongoing governance intervention. While governance is not constantly needed to adjust interest rates, it still plays a role in adjusting the reactive interest rate model parameters. For example, eIP 27 adjusted the USDT interest rate model. This was done to increase the capital efficiency of the USDT market while mitigating liquidity risks. Again, Euler governance is continuously making sure capital efficiency is being improved while still keeping the protocol safe.
The final way Euler governance keeps the protocol safe while still allowing long-tail assets to be borrowed is by deciding on the proper oracle to use for each asset. Oracles are data feeds that bring data such as prices from off-chain data sources and convert it to a format that enables smart contracts to use.
Lending protocols need to know the value of each asset to determine when a loan is over or under-collateralized. Other lending protocols get prices from off-chain sources and put them on-chain so that they can be accessed by their relevant smart contracts.
Since anyone can activate any borrowing market on Euler, if Euler used the traditional oracle method it would require centralized intervention before the asset could be listed. To solve this, Euler uses Uniswap v3's time-weighted average price (TWAP) oracles to calculate the price of new assets. The new asset added to Euler is referenced against its WETH pool on Uniswap in a time-weighted fashion to determine an accurate price. This allows users to add new markets truly permissionlessly without having to wait for a centralized oracle.
However, if an asset's WETH pool has low liquidity or poorly distributed liquidity it can be manipulated by bad actors which can lead to incorrect prices and causes individuals to be able to borrow more than they should be with their collateral. To protect against this, Euler governance members monitor the oracles for each asset and constantly upgrade them. For example, this upgrade proposal changed the oracle of several assets to a Chainlink oracle. It was done to ensure the correct prices are used and that Euler remains safe from price manipulation. By allowing new assets to initially use a TWAP oracle and by using governance to update oracles with low ratings, Euler is now able to permissionlessly add new markets while still ensuring the safety of the protocol.
StableLab’s Role in Euler
These innovations to the DeFi lending space exemplify how Euler is able to offer far more markets than other protocols while remaining a safe place for users to lend and borrow. At StableLab, we support Euler's mission to increase capital efficiency in a safe way.
Our priority for Euler is to help the protocol grow towards decentralization safely. Euler is a disruptor to the decentralized borrowing and lending space. However, these innovations can be hard to grasp by those without a financial background, or those not part of DeFi space. Thus governance in Euler can be difficult for some.
In order to make Euler a fully trustless system decisions need to be made by the community. The challenge resides in cultivating a large enough community with the technical/financial knowledge required to make the appropriate decisions.
As professional delegates, we at StableLab have a full-time team dedicated to researching these technical decisions. Our governance team will discern proposals using relevant sources to make an informed vote.
We will continue to play an active role in the Euler community and will share our rationale for each proposal. This will allow members of the community to better understand the technical proposals and make informed decisions.
In this way we bridge the knowledge gap, pass innovative proposals and allow the project to move towards a more decentralized and trustless system.
Get in touch,
If you would like to support us in our governance efforts,
If you and your team need guidance on governance related matters, or
If you are a founder who is building something interesting in web3