原文:《 SPOT, 實現AMPL野心的新型算穩

作者:雞雞雞雞雞。

TL;DR

1.Spot 是以AMPL 為底層抵押資產的債券型算穩,其最大的作用是減少AMPL rebase 帶來的波動性,鬆散的錨定AMPL。提高了AMPL 的可組合性;

2.Spot 代表的是對抵押品(AMPL 債券)的單邊索賠權,所以沒有清算,所以原則上不需要預言機的參與;

3. 其機制利用了零息債券,所以如果拋開零息債券本身鎖定期的問題,只是以賬面價值計算,它是100% 抵押的算穩。在這種機制下,對治理的要求非常低,基本上可以算作是一個全自動運行的算穩系統;

4. 同時,Spot 的機制確保即使用戶減少到0,其價值也不會歸零,並且能夠隨時重啟制度,更為重要的是,Spot 只會出現其價值超過抵押品,但是不會出現抵押品不足的情況。這點有些類似OHM 但是卻不完全一樣。

算穩的困境

在正式討論SPOT 之前,我們來看一個老生常談的問題:什麼樣的算穩才算是一個好(理想)的算穩,它需要具備哪些條件?如果按照之前我寫過的幾篇算穩文章的說法,一個好的算穩應該具備以下幾個特點:

價值穩定。穩定幣的概念近似於我們現實生活中貨幣的概念(法幣稍微有點不同,不過暫時也能等同考慮),所以對於絕大多數的算穩來說,價值穩定幾乎和價格穩定可以劃上等號。不過因為通脹等因素的影響,價值和價格其實並不一樣。價值穩定對於穩定幣」價值存儲「的功能更為重要。不過,此處為了說明的簡單,我們就用購買力穩定來來表示價值穩定。

可組合性要好。貨幣另外兩個重要功能就是作為」交換媒介「和」支付手段「,這點體現在區塊鏈裡,就是可組合性要夠好。對於絕大多數算穩,因為其本身就是屬於普通代幣(eg 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 機制的一些特別補充,筆者在之前的《研究|溫故知新,重新看看算穩的故事》裡說了很多,有興趣的朋友可以看看。

一文讀懂AMPL發行的債券抵押算法穩定幣Spot

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 是隨著需求擴張,數量增加,反之亦如此。

一文讀懂AMPL發行的債券抵押算法穩定幣Spot

通過上面幾個比較出名的算穩,我們發現現在的算穩存在著某種困境:無論是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 代幣,所以在技術上的可組合性沒有啥問題。大概的原理示意圖如下:

一文讀懂AMPL發行的債券抵押算法穩定幣Spot

具體原理我們可以用AMPL 作為抵押品鑄造Tranche 資產為例子,看下鑄造Tranche 和贖回資產的流程。

鑄造Tranche

一文讀懂AMPL發行的債券抵押算法穩定幣Spot

如圖所示,用戶可以將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

一文讀懂AMPL發行的債券抵押算法穩定幣Spot

如果我們將AMPL-A 定義為類似公司債權的安全資產,則經過這次交互,用戶獲得了保值率最高的200 個安全資產,這部分資產會在後續贖回時保持優先償付。而AMPL-B 則是風險上升一級的資產,TrancheBond 在優先償付完AMPL-A 之後,就會償付AMPL-B 的債務。最後的AMPL-C 則是最後償還,承擔了最多風險的資產,同時也是享有超額收益權的資產(未來公司價值的上漲或下跌),類似於公司股權。

通過這次交互,用戶的倉位值仍然等同於持有他們原來的AMPL。然而,他們現在擁有代表不同風險等級的AMPL 資產。

贖回抵押品

知道瞭如何mint,就需要知道如何redeemed. 既然tranche 的思路和企業所有權類似,那麼對於償付來說,就一樣需要按照不同風險等級進行不同優先級的償付。

一文讀懂AMPL發行的債券抵押算法穩定幣Spot

如圖所示,當對應的tranche 資產到期後,會優先償付風險等級最低的A-trache, 盡量確保這部分的償付能做到1:1。然後償付B 類資產,最後償付Z 類資產,風險等級越高的資產償付順序越靠後,所以越有可能承擔損失或獲得超額利潤。

我們依舊用上面用AMPL 鑄造的tranches 作為例子來看下不同市場條件下的贖回過程。

假設AMPL 的市場需求降低,根據rebase 機制,市面上的AMPL 流通量需要減少,此時對應tranche 的償付額度分配如下:

一文讀懂AMPL發行的債券抵押算法穩定幣Spot

· 每個A-tranche 獲得1 AMPL 的全額償付;

·每個B-tranche 獲得1AMPL 的全額償付;

·Z-tranche 獲得剩餘的AMPL,算下來每個Z-tranche 大概可以獲得0.5 個AMPL;

假設AMPL 的市場需求增加,根據rebase 機制,市面上流通的AMPL 數量需要增加,此時對應tranches 的償付額度分配如下:

一文讀懂AMPL發行的債券抵押算法穩定幣Spot

·每個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 的運行原理可以用下圖來表示:

一文讀懂AMPL發行的債券抵押算法穩定幣Spot

整個過程概括來講就是:

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 也有最小鎖定期?對於這個問題的前半部分,官方給的答案如下:

一文讀懂AMPL發行的債券抵押算法穩定幣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 是多少,當然,具體的解釋可能需要等官方更新後續文檔。

一文讀懂AMPL發行的債券抵押算法穩定幣Spot

總結

我們可以看到,推出SPOT 其實是AMPL 進行擴張的一個重要步驟。在同樣市場條件下,通過暫時減少AMPL 在市場上的流通量,讓AMPL 價格上升,最終提高代幣供應。同時巧妙地用債券的思路減少了rebase 對AMPL 現貨產生的影響,甚至可以反過來利用AMPL 本身錨定的CPI,讓rebase 變成了對於AMPL 本身價格上漲的預期,實在是太棒了。

最後,非常感謝AMPL 社區的小伙伴們的指導。