LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 区块链资讯 > 从0到1学习Balancer:不会永久损失的计息稳定币池

从0到1学习Balancer:不会永久损失的计息稳定币池

2020-06-01 洁sir 来源:区块链网络

通过将稳定币放入Balancer池中,可以赚取更高的收益,而不是简单地将它们借入Compound,就像cDAI一样。但随着时间的推移,还需要在池中累积交易费用。从更高的技术层面上讲,Balancer稳定币池设计使用rToken和自动权重调整,来从交易费和贷款利息中受益,同时避免了永久损失。

以太坊社区中某些人的想法引起了非常积极的共鸣,我们将尽力以更有条理的方式分享它们。其中,仅稳定币的 Balancer池话题似乎是最喜欢的。我们总结了三个主要原因:

1.当前稳定币之间缺乏流动性:除USDT外,以太坊稳定币的流动性不是最好的。如果我们专门关注非托管流动性,情况甚至更糟。从一种稳定币交易到另一种稳定币通常会产生痛苦的成本,包括费用和滑点。


2.没有预期的永久损失:概括地说,永久损失定义为零费用 Balancer池的价值与仅持有相同代币的价值之差。池内代币的价格在任何方向上的偏离越大,则永久损失越大。由于池中所有稳定币之间的相对价格预计将保持不变,因此流动性提供者承担的风险较小,并且对从交易费收入中获利感到更有信心。


3.非常低的交易费用的空间:由于实际上收集到的所有交易费都有望盈利,因此稳定币池的流动性提供商面临的风险要比其他典型的 Balancer 池低。因此,他们可以负担低廉的交易费用。请记住,Balancer协议允许选择任何交易费用。这些吸引人的交易条件可能从其他场所吸引 Balancer大量交易-无论是DEX还是CEX。

简单的方法


例如,可以创建一个包含55%DAI,30%USDC和15%PAX的Balancer池。


但是,潜在的流动性提供者将不可避免地将该资金池的潜在收益与其他更有利可图的选项,例如当今流行的借贷平台一起在DeFi中进行资本配置。

更复杂的方法


与其创建带有DAI,USDC和PAX的池,不如想到首先在诸如Compound的借贷平台上借贷DAI和USDC,然后创建包含各自的凭单(cDAI,cUSDC)和PAX(目前尚不能用于 Compound贷款)。


但是,由于 Compound资产为这些资产中的每一种提供的利率通常是不同的,因此它们之间的价格比率自然会随时间变化。这可能会导致池中的流动性提供者永久损失。更糟糕的是,这种损失可能不会是无常的,因为预计不同稳定币之间的系统利率差异会很大。换句话说,从长远来看,这些代币之间的价格比例有望出现差异。


由于最初借出的基础代币的实际价格有些模糊,交易者的用户体验也随之下降:“ cDAI现在在实际DAI中价值多少? Balancer 池中当前的cDAI / cUSDC价格比率是否合理,即是否符合外部市场?不幸的是,不太直接的定价会对交易量产生负面影响,这当然对流动性提供者来说是个坏消息。

两全其美的方案


流动性提供者有可能从稳定币 Balancer 池中赚取交易费,同时还可以从借贷平台中获得利息,而不会带来永久损失。


为了在保持出色交易者UX的目标,我们需要引入一种稳定币的包装,既可以保持其固定价值,又可以受益于借贷平台产生的利益。 rDAI项目是近来备受关注的此类解决方案之一。


rDAI使用户可以持有维持美元稳定汇率的资产(即DAI可以从1兑1赎回),同时仍可以从Compound或其他借贷平台赚取利息。

可以使用由rToken组成的池来代替具有cToken的Balancer池。由rToken创建的利息支付可以由任何人触发。在没有为利益设置特定受益人的情况下,默认情况下,这些利益归rToken的持有者所有,在本例中为Balancer池。


尽管简单明了,但只要有人为池中的任何rToken调用函数payoutInterests(),此简单设计都会产生套利机会。要了解原因,请记住, Balancer 池中的价格由代币权重和余额定义。 payoutInterests()的执行将增加单个代币的余额,使其立即比池中的任何其他代币便宜。套利者的利润将以资金池的流动性提供者为代价。

智能合约控制的均衡池


平衡器协议是从头开始设计的,是生态系统中其他项目和开发人员的基石。因此,灵活性是Balancer的核心功能之一,它有两种形式:


1. 池中的代币:任何ERC-20完全兼容的代币都可以由Balancer池持有。 Synthetics, derivatives, wrappers, vouchers ……它们都是受欢迎的。


2. Balancer池的控制:受控/专用池仅接受其控制者的流动资金。由于禁止第三方提供流动性,因此使用这种类型的Balancer池,控制器可以安全地更改代币权重,添加/删除代币甚至更改交易费用。但是,这里的关键点是池控制器可以是智能合约,将任何所需的逻辑嵌入到如何管理其受控池中。

稳定币池控制器


控制受控的Balancer池(称为合同BP)的智能合约(称为合同PC)可以轻松模拟共享/最终池。最终池接受任何第三方的流动资金,但其创建者没有特殊权利,并且其参数永远不能更改。


PC可以接受流动性,将其转发给BP,并铸造自己的代表BP所有权的ERC-20代币。


(1)任何向池中提供rToken流动性的人都是通过将BP的控制者存入PC来实现的;

(2)在将rToken转让给BP之前,PC将自己设置为利益的受益人;

(3)PC发行自己的ERC-20代币,代表BP的所有权;

这对于我们的稳定币池示例特别有用。如果借贷平台支付的利息直接转入平衡器池,我们将产生如上所述的套利机会。为了解决此问题,所有者合同PC可以将其自己设置为rToken的受益人,然后再将其转发给BP。这样,当PC代表BP收到rToken的权益时,它将确保在将所有代币转发给BP之前收到所有代币的未偿权益。这最终将增加所有代币余额,减少大量套利机会,这将给流动性提供者造成损失。


(1)任何人都可以在BP上调用函数processInterests();

(2)然后,PC为所有rToken调用payoutInterests(“ BP”),以确保没有剩余的未偿利息。

(3)将rToken的利息支付给BP的受益人PC;

(4)然后,rToken都由PC发送到BP,以增加其流动性。

由于PC代币的总供给(间接表示由PC控制的BP内部所有流动性的所有权)在支付利息并将其转发给池时不会改变,因此PC代币的所有者直接从贷款权益中受益。他们还受益于使用稳定币池在不同的稳定币之间进行交易的交易者所支付的交易费,就像在任何其他Balancer池中一样。

从小到零的永久损失


我们知道,不同的稳定币在像Compound这样的平台上都有不同的贷款利率。随着时间的流逝,这将导致一些小的永久损失。为了帮助我们理解原因,让我们考虑一个非常简单的示例。假设我们以50%rDAI和50%rUSDC启动了Balancer稳定币池。假设两个rToken的初始余额均为100,这意味着它们的相对价格为1:1。想象一下,几个月后,100个rDAI产生了2个rDAI的权益,而100个rUSDC产生了1个rUSDC的权益。


当任何人发出rToken合约时,这些权益就会发送给受益人:如上所述的池所有者PC。 Contract PC具有可以由任何将所有令牌的未偿利息立即转发到池中的任何人触发的功能(即,确保为所有rToken调用函数payoutInterests())。在上面的示例中,为简单起见,请考虑DAI和USDC之间的相对价格保持1:1不变,并且未收取任何费用。支付利息后,池中的余额将从100 rDAI + 100 rUSDC变为102 rDAI + 101 rUSDC。


同样,根据Balancer的价格计算,这将导致相对价格从1:1更改为102:101(或大约1.01:1)。 rDAI在池中的数量将比rUSDC稍微丰富一些,因此从rUSDC的角度来看,其价格便宜一些。考虑到一个合理的市场,这将为交易者提供套利机会,这将带来无常的损失。就是说,套利者将从受益于向池中支付的不同利率所产生的不平衡中获利,而这是以流动性提供者为代价的。

解决方案:更新权重


在这种情况下,可以使用受控的Balancer池提供的灵活性来对我们有利。在接收利益并将其转发给BP的同时,PC还可以调整BP代币的权重,以补偿因它们不同的借贷利率而造成的不平衡。所有这些都是原子上的,因此套利者永远不会有机会从集合流动性提供者那里获利。


为了说明这一点,让我们再次考虑上一个示例。当合约PC提取2 rDAI + 1 rUSDC利息时,它将它们转发到池中。在同一笔交易中,权重可以从50%:50%更新为50.2463%:49.7537%(或102/203:101/203)。这样,池中的新余额和权重将导致与支付利息之前的价格完全相同的1:1价格,从而有效避免了永久损失。


任何更新PC代币供应(加入或退出池)的功能都应包括赎回rToken权益的内务管理任务,以及在完全恢复池之前需要完全更新池(将权益转发给BP +更新权重)所需的后续任务。铸造/刻录PC代币。


有人可能会争辩说,随着时间的推移,这种不断的权重更新将导致资金池主要由利率较高的代币组成。尽管这是事实,但这种影响发生得非常缓慢。例如,考虑一个以50/50权重开始的rDAI和rUSDC池,每年的借贷率分别为5%和3%。池达到60/40的重量需要22年,池达到70/30的重量需要45年。


当然,通过确认该池将具有零预期永久损失,我们假设池中代币的相对价格的长期变化应该可以忽略不计,也就是说,我们假设池中没有稳定币会失败。

平滑用户体验

Balancer池控制器不仅可以处理rTokens,而且可以处理cTokens和底层稳定币,从而允许交易者通过提取所有必要的包装来使用(发送/接收)他们喜欢的任何版本。


例如,如果他们拥有cDAI并希望将其交换为USDC,则即使BP的交易本身是从rDAI到rUSDC,PC也应原样接受输入并提供所需的输出代币。

升级池


在很多情况下,允许流动性提供商在拟议中的稳定币池已经启用后,在其同意下更新其条款是必要的。他们可能想要:


更改交易费
将权重重置为其原始值
包括一个新的流行稳定币
当PAX在化合物上可用时,从PAX切换到rPAX
转换贷款平台
开关包装器(rToken)
启动后迁移到Balancer v2


如今,我们的生态系统仍然缺乏成熟的工具来安全,简单地管理DAO。因此,至少对于拟议的稳定币池的第一个版本,似乎不实施PC合同的治理机制似乎更为明智。这样,每当一些流动性提供者认为他们的需求可以更好地由具有不同参数的池来满足,并且希望新池中有足够的流动性时,他们可能会继续进行并单独部署该池,并从先前的池中转移其流动性。

结论


我们提出了一种新的受控Balancer池架构,该架构使用智能合约作为池所有者,从而使稳定币流动性提供者不仅可以赚取Balancer交易费,而且还可以赚取无常无损失的贷款利息。这只能归功于Balancer控制的池的高度灵活的特性,例如动态更新代币权重。


池包含rTokens的事实相对于直接持有cTokens(Compound上借出流动性的实际凭证)而言,也是UX的巨大改进。尽管rToken与基础代币保持1:1挂钩,但cToken不断累积价值,使交易者对其目前的公平市场价格感到困惑。



原文链接:https://medium.com/balancer-protocol/zero-impermanent-loss-stablecoin-pool-with-lending-interests-a3da6d8bb782

—-

编译者/作者:洁sir

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...