AMM(做市商)貫穿著DeFi世界的始終,同時AMM模型也構建了DeFi世界繁榮的基礎。想要構建一個對於DeFi世界的基礎認知,建議仔細閱讀以下內容,Let's for fun.

什麼是AMM(自動做市商)

在了解AMM之前,先讓我們看看傳統意義上的做市商是什麼?所謂做市商(AMM),是負責為交易所提供流動性,同時進行價格操作的實體。這是通過MM從自己的賬戶買賣資產來實現的,他們的目的是為了盈利,他們的交易活動為其它交易者創造了流動性,這降低了大宗交易的滑點,在計算機交易大規模普及之前,做市商是交易市場不可或缺的一部分。

加密貨幣市場同樣有著提供流動性和定價的需求,但是在追求去中心化的加密貨幣市場中,這種中心化的做市商機制並不被人們所使用。於是自動化做市商(AMM)產生,這種機制使用算法“機器人”在DeFi等電子市場中模擬這些價格行為。我們可以把AMM設想成一個原始的,機器人式的做市商,他根據自定的定價模型,在兩種資產之間隨時提供報價以供用戶進行交易。

AMM類別和其定價模型

恆定函數做市商(CFMM)是當前最流行的AMM。

當交易者希望在AB代幣之間進行交易時,這種AMM會使用恆定函數作為其定價機制。 “恆定函數”在此處指的是兩種或多種交易資產的儲備的某種函數值必須在發生任何交易時保持不變。

目前主流的CFMM有以下幾種:

A .恆定乘積(Uniswap)

這種AMM強制要求兩種資產儲備量的乘積始終保持不變,即:

x * y = k

在這個等式中,X 和Y代表流動性池中兩種資產的單位數量。舉例說明,假設ETH/DAI池包含100ETH(X)和10000DAI(Y)。此時K=1,000,000 。現在的目標是保持k值恆定,而不考慮對流動性池的交易量。做到這一點的唯一方法是,x和y的數量反向變化。換句話說,當x的數量增加時(交易者將ETH加入池中),y的數量必須減少(交易者將DAI從池中取出)。最終,任何給定交易所的報價都是常量乘積公式和池中代幣比例的函數。下圖近似描述了這種模式下兩類資產之間互相兌換的關係。

可以看到在這種方式下,兩類資產之間的兌換並不成線性關係,而是一個雙曲線,這在這種模式下,流動性總是可用的,但是缺點也顯而易見:

在交易中會產生滑點,尤其是當進行越大宗的交易時,滑點越大。資產的價格有可能會越來越高,兩端接近無窮大無法滿足掛單交易的需求

B .恆定和(CSMM)

這類AMM遵循x + y = k 的公式,從而在交易中可以實現零滑點。但他的致命之處在於它無法提供無限的流動性,如果作為儲備代幣的參考價格不等於1,所有套利者會不斷買入其中一種代幣,直至其流動性耗盡。因此並不是一種常見的AMM機制。

C .恆定平均值(Balancer)

恆定平均值做市商由恆定乘積做市商這一概念推廣而來,可用於兩種以上資產,權重比例不僅限於50/50 。

這一類型實際上是恆定乘積模型的變種,公式如下,其中Bt為資產t的數量,Wt為權重

類似於Uniswap,目標是在保持資產權重不變的情況下,只改變資產餘額,從而保持k不變。在3種資產Balancer Pool的情況下,交易可以發生在三個資產中的任意兩個之間。用戶可以用ETH交換DAI,用ETH交換BTC,或者用DAI交換ETH。通過保持k的值不變,可以在三種資產之間生成一個價值面。這個價值實際上與Uniswap的曲線沒有太大區別,只不過多了幾個維度而已。

不同的是,在這種模式下,定價模型變得更加複雜了起來

Balancer資金池中可以允許有2-8種資產。池中的每一對代幣都有一個價格,這個價格取決於該特定代幣的餘額B和權重W。從形式上看,交易執行的價格是按照代幣餘額與代幣權重的比值來計算的。

在上面的公式中,代幣A代表被賣出的代幣(進入池子) 而代幣B是被買入的代幣(離開池子)。如果池子的持有者不改變資產儲備,很容易看出價格的變化完全基於交易,因為資產權重必須始終保持不變。這種機制與圖2所示的恆定面相結合,可以保證買入資產的價格上升,而賣出資產的價格下降。在與Uniswap相同的情況下,套利機會保證了Balancer Pools提供的價格與市場其他部分同步變動。

D . 混合型CFMM (Curve)

經過分析以上三種模型我們可以看出,他們都有各自的優缺點,於是一些項目想通過使用混合函數基於資產特性獲得理想屬性,這其中的代表項目就是Curve

Curve是一個交易所流動性池,預期價格穩定的資產之間可以在該池裡進行高效交易(如穩定幣或封裝的比特幣(wrapped bitcoin))。 Uniswap和Balancer主要是針對波動和價格不穩定的代幣的交易。然而,當處理那些想要互相保持穩定的資產之間的交易時,低價格滑點是最重要的。之前迭代的各種AMMs固有曲率就有問題了,因為交易規模越大,滑點就越大。

從上面我們看到恆和機制可以達到無滑點,但是它無法做到激勵流動性,因此Curve在CSMM的基礎之上結合恆定乘積函數創造了一種混合AMM:

這個函數在恆定乘積曲線的平衡點附近創建一條相對平坦的曲線,類似於恆定總和函數,以保持價格相對穩定,同時使兩端更加傾斜,類似於恆定乘積函數,因此在曲線的每個點都有流動性。在雙資產的情況下(x和y),最終的結果是下面的複雜函數。

其中n為資產數量(在雙資產情況下n=2),A為“放大係數”參數,他決定了函數於恆積函數的相似程度,A值越小,越類似Uniswap的恆積函數,我們無需理解這個函數的構成,只要知道函數的目的還是在交易過程中保持常數K不變。繪製該函數如下:

可以看到在函數終端其更類似一條直線,表現為恆和函數,但隨著x,y的增大,則向恆積函數靠攏,這種形狀使曲線中間段的價格保持穩定,同時又能在兩端提供流動性。

做市模型及潛在風險

做市模型:

CFMM主要有以下三類參與者:

交易者:希望在CFMM中將某類資產交換為另一種資產

流動性提供者:提供資產組合(交易對)來滿足交易需求,賺取交易費

套利者:通過套利行為將交易對中的資產維持在市場價格

在這三類參與方中,最重要的角色是流動性提供者(LP),負責向DEX 的智能合約中註入自己的資產,作為資產儲備池,為交易提供流動性,並以此獲取交易費用收益。其次是套利者,他們負責修正交易價格,保證交易價格與市場價格一致,但也會產生無常損失(Impermanent Loss),給流動性提供者帶來虧損的風險。

我們以Uniswap 中資產A 和資產B 的交易為例。在交易開始前,我們需要向區塊鏈的智能合約中註入x 數量的資產A 和y 數量的資產B 來作為流動性儲備,即在公式x*y=k 中, x,y 和k 的初始值由流動性提供者(LP)確定。因為資產A 和資產B 之間的初始價格P = x / y,所以當第一個流動性提供者(LP)把自己認為等價值的資產A 和資產B 充值到此智能合約中,就可以實現初始價格P 的設置。在開放交易之後,結合第一部分我們講到的不同類型的定價模型,資產的價格會根據流動性池中資產的數量不斷變化。

從上我們可以看出,自動做市商制度打破了傳統的交易制度模式,不需要訂單薄,也不需要做市商報價或者係統撮合,而是利用儲備池中的流動性來完成資產的交易兌換;最重要的是,AMM 的交易價格也不是由做市商的報價或交易者的訂單確定,而是由資產池中兩種資產數量的比值確定,因此它是一種流動性驅動的交易制度。

潛在風險:

無常損失

由於模型設計上的缺陷,AMM 不得不引入套利機制以完善其價格機制。然而,這也帶來了另一個嚴重後果---無常損失(Impermanent Loss)

無常損失實際上來源於套利行為。我們前面提前,AMM 的交易價格與市場公允價格是脫軌的,為此需要套利者進來購買被低估的資產或賣出高估的資產,直到AMM 提供的價格跟外部市場匹配。因此,套利者的利潤實際上來自於流動性提供者,由於套利給流動性提供者帶來損失的這一部分就被稱為無常損失。

以下圖為例T3時刻套利發生後流動性池內總資產價值相比市場實際價值缺失,這部分價值就是套利者從流動性提供者處賺取的價值。

流動性提供者(LP)之所以為AMM 提供流動性,是因為可以獲取交易費用,然而無常損失的存在,提高了流動性提供者的風險。如果無常損失超過了流動性收益,那麼LP 將不再提供流動性。因此無常損失的大小是決定AMM 類DEX 能否正常運營的關鍵。

多代.幣敞口

AMM通常要求流動性提供者(LP)存放兩種不同的代幣,以在交易雙方提供相等的流動性。因此,流動性提供者(LP)無法將其長期風險敞口保持在單一代幣上,而是必須通過持有額外的ERC20儲備資產來分割其敞口。擁有大量一種代幣的團隊,或希望提供流動性的個人持有者,被迫購買另一種資產才能提供流動性,從而減少他們在資產池基礎代幣中的持有量,並增加對另一項資產的敞口。

優劣勢

優勢分析:

AMM的優勢是顯而易見的,他的出現與人們在defi市場追求去中心化,自動化,交易快捷的需求不謀而合,目前defi市場絕大多數的交易量都發生在應用了AMM的DEX上,充分體現了用戶對這種交易模型的信任。 DEX也是目前defi市場上可用性最高的交易數字貨幣的交易類型,然而目前AMM機制也存在著許多的問題,在某些方面相比傳統的中心化競價,做市商機制還存在著短板,這些方面也是目前市場上的AMM項目未來著力解決的方向,這裡將做總結。

劣勢分析:

無法獨立定價

我們前面提到,AMM 的價格是靠流動性驅動的,交易價格由儲備池的資產情況決定,而非訂單價格決定,即AMM 只能產生交易價格,卻不能發現市場價格。為此,AMM 不得不引入套利者這一重要角色:一旦AMM 平台上的價格與市場公允價格不同,就會出現套利空間,並將價格拉回正軌。

這意味著如果沒有市面上的中心化交易所的存在,使用AMM的交易平台無法反映真實的資產價格,因此它無法完全替代現有的競價制度和做市商制度。

交易深度(滑點):

交易深度是衡量市場交易優劣的重要指標之一,反映的是市場在承受大額交易時價格不出現大幅波動的能力。很多行業人士認為,只要向市場提供足夠的流動性,就可以解決交易深度問題。對於以訂單薄為基礎的競價制度和做市商制度確實如此,但對於AMM 而言,其模型本身也會影響交易深度。

相較於傳統交易制度,在提供相同流動性的情況下,AMM 用戶向交易合約中放入越多數量的資產A,換回的資產B 數量越少,即交易價格越高。所以AMM 的交易深度不僅僅取決於LP 的大小(即k 值),跟模型本身也有關。因此,儘管很多DEX 簡潔的交易模型給其帶來了巨大優勢,但同時也帶來了高滑點的問題。特別是對於儲備池規模較小的交易對資產,無法支持大額交易,否則將支付更高的價格。

資本效率低下:

由於AMM在整個價格範圍(0,+∞)上均勻地分配資金,因此只有在市場價格附近分配的資金才能得到有效利用,而很大一部分資金只有在定價曲線開始呈指數變化時才可用。結果,AMM需要大量的流動性以匹配傳統訂單簿交易中的滑點。

不過uniswap的V3在原有的基礎上通過對做市機制的改革,極大的提升了資本效率。且以最新的消息來看,uniswap還將通過拆分大額訂單的形式來提高大額交易的成交效率。可以期待~

代表產品及其經濟體系設計

目前市場上有許許多多應用AMM機制的DEX產品,他們的交易量佔據了Defi市場的大頭,這裡將選擇市場中具有代表性的幾個產品進行分析。主要包括其所使用的定價模型,經濟體系,以及這些產品的優勢和特點在哪裡(他們著力於哪一方面)

根據CoinMarketcap 當前DEX交易量前十位分別為:

1.Uniswap(V3)

Uniswap自上線以來就佔據著DEX交易龍頭的寶座,也是他的出現將AMM引入defi世界,在這個過程中這個項目也經過了許多的更新,Uniswap基本代表著AMM DEX項目的標準,其他項目多是在Uniswap基礎上進行的修正和改進。 Uniswap自身也在不斷進行版本迭代,前不久V3剛剛上線,這裡將使用其最新版本進行研究。

定價模型

恆定乘積(x * y = k)

經濟體系

UNI是Uniswap協議的原生代幣,為持有者賦予治理權。這意味著UNI持有者可以對協議變更投票表決。這款代幣的初始鑄造總量為10億枚,其中60%由現有的Uniswap社區成員共享,其餘40%將在四年內發放給團隊成員、投資者和顧問。

同時部分UNI可由流動性挖礦獲得,這些代幣將發放給為流動性資金池的供應商,激勵他們提供流動性。

特性

Uniswap V3最大的改進實際上是通過集中流動性機制提升資本效率

集中流動性

在Uniswap的流動性資金池中,流動性供應商(LP)所提供的流動性對應的價格曲線實際上是從0到無窮大。所有這些資金均存放其中,應對池內其中一項資產出現5x-s、10x-s或100x-s的情況。

如果出現這種情況,這些閒置資產將確保價格曲線的相應部分仍具流動性。這意味著資金池中只有一小部分流動性聚集在達成大多數交易的價格區間。

如今,流動性供應商可以自行為註入流動性的資金池設定價格範圍。因此,流動性會更加集中到大多數交易活動對應的價格範圍。大大提升了資本效率

Uniswp V3實現流動性聚集的原理也十分簡潔:主要在V2版本的基礎上增加了兩個參數,

(x+m)*(y+n)= k

m= L/√(p_b )

n= L √(p_a )

L^2=k

在Uniswap V3中, x和y為實際儲備資產,(x+m)和(y+n)為虛擬資產,虛擬資產等同於V2版本(x^'*y^'=k)中的x^'和y^'。例如在V2版本中,x^'和y^'的數量分別為300和600,在V3版本中,若m為100,n為200,那麼x,y只分別需要200和400即可。從上我們可以發現,在保證模型流動性與V2版本一致的前提下,V3版本減少了x和y資產的實際數量需求,由此提高了資本效率。

2.PancakeSwap

Pancakeswap運行在BSC上,可以看作是binance的DEX版本,從核心上與Uniswap並無太大區別

和其他的AMM 交易所類似,Pancake交易手續費為0.2%,其中0.17%作為流動性挖礦獎勵,0.03%作為系統收入。 Pancakeswap 就像是去中心化版的幣安,除了交易類業務之外,還有諸多其他附屬功能。這些功能的組合,讓Pancakeswap 不再是一個單純的DEX,而是一個綜合性的DeFi 服務平台。

3.MDEX

與Pancake類似,MDEX背靠HECO,同樣擁有很高的交易量,MDEX的交易手續費為0.3%。比較特殊的是MDEX支持交易挖礦,用戶可以通過交易獲取MDX代幣

4.Sushiswap

Sushiswap 是Uniswap的fork ,其從DEX本身來說並無差異,他的不同處在於DEX之外的運營,治理策略。與Uniswap專注於swap本身及其流動性機制的改善,而Sushi更傾向於拓展有助於增加其流動性的其他功能和業務。

5.Curve(V2)

正如之前我們提到的那樣,Curve採用了混合型CFMM的機制,創造了一種曲線,這種曲線在其核心範圍內具有恆定和的無滑點穩定的特性,又在曲線兩端保證了流動性的存在,這樣的機制是的其能夠為穩定幣在DEX上的交易提供極低的滑點同時,保證了流動性。

V2 曲線

同時在最新發布的V2版本中,項目又對曲線作出了改進:

這個最新的數學模型最核心的部分是其創造了一條全新形態的曲線。從上圖直觀來看,兩條虛線是恆定乘積曲線,藍色線是著名的Curve V1穩定幣兌換曲線,而Curve V2構造的黃色曲線具備兩個基本特徵——

(1)介於恆定乘積曲線和Curve V1曲線之間;

(2)其曲線尾部特徵擁有明顯的恆定乘積曲線擬合。

所以它可以解決什麼問題:

(a)繼承了Curve V1在“均衡點”附近區域超低滑點和聚集流動性的優勢;

(b)通過介於恆定乘積曲線和Curve V1曲線之間,以及在曲線的中尾部區域向恆定乘積曲線擬合,獲得恆定乘積曲線快速響應流動性變化的優勢,避免池子流動性枯竭,靈活響應快速的市場變化。

除此之外還有一個很重要的創新:

內部預言機repegging機制。

這項機制對實施更好的集中流動性以及減緩無常損失是十分有利的。

簡單的說這項機制使得原本固定的Curve V1曲線便會隨著場內匯率的大偏移不斷變換均衡點,使得永遠在當前匯率附近具備最大的流動性,及時對抗套利者,減緩無常損失。

可以看到Curve用非常複雜的數學模型創造出一條能夠在恆定乘積曲線和恆定和曲線之間動態平衡的曲線,使得在Curve上的穩定幣交易能夠兼具兩條曲線低滑點和高流動性的特性。

同時新的引入機制一定程度上解決了無常損失,資本效率等問題,團隊的數學能力是他們的核心競爭力。

Curve的激勵機制

除了上文我們提到由於Curve獨特的曲線設計而擁有的低滑點,無常損失低之外,Curve創立之初就以低廉的交易手續費為賣點,但是這樣就造成LP的收益相應降低,為此Curve擁有與大多數DEX不同的流動性激勵機制。

AMM是基於流動性流動性驅動的交易模型之一,雖然並非區塊鏈生態原創,但是卻在區塊鏈生態當中發展壯大。究其原因,我們認為有以下幾點:

1.簡潔的定價和做市模型降低了流動性匯聚的門檻

2.uniswap等產品無審查無限制且產品化程度較高的上幣機制促進了其野蠻生長

3.簡潔的UI和產品邏輯降低了用戶的使用門檻

4.開源精神促進了組合式創新的演進

5.流動性挖礦機制促進了AMM的需求

DeFi的可組合性給AMM賦予了新的意義,那就是“基礎設施”,在DeFI樂高的整體生態裡,AMM和借貸,保險,合成資產等產品發揮了基礎設施的作用,多種類型產品的組合也激發了更多的創新。創新的同時也面臨著金融風險與合規風險的壓力,尤其是最近Uniswap前端下架股票類通證這一事件,也引發了很多從業者對監管的擔憂。好在這種擔憂更多是針對項目方的,DeFi生態本質不受影響,未來仍舊可期。

之後,先知實驗室還會向大家分享其他的交易模型在DeFi生態的實踐,保持關注吧~