As our protocols now involve many assets (dToken supporting USDx, USDT, USDC, Dai, and the soon-to-launch dForce’s Lending and Multicurrency Stable Debt protocol supporting a variety of assets), it is important that we formalize our risk assessment framework, which will be used to onboard assets across our protocols.
Review Process
- Proposal stage: adding new assets or collateral supply into our protocol will be carried out through DF token voting process, i.e., snapshot page voting. The proposal shall include multiple factors including the type of asset proposed, whether or not it can be used as collateral, LTV, borrowed assets factor, supply and borrow cap, liquidation penalty.
- The assessment process is open and all community members can join the discussion on our forum. The internal initial evaluation will kickstart once the proposal is submitted. Team’s assessment on the smart contract will depend on the type of token proposed:
- for standard ERC 20 tokens, we’ll have an internal vesting process and provide immediate clearance
- for ERC 20 tokens that deviate from the standard ERC 20, our developer team would need to provide formal clearance before we move into next stage
- for any non-ERC20 tokens, we’ll need at least one external party (either an auditor or a well-recognized community technical reviewers’ verification) to verify and audit the code.
3. It will then go through risk assessment score card checking.
4. The voting period will be 48-hour minimum, if passed, we will move into execution stage, and there is a minimum of 48 hours of grace period before the approved assets to be added into the protocol.
All new assets accepted into lending protocol needs to go through the above review and voting process. However, to ensure efficiency, the team will have discretion to determine the risk parameters for all assets which are approved into the lending protocols.
Risk Factor Coverage
We develop our assessment framework based on existing market’s best practices including the DeFi Score developed by Codefi team. This score includes the following factors: Smart Contract Risks (maturity, code security, code openness), Financial Risks (market and liquidity risks), Centralization & Intermediary Risk as well as some traditional financial market’s best practices.
Smart Contract Risks
Smart Contract Risk is the single most critical risk for a DeFi protocol. We evaluate the risk based on multiple factors, including but not limited to: maturity (how long the SC has been deployed), code complexity, audit history, open source or closed source.
Financial Risks
Similar to traditional finance, DeFi deals with mostly marketable crypto assets. Most lending protocols require over-collateralization, hence the financial risks are mainly about collateral’s market and liquidity risks.
· Market Risk
Many of the traditional financial market’s trading desks use Value at Risk model to assess the market risks of portfolios, given most of the crypto assets have pretty short trading period and lack of credible trading data to backs test the model. Therefore, we mainly use the trading volatility to gauge the market risks of collaterals.
· Liquidity Risk
Liquidity is how easily a crypto asset can be bought or sold in the market, and converted to cash, stablecoin or other crypto assets.
There are mainly two parameters measuring liquidity risk, one is the bid and ask spread and the other is liquidity depth.
Liquidity assessment refers to not only on-chain liquidity but also off-chain Centralized exchanges (CEX) liquidity. Particularly for BTC wrapper (i.e., WBTC), it is more important to take into account off-chain liquidity, given most of bitcoin’s liquidity are on CEXs.
We are looking at full market coverage when assessing liquidity risk of a collateral asset.
For lending protocols, in addition to market liquidity, it is also quite important to look at the utilization ratio, to gauge funding liquidity risks. An example of this is, during market chaos, DAI is often in huge demand for deleveraging and closing CDPs, hence drain out DAI’s liquidity and create substantial funding liquidity risk.
Counterparty Risks
Counterparty risk is mainly about centralization risk and intermediary risk. For example, is the token contract has special administrative right to mint assets, is it subject to time lock. It is an important risk to consider when lending money with DeFi protocols. Different DeFi protocols have different levels of centralization risk.
One of the biggest risk factors to centralization risk in DeFi protocols is the use of admin keys. Admin keys allow protocol developers to change different parameters of their smart contract systems like oracles, interest rates and potentially more.
The above risk assessment is to determine different risk aspect of asset and then, we could decide the risk parameters of each assets based on the score.
Risk parameters are the quantifiable triggers to set risk limits for lending protocols. Below is the list of risk parameters we evaluate :
Risk Parameters
Collateral support, Supply Cap, Borrow Cap, Loan-To-Value, Liquidation Penalty, Borrowed Asset Factor, Reserve Ratio.
Below is a brief explanation on the above risk parameters:
Collateral Support refers to whether an asset can be used as collateral in a lending protocol. This is the first line of defense against infinite mint risk, or risk of market price volatility. For example, let’s assume asset ABC is enabled as a collateral. If there is infinite mint of ABC, or in the event of ABC price collapsing, we will see a flood of ABC depositing into the lending protocol and borrowing out other assets. On the contrary, if a collateral is disabled to be used as collateral in the protocol, it will substantially limit its usability and liquidity. We have introduced a supply cap, which helps limit the collateral risk exposure while maintaining a certain level of flexibility.
Supply Cap. We are one of the two protocols who utilize this risk parameter. In simple terms, the Supply Cap limits the overall exposure of a specific asset. This is particularly important if the said asset is enabled as a collateral within the protocol. For example, say we enable ABC as collateral within our lending protocol, if we set a supply cap of 10m ABC, at a collateral ratio of 75%, this will significantly limit the infinite mint risk of ABC; i.e., even if someone prints 1bn ABC, they can only supply no more than 10m into the lending protocol.
Borrow Cap is used to mitigate against risk of concentration risk and liquidity risk of the lending protocol. An example of this can be illustrated with Compound. Compound protocol initially did not have a Borrow Cap when in the initial periods of the yield farming craze. In one instance, when arbitrageurs used recursive borrowing to borrow significant amounts of BAT, the borrowing went out of control. If there is significant price swing for BAT, it could put the protocol at risk of being insolvent.
Loan-to-Value (or collateral ratio), this is the most important parameter in a lending protocol. It is basically the leverage ratio of a specific asset, i.e., how much you can borrow against the collateral. The more liquid, stable, and mature an asset is, the higher the loan-to-value ratio.
Liquidation Penalty, is the discount factor to be applied in the event of liquidation of a loan position. During liquidation, a liquidator is able to buy the defaulted borrower’s collateral at discount to market price by repaying the defaulted loan on borrower’s behalf. The discount is the liquidation penalty. The more illiquid, less matured, and more volatile an asset is, there’s typically a higher liquidation penalty to incentivize liquidators to liquidate the defaulted loans in the event of default.
Borrowed Asset Factor. dForce is the only lending protocol that introduce this risk parameter. This is to further expand LTV ratio, to consider the liquidity and market risks of the borrowed assets. For example, a borrower who supplies ETH to borrow USDC, is less risky than a borrower who supplies ETH to borrow WBTC (due to price volatility of both ETH/WBTC and illiquidity of WBTC v.s USDC). In other lending protocols, both transactions are subject to the same LTV ratio by design. dForce will take the borrowed asset risk factor into account, which could result in a lower LTV for the same collateral with different borrowed asset. Please note that in the initial stages, we will be setting the Borrowed Asset Factor to 100% to simplify the risk module.
Reserve Factor is the amount of interest spread that can charged into the reserve pool. This is similar to interest rate spread charge to be reserved by future use.
The above summarizes our risk assessment process and risk parameter standards for each asset accepted into the dForce lending protocol. A more detailed analysis of each asset will be proposed in due course.
Check out more about dForce through:
· Twitter: https://twitter.com/dforcenet
· Telegram: https://t.me/dforcenet
· Website: https://dforce.network/