什么样的算稳才算是一个好(理想)的算稳,它需要具备哪些条件?
原文作者:鸡鸡鸡鸡鸡
原文来源:叽叽叽杂货铺
TL;DR,
算稳的困境
在正式讨论SPOT之前,我们来看一个老生常谈的问题:什么样的算稳才算是一个好(理想)的算稳,它需要具备哪些条件?如果按照之前我写过的几篇算稳文章的说法,一个好的算稳应该具备以下几个特点:
如果我们按照上述的特点大致套一下现有主流算稳,看看会是怎样的结果。
首先,这两兄弟虽然里面带了USD,但是我们依旧需要明白,USDT/USDC并不是USD, 而是通过线下抵押USD铸造出来的算稳。这种牵扯到线下的算稳,还是直接用的美元抵押,势必就会存在中心化的问题。尽管在经历了一系列操作后,它们会定期公开自己的资产储备,对外宣布自己是至少100%足额抵押,但是这种完全由中心化机构控制的”算稳“,披露的数据可信度再高也不如完全可以链上追踪的资产可信度高。更遑论经常发生的黑名单事件,让人们对于它们的怀疑愈发加深。
不过,我们不得不承认的是,这两兄弟的流动性,可组合性,价值稳定(主要是价格稳定)方面确实做得好,当然先行者优势也确实很大。
DAI可以说是最广为人知并且符合绝大多数人认知的算稳。其机制我想我们不必多说。初代的DAI确实也是一个充满着理想主义的产物,但是随着规模的扩张,各种链上链下环境的影响,现在的DAI早已成了一个70%以上的抵押品是USDC的产物。导致这个结果的因素很多,但是归根结底还是因为受”治理“的禁锢太多,因为治理,放弃了原本存在的负利率改为强调锚定1刀的策略,因为治理,让USDC占比越来越大,因为治理…………笔者个人比较反感在这种本身具有”尺度“功能的项目上加入太多治理。总之,虽然它的流动性和可组合性很好,但是其初心已改,笔者现在基本上就把DAI看成一个warpped USDC用。关于Maker机制的一些特别补充,笔者在之前的《研究|温故知新,重新看看算稳的故事》里说了很多,有兴趣的朋友可以看看。
From: makerburn
FRAX的主要机制,动态抵押率以及AMO都有不少人写过,我这边就不再赘述。如果我们把抵押品的资产分为USDC为代表的稳定币抵押品和其他非稳定币抵押品的话,FRAX其实和DAI在这方面还是挺像的。不过两者最为核心的区别在于运营思路的区别。DAI的做法基本上就是按照央行思路去搞,所以涉及到很多治理会直接影响到mint机制,而FRAX采用的更多是商业银行的打法,以AMO为核心,扩展自己的影响力。当然,这其实也和一开始FRAX就采用USDC作为抵押品的机制有关,导致它对抵押品本身的影响很小。
它的特点其实和上面几个大差不差,但是相对于上面几个老大哥来说,除了流动性差了点,其他方面已经做的不错了。
作为引领算稳潮流的存在,AMPL的出现是一次彻彻底底的社会实验。没有抵押品,不锚定美元而是锚定经过CPI调整后的美元(基本上可以代表美元购买力),保证自己价格的稳定,根据市场需求,通过rebase机制调整用户钱包内AMPL数量来调整AMPL总的流动性以保持购买力,太大胆了,太前卫了。这个核心的rebase机制理论上彻底摆脱了治理,依托纯粹的数学达到了可信中立。但是,也正因为rebase,导致其可组合性一塌糊涂:没有多少人愿意长期持有AMPL这种今天有1000个,明天起来就剩900个,后天1200个的”稳定币“资产。这也导致其流动性一直上不去,对应的应用也非常少,最出名的也就是AAVE了。如果看文字很抽象的话,看下下面图的对比就知道AMPL与其他token的区别:别的token是随着需求扩张,代币价格上涨,AMPL是随着需求扩张,数量增加,反之亦如此。
From: SPOT white paper
通过上面几个比较出名的算稳,我们发现现在的算稳存在着某种困境:无论是USDT/USDC这类直接就是以法币作为抵押品的算稳,还是DAI/FRAX这种对于USDC二次打包的算稳,本质上都在追求对美元价格的强锚定,而这种锚定势必会受到美元通胀/通缩的影响,所以为了维持算稳的价值稳定性,就需要引入大量人为治理来协调整个机制的运行,这就无法做到真正的可信中立。
而AMPL锚定的是美元购买力,而不是锚定价格,理论上可以完全摆脱人为治理,完全交由市场供需来维持整个机制的运行。本来作为最为贴切理想算稳的存在是很好的东西,可组合性又一言难尽,就差这一步,就没有什么好方法去解决下么?在以前写过的文章里,我大概提到过这可能需要把AMPL打包成NFT,通过预言机协调来实现可组合性。但是AMPL团队最近推出了更为靠谱的一个手段,将AMPL打包成零息债券,作为抵押品铸造新的算稳出来,这就是SPOT。
SPOT本质上是以AMPL零息债券为抵押品的算稳,它主要利用了两个协议,AMPL和ButtonWood。AMPL自然不必多说,在SPOT里主要是作为基础抵押品的存在,但是由于AMPL rebase的特性,直接拿AMPL作为抵押品会让抵押品价值波动较大,所以这里AMPL利用了ButtonWood这个协议来对冲rebase。
我们可以稍微看看ButtonWood这个协议。准确的说,ButtonWood是一个defi工具,其提供的核心功能就是让开发者快速得构建各种结构化产品,例如按照不同比例将不同风险等级的资产打包成一个产品,提高资金利用率,降低整体风险。这就类似于传统企业的所有权可以被分为债权和股权,当进行权益索赔时,债权人优先索赔,企业偿付完债权人后才会偿付给股权持有者。相当于债权人的权利能得到最大保障,算是一种安全资产,而股权人承担企业的绝大部分风险,与此同时换取企业上市或出售后获得的超额回报。
而ButtonWood主打的核心概念叫Tranche,它支持其他协议将资产抵押进ButtonWood,铸造出不同风险等级的tranche资产,每种tranche资产的风险等级不同,较为安全的tranche资产相当于是基本抵押品,而风险等级较高的资产则可以看做是标的资产的杠杆头寸,不过无论哪种tranche,它都是个erc-20代币,所以在技术上的可组合性没有啥问题。大概的原理示意图如下:
From: ButtonWood Doc
具体原理我们可以用AMPL作为抵押品铸造Tranche资产为例子,看下铸造Tranche和赎回资产的流程。
铸造Tranche
From: ButtonWood Doc
如图所示,用户可以将AMPL作为抵押品抵押到TrancheBond协议中,然后协议就会按照设置的风险档次比率,铸造出对应比例的tranche资产。
假设在AMPL的TrancheBond协议中:
From: ButtonWood Doc
通过这次交互,用户的仓位值仍然等同于持有他们原来的AMPL。然而,他们现在拥有代表不同风险等级的AMPL资产。
赎回抵押品
知道了如何mint,就需要知道如何redeemed. 既然tranche的思路和企业所有权类似,那么对于偿付来说,就一样需要按照不同风险等级进行不同优先级的偿付。
From: ButtonWood Doc
如图所示,当对应的tranche资产到期后,会优先偿付风险等级最低的A-trache,尽量确保这部分的偿付能做到1:1。然后偿付B类资产,最后偿付Z类资产,风险等级越高的资产偿付顺序越靠后,所以越有可能承担损失或获得超额利润。
我们依旧用上面用AMPL铸造的tranches作为例子来看下不同市场条件下的赎回过程。
假设AMPL的市场需求降低,根据rebase机制,市面上的AMPL流通量需要减少,此时对应tranche的偿付额度分配如下:
From: ButtonWood Doc
假设AMPL的市场需求增加,根据rebase机制,市面上流通的AMPL数量需要增加,此时对应tranches的偿付额度分配如下:
From: ButtonWood Doc
我们可以发现,在这个例子中,Z-tranche承担了AMPL价值变化的风险,但是获得了AMPL增值的所有好处。当然,ButtonWood还有很多其他功能,不过和我们今天的SPOT关系不是很大,所以有兴趣的朋友可以在后面的附录里去他们官方文档去查看具体内容。而对于Tranche来说,一句话总结其原理:
它就是利用债券的原理将资产的波动包裹起来,在需要兑付的时候释放波动给对应风险等级的Tranche资产。
我们来稍微详细看下上面这个AMPL为例的tranche资产有什么特点,我们暂时称这个资产为NewAMPL(这里指的是A-tranche+B-tranche作为抵押品生成的整体资产叫NewAMPL)。
可以发现NewAMPL有如下几个明显的特点:
所以,对于这样的NewAMPL来说,除了第三个特点外,另外两个特点始终都会存在抵押率不足的可能性:要不AMPL本身rebase机制导致,要不因为A-tranch不可互换会导致用户在赎回抵押品的时候流动性不足。所以我们需要调整一下两者的组合,让它变得更加可靠。
首先一个调整,就是AMPL在SPOT系统中进行抵押,目前只会以20:80的比例产生两类tranche, 高级tranche(Sr-tranche), 初级tranche(Jr-tranche)。Sr-tranche代表风险最低的债券,获得优先偿付权,而Jr-tranche则承担了AMPL价值的波动,同时也会获得大部分AMPL价值提升时的收益。而作为SPOT只包含Sr-Tranche作为抵押品。而为了让Sr-tranche能够任意交易,SPOT引入了Rotators的概念。整个SPOT的运行原理可以用下图来表示:
From: SPOT white paper
整个过程概括来讲就是:
SPOT以Sr-tranche和到期被自动赎回的AMPL为一揽子资产为抵押品,通过激励措施引入Rotator让其注入等额或超额新生成的Sr-tranche来替代已经到期的Sr-tranche, 从而在表面上达到一个Sr-tranche能够随意被赎回的循环系统。
而在这个过程中有几个细节需要额外注意。
基本上,Spot的原理就说完了。对,它的原理确实很简单。下面我们来思考一下这样设计的Spot遇到价格波动时会发生什么样的情况。
如果我们对上文所述的SPOT机制有所了解,就会发现SPOT的抵押品只会有三种状态:
知道了SPOT背后的状态类型,我们就能分析一下SPOT是否会有死亡螺旋的风险。
理论上SPOT本身的价值应该就是整个抵押品集合中对应比例的价值。抵押品价值上升,同样数量的SPOT能兑换的抵押品总价值也上升,所以SPOT价格也会上升。但是,如果出现了SPOT单边上涨的情况,那么套利者可以抵押同样的AMPL 铸造出SPOT出售到市场,把SPOT价格打成新的平衡价格。而这个时候用户要么用已有的AMPL去铸造SPOT,要不就需要买AMPL去铸造SPOT,这会视价格加倍走向平衡。
当然,由于SPOT的抵押品归根结底是对未来AMPL的赎回权,而AMPL锚定的是CPI,这从理论上来说,就代表其价值是会逐年增长的,例如假设CPI每年涨5%,同时AMPL现价1刀的话,那么100个SPOT兑换的100个AMPL在明年就很可能变成105刀。所以SPOT本身还担当了对于通货膨胀的保护,即假设SPOT卖方认为通货膨胀率是3%,那么他就有可能会以5%的溢价出售SPOT,而认为通货膨胀率大于5%的买家就会接受这个价格。
不过价格上升不是我们需要担心的,我们更在乎的是出现挤兑的情况以及价格下跌的情况。
对于SPOT来说,所谓的挤兑也就是整个新旧tranche循环失效,即Rotator模块失灵,用户不愿意存入新的Sr-tranche来维持系统运转。这样下去,最差的后果就是所有的抵押品都变成了AMPL,那么这个情况下就需要看下AMPL那边的变化了。而这其实就和SPOT本身没啥关系了。如果AMPL价值下跌,那么代表赎回权的SPOT本身价格本身也会跟着跌。但是就抵押品AMPL本身来说,其抵押率一直都不会低于100%。
这个最容易想,买SPOT赎回抵押品,一直到价格平衡。但是需要注意的是,因为赎回的是Sr-tranche。不过这种做法和Terra不同,因为你赎回的本身就是已经存在的AMPL或Sr-tranche,所以不会对AMPL的供应产生任何影响。
看完上面的内容,我们会发现其实还有两个问题没有说清楚。SPOT的抵押品只是Sr-tranche(A-tranche),那么为何在前端页面抵押AMPL的时候还要生成Jr-tranche(Z-tranche),并且显示Jr-tranche也有最小锁定期?对于这个问题的前半部分,官方给的答案如下:
而这一问题的后半部分,如果你去看下z-tranche对应的合约,你会发现其实你能够在到期之前赎回,只是它前端没给你这个入口。个人推测还是为了锁住更多的AMPL在里面,提高市面上AMPL的价格,通过rebase供应更多的AMPL,最终提高自己总的供应量。这个思路对于这种rebase机制的代币来说不得不说真的聪明。
而另外一个问题就是,如果我们他们官网铸造SPOT,会发现他们的Z-tranche和A-tranche均大于100%,这是为啥?这里其实还是rebase在起作用。A-tranche抵押率大于100%其实比较容易理解,因为目前A:Z的比例是20:80,那么这20%不参与rebase的A-tranche就应该是自己的100%+4倍于己的Z-tranche抵押率。而Z-tranche里的AMPL本身就需要吸收自己抵押品里AMPL的波动以及A-tranche里AMPL的波动,最近一段时间AMPL溢价很高,导致其抵押率一直大于100%,实际上Z-tranche本身相当于1.25x的AMPL杠杆。
最后就是tranche面板里Bond/Action的意思是啥也还没说,不过社区里的人告诉我说这个代表当你去赎回抵押品或者rotator时的类似系统里现货的CDP是多少,当然,具体的解释可能需要等官方更新后续文档。
我们可以看到,推出SPOT其实是AMPL进行扩张的一个重要步骤。在同样市场条件下,通过暂时减少AMPL在市场上的流通量,让AMPL价格上升,最终提高代币供应。同时巧妙地用债券的思路减少了 rebase对AMPL现货产生的影响,甚至可以反过来利用AMPL本身锚定的CPI,让rebase变成了对于AMPL本身价格上涨的预期,实在是太棒了。
最后,非常感谢AMPL社区的小伙伴们的指导。
参考链接:
《SPOT WHITE PAPER》:
https://drive.google.com/file/d/1MTp3vGLBtCp4Pte7ohHfnRfeKgFPaWQd/view
《ButtonWood Doc》:
https://docs.prl.one/buttonwood/buttonwood-basics/introduction-to-buttonwood
《MakerBurn》:
https://makerburn.com/#/charts