SPOT, 实现AMPL野心的新型算稳

鸡鸡鸡鸡鸡热度: 20807

什么样的算稳才算是一个好(理想)的算稳,它需要具备哪些条件?

原文作者:鸡鸡鸡鸡鸡

原文来源:叽叽叽杂货铺

TL;DR,

  • Spot是以AMPL为底层抵押资产的债券型算稳,其最大的作用是减少AMPL rebase带来的波动性,松散的锚定AMPL。提高了AMPL的可组合性
  • Spot代表的是对抵押品(AMPL债券)的单边索赔权,所以没有清算,所以原则上不需要预言机的参与
  • 其机制利用了零息债券,所以如果抛开零息债券本身锁定期的问题,只是以账面价值计算,它是100%抵押的算稳。在这种机制下,对治理的要求非常低,基本上可以算作是一个全自动运行的算稳系统
  • 同时,Spot的机制确保即使用户减少到0,其价值也不会归零,并且能够随时重启制度,更为重要的是,Spot只会出现其价值超过抵押品,但是不会出现抵押品不足的情况。这点有些类似OHM但是却不完全一样。

算稳的困境

在正式讨论SPOT之前,我们来看一个老生常谈的问题:什么样的算稳才算是一个好(理想)的算稳,它需要具备哪些条件?如果按照之前我写过的几篇算稳文章的说法,一个好的算稳应该具备以下几个特点:

  • 价值稳定。稳定币的概念近似于我们现实生活中货币的概念(法币稍微有点不同,不过暂时也能等同考虑),所以对于绝大多数的算稳来说,价值稳定几乎和价格稳定可以划上等号。不过因为通胀等因素的影响,价值和价格其实并不一样。价值稳定对于稳定币”价值存储“的功能更为重要。不过,此处为了说明的简单,我们就用购买力稳定来来表示价值稳定。
  • 可组合性要好。货币另外两个重要功能就是作为”交换媒介“和”支付手段“,这点体现在区块链里,就是可组合性要够好。对于绝大多数算稳,因为其本身就是属于普通代币(e.g. ERC-20)的范畴,所以在做好价值稳定的基础上并不存在可组合性的问题。但是对于今天的主角AMPL来说,因为其rebase机制的存在,所以其可组合性一直为人所诟病。当然,”可组合性要好“并不是只是要求在技术上可组合,同时还要满足流动性也要好的要求。
  • 可信中立。即对所谓的”治理“要求非常低。这点其实除了和区块链里的去中心化有关外,还关乎着货币的第三个重要功能,价值尺度的问题。稳定币只有做到可信中立,整体机制并不需要人为去调整依旧可以稳定运行,其”价值尺度“的功能才有意义。否则,今天调个利率,明天调个抵押率,后天因为治理攻击损失了用户的抵押品,这样的算稳,仍然不是我们想要的算稳。
  • 铸造/兑换/赎回自由。最后一个特点,就是自由兑换,自由铸造,自由兑付。这点对于很多token来说都没问题,但是对于稳定币来说,就没那么容易。虽然平常我们是可以自由兑换,铸造,使用稳定币,但是别忘了,这些合约依旧是可以把你加入黑名单的。关于这一点其实我个人并不想讨论,大家毕竟都是因为BTC入的行,BTC背后代表的东西我想不用多说大家也或多或少有理解。

如果我们按照上述的特点大致套一下现有主流算稳,看看会是怎样的结果。

USDT/USDC

首先,这两兄弟虽然里面带了USD,但是我们依旧需要明白,USDT/USDC并不是USD, 而是通过线下抵押USD铸造出来的算稳。这种牵扯到线下的算稳,还是直接用的美元抵押,势必就会存在中心化的问题。尽管在经历了一系列操作后,它们会定期公开自己的资产储备,对外宣布自己是至少100%足额抵押,但是这种完全由中心化机构控制的”算稳“,披露的数据可信度再高也不如完全可以链上追踪的资产可信度高。更遑论经常发生的黑名单事件,让人们对于它们的怀疑愈发加深。

不过,我们不得不承认的是,这两兄弟的流动性,可组合性,价值稳定(主要是价格稳定)方面确实做得好,当然先行者优势也确实很大。

DAI

DAI可以说是最广为人知并且符合绝大多数人认知的算稳。其机制我想我们不必多说。初代的DAI确实也是一个充满着理想主义的产物,但是随着规模的扩张,各种链上链下环境的影响,现在的DAI早已成了一个70%以上的抵押品是USDC的产物。导致这个结果的因素很多,但是归根结底还是因为受”治理“的禁锢太多,因为治理,放弃了原本存在的负利率改为强调锚定1刀的策略,因为治理,让USDC占比越来越大,因为治理…………笔者个人比较反感在这种本身具有”尺度“功能的项目上加入太多治理。总之,虽然它的流动性和可组合性很好,但是其初心已改,笔者现在基本上就把DAI看成一个warpped USDC用。关于Maker机制的一些特别补充,笔者在之前的《研究|温故知新,重新看看算稳的故事》里说了很多,有兴趣的朋友可以看看。

spotFrom: makerburn

FRAX

FRAX的主要机制,动态抵押率以及AMO都有不少人写过,我这边就不再赘述。如果我们把抵押品的资产分为USDC为代表的稳定币抵押品和其他非稳定币抵押品的话,FRAX其实和DAI在这方面还是挺像的。不过两者最为核心的区别在于运营思路的区别。DAI的做法基本上就是按照央行思路去搞,所以涉及到很多治理会直接影响到mint机制,而FRAX采用的更多是商业银行的打法,以AMO为核心,扩展自己的影响力。当然,这其实也和一开始FRAX就采用USDC作为抵押品的机制有关,导致它对抵押品本身的影响很小。

它的特点其实和上面几个大差不差,但是相对于上面几个老大哥来说,除了流动性差了点,其他方面已经做的不错了。

AMPL

作为引领算稳潮流的存在,AMPL的出现是一次彻彻底底的社会实验。没有抵押品,不锚定美元而是锚定经过CPI调整后的美元(基本上可以代表美元购买力),保证自己价格的稳定,根据市场需求,通过rebase机制调整用户钱包内AMPL数量来调整AMPL总的流动性以保持购买力,太大胆了,太前卫了。这个核心的rebase机制理论上彻底摆脱了治理,依托纯粹的数学达到了可信中立。但是,也正因为rebase,导致其可组合性一塌糊涂:没有多少人愿意长期持有AMPL这种今天有1000个,明天起来就剩900个,后天1200个的”稳定币“资产。这也导致其流动性一直上不去,对应的应用也非常少,最出名的也就是AAVE了。如果看文字很抽象的话,看下下面图的对比就知道AMPL与其他token的区别:别的token是随着需求扩张,代币价格上涨,AMPL是随着需求扩张,数量增加,反之亦如此。

spotFrom: SPOT white paper

通过上面几个比较出名的算稳,我们发现现在的算稳存在着某种困境:无论是USDT/USDC这类直接就是以法币作为抵押品的算稳,还是DAI/FRAX这种对于USDC二次打包的算稳,本质上都在追求对美元价格的强锚定,而这种锚定势必会受到美元通胀/通缩的影响,所以为了维持算稳的价值稳定性,就需要引入大量人为治理来协调整个机制的运行,这就无法做到真正的可信中立

而AMPL锚定的是美元购买力,而不是锚定价格,理论上可以完全摆脱人为治理,完全交由市场供需来维持整个机制的运行。本来作为最为贴切理想算稳的存在是很好的东西,可组合性又一言难尽,就差这一步,就没有什么好方法去解决下么?在以前写过的文章里,我大概提到过这可能需要把AMPL打包成NFT,通过预言机协调来实现可组合性。但是AMPL团队最近推出了更为靠谱的一个手段,将AMPL打包成零息债券,作为抵押品铸造新的算稳出来,这就是SPOT。

SPOT——利用defi可组合性诞生的新一代算稳

SPOT本质上是以AMPL零息债券为抵押品的算稳,它主要利用了两个协议,AMPL和ButtonWood。AMPL自然不必多说,在SPOT里主要是作为基础抵押品的存在,但是由于AMPL rebase的特性,直接拿AMPL作为抵押品会让抵押品价值波动较大,所以这里AMPL利用了ButtonWood这个协议来对冲rebase

ButtonWood

我们可以稍微看看ButtonWood这个协议。准确的说,ButtonWood是一个defi工具,其提供的核心功能就是让开发者快速得构建各种结构化产品,例如按照不同比例将不同风险等级的资产打包成一个产品,提高资金利用率,降低整体风险。这就类似于传统企业的所有权可以被分为债权和股权,当进行权益索赔时,债权人优先索赔,企业偿付完债权人后才会偿付给股权持有者。相当于债权人的权利能得到最大保障,算是一种安全资产,而股权人承担企业的绝大部分风险,与此同时换取企业上市或出售后获得的超额回报。

而ButtonWood主打的核心概念叫Tranche,它支持其他协议将资产抵押进ButtonWood,铸造出不同风险等级的tranche资产,每种tranche资产的风险等级不同,较为安全的tranche资产相当于是基本抵押品,而风险等级较高的资产则可以看做是标的资产的杠杆头寸,不过无论哪种tranche,它都是个erc-20代币,所以在技术上的可组合性没有啥问题。大概的原理示意图如下:

spotFrom: ButtonWood Doc

具体原理我们可以用AMPL作为抵押品铸造Tranche资产为例子,看下铸造Tranche和赎回资产的流程。

铸造Tranche

spotFrom: ButtonWood  Doc

如图所示,用户可以将AMPL作为抵押品抵押到TrancheBond协议中,然后协议就会按照设置的风险档次比率,铸造出对应比例的tranche资产。

假设在AMPL的TrancheBond协议中:

  • 风险档次比率为:Tranche-A 20/ Tranche-B 30/ Tranche-C 50
  • 用户抵押1000AMPL,就会获得对应
  • 200(1000*0.2)的AMPL-A
  • 300的AMPL-B
  • 500的AMPL-Z

spotFrom: ButtonWood Doc

  • 如果我们将AMPL-A定义为类似公司债权的安全资产,则经过这次交互,用户获得了保值率最高的200个安全资产,这部分资产会在后续赎回时保持优先偿付。而AMPL-B则是风险上升一级的资产,TrancheBond在优先偿付完AMPL-A之后,就会偿付AMPL-B的债务。最后的AMPL-C则是最后偿还,承担了最多风险的资产,同时也是享有超额收益权的资产(未来公司价值的上涨或下跌),类似于公司股权。

通过这次交互,用户的仓位值仍然等同于持有他们原来的AMPL。然而,他们现在拥有代表不同风险等级的AMPL资产。

赎回抵押品

知道了如何mint,就需要知道如何redeemed. 既然tranche的思路和企业所有权类似,那么对于偿付来说,就一样需要按照不同风险等级进行不同优先级的偿付。

spotFrom: ButtonWood Doc

   如图所示,当对应的tranche资产到期后,会优先偿付风险等级最低的A-trache,尽量确保这部分的偿付能做到1:1。然后偿付B类资产,最后偿付Z类资产,风险等级越高的资产偿付顺序越靠后,所以越有可能承担损失或获得超额利润。

我们依旧用上面用AMPL铸造的tranches作为例子来看下不同市场条件下的赎回过程。

假设AMPL的市场需求降低,根据rebase机制,市面上的AMPL流通量需要减少,此时对应tranche的偿付额度分配如下:

spotFrom: ButtonWood Doc

  • 每个A-tranche获得 1 AMPL的全额偿付
  • 每个B-tranche获得1AMPL的全额偿付
  • Z-tranche获得剩余的AMPL,算下来每个Z-tranche大概可以获得0.5个AMPL

假设AMPL的市场需求增加,根据rebase机制,市面上流通的AMPL数量需要增加,此时对应tranches的偿付额度分配如下:

spotFrom: ButtonWood Doc

  • 每个A-tranche获得 1 AMPL的全额偿付
  • 每个B-tranche获得1AMPL的全额偿付
  • Z-tranche获得剩余的AMPL,算下来每个Z-tranche大概可以获得1.2个AMPL

我们可以发现,在这个例子中,Z-tranche承担了AMPL价值变化的风险,但是获得了AMPL增值的所有好处。当然,ButtonWood还有很多其他功能,不过和我们今天的SPOT关系不是很大,所以有兴趣的朋友可以在后面的附录里去他们官方文档去查看具体内容。而对于Tranche来说,一句话总结其原理:

它就是利用债券的原理将资产的波动包裹起来,在需要兑付的时候释放波动给对应风险等级的Tranche资产

开始组合

我们来稍微详细看下上面这个AMPL为例的tranche资产有什么特点,我们暂时称这个资产为NewAMPL(这里指的是A-tranche+B-tranche作为抵押品生成的整体资产叫NewAMPL)。

可以发现NewAMPL有如下几个明显的特点:

  • 如果我们以AMPL购买力作为衡量NewAMPL价值的尺度,那么该资产无论何时都是至少100%抵押的资产,但是如果我们以个人AMPL的持有量或者以AMPL总市值作为标准,因为rebase会影响z-tranche,那么它就可能变成一个不足额抵押的资产。
  • 不同抵押品产生的A-tranche不能互换,因为每个A-tranche对应不同的到期时间,经历了不同的市场条件,对于原抵押品的价值存储程度也不同
  • 这种资产只是代表对抵押品的单向索赔权,其价值随着抵押品的变化而变化。所以不需要锚定什么东西,也不需要清算。所以理论上可以不涉及预言机这个Defi世界里最容易出问题的东西。

所以,对于这样的NewAMPL来说,除了第三个特点外,另外两个特点始终都会存在抵押率不足的可能性:要不AMPL本身rebase机制导致,要不因为A-tranch不可互换会导致用户在赎回抵押品的时候流动性不足。所以我们需要调整一下两者的组合,让它变得更加可靠。

Spot的具体设计

首先一个调整,就是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的运行原理可以用下图来表示:

spotFrom: SPOT white paper

整个过程概括来讲就是:

SPOT以Sr-tranche和到期被自动赎回的AMPL为一揽子资产为抵押品,通过激励措施引入Rotator让其注入等额或超额新生成的Sr-tranche来替代已经到期的Sr-tranche, 从而在表面上达到一个Sr-tranche能够随意被赎回的循环系统

而在这个过程中有几个细节需要额外注意。

  • 铸造和赎回都要手续费,手续费部分会给到费用缓冲区。而铸造的Sr-tranche代表对未来AMPL的赎回权,所以实际上就是一种零息债券(简单解释下零息债券。这种债券不支付利息,只是以票面价值的折扣价出售,到期会以票面价值赎回)
  • SPOT的抵押品除了有未到期的Sr-tranche外,还有已经到期的Sr-tranche被自动赎回变成的AMPL,但是这部分AMPL存储在一个被称为hoding pen的特殊数据结构中,同时该数据结构里还包含了诸如哪个Sr-tranche被赎回成了AMPL等信息。所以其抵押品是Sr-tranche和AMPL组成的一揽子资产。需要注意的是holding pen里的AMPL也会参与rebase.
  • 所以当用户赎回资产时,是按比例在整个一揽子资产中赎回的。例如你拥有Spot 1%的份额,你在赎回资产的时候,就是赎回每个Sr-tranche的1%+holding pen中1%的AMPL
  • Sr-tranche有最小锁定期,即哪怕你用铸造的Spot马上换成Sr-tranche,也要等一段时间才能把Sr-tranche换成AMPL。只有过了最小锁定期后的Sr-tranche会参与这个循环,这个代表什么呢?我们知道Sr-tranche和其包含的抵押品理论上应该是严格的1:1的,但是因为有最小锁定期的存在,整个SPOT里Sr-tranche和其对应的AMPL是大于1:1的。举个例子,假设现在最小锁定期的Sr-tranche有100,而符合SPOT循环系统抵押品的SR-tranche也有100,那么就SR-tranche这部分的抵押品来说,在当前时间发生问题时,单就Sr-tranche本身而言就有近似200%的抵押率来让SPOT循环系统的SR-tranche进行偿付。
  • Rotator的思路就是尽量让在系统中未被赎回的Sr-tranche保持一个均衡水平,以此维持流动性。所以有多少Sr-tranche被赎回,理论上就该有多少新的Sr-tranche被铸造并且加入到系统中。这一点上它的激励思路也较为简单,就是你帮我做流动性,我就给你SPOT奖励,例如:
  • 如果一个用户在赎回N个Sr-tranche的同时注入新的N个Sr-tranche,那么该用户就能获得N*奖励乘数的SPOT奖励。这部分奖励目前优先从一个费用缓冲区里发放,如果缓冲区里的钱不够了,就会铸造新的SPOT给这个用户。当然,这要遵循对应的通胀公式

基本上,Spot的原理就说完了。对,它的原理确实很简单。下面我们来思考一下这样设计的Spot遇到价格波动时会发生什么样的情况。

SPOT的状态

如果我们对上文所述的SPOT机制有所了解,就会发现SPOT的抵押品只会有三种状态:

  • Tranche状态(Fresh):所有SPOT完全由未到期的Sr-Tranche生成。持有这种状态下生成的SPOT就相当于持有不会被rebase影响的AMPL。
  • 混合状态(Mixed): 抵押品是由holding pen里的AMPL+未到期的Tranche组成。这种状态理论上只是Fresh和Mature之间过渡的状态,这种状态可能是SPOT占比最多的状态,处于这种状态下的SPOT抵押率在现有的Sr-tranche和Jr-Tranche比例下(20:80),基本上不会小于100%。
  • AMPL状态(Mature):抵押品完全成了AMPL。这种状态就是我们能想到的最危险的一种状态。所以抵押品变成了AMPL,这就意味着SPOT完全和AMPL一致,受rebase影响。

知道了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价格低于抵押品

这个最容易想,买SPOT赎回抵押品,一直到价格平衡。但是需要注意的是,因为赎回的是Sr-tranche。不过这种做法和Terra不同,因为你赎回的本身就是已经存在的AMPL或Sr-tranche,所以不会对AMPL的供应产生任何影响

遗留问题

看完上面的内容,我们会发现其实还有两个问题没有说清楚。SPOT的抵押品只是Sr-tranche(A-tranche),那么为何在前端页面抵押AMPL的时候还要生成Jr-tranche(Z-tranche),并且显示Jr-tranche也有最小锁定期?对于这个问题的前半部分,官方给的答案如下:

spot

而这一问题的后半部分,如果你去看下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

总结

我们可以看到,推出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

声明:本文为入驻“MarsBit 专栏”作者作品,不代表MarsBit官方立场。
转载请联系网页底部:内容合作栏目,邮件进行授权。授权后转载时请注明出处、作者和本文链接。未经许可擅自转载本站文章,将追究相关法律责任,侵权必究。
提示:投资有风险,入市须谨慎,本资讯不作为投资理财建议。
免责声明:本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况,及遵守所在国家和地区的相关法律法规。