Features of LendingV2
Notice:
- Gas consumption
- Library version (To verify later)
Steps:
- Cooperate with product team to confirm features and design implementation
- Implementation + Verify
- Formal Verification + Audit
- Testnet Launch + Bounty Programs
- Mainnet Alpha Launch
Features - General Lending
Isolation Mode
- isolated collateral asset with limited set of borrowing assets and debt ceiling.
- Criterions
[Skyge 04-14]
Q1. For borrowable assets in isolation mode, it can change from unborrowable to borrowable, so can it change from borrowable to unborrowable?
[Skyge 04-07] eg:
Under the isolation mode, one asset should behave like following
(Assuming Arb Token and OP Token are isolated assets, debtCeiling = 500
, and only USDC, DAI can be borrowed):
debtCeiling means total borrowed amount in the isolation mode, but it is yet to be confirmed.
- Alice supplies 100 Arb Token, and then she sets Arb Token as collateral (enter markets), so now she enters the solation mode, and she can only borrow USDC, DAI.
- Alice supplies ETH, but it can not be used as collateral.
- Alice supplies OP Token, cause she has enterred the solation mode, so OP Token can not be used as collateral.
- Alice disables Arb Token as collateral(exist markets), now, she exists the solation mode,so she can set any token as collateral.
- Alice sets ETH as collateral, cause she has a non-isolated asset as collateral, so she will never enter the solation mode.
TODO:
Efficient Mode
[Skyge 04-24]
Q1: Should eMode risk parameters always increase?
Q2: An asset can appear in more than one category at now.
- [x] Option1: Yes
[Skyge:04-11]
Liquidation Threshold
- seperate LTV and liquidation threshold, LTV/LT(liquidation threshold) per collaterals
Variable liquidation close factor
gradual liquidation close-factor per loan assets, up to 100%.
Withdraw&Borrow Timelock
- requirements
- Single borrow / withdraw limit set, for example,
- letgo limit
- 1 block limit
- multi-blocks limit
- assets limit, for example,
- whitelist strategies, for example,
- flag to enable/disable whitelists
- allow accounts in the whitelists having their own limit, for example tx limits and daily volumes limits.
- reference structure
{accounts}{assets}[tx-limits][delay-blocks]
{accounts}{assets}[dailyVolume-limits][delay-blocks]
Repay with deposits
- The feature looks like "ability to do external call before the end of redeeming", so users can exchange the redeems for borrows to repay the loans. This is so-called "repay with deposits".
- With the help of this feature, users can do lots of stuff, for example "switch your deposits".
Permissionless Pool
- tools set to set up lending pool automatically
- parameters / oracle / web / api
Action Conditions(newly added conditions)
Notes: in following cases, the actions will be disallowed.
enableIsolated |
enableCollaterals |
disableIsolated |
enableEMode |
disableEMode |
Borrow |
Liquidate |
hasCollaterals |
inIsolatedMode |
- |
inEMode |
- |
borrowsExcluedIsolated |
solventByLiquidationThreshold |
- |
- |
- |
borrowsExcluedEModeCategory |
- |
borrowsExceededDebtCeilingIsolated |
- |
- |
- |
- |
- |
- |
borrowsExcluedEModeCategory |
- |
Process(Skyge)
Current process is in the notion: https://www.notion.so/dforce/Technical-Design-Spec-b6804f4014a94055bcc0b469721bd693?pvs=4
Features - Hybrid NFT Lending
Support ERC-721
- NFT as collateral and instant borrowing power, build-in feature in general lending
- tokenize NFT deposit, act as social right of portrait
- oracle with ability of boosting "rare" portraits
- liquidation of NFT, auction and liquidity protection
- instance 'buy' leveraged by borrowing power as low as zero-downpayment
- instance 'sell' leverage by collaterl listing(repay & pay)
Risk Framework
- THE very question: which type of Loan is really required by NFT holders? Peer-to-Pool OR Peer-to-Peer.
- Loan types: variable/fix rate, fix-term loans
Reference
AAVE V3
Key Features
Euler
Key Features
ParaSpace
Key Features
BendDao
Key Features
Zharta
Key Features