DeFi术语与基本概念开发者必读

2022-11-30 区块链达人

Defi协议有几种不同的类别,但由于像Compound这样的借贷协议(Leding Protocol)关注度最高,

因此本文将重点梳理Defi借贷协议中的基本概念、常见模式以及存在的风险。这些概念不仅适用于借贷协议,同时也适用于其他类别的Defi产品,例如期权协议Opyn。为了便于软件开发人员理解,我们将尽可能不使用金融术语。

Defi项目在2019年开始爆发,当年的总体锁定价值增长了137.23%,也就是说每37.12个以太币就有1个锁定在Defi协议中,因此被视为区块链应用的一个重点落地领域。点击这里 查看超过100个DeFi协议与应用开发资源。

用自己熟悉的语言学习 以太坊DApp开发 : Java | Php | Python | .Net / C# | Golang | Node.JS | Flutter / Dart

1、什么是DeFi借贷协议 / Lending Protocol

借贷协议是以去中心化方式连接借方(lenders)和贷方(borrowers)的平台。一方面,它允许贷方从平台借贷数字加密货币并支付利息,另一方面它允许储户向平台存入数字加密货币以赚取利息。与银行的存款账户相比Defi借贷协议通常可以提供高得多的利息,例如在写这篇文章时,Compound为DAI借提供7.58%的年化利率,而大部分银行的存款利息则非常低,其中一些甚至是负利率。但另一方面,贷方需要为其贷款支付利息,例如在目前从Compound协议借出DAI的年利率是8%,这个成本相当高。

2、Defi借贷协议和P2P贷款是不是一回事?

那么,DeFi的借贷协议和P2P贷款是不是一回事?

不是的。

这些Defi借贷协议通常基于池化结构运作。例如,当你向Compound存入DAI时,你的钱就进入了一个资金池而不是特定的贷方,同样贷款人是从资金池而非特定借方借款。这个设计的优点如下:

借方不需要等待贷方出现

协议支持采用不同的激励措施来平衡供需,例如当贷方需求低时,就可以 对借方利率产生影响

协议可以平衡风险,因此借方不必与借方的特定风险100%绑定

3、DeFi贷款利率这么高为什么还有人用?

可能的答案很多,但常见的一个原因是交易者进行杠杆交易。杠杆(Leverage)是一个非常简单的概念,意识是借钱投资。例如,我有一些BAT代币并且详细它会上涨,但是我还想买点REP因为我觉得REP也会涨,我不想卖掉BAT然后再买REP,那么就可以利用用我的BAT作为抵押(Collateral)从Defi借贷协议借出一些以太币,这样就可以用这些借到的以太币来买REP了。

在上述案例中,我同时持有BAT和REP,另外需要承担以太币借款的年利息。如果REP的价格上涨,我就可以卖掉REP换回以太币,然后向Defi协议还掉之前借出的以太币,剩下的以太币就是利润了。

4、抵押物 / Collateral

抵押是金融行业中的一个基本概念,它的作用就是借钱时你用作担保的东西。如果你不能按约定还款,你的抵押物就会被用来支付债务。一个简单的例子就是住房抵押,当你从银行贷款买房时,你买的房子就是抵押物,如果你不能偿还贷款,银行就会收走你的房子。

在Defi中也是一样的,如果你想从Defi协议中借出一些资产,那么你就需要向协议提供一些资产作为抵押物;如果你不能偿还贷款,协议就不会归还你的抵押物。由于我们讨论的是去中心化金融,因此可接受的抵押物通常都是数字加密资产。

5、抵押率 / loan-to-collateral ratio

由于数字加密货币的价格不稳定,那么使用加密资产作为抵押物就是有风险的,因为当抵押物价格下跌时,可能都不够贷款。例如,假设今天BAT和REP的价格都是$1,我用1个BAT作为抵押物,从一个Defi协议借了1个REP。第二天BAT的价格跌倒了$0.5,但是REP还是$1,现在如果我不还款,那么当Defi协议试图卖掉我抵押的BAT来覆盖我借的1个REP时,就会有$0.5的损失。

这就是为什么大多数Defi协议都要求过抵押贷款,意思就是你只能借到抵押物价值的一部分(不到100%)。Defi协议通常称之为抵押率,这也是风险控制的常见要求。现在当你借款时,只能借比如75%的抵押物价值,这给抵押物的价格变动流出了15%的缓冲区。

由于每种加密资产的价格不稳定性都不一样,因此常见的做法是为不同的资产对分别设置抵押率。例如Compound将抵押率称为抵押因子(Collateral Factor)并对不同的资产分别设置。

6、协议代币和标的资产 / underlying assets

经常会看到Defi协议发行自己的代币。例如当你向Compound协议存款时,就会得到cTokens,例如cEther、cDAI等,这些Defi协议代币通常就是标准的ERC20代币,它们在Defi协议运作中发挥着重要的作用。例如在Compound协议中,cEther或cDAI分别用来表示你向协议存入的以太币或DAI,被称为标的资产(underlying assets)。这些cTokens就像Defi协议开给你的收据,这样你在将来就可以用它赎回存款。另一个作用是跟踪你的存款的利息。因此如果你将这些cTokens转给别人,也就意味着你将存款收据给了别人,别人也就可以赎回你的目的资产了。因此一定要小心处理这一块。

在Compound中需要注意的一点是,当你使用存款作为抵押物来借出其他资产时,发给你的cToken就不可以转账了。这也容易理解,因为既然作为抵押物了,你的标的资产就被锁定,直到你的债务还清。如果在此期间cToken还可以转账就有问题了,因为这些代币的接收方可能压根就不知道这些cTokens已经被抵押了。

7、价格预言机 / Price Oracle

价格预言机是Defi协议中的一个常见概念。当一个Defi协议处理不同的资产时,它经常需要了解这些资产的当前价格,基本上说价格预言机就是用来向Defi协议提供资产价格的。在Defi生态中,价格预言机是一个关键的组成部分,但是Defi用户通常并不会注意价格预言机的运行机制,但实际上如果价格预言机没有正确设计的话可能导致严重的安全问题 - 总之,如果资产价格被攻击,那么整个Defi协议也就失败了。

目前绝大部分Defi协议使用自己的价格预言机,在重仓投资这些协议之前,有必要查看这些价格预言机的实现代码并理解其是如何处理价格的。不过Compound已经发布了Open Oracle,这是工业标准化解决方案的好的开始,它可以替代不同Defi协议的自己的价格预言机,从而移除了这些预言机的潜在风险。

8、利息 / Interest

Defi中的利息和传统的银行业中的概念是一样的。通常有两种类型的利息:单利(Simple Interest)

和复利(Compound Interest)。不过在Defi中利息的计算要更复杂一些,因为以太坊交易需要依赖外部触发,Defi协议通常需要依赖于用户的操作才进行利息的计算。例如Compound是每个区块都计算利息,但是它并不是自动在后台完成计算的,而是依赖于关键的用户行为(例如存款、贷款、清算等)来触发利息计算过程 —— 如果用户没有操作,那么Defi协议自己是不会执行利息的计算的。

9、清算 / Liquidation

清算的意思是,当你的抵押物价值跌落至接近债务甚至无法支撑债务时,Defi协议就会让其他人买走你的抵押物。例如,假设1 REP的价格等同于1 BAT,你存入1.5 BAT作为抵押并借出1 REP,那么当BAT价格下跌到 1.3 BAT = 1 REP时,对于Defi协议而言就有奉献了,因为如果BAT继续下跌的话,Defi协议就无法偿债,因此这时Defi协议就会允许其他人买走你的抵押物即1.3 BAT。通常来说,Defi协议为了鼓励及时清算都会向清算人提供奖励,这被称为清算红利(Liquidation Bonus)或清算激励(Liquidation Incentive)。这符合Defi协议的利益,因为这样可以在抵押物价格跌的太多之前及时清算。值得指出的是,一旦抵押物价格跌破债务价格,那么贷方偿还贷款就不再有意义,而这种情况下

Defi协议就会无法偿债。

10、这是不是说清算是挣钱的好办法?

是的。Defi协议通常都会为贷款清算提供激励,作为清算人,你可以从清算过程中得到好于市价的交易,因此从技术上来讲,通过监控Defi协议及时找出允许清算的抵押物你是可以获利的。不过过这个过程需要对Defi协议保持持续监视,并且你还要与其他清算人(通常是机器人)竞争以确保清算及时发生。同时还要了解,你要接手的抵押物是价格下跌的资产,持有这种资产通常是危险的。

搭建defi代币,区块链搭建,可以到技术群交流