借贷资金池
去中心化资金池模型
去中心化P2P借贷存在两种基本模型:交易模型与资金池模型。交易模型的优点是支持订单的个性化定制,但缺点是需要高效的匹配机制。受制于区块链当前性能的影响,当前资金池模型是P2P借贷的主流选择。Themis协议使用的也是资金池模型。不依赖于市场深度和匹配效率,协议一旦部署,永不终止。
主要功能
存款&收益
Themis协议的Lending Pool会根据剩余资金的使用率计算浮动利息,并奖励给存款人。用户在存款后,协议会为用户铸造相应的SP-token,1:1锚定存入的代币。并在用户向LendingPool取款时销毁。
SP-token可以发生转移,并具有以下特点:
铸造时1:1锚定存入的Token;
当普通地址A向普通地址B转移SP-token时,地址A会获得当前结算的利息与奖励;
当合约地址向普通地址转移SP-token时,普通地址会获得当前结算的利息与奖励;
当合约地址向合约地址转移SP-token时,协议会获得当前结算的利息与奖励。
因此SP-token是一种 Interest Bearing Token。并且具备一定的使用场景:
当用户需要转移存款到安全地址时,可直接进行SP-token转账;
当用户需要通过DEX抵偿流动性时,可以将SP-token转移至DEX合约;
使用Token从DEX合约中1:1换出资产时可以获得一定的收益。
提供SP-token/token流动性的AMMs将有可能获得协议的奖励;
当市场的SP-token与token兑换比例不等于1:1时,会有套利者快速使其价格回归。
算法浮动利率
存款人从LendingPool中获得的利息目前是Token本位的。利息是通过资金池token的使用率进行计算的。
要计算存款人的利息需要先得到资金使用率:U_a=borrows_a/(cash_a+borrows_a
Borrow合约会协定和借款人的实时利率:BorrowInterestRate_a=2.5%+0.2U_a
那么LendingPool的实时利率为:InterestRate_a=U_a*BorrowInterestRate_a
利息结算
Themis Protocol的利息是根据实际归还利息进行结算的,不存在挪用存款人本金作为利息的情况。实际利息和利率会随着每次存款池的更新而发生变动。由于每一次更新存款池都会重新生成一个利率周期,因此存在实际利息结算时会略高于标记利息的情况。也存在于在借款人归还利息前结算存款导致实际利息略微低于标记利息的情况。
灵活存取&流动性兑换
当用户取款总额小于Reserve时,可以随时取款;
当 LendingPool的资金使用率过高时,标记年化利率会提升,但流动性风险加大;
届时,可以借助第三方流动性协议建立SP-token/token的1:1兑换池。
为了降低普通用户的流动性风险,Themis增加了Vaults存款。
Vaults存款面向有长期存款需求的用户开放;
Vaults的存款实际存入借贷资金池;
每笔存款会为用户铸造一个NFT用于锁定SP-token;
在选择存入周期后线性释放SP-token;
NFT将属于用户;
选择Vaults存款会获得额外奖励。
界面信息
交互
首次链接钱包,界面会显示当前所有市场的概况;
点击Lend后,用户可通过Deposit进行存款,首次存款需要对Token进行授权;
当完成对一个类型资产的存款,该代币类型的存款将显示在My supply中;
用户可通过Position按钮增加存款或取款;
取款或账户变动时会自动结算利息与奖励;
奖励也可以通过右上角交互图标统一领取;
数据说明
Type | 说明 | 计算方式 |
---|---|---|
Asset | 资产种类 | 读取合约地址和信息 |
Market size | 总存款的美金价值 | (CurSupply+CurBorrow)*Target_Value |
Borrowed | 总借款余额的美金价值 | CurBorrow*target_value |
Supply APR | 当前借款年化利率 | U_a*BorrowInterestRate_a |
Yield APR | 当前存款奖励年化收益率 | TMS_reward_Value*2,073,600/User_Suppy*target_value |
Wallet Balance | 用户资产的钱包余额 | 读取地址Token信息 |
Reserve | 存款池资产余额的美金价值 | CurSupply*target_value |
Reward | 当前池子中可以领取的奖励 | mining合约取值 |
Total market size | 所有存款总余额的美金价值 | 累加所有market size |
My share | 用户在该资产中的权重 | User_supply/CurSupply |
Last updated