作者:Shew,仙壤

 

流動性是金融市場的重要話題,無論是 Defi 還是中心化交易平臺,亦或是傳統金融領域,在設計任意類型的交易市場時都要考慮如何獲取並高效利用流動性。

 

在 Defi 領域中,很多項目的成功都歸因於其向用戶提供了充分的流動性,相當多研究認爲,Pump.fun 使用 Bonding Curve 爲早期代幣發行提供流動性是其成功的核心原因之一。而未來的 DeFi 創新,必定會圍繞流動性利用方式的進一步優化來展開。

 

在本文中,我們將以流動性利用方式爲核心,討論以下幾部分內容:

 

1. 流動性的基礎規則。在傳統金融中,對於流動性的討論已相當豐富,本部分將簡單介紹一些結論,比如流動性與價格發現之間的矛盾,以及在 DeFi 領域中與流動性有關的不可能三角

2. 當前 DeFi 系統內的流動性提供情況。由於 DeFi 領域在不斷推陳出新,我們已經看到 intent solver 等之前從未被討論的市場參與者,如今已成爲市場的主要流動性提供方

3. 未來可能實現的流動性提供方案,比如 Injective 曾提出的流動性可用性框架等

 

流動性的權衡

 

在傳統金融領域,有一門深入研究市場流動性的學科,叫「微觀市場結構」,其中存在一個有趣的結論:「流動性與包含信息的價格之間存在對抗關係」。

 

簡單來說,假如我們希望資產價格被更好的發現,那麼我們就會缺失流動性;當我們放棄價格發現,就會擁有更好的流動性。這裏一個較爲極端的案例是內幕交易,理論上內幕交易更容易將價格控制在合適的位置,但內幕交易者獲取的鉅額利潤其實來自於市場內流動性提供者,所以內幕交易會嚴重消耗流動性,這也是監管當局限制內幕交易的一個原因。

 

而在 DeFi 領域,以前的很多項目都不會過多考慮價格發現與流動性之間的對抗關係。比如在 Uniswap V2,大家只關注 x*y=k 定價公式可以保證每筆買賣發生後資產價格可隨之變化,同時確保任意數額的交易都不會耗盡 AMM 的流動性。

 

然而對於如何提高交易平臺內的流動性,Uniswap V2 只使用了最被動的機制,靠手續費激勵驅使 LP 向 AMM 注入流動性。當然,我們也可以發現,價格發現造成的變動構成了滑點損失的大部分。滑點損失的另一部分是因爲 MEV 攻擊,由於本文主要討論流動性問題,所以在不進一步討論 MEV。

 

 

核心目標是進行穩定幣兌換的 Curve 就使用了一些更有趣的曲線,價格變動更加平緩,以提高流動性降低滑點。我們可以認爲這是一種降低價格發現來提高流動性的權衡。由於穩定幣對之間的價格波動較小,這種權衡帶來的收益很高而弊端很少,使得 Curve 成爲了以太坊生態系統內最大的穩定幣兌換協議。

 

下圖中的 Stableswap invariant 就是 Curve 的價格曲線,我們可以看到相比於 Uniswap v2 的曲線,Curve 更平滑的降低了滑點,但價格發現不足會帶來另一個問題,即 AMM 內價格偏離實際市場價格時,由於價格發現效率較低,套利者需要花費大量資金才能將 AMM 內的資產價格調整到正確位置。

 

 

伴隨着 AMM 領域的進一步發展,Uniswap V3 最終推出了自選區間提供流動性的方案,在這種方式下,不同價格區間內的流動性都不一致,價格發現能力也不一致,LP 可以根據自己對價格的預測來添加流動性。

 

Uniswap V3 可以認爲是 AMM 的終局,Paradigm 曾指出,Uniswap V3 的流動性提供模式可以模擬任意 AMM 曲線,理論上我們可以將其流動性分佈視爲所有 LP 對價格發現和滑點的最終取捨結果。如下圖展示了 BTC/USDC 市場的流動性分佈,LP 在不同區間內注入的流動性表達了他們對價格發現與滑點之間的看法。

 

 

我們可以看到對於流動性與價格發現之間的權衡,當前協議有兩種解決方案:

 

1. 根據服務市場的特殊性,協議設計方直接給出最終的取捨,比如 Curve 專注於穩定幣兌換,所以設計者直接選擇了傾向流動性的機制

2. 設計開放機制,流動性提供者自己來權衡,比如 Uniswap V3 將流動性和價格發現的權衡交給LP自己去做,而傳統金融交易所內的訂單簿也是由掛單者自己決定

 

在流動性方面,另一個有趣的問題是交易市場的不可能三角,即任意交易市場都要在交易價格、交易量和交易時間之間進行取捨。假如用戶希望以最優價格和最快速度成交,那麼一定無法完成數額較大的交易;如果用戶希望進行大額交易並以最優價成交,那麼就要花費大量時間拆分訂單並在不同平臺完成交易;如果用戶想快速交易並滿足很大的交易額,就無法以最優價成交,滑點必定很大。

 

有趣的是,流動性的增加可以在很大程度上解決不可能三角問題,顯然當交易市場的流動性充分大時,任何交易都能以最優價、最快速度、最大額度來完成。

 

但在目前,所有的 AMM 幾乎都只能確保交易時間和交易量,這是由區塊鏈的特殊性所致,因爲用戶必須在一筆交易內完成代幣兌換,這就使交易時間趨近無限小,此外出於複雜度和手續費方面的考量,幾乎所有的 AMM 都允許近乎無限量的代幣兌換在一筆交易內完成,這必然會導致高滑點。

 

對於智能合約而言,AMM 兌換代幣的原子性很重要,這使得 AMM 成爲了 DeFi 樂高內重要的一環,比如穩定幣協議等會直接和 AMM 交互來穩定價格。但是,市場上的主力用戶往往是非智能合約賬戶,他們並不在意交易原子性問題,可以容忍交易在幾分鐘內完成而不是立即完成。

 

所以目前出現了 intent 協議通過捨棄交易速度來換取更好的成交價格和更大的交易量。在下一部分中,我們將詳細介紹目前鏈上主要的流動性提供協議及其在不可能三角中的取捨,並會特別關注一些新興協議,比如 intent。

 

流動性提供協議

 

關於流動性提供協議,它與流動性提供者 LP 不是一個概念。比如說,AMM 就是一種流動性提供協議,任何人都可以藉助 AMM 內的流動性完成代幣買賣,而向 AMM 資金池注入資產的用戶纔是 LP。由於我們主要討論協議層面的設計,所以暫時忽略協議背後真正的 LP。

 

AMM

 

AMM 是跨時代的創新,它使得鏈上代幣買賣真正成爲可能。大多數 AMM 往往採用基於不變量的數學方法,系統內存在三種不同的角色:

 

1. 流動性提供者,爲 AMM 提供流動性 

2. 交易者,發起交易完成代幣買賣 

3. 套利者,在 AMM 和其他平臺之間進行套利,間接抹平價差

 

下圖引用自 SoK: Decentralized Exchanges (DEX) with Automated Market Maker (AMM) Protocols。該圖展示了 AMM 的流動性添加和交易的基本流程。

 

 

可以說,AMM 是一個兼顧價格發現和流動性的協議,它在設計時顧及了交易時間 (任何代幣兌換都可以在一筆交易內完成) 和交易量 (理論上可以兌換無限數量代幣),但弱化了對交易價格的控制。

 

一般而言,用戶發起交易的數額越大,滑點損失會超線性上漲。當然,在任何類型的交易平臺中,快速買賣大量資產都會嚴重影響市場價格,而 AMM 對此的優勢在於可以事先根據曲線預測一筆交易對價格的影響。

 

此外,AMM 提供的交易原子性對於鏈上協議是一種重要特性,這讓鏈上協議第一次擁有了介入交易的能力,比如借貸協議的清算過程幾乎完全依賴於 AMM 系統,清算者經常使用閃電貸獲得被清算倉位的抵押物,然後直接在 AMM 上出售抵押品並償還閃電貸。

 

由於閃電貸本身是在 AMM 的交易原子性基礎上實現的,假如沒有 AMM,鏈上借貸協議的大倉位清算幾乎無法實現。

 

此外,AMM 的價格發現能力對於鏈上系統而言也非常有用,這使得資產定價成爲可能。在 ERC-20 出現後,鏈上資產發行已經不是問題,然而在 AMM 出現前,如何直接在鏈上對代幣進行定價是一個很難解決的問題。

 

AMM 出現後,我們可以通過 AMM 對鏈上代幣進行定價,對於資產發行者而言,只需要向 AMM 內注入初始流動性就可以,隨着 DeFi 的發展,後來又出現了流動性挖礦等更爲便捷的流動性提供方式。

 

AMM 提供的價格發現和原子性代幣兌換爲 Defi 的發展奠定了堅實基礎,但由於區塊鏈本身的延時問題,更多資產選擇在 CEX 內進行實時交易,這些代幣在 CEX 內的交易量往往遠大於在 AMM 內的交易量,換言之,這些代幣主要在 CEX 內進行價格發現,而不是在 AMM 內。

 

這造成的問題是,AMM 內的資產價格會滯後於 CEX,套利者可以從中獲取價差,但這種套利可能會對正常交易者造成不利影響。

 

簡單來說,對於 DeFi 協議而言,AMM 是由於存在原子性,所以仍是 DeFi 生態內不可缺少的一環。而 AMM 的價格發現功能也使其成爲了新資產發行後定價的核心平臺,但另一方面,由於 AMM 價格發現受限於區塊延時等,當代幣上線後 AMM 無法主導價格發現流程,此時對於交易者而言,在 AMM 內交易可能會出現比 CEX 更差的情況。

 

聚合器

 

雖然 AMM 構成了 Defi 生態中的核心部分,然而其缺陷依然不可忽視,其中比較明顯的就是流動性割裂問題。不同 AMM 採用不同的流動性池,甚至一個 AMM 中的不同代幣對都有彼此獨立的池子,流動性高度分散。

 

目前跨多個 AMM 和代幣對交易需要大量的優化策略,比如將大額訂單拆分爲多筆小額單,然後到不同 AMM 內交易,或者尋找一些中間資產作爲中介,這樣做的結果便是大幅提升了交易成本。

 

關於大額訂單的拆分與路由,往往需要專業的方案提供商來提供最優的代幣兌換路徑,聚合器就是承擔這一角色。下圖展示了 0x 聚合器在一筆交易內求解獲得的代幣兌換路徑,我們可以看到在 MKR 兌換 USDT 的過程中,0x 使用了多種中間資產進行兌換。

 

 

對於鏈上交易者而言,與單純使用 AMM 相比,用聚合器進行交易往往更高效。聚合器往往用無套利策略求解路徑,在交易過程中交互的所有池子在交易結束後都不存在套利路徑,所以聚合器沒有價格發現功能,它考慮的單純是在某一個價格下是否有充足的流動性。

 

簡單來說,聚合器放棄了價格發現以實現更好的流動性,在不可能三角的取捨上,聚合器與 AMM 基本一致,都捨棄了交易時間而保全交易量與成交價。聚合器底層使用 AMM,但聚合了 AMM 系統內割裂的流動性,使得滑點比普通的 AMM 更低。

 

但聚合器問題在於,只適用於鏈上交易者而不適用於智能合約賬戶直接採用。因爲聚合器都是使用 API 來響應交易請求,這一過程並不在鏈上完成,當用戶認爲聚合器 API 給出的報價合理時,再根據聚合器的交易路徑執行交易。

 

很顯然這種異步的方式沒有原子性,所以聚合器沒有辦法被合約直接調用。

 

Intent

 

聚合器只是對單筆用戶的交易進行響應,但是理論上批量執行交易可以獲得更好的效果,所以 intent 協議出現了。

 

所謂 intent 是指用戶將預期的代幣買賣結果以類似限價單的形式發送給聚合器,求解者 Solver 會嘗試以最優方式處理訂單。

 

不同於聚合器將多筆訂單孤立求解,intent 的 Solver 會將一批交易批量求解,根據訂單流執行一些策略,比如訂單內化 ---- 訂單流內可能出現兩筆方向相反的訂單,此時可以直接撮合這兩筆訂單成交,不需要藉助 AMM 的第三方流動性。

 

另外,求解者在執行訂單流時也可以藉助 CEX 內的流動性,比如可以直接在 Binance 內買入代幣以填充用戶訂單。

 

Intent 的好處還在於可以降低潛在的 MEV 損失。因爲交易的最終執行是由 Solver 進行,一般會通過 MEV 基礎設施確定性批量執行交易,可以極大程度避免被 MEV 攻擊。

 

 

從本質來看,我們可以認爲 intent 是一種更高級的聚合器,傳統聚合器 1inch 等也推出了自己的 intent 方案。但相比於聚合器,intent 第一次實現了對鏈外流動性的使用,進一步優化了交易體驗。

 

與聚合器類似,intent 協議實際上也不具備價格發現功能,我們很難使用 intent 協議對某一個新資產進行定價。在不可能三角取捨上,intent 更類似傳統的訂單簿模型,協議選擇了更優的成交價格和更大的交易量,但放棄了交易時間層面的追求,在 CoWSwap 內,用戶提交的交易每 3 個區塊上鍊一次,假如用戶給出的報價過於苛刻,那麼這筆交易可能一直得不到 Solver 響應遲遲不能上鍊。

 

INJ 公鏈的「流動性可用性」方案

 

前面我們依次分析了 AMM、聚合器和 intent,下面的問題在於,是否可以設計出一套更優秀的交易市場,在流動性問題上發揮出更好的效果。Injective 對此提出了自己的解決方案,即流動性可用性框架。

 

上文介紹的 AMM 流動性是典型的 dApp 專屬流動性,AMM 要自行維護協議內的流動性,比如 Uniswap V2 曾通過流動性挖礦積累了大量流動性,然而這些流動性無法被其他 AMM 使用。

 

dApp 專屬流動性的最大缺點就是流動性割裂,這也是聚合器和 Intent 出現的原因。除此之外,一個顯而易見的解決方案是在鏈層級構建流動性,即全鏈流動性,所有 dApp 都從公鏈的原生模塊內獲取流動性。

 

Injective 根據全鏈流動性可用的框架給出了自己的解決方案,它在鏈的底層嵌入了一個稱爲 Exchange 的模塊,這個模塊有一個訂單簿撮合引擎,任何用戶或者 dApp 都可以與之交互。下圖展示了 Injective 底層爲一些交易對提供的流動性。

 

 

相比於傳統的 dApp 專屬流動性模式,採用統一的訂單簿獲取流動性有很多優勢,首先訂單簿就是一個 intent 系統,使用者可以用不同的訂單指令來表達對代幣買賣結果的預期。下圖展示了目前 Injective 的 Exchange 模塊支持的 10 種訂單類型,這意味着在 Injective 上的 dApp 不需要任何 intent 協議就可以爲用戶提供與 intent 相同的體驗。

 

 

同時,Injective 也允許智能合約使用 Exchange 模塊進行掛,讓智能合約也有機會接入 Intent 系統。比如 INJ 鏈上的 Helix 平臺其實就是基於智能合約構造的,用戶可以調用 Helix 合約直接與訂單簿進行交互。

 

對聚合器而言,Injective 在引用全鏈流動性的同時,就沒有聚合器存在的必要,因爲用戶可以直接與 Exchange 模塊交互獲得最優價格,不需要調用聚合器。

 

此外前面我們提到,AMM 的核心功能之一是爲剛發行的代幣提供價格發現功能,作爲一種已經廣泛接受的工具,很多 LP 都希望使用類似 AMM 的工具來提供流動性。爲了彌合 AMM 和訂單簿之間的差異,Injective 推出了 Mito 協議,提供了自動做市功能來解決上述問題,利用掛單模擬 AMM 內的流動性提供方式。

 

 

Mito 協議會不斷調整用戶提供的資金進行做市,本質上類似於 Hyperliquid 的 HLP。該機制的引入使得 LP 不需要自己在訂單簿上使用定製化的策略,只需要向 AMM 內注入流動性即可。這降低了流動性提供的難度。

 

 

對於早期代幣發行時的定價,Mito 也提供了 Launchpad 功能,會預售代幣以籌集最初的做市資金,然後將做市資金注入到 Mito 的 CPMM 自動做市協議中,以此來解決代幣的早期定價問題。

 

我們可以看到 Injective 使用全鏈流動性架構後,DeFi 領域內原有的很多協議沒有存在的必要,因爲用戶可以在訂單簿內直接交易,大幅度降低了交易複雜性,不再需要依賴聚合器等第三方來發起交易才能獲取最佳流動性。對 dApp 而言,當原生訂單簿引入後,dApp 可以藉助訂單簿實現一些更復雜的功能,這也爲 dApp 創建者提供了更多更有表達力的金融原語。