被動收入

去中心化金融的濫觴,來聊聊什麼是自動造市商AMM,還有不能不知道的風險-無常損失

雖然最近虛擬貨幣的跌勢又讓很多人看衰虛擬貨幣的未來,不過勳仔之前的文章(文章連結)除了簡介加密貨幣的發展歷程之外,還有提到加密貨幣的基礎,也就是去中心化的區塊鏈技術。這部分持續引領去中心化技術的發展還有更多的應用,也因此有很多人從傳統的買礦機挖礦來賺取收入,漸漸的轉向去做所謂的流動性挖礦。

而流動性挖礦顧名思義,也就是投資人藉由提供流動性,來賺取藉由這個流動池交易的所有手續費用,不過這樣賺取被動收入的方式,其實也隱含一些風險,投資人也是需要別注意。

去中心化交易所

在去中心化金融的應用中,有一大類是所謂的去中心化交易所,顧名思義,就是讓虛擬貨幣對的交易無須任何一個中心化的單位來管控,或是創造流動性。

傳統上的中心化交易所,會有一個掛單本,上面會記載當前買方跟買方的委託價格,還有最近的成交價等等資訊。

無論這個掛單本上的所有掛單是否全部都是實際直接來自市場的掛單,或是中心化交易所為了造市提供流動率所掛出來的單,基本上成交與否的依據還有成交價格,都來自於這些掛單的撮合結果,這就是傳統中心化交易所的運作原理。

AMM(Automated Market-Makers)自動造市商

自動造市商的概念很簡單,既然去中心化金融的中心思想就是想要消除中心化的單位,那麼只要有一種特別的作法,可以完全取代本來中心化交易所的角色,像是撮合買賣雙方的交易需求,跟提供報價等等的功能,那麼就可以達到去中心化的目的

因此有人透過虛擬貨幣中智慧合約的技術,利用一些簡單的數學函數,讓虛擬貨幣對的兌換價格可以自動動態的根據池中剩餘的貨幣來做改變,因此就不需要有掛單簿,也不需要根據委賣委買單來搓出成交價,報價基本上就是透過數學函數所計算出的結果,也因此就完全不需要中心化單位所能提供的功能。

而在目前眾多的去中心化交易所當中,最早發揚這個想法且具有相當大影響力的就是UniSwap了,那就讓我們用UniSwap來當作例子,來看看AMM是如何運行的。

UniSwap已經發展到v3了,這個AMM平台持續根據實際運作面會遇到的問題來做一些改進,不過我們今天先來一窺UniSwap最一開始的自動造市機制,來當作AMM這個觀念的敲門磚。

在討論UniSwap的自動造市函數之前,先讓大家再來複習,去中心化交易所的流動池是什麼。

基本上,投資人可以將自己手中的加密貨幣資產,質押在一個流動池當中,替這個池子提供流動性。而一個流動池當中會有兩種虛擬貨幣存放其中,當有使用者想要用其中的某種虛擬貨幣去兌換池中的另一種貨幣,則他會將他手中的虛擬貨幣資產存入流動池當中,然後將流動池中等價的另一種虛擬貨幣給取出,而這個過程中會需要手續費用,這個手續費用會再繼續投入這個流動池當中。

上述敘述提到的”等價”,就是我們今天要來認識的部分,究竟當我要兌幣的時候,如果沒有掛單簿,要怎麼產生報價,進而完成貨幣兌換呢?

關於這個流程,我們要知道兩件事情,第一件事情是在AMM的資金流動池當中,兩種代幣所佔的數量比例,其實就是兌換匯率的概念。

EX: 目前有一池流動池,存放的是USDT美元穩定幣跟勳仔發行的SHIUN幣,而目前池內的USDT有100枚,而SHIUN幣有10枚,兩種代幣數量的比是10:1,則這代表目前一枚SHIUN幣在這個池中就等價於10 枚USDT。

而這個價格就真的完完全全僅跟這個流動池的貨幣比例有關,而跟外在的其他條件都沒有關係。

而如果勳仔發行的SHIUN幣還有在其他平台上架做交易,則其他平台上的交易採用的可能是傳統的掛單簿交易方式,這種成交價格我們稱做市價。如果SHIUN幣因為我故意放出持有SHIUN幣可以每月領1USDT的利多,則可能讓市價上升,譬如從10USDT上升到20USDT。

此時流動池的價格還是不會有任何變動,因為流動池內貨幣比例還是10:1,不過這時候因為在其他平台的市價遠高於這個流動池的兌換價格,所以產生套利空間,這時候注意到兩者價差的投資人,可以在這個流動池內用10USDT兌換1枚SHIUN幣,再到其他平台以20USDT來賣出,就可以套利

不過這個套利機制,是沒辦法無限套利的,當市場發現這個套利的機會,瘋狂存入USDT然後取得SHIUN幣的流程,會讓池中的兩個代幣的比例產生變化,因此價格也會越來越接近市價,最後會達到平衡。

UniSwap是用一個固定乘積函數來體現一個流動池當中,兩組貨幣兌的價格關係。所謂固定乘積函數K=xy,概念上很簡單,就是在一個貨幣交易的流動池中,兩種類型的貨幣數量,他的乘積是一個定值

舉剛剛上述的例子:

目前池中有10個SHIUN幣跟100個USDT,則兩個相乘是1000。當我要取出1個SHIUN幣,為了讓乘積還是一樣,我們可以帶入計算

(10-1) * (x+100) = 1000 -> x= 11.11,所以這時候其實我不是花10個USDT,我其實會需要花11.11個USDT才能兌換一枚SHIUN幣,這樣才能符合乘積是常數的計算公式。

繼續兌換的話,因為池中的SHIUN越來越少,所以變成會需要更多的USDT才能達到常數乘積的公式。

(9-1)*(x+111.11) = 1000 -> x=13.89。

因此利用這個乘積常數公式,如果池中的某個貨幣被持續大量兌換,則它的價格就會跟著越來越高,相反的,如果這個貨幣被持續存入池中,藉以換取另一個貨幣,則它的價格就會跟著掉下來,這樣的機制就跟傳統利用掛單簿買賣雙方力道平衡後所得到的成交價是類似的,這就是AMM的基本想法。

無常損失(Impermanent Loss)

前面提到,我們是可以藉由質押手中兩種等價的虛擬貨幣到池中,提供流動性來賺取手續費。

不過當我們質押手中虛擬貨幣到池中的時候,兩者貨幣的價格,如果跟最後要從池中取出虛擬貨幣資產時候的價格差異太大的時候,就有可能發生無常損失

一樣舉上述100枚USDT跟10枚SHIUN幣的流動池為例,假設這池中的1枚SHIUN幣跟10枚USDT是我提供的,所以我佔的流動性份額是10%。

這時候我質押的總資產是10USDT + 1 SHIUN(等價為10USDT) = 20USDT。

如果後來SHIUN幣市價大幅下跌,從10USDT左右的市價,一路腰斬,只剩下5USDT。

如果我本來只單純持有貨幣,沒有質押進流動池中,則這時候我的總資產會因為SHIUN幣的市值下跌,所以總資產跟著縮水到

10 USDT (因為沒進池,所以單純持有沒有受到影響) + 5 (因為一枚SHIUN幣的市價只剩下5USDT) = 15 USDT

而因為我把USDT跟SHIUN幣都質押放入池中,當SHIUN的市價下跌到5元的時候,並且我們假設已經有人完成套利,讓池中的價格接近市價,這時候代表池中USDT跟SHIUN幣的比例是5:1,這時候用簡單的代數帶入原來的乘積常數公式來做計算

5x * 1x = 100*10 -> X^2 = 200 -> X= 14.14 左右

代表目前池中的狀況,SHIUN幣約略是14.14枚,而USDT是70.71左右。

這時後取出的USDT資產總額為70.71* 10% = 7.071,然後理論上取出的SHIUN幣價值也是等價,所以總取出的資產價值為7.071*2= 14.14USDT

這時候因為我將貨幣質押到池中,對比我僅單獨持有個別的虛擬貨幣,我會多蒙受

(14.14-15)/15 = – 5.73%的額外損失,這個損失不是來自於幣價的跌價,而是因為乘積常數公式所額外帶來虧損,這個額外的虧損就是我們常聽到在AMM系統中會發生的無常損失。

這個無常損失發生的原因就是因為常數乘積公式特性,k=xy,y=k/x。x跟y的關係不是一個筆直的直線,他是一個曲線。當x跟y的個數變動的時候,則這條曲線的斜率會不一樣,這個不一樣的斜率就是無常損失的來源。

至於為什麼叫無常損失呢?主要的原因是因為這個損失只有發生在你要將質押的資產取出,不過貨幣兑當前價格跟當初存入的價格差異很大才會發生,如果不取出,過一段時間等價格回復到原來存入的區間,則無常損失就會消失,所以英文稱為「無常」損失。

心得:

相信有質押虛擬貨幣到AMM資金池的朋友,應該或多或少都聽過今天介紹的無常損失,雖然無常損失所多出來的虧損往往不及單純幣價暴跌的損失,以前面提到的例子來說,SHIUN幣跌價50%,無常損失也不過額外貢獻5趴多的損失,相對起來是微不足道。

不過如果對於比較保守的投資人,在挑選資金池來提供流動性的時候,還是可以儘量選擇池中兩者幣價關係較穩定的貨幣兑,例如:池中兩者皆為穩定幣的相關資金池,這樣幣價相對來說比較不會劇烈波動,比較容易規避無常損失的風險。

免責聲明: 本篇文章僅就公開資訊進行主觀分析,僅供投資朋友參考,不應當做投資依據,投資朋友仍然需要根據自身風險承擔能力作為投資判斷,盈虧自負。

如果覺得這篇文章對您有幫助的話,歡迎點擊下方分享按鈕,分享這篇文章給你的FB或是Twitter的親朋好友,或是加入>>勳仔的理財小角落 FB專頁<<,接收最新的理財文章資訊

延伸閱讀(一): 淺談去中心化金融(DeFi)以及流動性挖礦賺取被動收入的方式

延伸閱讀(二): 數位藝術品投資正夯! 什麼是NFT? 單純跟風還是未來趨勢

延伸閱讀(三): 將虛擬貨幣波動化為獲利的簡單交易法-網格交易法

在〈去中心化金融的濫觴,來聊聊什麼是自動造市商AMM,還有不能不知道的風險-無常損失〉中有 3 則留言

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *