一文了解AMM流動性挖礦原理

AMM 協議是指自動做市商協議,它是目前DeFi 領域中最受歡迎的協議之一。 AMM的出現使得流動性挖礦這一玩法迅速火爆起來。傳統的挖礦通過提供算力來獲得獎勵,而流動性挖礦是提供流動性來獲取獎勵。對於流動性提供者而言,通過為去中心化交易所或其他項目提供流動性,從而獲得代幣獎勵,這種模式在DeFi中比較常見。

和中心化交易所的訂單簿模型不同,AMM採用的是固定乘積的方式來計算交易池中的代幣,只要流動性提供者提供的流動性足夠充足,就能保證去中心化交易所的持續運轉。

AMM有兩個參與方,一個是流動性提供者liquidity provider,可以理解為做市商;一種是交易者trader。流動性提供者會先向資金池中註入一定數量的代幣,來為交易提供流動性。而交易者在兌換代幣或交易的時候,會付出一定的手續費,這筆手續費就是流動性提供者的收入。

流動性挖礦項目有很多:YFI、Curve、Uniswap、SushiSwap、DODO、YAM、UMA、SUN、MDEX、Balancer等等。

我們以Uniswap為例,來看看去中心化交易所內部的原理,以及如何通過提供流動性來獲取可觀的收益。

Uniswap誕生於2018年,是一個完全去中心化的協議,它沒有類似中心化交易所的訂單簿報價系統,而是基於恆定乘積做市商模型,來保持兌換價格的合理性,並激勵更多的人貢獻流動性。

Uniswap的Pool資金池模塊就是流動性管理,每個交易對的流動性都通過一個單獨的以太坊合約來管理,我們可以先加入或創建一個資金池,然後增加或取出某個交易對的流動性。這個過程其實這就是給做市商池充、提幣的過程。

如果某個交易對在已有的資金池中找不到,我們可以通過上圖中下方的“+創建資金池”按鈕,來創建這個交易對的資金池。這個過程稱為上幣。去中心化交易所對於上幣的人沒有要求,任何人都可以選擇一個交易對,並且上幣到Uniswap上。如果你是創建這個交易對的資金池的人,那麼交易對的兩個品種A和B的初始的量,是由你來決定的,A和B的初始價格就是你定義的兩個初始量的比值。如果你的定價很不合理,那麼就會有套利者進行套利交易,套利這個動作會推動價格打到合理的位置。之後加入流動性池子裡的人,他們提供的兩個幣的量,也會按照新的比例。

這裡展示了Uniswap的工作原理:

每個交易對都由一個做市池合約來管理,做市池中兩種幣的當前總價值永遠是等值的,例如圖中,資金池中有100個A和10個B,說明當前A和B的兌換價格就是1:10的關係。如果發生了交易,價格就會發生變動。流動性提供者要做的事就是根據當前做市池兩種幣的數量,按照這一比例的同時存入這兩種幣。例如圖中,做市池中有100個A和10個B,那麼我們需要按照10:1的比例,存入A和B,之後就可以躺著賺錢了,Uniswap會自動把手續費收入分給流動性提供者。

對於交易者來說,如果他要把A兌換成B,就需要支付10個A,並且加上千分之三的手續費。而由於滑點的存在,一般來說,交易者收到的幣B會小於1個。資金池越大,對於B來說,滑點就越小。

Uniswap有一套自動的做市商機制來管理流動性、確定交易對之間的兌換價格,以及交易滑點。這套獨特的機制叫做恆定做市商模型,簡稱CPMM(Constant Product Market Maker)。

恆定乘積做市商模型其實就是一個公式:x*y=k。假設交易對是A和B,其中x是流動性池中A的總流通量,y是B的總流通量,在不增加或減少流動性的情況下,無論交易多少次,x和y的乘積k都是不變的。

由於每次交易,都會改變做市池中A和B的數量,所以它們的價格就會發生變化。我們可以通過簡單的公式推導,計算出每次的交易價格和滑點影響:

我們還是用x, y分別表示資金池中A和B的數量,k是x和y的乘積,A/B的初始價格是y/x。假設發生了一筆交易,交易者花了🔺x個A,買了🔺 y個B,那麼資金池中新的幣量是x+ 🔺x個A和y- 🔺 y個B,並且根據乘積不變性,(x+ 🔺 x)*(y- 🔺y)=k,這筆交易的價格就是🔺 y/ 🔺 x,並且當前最新的價格是(y- 🔺 y)/ (x+ 🔺 x)。根據這個等式,我們就很容易推導出🔺 y的計算公式。 🔺y就是指交易者花費🔺 x個A,能夠換取多少個B。

由於恆定做市商模型的計算規則,流動性提供者並不是穩賺不賠的,會存在“無常損失”。無常損失簡單來說是指在AMM中持有代幣和在你自己的錢包中持有代幣之間的價值差。當AMM中的代幣價格向任何方向上發生偏離時,就會發生這種情況。偏離越大,無常損失越大。

特別聲明
免責聲明:本文不代表0x财经立場,且不構成投資建議,請謹慎對待,如需報導或加入交流群,請聯繫微信:VOICE-V。

來源:火象趣交易原創

Total
0
Shares
Related Posts