DeFi 防騙|什麼是暫時性損失/無常損失(impermanent loss)?Uniswap、Curve、Balancer

Elponcho
分享
DeFi 防騙|什麼是暫時性損失/無常損失(impermanent loss)?Uniswap、Curve、Balancer

新出現的壽司、泡菜、麵條、珍珠、小炒…,還有過往的蝦子、奶油跟蕃薯等,流動性挖礦的推陳出新,讓幾個月前的事情,好像都是前世了。近來,各大交易所搶上妖魔鬼怪幣的現象,也看出去中心化交易市場,正與中心化交易所共演一場牛市大戲。

「DeFi 防騙系列」,是希望讀者透過了解 DeFi 流動性池的運作原理與種類,理性看待這些「特殊」幣種的本質與緣由,並當心投資風險。

上一篇中,鏈新聞透過 Finematics 的影片,編譯、介紹了「流動性池是什麼?」,以及 Uniswap 百倍幣出現的原理。本篇則是針對參與流動性挖礦的農夫農婦,解釋作為流動性提供者(Liquidity Provider,LP),可能會遇到的暫時性損失(impermanent loss,又稱無常損失)是什麼,以及流動性挖礦有什麼用意?鏈新聞翻譯影片中的內容,建議讀者可以搭配使用,並以原文影片為準。

廣告 - 內文未完請往下捲動

什麼是暫時性損失(impermanent loss)?

簡要來說,它是一種當你提供流動性時,暫時損失資產的狀況。

接下來,我們要講的是「持有某資產」,跟「在流動性池中提供某資產」有什麼不同。

暫時性損失的現象經常在一般的流動性池中發生,流動性提供者(LP,Liquidity Provider)必須向流動性池中提供兩種固定價值比例的資產。至於某一項資產與另一項資產的價格關係,則會是波動的。舉例來說,在 Uniswap 中的 DAI-ETH 50/50 流動性池(意指 LP 需投入相同價值的 DAI 與 ETH),如果 ETH 價格上漲了,這個池子必須仰賴套利行為(arbitrage),來確保池子裡的價格會與外界的市場價格是一致的,維持著池中兩種資產應有的價格。

不過,由於某項資產升值發生的套利行為,會讓 LP 產生價值損失,此時,若是 LP 決定要抽回他的流動性,暫時性的損失就會變成「永久性的損失」。

舉例解釋「暫時性損失」

用一個例子來快速了解「暫時性損失」。

有一個人成為 Uniswap 中 DAI-ETH 50/50 流動性池的 LP,LP 必須要提供相同價值的兩種資產給這個池子。案例中,LP 提供 1 美元的穩定幣 DAI 一萬枚,再搭配上假定市值 500 美元的以太幣 20 枚,兩者同樣是共值 1 萬美元。這樣就確保了兩樣提供的資產價值相同。

LP 須提供相同價值的兩種資產
LP 須提供相同價值的兩種資產

接著,假設在 Coinbase 以太幣價格變高了,變成 550 美元。這時候會有套利者的參與,他們發現 Coinbase 跟 Uniswap 上面的 ETH 價格不同,他們就會想要藉此價差套利。

Uniswap 採用的是固定乘積做市商(constant product market maker)算法,來維持流動性池的代幣比例。當有越多的 ETH 從池子裡買走,這個算法就會給 ETH 有更高的價格。套利者會持續買走池子裡比較便宜的 ETH,直到算法將價格調整至與市價相同。

在這個例子中,我們來看看套利者需要買走多少 ETH,才能讓上述的事情發生。錨定外部的市場價格,透過固定乘積做市商算法:x * y = k 計算,需要讓池子中 DAI 的數量變成 10,488.09,ETH 的數量變成 19.07,一枚 ETH 的價格才會調整成 550 美元。

這個結果顯示,套利者用 488.09 個 DAI,買走 0.93 個 ETH 套利,相當於 1 個 ETH 只要 524.83 DAI 之後,Uniswap 的池中價格才會調成與 Coinbase 相同。套利者在 Uniswap 買到的 0.93 個便宜的 ETH,可以在其他外部交易平台賣出,並獲利約 23.41 DAI(未扣除交易手續費)。

套利者可以用較為便宜的價錢買走 ETH
套利者可以用較為便宜的價錢買走 ETH

這對流動性提供者(LP)會有什麼影響呢?

在一開始 LP 在池中擁有 10,000 個 DAI,還有 20 個 500 美元的 ETH,池中共有價值 20,000 的代幣。

在被套利之後,池中變成 10,488.09 個 DAI,19.07 個標價 550 美元的 ETH,池中代幣價值變成了 20,976.59 美元。如果這些 LP 當初只是持有這些代幣,並沒有去提供流動性,那麼手中代幣的價值就會是 21,000 美元的價值,比沒有提供流動性要多出 23.41 的美元價值。這 23.41美元價值,就是 LP 的暫時性損失。

為什麼是暫時性的呢?因為只要 LP 沒有在此時贖回流動性,他就只有在帳面上的損失,一但 ETH 價格回到 500,那麼暫時性損失就會消失。不過,若是當下 LP 選擇贖回流動性,那這個暫時性損失,就會變成永久損失。

由於套利行為,產生了暫時性損失
由於套利行為,產生了暫時性損失

暫時性損失會怎麼被侵蝕 LP 的利潤?

接下來我們來看看,當一個資產的價格相對於另一個資產增加時,會如何損害到 LP 的利潤。

假如在池子中的某個資產上漲了 500%,LP 會遭遇到 25% 的暫時性損失。既然暫時性損失會讓 LP 損失慘重,那他們有什麼動機提供流動性呢?

某個資產上漲了 500%,LP 會遭遇到 25% 的暫時性損失。(source:medium)
某個資產上漲了 500%,LP 會遭遇到 25% 的暫時性損失。(source:medium)

【鏈新聞註:想了解更多可參考此文章、Uniswap V2 也有更多更新

LP 提供流動性的動機

讓我們來看看 LP 是怎麼用自己的資本賺錢的。

在沒有暫時性損失的理想狀態下,LP 靠著抽取交易手續費就能賺錢。例如,人們在這個 Uniswap 池做的每一筆交易,都會有手續費 0.3 % 按照比例分給池子的 LP。就算暫時性損失發生,如果收到的手續費高於暫時性損失,那 LP 就還是賺錢的。

基於這個狀況,很多流動性池給予 LP 另一種新的動機:流動性挖礦(liquidity mining)。精要來說,就是給予 LP 另一種代幣,作為提供某個池子流動性,或者使用某個協議的獎勵。

有些流動性挖礦的代幣,可能有機會能夠彌補暫時性損失,讓提供流動性變得更有利可圖。

Uniswap 以外的池子會有暫時性損失嗎?

以 Curve 為例,它的池子中只會放置價值相近或相同的資產,可能是不同的穩定幣,像是 USDC 或是 DAI,又或者是相同代幣的不同變體,像是 SBTC、RENBTC 還有 WBTC。在這樣的池子中,暫時性損失就被最小化了,因為當中的資產之間,相互的波動性是很小的。這也是為什麼 Curve 比較通用的原因,而且穩定資產的池子比起放有波動資產的池子,通常也會吸引更多的資產進駐。

另外一個例子是 Balancer,它提供一種具有對沖性權重的池子,而非標準的 50/50 的權重模型。這表示,如果有一個 LP,想要維持著某一項資產的風險,他們可以參與一個權重比例懸殊的池子,幣如 80/20,甚至是 98/2 的池子。這樣的池子也可以減低暫時性損失,在池子中權重比例越高的資產,選擇持有或提供流動性的差別就越低。

最後一種對抗暫時性損失的案例,就是 Bancor 最近推出的。Bancor V2 的池子可以透過預言機,使用外部的價格數據,來自動調整權重。就算是有波動性高資產的池子,也能減輕暫時性損失。

所以你有經歷過暫時性損失嗎?你又是怎麼處理的呢?