http://www.fsfzs.com

开放协议 Compound 如何实现数字资产借贷,释放货币时间价值?

原文标题:《去中心化的货币市场:Compound 是怎样用区块链重构「借钱」这件小事的?》

货币有时间价值,因为钱会产生利息。区块链产生了很多的数字资产,但现在这些资产大部分只能直接交易,无法交换时间价值,所以,借贷的实现就变得很重要了。

Compound 是一个开放协议,想要实现数字资产的借贷。它想让你在区块链世界里更容易借钱。

借钱是很基础的需求。有的人有额外的资产,放着没用,有的人可能自己没有资产,而这些资产往往具备生产或者投资的价值,如果能让这两部分人互相借贷,那对双方来说都有好处,最终它会创造一个非零和的财富增长。

但在区块链上实现借贷有两个主要的问题:

1、现有的借贷机制极其有限,所以很容易导致资产的错误定价。(比如很多的垃圾币有很高的市值,因为没有渠道可以做空它们。)

2、区块链资产有可能产生负净值,因为有链上存储的成本,也有交易的风险(不论是场内交易还是场外交易)。我们没有一套很自然的利率机制可以抵消这些成本,这样就会让资产具有挥发性,因为「持有」并不产生「激励」。

中心化的交易所提供一些保证金交易,但需要你信任中心化机构,同时对可借贷的资产类型也有很大的限制,通常只有一些主流的币种。同时,这种中心化的方式无法在链上做借贷,这样对于智能合约来说,就没办法接入这套机制了。

而另外一些点对点协议的做法也存在一些问题,包括 ETHLend, Ripio, Lendroid, dYdX 等等。这些协议为用户提供抵押或非抵押的借贷,但去中心化导致了用户需要承担很高的成本和很不友好的用户体验——比如,出借人需要自己发布、管理、监督借贷交易,这样借贷的过程往往需要很长的时间异步进行(因为需要花时间筹集借贷资金)。

Compound 想要提供另一种不同的借贷协议,让整个链上的体验和流程变得更简单、更流畅。

以下为 Compound 运作原理的一个介绍,主要参考来源为白皮书,如果你只想简单的知道 Compound 是一个借贷协议而不想了解更多,可以直接拉到文章最下面看 #Compound 的未来,里面涉及到一些基于 Compound 协议产生的有趣应用。

Compound 的简单介绍

Compound 协议让开发者可以基于以太坊建立各种各样的货币市场(money market)。

所谓的「货币市场」,其实就是一个个的币池,每个币池里只有同一种 ERC-20 的币,协议通过算法来决定这个池子里的币借贷的利率是多少。简单点说,这个算法会基于人们对这个币借贷的供需关系自动计算出利率。例如在 Dai 这个货币市场里,目前放贷可以收取的年利率是 2.29%,贷款需要付出的年利率则是 8.69%,这些利率对每个人都一视同仁,而且每时每刻都可能处于浮动状态。

目前在 Compound 上总共有 5 个开放的货币市场,包含以下币种:

Basic Attention Token (BAT)

Dai (DAI)

Augur (REP)

Wrapped Ether (WETH)

0x (ZRX)

开放协议 Compound 如何实现数字资产借贷,释放货币时间价值? (1)

不管你是来贷款还是放贷,你都是在跟 Compound 协议直接打交道。这一点跟那些点对点的借贷协议不太一样。在点对点的方案里,借贷双方会做匹配,然后你需要跟找你借钱的人(或者借你钱的人)进行沟通,双方自己商定好借款的利率、到期时间和抵押物品等等。

而在 Compound 协议里,每个 ERC-20 代币都有一个属于自己的借贷市场,里面包含每个用户在这个市场里的余额,以及各笔生效的借贷交易,乃至每段时期的历史利率,等等。

Compound 协议包括三个主要的合约:

MoneyMarket 合约:负责主要的借贷逻辑的实现,包括了一系列的操作函数,比如放贷(SUPPLY)、提现(WITHDRAW)、借贷(BORROW)、偿还贷款( REPAY BORROW )、 清算(LIQUIDATE)等等。

InterestRateModel 合约:提供借贷利率的计算模型。

PriceOracle 合约:用来提供各个 ERC-20 代币的价格信息。比如这个合约可以通过排名前十的交易所得出一个币的当前价格,为其他合约所调用。

最主要的合约是 MoneyMarket。在最简单的形式下,一个货币市场的 MoneyMarket 合约,就相当于一个 ERC-20 合约,这个合约会维护一张表,里面记录每个用户持有币的数量,也就是余额,余额同时也会随着时间计算利息。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

相关文章阅读