登录 注册 App下载 简体中文
  • 简体中文
  • English
  • 交易
  • 行情
  • 快讯
  • 首页 > 资讯 > 深度

    读懂 DeFi 借贷协议技术原理与应用扩展

    2021-02-19 12:02

    在 DeFi 世界,去中心化借贷系统是一个极其重要的赛道,也是整个 DeFi 体系里面的基石系统,它能够模拟现实世界里的金融系统,了解不同用户的资金需求,并提供用户间相互资金融通的平台; 它能够无边际成本的支持符合同质化代币标准的所有加密资产之间的借贷,并能够根据市场供需,自动化的计算与调整市场的借贷利率。

    它能够以提供存款凭证代币的方式,将同一资产穿梭、重复使用于不同的 DeFi 协议之中,从而数倍地提升资金在金融市场上的使用效率;它还可以与其它 DeFi 协议进行灵活组合,从而实现多层、多级、复杂、嵌套金融交易的自动化运行。

    那么,DeFi 借贷协议究竟是如何运行的?其基础的技术原理是如何?未来又会有哪些更激动人心的应用扩展?本文中,BKFUND 创始人许超逸将对以上问题进行详细探讨。

    详解 DeFi 借贷系统的技术原理与应用扩展 | 链捕手

    基于资金池智能合约的借贷模型

    传统的中心化借贷系统是以点对点的方式进行撮合执行的,例如资金富余的用户可以在一些中心化交易所的「理财」页面,将自己的闲置资金以自己想要的利率进行挂单,而资金短缺的用户则可以通过抵押自己其他代币资产并以指定的利率进行借单,像「交易市场」一样,「借入」挂单与「借出」挂单是一比一完全对应的,中心化交易所在其中承担了撮合的角色。

    详解 DeFi 借贷系统的技术原理与应用扩展 | 链捕手

    去中心化的 DeFi 借贷系统则有所不同,目前主流项目均普遍采用了「资金池」模型来解决流动性的问题,实现借贷需求的快速撮合,如下图所示,作为「存款人」可以将自己的闲置资产「存入」资金池,并且在需要的时候随时「取回」,而「借款人」可以从资金池里面「借出」一笔资金,并在任意时候进行「偿还」。系统将根据资金池里面的资金进出情况,实时调整动态的「存款利率」与「借款利率」。

    详解 DeFi 借贷系统的技术原理与应用扩展 | 链捕手

    存借款利率主要依据两个因素来调整,第一是市场的供需,即:当借款需求较为旺盛时,利率上升,而借款需求较为匮乏时,利率下降;第二是资金池里的资金使用率,即 U = 借款额 / 存款额 *100%,存款人的收益(存款利息)来自于借款人所支付的借款利息,因此资金使用率上升时,借款利率下降,而资金使用率下降时,借款利率上升。

    与中心化借贷系统的有所区别在于,DeFi 借贷系统的资金使用率 U 并非越高越好,当 U = 100%,即所有存入资金全部被借完的时候,若部分存款人从资金池中取回资金,这将发生资金池里面的存款额 < 借款额这一极端情况,这使得资金挤兑、资金池爆仓的风险大幅增加,因此 DeFi 借贷系统通常都会设计有最优使用率 Uoptimal,当资金使用率超过最优使用率时,借款利率会大幅上升,以抑制更多的借款需求,保障资金池的安全。

    由于「存款利率」与「借款利率」的调整均是实时且动态的,对于用户来说,意味着收益与风险的不确定性(特别是对于借款人而言),因此一些类似 AAVE 这样的新型 DeFi 借贷系统还提供有「稳定利率」的选择,稳定利率在用户一笔借款周期内一般不会改变,便于用户估算自己的资金成本,因此提供用户进行「浮动利率」与「稳定利率」进行切换的选项。特别的,当市场资金供需行情出现极大波动之时,也会出现「稳定利率再调整」的情况。

    由于加密资产的市场价格波动非常剧烈,当借款人的抵押物价值下降,或者借入资产价值上升,以致于抵押率不足时,需要对借款人的借款执行清算,清算的本质是以低于市场价格的方式出售一部分抵押物,来支付借款人应向资金池归还的本金与利息,从而使得资金池得以持续健康运转。

    「 存入」、「取回」、「借出」、「偿还」、「利率调整」、「清算」这是触发 DeFi 借贷系统最主要的六项事件。

    由于 DeFi 借贷系统基于去中心化的智能合约来运行,没有一个中心化的数据库来记录用户存入 / 取回 / 借出 / 偿还的时间,因此通常使用以太坊网络区块高度作为时间标记来更新一个资金池的利率指数 Index,当「六项事件」中的任何一个事件触发时,该资金池的 Index 指数便会随之更新(Indexn = Indexn-1 * r),同时根据算法计算出系统动态的「存款利率」与「借款利率」,并更新相关的用户侧利息数据。

    从六项事件的视角观察 DeFi 借贷系统的运作

    存入

    存入加密资产是用户进入 DeFi 借贷系统的第一步,这一步骤将用户的加密资产从私人账户转移进入智能合约的资金池,同时系统根据实时的存款利率开始为用户计算存款利息。

    像用户在银行里面存款一样,用户在 DeFi 借贷系统中存入加密资产,将会获得一份存款凭证,DeFi 借贷系统依据存款凭证而非账户对用户的存款权益进行确权。这意味着,如果用户的存款凭证丢失或者转让,也将丧失其在 DeFi 借贷系统相应的存款权益。此外,存款凭证同时也是用户向 DeFi 系统借款时所需提供的抵押物。

    存款凭证通常以同质化代币的方式向 DeFi 存款用户发放,这里又有两种不同的设计方案,以 Compound 为代表的 DeFi 借贷系统发放与存款本息额等值的凭证代币 cToken,通过凭证代币与基础存款资产的汇率升值的方式来支付利息,另一种是以 AAVE 为代表的 DeFi 借贷系统发放与存款本息额等量的凭证代币 aToken,通过增加凭证代币数量的方式来支付利息。

    详解 DeFi 借贷系统的技术原理与应用扩展 | 链捕手

    我们认为,这两种技术方案各有优劣,采用存款本息额等值凭证代币 cToken 的方案,在出现资金池挤兑、爆仓的极限情况下,可以采用降低 cToken 汇率的方式将资金池损失由全部存款人进行集体分摊,从而降低单个用户的损失金额。

    而存款本金息等量凭证 aToken 的方案,更有利于构建一个在应用生态系统内价值相对稳定的支付代币,同时存款凭证的本金、利息部分可以进行更灵活的分拆发放,衍生出更多的金融应用场景。

    取回

    取回的操作与用户存入的操作是反向的,即用户向合约系统归还存款凭证代币 cToken、aToken 或其他,并获得原始的存入资产。

    需要再次强调的是,DeFi 借贷系统以存款凭证代币为存款权益的确权,一旦丧失存款凭证代币,用户将无法取回资产,在过去的项目中,曾出现过 DeFi 借贷系统的新用户误将存款凭证当作一种系统的空投(AirDrop),以极低价格在市场出售,从而受到重大资金损失的情况。

    借出

    用户通过抵押存款凭证代币,可以向 DeFi 借贷系统借出目前自己没有但是紧急需要使用的加密资产。并非所有的加密资产都可以用于抵押,通常在初期,DeFi 借贷系统的管理员配置主流、流动性较好的加密资产作为抵押物,而随着用户的日益增长,抵押率的类型会逐步交由社区通过投票治理的方式进行调整。

    与抵押物类型逐一对应的有最大抵押率与清算阈值两个参数的设置,最大抵押率表示该抵押物价值最大可借出加密资产的比率,而清算阈值表示抵押物面临被清算的门槛比率,通常清算阈值 > 最大抵押率。

    例如使用户使用 1 万美元等值的 DAI 作为抵押,在最大抵押率 75% 的情况下,最多可以借出 7500 美元等值的 ETH,但若是 ETH 价格稍有上涨,从 7500 美元涨到 8000 美元,若已达到清算阈值参数 80%,用户的 1 万美元 DAI 将要面临清算。

    我们观察到,主流 DeFi 借贷系统多数都没有将 USDT 这一交易量最大的稳定币纳入抵押品范围,可能是因为 USDT 本身过度中心化,以及其主体公司 Tether 曾接受监管部门调查的原因。

    偿还

    偿还的过程与借出是反向的,用户向 DeFi 借贷系统归还本金与计息,同时减少自身在 DeFi 借贷系统中相应的债务。

    用户在 DeFi 借贷系统中的存入、借出目前都是活期的,因此偿还机制也是较为灵活的,用户可以根据自身的实际情况,选择全部偿还或者部分偿还。

    清算

    清算过程涉及到 DeFi 借贷系统中重要的概念,即账户的健康因子(又称:健康指数),前面有提过到存款权益的确权是基于凭证的,而健康因子则与账户的借款额、抵押物相关,具体用公式表述为:

    健康因子 = ∑(抵押物*清算阈值)/(借款额+借款利息)

    当健康因子 <1 时,将触发 DeFi 借贷系统对该用户账户抵押物的清算,清算个别用户是为了避免系统性金融风险的发生,因此借款人将受到系统的惩罚,而清算人则会获得一定的奖励。

    清算有两种常见的方式,一种是直接将借款人的部分抵押物以一定的折价通过合约挂单出售,允许任何用户代替借款人偿还债务后立即转售进行套利,另一种方式是从底价开始,以逐步加价的方式公开将抵押物进行拍卖。

    借款人可能会对自己的抵押物受到清算而感到不满,而实际上,清算是对借款人资产的一种保护,当触发清算时,系统强制处置部分抵押物可以使得账户整体的健康指数回升到正常水平,从而避免抵押物被全部清算。如下图所示:

    详解 DeFi 借贷系统的技术原理与应用扩展 | 链捕手

    稳定利率、再平衡与利率切换

    如前文所述,当 DeFi 借贷资金池每一次发生存入、取出、借出、归还、清算之时,其利率指数 Index 都会随之发生变化,这会影响到相应的「动态利率」,而出于满足部分用户愿意支付利息溢价以降低借款成本不确定性的需求。

    类似 AAVE 这样的新型 DeFi 借贷系统尝试了「稳定利率」的机制,「稳定利率」机制通过预言机去获得外部系统的借贷利率,结合资金池的动态利率综合计算得出当前的稳定借款利率,并对单个用户在其借款周期内保持相对稳定,不受动态利率变化的影响。

    需要说明的是,目前的「稳定利率」并非绝对稳定,仍然有可能经历系统强制调整即称之为「再平衡」的过程,「再平衡」的原因一种是因为「稳定利率」已超过存款的收益,导致用户可以无限制的从系统中借款再存入进行套利,这需要进行稳定利率的「向上再平衡」,另一种是当「稳定利率」与动态利率的差值过大使得用户需要支付的溢价超过一定数值的时候进行「向下再平衡」。

    借款用户允许在「动态利率」与「稳定利率」之间进行切换,以获得最优的借款条件,同样这会触发资金池利率指数 Index 的更新。

    以上,便是 DeFi 借贷系统最基本的技术原理,我们将其主要公式用一张图总结如下:

    详解 DeFi 借贷系统的技术原理与应用扩展 | 链捕手

    DeFi 借贷系统的应用扩展

    以资金池为核心模型的 DeFi 借贷系统的蓬勃发展,确实满足了部分用户的资金借贷需求,然后,相比于传统金融行业,功能仍显不足,从金融应用发展的角度去思考,我们认为,DeFi 借贷系统未来将会有如下多个方向的扩展:

    固定周期的存借款

    固定周期的存借款有利于用户更好地规划自身资金的使用周期,同时资金池也能够更好的预测资金的变动情况。然而,固定周期的存借款模型给现有的利率指数算法的改进带来的的挑战是,既要能够让固定周期利率相比于活期利率更具吸引力,又要适应用户自身违约,提前取款或者提前归还的现实场景。

    结构化的理财产品

    由于 DeFi 借贷系统的存款利率本身也是浮动的,当市场需求旺盛时存款利率会大幅上涨,因此可以基于存款利率做一些结构化理财产品的开发,类似传统的分级基金,将资金分为优先级、中间级、劣后级,基金管理人向不同风险偏好的用户募集资金并获得管理收益与业绩奖励。

    闪电贷

    闪电贷是加密货币领域当中最令人兴奋的原生应用之一!这项技术可以让用户以无任何抵押、且极低的交易成本(AAVE 为 0.09%)使用资金池内无限制的资金量,只要用户在同一笔交易内偿还相应数量的资金即可。

    而闪电贷的开发技术门槛初期比较高,后续随着类似 FuruCombo 这样的平台的出现与发展,闪电贷编程开发的门槛将不断降低,交易员只需要专注于策略本身的研究与实现,就可以获得在各个不同的 DeFi 协议之间套利赚钱的交易机会,闪电贷交易策略未来可能会成为加密经济里面最有价值的交易策略!

    下图是一个简单的 FuruComb 工具使用示例:

    详解 DeFi 借贷系统的技术原理与应用扩展 | 链捕手

    机构专属的私有资金池

    DeFi 借贷系统多数仅支持主流加密资产的相互借贷,然而对于一些小型的加密货币,虽然流动性要远远弱于主流加密资产,其机构成员、社区成员之间亦有相互短期拆借的应用需求。较好的做法是,由机构担保开发、运营私有借贷资金池,以供作小币种的借贷及抵押需求,这样即使出现因流动性不足而爆仓的问题,也不会影响到公用资金池的安全性。

    第三方用户担保借款

    这是一个经常被标榜为「无抵押借款」的应用,实际上这个功能是由 DeFi 借贷系统的一个机构用户或大客户以其在资金池内的抵押物作为担保,向另一借款人提供借款的场景,机构客户通常与借款人有线下的信用担保或实物担保关系,使得机构客户愿意以自己的抵押物为他人提供借款。

    这里的主要问题是机构客户应有从中获利的可能,即当借款人按期还款时,其所支付的利息应高于系统利息,其中的差额作为对机构客户的奖励。

    第三方协议担保借款

    这是由 DeFi 借贷向一些主流 DeFi 协议授信,以供他们的用户从借贷协议应用中进行杠杆借款,Cream 所开发的 Iran Bank 便是第三方协议担保借款的典型应用之一,然而前几天,Iran Bank 因受到黑客攻击,资金池被「借走」约 3750 万美元的加密资产,成为目前损失额最大的一笔 DeFi 安全攻击。

    账户信用借款

    真正的 「无抵押借款」场景应该是指类似我们在「借呗」等 APP 一样,通过账户地址历史积累的 DeFi 交易记录获得一定程度的授信,从而向 DeFi 协议进行短期借款。

    这里有一个值得讨论的问题是,区块链网络账户地址本身可以无限制的生成,且创建成本接近于零,频繁的 DeFi 交易记录是否具有特别的价值?

    我们认为随着 DeFi 的进一步繁荣发展,这个答案应当是肯定的。频繁 DeFi 交易的账户地址,其拥有者的资金体量、DeFi 应用经验、抗风险能力要远远超过普通的用户,未来一些新型的 DeFi 协议在内测阶段将可能会筛选优质的 DeFi 老用户进行体验并空投代币作为测试激励,减少项目方被机器人批量薅羊毛的损失,若地址未按期归还借款,该地址将被所有的 DeFi 协议列入黑名单,不再拥有相应的内测激励机会。

    总结

    DeFi 借贷系统的资金池模型、闪电贷等技术创新带领了一股新的创新浪潮,在开发者与社区用户的共同努力下,DeFi 借贷系统及其生态产品将进一步发展,并不断的与主流金融、主流资产进行融合、创新,开启未来新的金融秩序。

    撰文:许超逸,BKFUND 创始人