读懂AC针对Uniswap v3 LP无常损失推出的保险协议Protection Markets

原文来自Gamma Strategies;原标题:《一文了解AC针对Uniswap v3 LP无常损失推出的保险协议:Protection Markets》

读懂AC针对Uniswap v3 LP无常损失推出的保险协议Protection Markets

无常损失(IL)是流动性提供者(LP)最关心的问题,因为它的影响会引起回报的波动,特别是对于那些价格趋于偏离的资产。随着人们对提供流动性的兴趣上升,处理这种风险的创新也开始被开发出来,在这篇Gamma Strategies文章中,我们将回顾Yearn Finance创始人Andre最近分享的一份合约,Protection Markets。

7月3日,Andre Cronje在推特上分享了一个在Uniswap上针对无常损失的现收现付制保护市场的原型,名为ProtectionMarket.sol。该合约指定了一个pERC20代币,其功能是一个独立的保险市场,用于保护无常损失,保费由供求关系决定。

保护市场(Protection Market)

假设你有兴趣在WETH/USDC Uniswap v3池中做LP,以赚取交易费用,但又担心潜在的严重价格波动导致你在投资期限内遭受重大的无常损失。那么,ProtectionMarket.sol原型合约就为你提供了创建一个市场的可能性,你可以通过向这个市场提供额外的WETH来对冲无常损失,并保护你提供资产的汇率不受IL影响。不过,这是以保险费为交换条件的,保险费需在保护有效时支付,且由供求关系决定,是可变的年利率。

在保护市场上有两类参与者,保护者和对冲者。这些参与者参与特定Uniswap池的保险市场,并将两种资产中的一种定义为RESERVE(储备资产)。在这个市场上,两个参与者都向智能合约提供RESERVE代币,并通过允许他们行使保险合约来补偿所发生的无常损失,从而赚取费用,作为向对冲者提供保护的回报。

以下是该合约的运作示意图:

1. 保护者和对冲者都在合约中存入储备资产RESERVE。

2. 对冲者通过预先提供保护者赚取的一些费用来购买保护,以免遭受无常损失。

3. 只要支付了费用,对冲者就可以随时行使他们的合约,并关闭他们的保险头寸。

4. 只要有足够的流动性来覆盖对冲头寸,保护者和对冲者就都可以撤回他们的流动性资金。

读懂AC针对Uniswap v3 LP无常损失推出的保险协议Protection Markets

无常损失计算

该合约允许用户保护无常损失提供的部分流动性,以换取不断累积的费用。这种机制汇集了不同保护提供者的流动性,并将这种对冲的风险分散到了所有参与者身上,同时还为DeFi提供了新的收入来源,即对冲费用(用保险的术语来说就是保费),这些费用根据供需情况动态更新。

当你执行保护函数时,你实际上是为你可能产生的任何无常损失购买了保险,以补偿你无常损失的价格差(需要减去保费)。无常损失是根据你购买保护时的价格计算的,不涉及流动性池中的特定头寸,允许最大程度的组合。

在购买了保险并提供了一些预留的费用后,你可以调用exercise函数来执行你的保险合约,其中你的准备金将被修改如下金额,以表示对IL的补偿:

读懂AC针对Uniswap v3 LP无常损失推出的保险协议Protection Markets

其中p_0是你拿到合约时的交换价格,p_1则是现在的价格,因此利润是价格变化的函数,可以将你的头寸价值与无常损失联系起来。

假设小数点(decimals)=18,那么利润函数看起来就会像下面蓝色的曲线,是相对价格变化的函数。在红色部分,则显示了如果它对价格变化进行1比1的补偿,利润函数会是什么样子。显示表明,对于20%的价格下降,无常损失补偿约为10%,但对于20%的价格上升,补偿则会少一点。

读懂AC针对Uniswap v3 LP无常损失推出的保险协议Protection Markets

这个函数总体上表现为你所期望的那样,如果价格不动,你就不会产生无常损失,因此合约就不会有任何回报,而随着相对价格的变动,你的无常损失就越高。请注意,这个利润函数假设了一个恒定的产品函数市场,所以适当地对冲集中的流动性头寸将需要进一步的努力。

费用结构和经济学

费用是以对冲金额的百分比持续复利计算的,对冲金额则是以利用的APY确定的,而对冲流动性(totalHedged)与池中整体流动性(totalProtection)的比率则类似于Compound借款市场的利率。

读懂AC针对Uniswap v3 LP无常损失推出的保险协议Protection Markets2021年7月4日,Compound USDC供应的市场利率模型

随着对对冲服务需求的增加,利用率也应该增加,而所得费用也将相应增加。这将激励更多的保护提供者向池子里供货,增加保险项目的偿付能力。保护市场合约确保对冲的总金额最多相当于资金池中全部流动性资金的规模。这可以为对冲者提供大量的保障,即使是极端程度的无常损失。

决定保护市场是否在经济上可行的最相关的参数是费用函数的参数,以及储备费用要求的大小。这些参数必须仔细校准,以吸引保护提供者和对冲者向资金池供货。

在经济理论中,评价保险的标准是它是否精算公平,也就是说,支付的费用是否足以减少潜在结果的变异性(在这种情况下,提供流动性应计的无常损失),使其值得。鉴于我们看到的数字资产的重大价格变动,所需的费用最终可能是巨大的。然而,如果不让市场来计算,就很难估计什么是合理的。

流动性提供者的使用

为流动性头寸使用保护市场是一种潜在的改进,可以降低LP策略的收益波动性,因为集中的流动性提供了可定制的无常损失风险。

假设在[p_a,p_b]范围内以价格P提供流动性,而价格变化为p_1=k⋅p_0,无常损失将作为变化的百分比被推导为:

读懂AC针对Uniswap v3 LP无常损失推出的保险协议Protection Markets

与我们之前看过的保护市场的利润函数进行比较,对于理解所需的对冲量是有帮助的。假设p_0=2100,那么在[2000,2200]范围内进行LP,那么Uniswap V3的IL与保护市场的利润函数就如下图所示。

读懂AC针对Uniswap v3 LP无常损失推出的保险协议Protection Markets

鉴于Uniswap v3集中流动性的功能所提供的虚拟流动性,当范围相对较窄时,需要建立相对较小的对冲头寸来弥补较大的LP头寸的无常损失,如上述例子。

而为了量化对冲比率,需要计算弥补IL k=p1⋅p0的百分比变化所需的对冲q的单位(假设没有维持头寸的成本):

读懂AC针对Uniswap v3 LP无常损失推出的保险协议Protection Markets

对冲比率的计算

读懂AC针对Uniswap v3 LP无常损失推出的保险协议Protection Markets

窄区间对冲比率的计算

以保护市场的盈利功能来说,你需要为你的每一个单位的头寸购买0.05个单位的保险。作为理智的检查,考虑另一个更宽的LP范围,在这个范围内,你将面临明显更多的无常损失:假设范围为[100,15000],那么在相同的初始价格下,需要以下对冲比率:

读懂AC针对Uniswap v3 LP无常损失推出的保险协议Protection Markets

结论性意见和实施

无常损失保护市场是一项重要的服务,我们预计流动性供应商会对此有很高的要求。我们正在与Visor合作,为他们的头寸实施这项服务。这将为改善Uniswap v3上LP策略的风险状况提供一种自动化的方法。对于Protection Markets,定价是重点,特别是仔细校准收费系统将是其采用和成功的关键。