深入分析 Uniswap V3 流動性供應的數學原理

2021-12-08 21:12:23

前言

Uniswap 是 DeFi 領域的頭部去中心化交易所,其在今年 5 月上线了 V3 版本協議。V3 版本與之前 V2 版本相比存在諸多差異,如集中流動性、多個費用等級、新的預言機等等。

在這些多樣的特點背後,究竟藏着怎樣的數學奧祕,同時是否真的能為用戶帶來更大的收益,減少無常損失?

知道創宇區塊鏈安全實驗室 將帶你從數學原理角度在 Uniswap V3 集中流動性方面進行剖析。

何謂集中流動性

在 Uniswap V3 中, 流動性提供者可以將其提供的流動性 "限制" 在任意的價格區間內來集中其流動性。

為了解釋這一概念,首先我們關聯到 Uniswap V2 的自動做市商曲线。在該曲线中,用戶的流動性被均勻的分布在整個 (0,正無窮大) 之中。


      深入分析 Uniswap V3 流動性供應的數學原理

圖1

在 V2 版本中,由於許多池子的價格變動沒有那么的頻繁,比如 UDST/DAI 池子中。由於其價值均錨定美元,發生的交易將會聚集在上圖中的 A 點附近(即x≈y), 這就意味着流動性池中的大部分資產是永遠不會被觸及到的。

因此在 V3 中,用戶可以將其流動性聚集在某一個线段。如下圖 B 到 C 點:


      深入分析 Uniswap V3 流動性供應的數學原理

圖2

這樣,由於大量用戶的流動性被集中,對於 B 點到 C 點的线段的流動性將會變得非常 "厚",這樣的池子將使得來交易的人交易滑點得以顯著減小,並有效提高資本效率。

如何將流動性集中

在具體實現的過程中,V3 依靠了資產的槓杆。將一部分用戶資產虛擬出來,導致了坐標軸圖像的平移,虛擬資產假設對應 x' 和 y'。

在原始的 Uniswap V2 中,曲线公式為:x*y=k

Uniswap V3 通過引入 x' 和 y' 資產升級了該公式。此處x'我們將其稱為 x 資產的虛擬儲備,y' 稱為 y 資產的虛擬儲備,於是引入了如下式子:


      深入分析 Uniswap V3 流動性供應的數學原理

由於為資產添加了槓杆(虛擬資產),使下圖中原本在下面的曲线,能夠平移到上面儲備量更大的曲线中去,這也意味着在有限的的價格範圍 [xb, xc] 內,一組較小的儲備 x、y 能夠充當更大的儲備 x+x'、y+y'。

同時,上方為虛擬資產被添加後的虛擬 AMM 曲线。在實際交易曲线中(限於 BC 點),下方才是流動性提供者資產的真實變化曲线。

於是,在 B 點或 C 點時,處於強勢的資產將被損耗為 0,也就是說將會全部兌換成劣勢資產並停止做市。

如下圖 3:


      深入分析 Uniswap V3 流動性供應的數學原理

圖 3 上方為虛擬平移的AMM曲线

根據 V2 的自動做市曲线方程。讓 L 被定義為 k = L^2,於是有該式:x*y = k = L^2

對其开根號,即有


      深入分析 Uniswap V3 流動性供應的數學原理

而對於價格來說,當前的價格 P (用 y 對 x 資產定價)有:


      深入分析 Uniswap V3 流動性供應的數學原理

根據式 3,對其取平方根,即有:


      深入分析 Uniswap V3 流動性供應的數學原理

聯立式 4 與式 2,我們可以消去 y,對於閉區間 [B, C] 任一點,則有:


      深入分析 Uniswap V3 流動性供應的數學原理

同理可消去 y,對於任一點,則有:


      深入分析 Uniswap V3 流動性供應的數學原理

於是,我們只要知道 P ( x 的價格),在流動性沒有改變時( L 不改變),則可以得到對應的 x 資產量和 y 資產量。

計算虛擬資產(x'/y')


      深入分析 Uniswap V3 流動性供應的數學原理

圖4 虛擬資產x'與y'

考慮極端情況,在上圖中,經過平移後上方的 AMM 圖形由於在 B 點時,用戶提供的 x 資產由於在實際中已全部損耗。

也就是說 x=0,剩余的 x 均為虛擬出來的,即 x'。

根據式 5 去計算。此時計算 x 資產量對於 B 點有:


      深入分析 Uniswap V3 流動性供應的數學原理

同理,我們計算 C 點,此時用戶提供的 y 資產由於在實際中已全部損耗,即有 y=0,剩余的 y 均為虛擬出來的,即 y'。則有


      深入分析 Uniswap V3 流動性供應的數學原理

由上可知,xb 與 yc 則是Uniswap為用戶虛擬出來的Token量,即x'與y',這也是Uniswap中為用戶开的槓杆的Token數量。

於是,我們得到完整Uniswap V3的AMM曲线,見式9:


      深入分析 Uniswap V3 流動性供應的數學原理

同時,對於選定的區間中的任意一點,由用戶提供的真實的資產見下圖:

注:下圖摘自Uniswap V3白皮書 [1],區間為[b,a],任意一點被選擇為c


      深入分析 Uniswap V3 流動性供應的數學原理

圖 5 用戶提供的真實資產與虛擬儲備 AMM 曲线

隱患-無常損失

由於 V3 在用戶的選擇下將流動性使用添加槓杆的方式進行了集中,而對於流動性提供者來說本質上是在與用戶做對手盤,即越跌越买,越高越賣,這將導致無常損失的加劇。

根據上述分析,只要價格達到設定的區間臨界點,流動性提供者的代幣將會完全轉換為另一種處於劣勢的代幣,並且在價格重新進入該臨界點之前不會賺取交易費用。

世上沒有什么免費的午餐。風險越高,收益越高。你提供的流動性越集中,你獲得的手續費收入就越高,同時也將承擔更多的無常損失。——Uniswap創始人,Hayden Adams [2]

Uniswap V3--添加流動性

具體而言,假設現有一 Uniswap V3 交易池,交易對 ETH/DAI,池中 X 與 Y 儲備比例 10 : 800,L2 為 8000,P 為 80 即交易價格 80DAI /ETH 。

當前價格對應點 A(10,800), 若一流動性提供商,嘗試在 P=[20, 320]進行做市。對應的 點B(5,1600),P=320。點 C(20,400),P=20


      深入分析 Uniswap V3 流動性供應的數學原理

該流動性提供商想投入 3 個 ETH,這 3 個 ETH 會被全部用於 xreal ,由於當前價格在選定區間內。

根據白皮書,有以下式子:


      深入分析 Uniswap V3 流動性供應的數學原理

由式 10,投入 △x=3,投入的 ETH 將改變池子的 L。經過計算 △L 為:


      深入分析 Uniswap V3 流動性供應的數學原理

再通過 △L 計算 △y:


      深入分析 Uniswap V3 流動性供應的數學原理

於是投入 3 個 ETH(△x),時,計算投入的 DAI 應為 240 個。新的 L' 約為 143.11 (僅限於在閉區間 P=[20, 320])。

Uniswap V3--Swap

對於該 Uniswap V3 池子, 若 ETH 突然上漲,價格到達 1ETH=100DAI,此時就會有套利者在該 DEX 中用 DAI 兌換 ETH 來套利,為了將其達到與外部平衡,將有 P=80 ==> P'=100,根據白皮書,Swap 計算價格變化如下:


      深入分析 Uniswap V3 流動性供應的數學原理

將根號後的起始價格 P 和結束價格 P' 帶入,可以計算得到 △y≈151.09,而 △x≈1.689。

若 Swap 的資產假設該流動性提供者按照 L 比例劃分了 37.5%,於是該流動性提供者分攤 x≈0.6334,y≈56.66

於是我們得出如下表格:


      深入分析 Uniswap V3 流動性供應的數學原理

我們將其百分比化:IL_V3 = (540-533.31)/540 ≈1.239%

集中流動性放大了資產L的佔比,提高資產效率的同時承擔了更多的無常損失。當然,這只是選擇做市區間比較小,同時分攤比例較大的情況,現實會有許多人根據投入的L佔比大小來分攤這筆swap。並且該筆swap由於本身比較大,幾乎佔了總資產的21.113%,進而顯得無常損失的百分比很大,這也印證了盲目做市所帶來的虧損。另外,價格波動對其也存在影響,只上漲到P=85時IL_V3約為0.58%。

Uniswap V2--添加流動性

而對於 Uniswap V2,假設原池中的資產量為 10 個 ETH 和 800 個 DAI,即 P 為 80DAI/ETH。

流動性提供者投入了 3ETH 和 240DAI,此時則存在 13 個 ETH 與 1040 個 DAI,價格仍為 80DAI/ETH,比重佔 23.077%,新的 K 為 13520。

Uniswap V2--Swap

當 ETH 突然上漲,價格到達 1ETH=100DAI,此時就會有套利者用 DAI 兌換ETH來套利。

設共用 △y 個 DAI 兌換 △x 個 ETH 後,AMM 池中 ETH:DAI 價格達到與外部平衡的 1:100

不考慮手續費等因素,則有:


      深入分析 Uniswap V3 流動性供應的數學原理

解得 dx≈1.3724, dy≈122.76,即套利者給了 122.76 個 DAI,換走了 1.3724 個 ETH。池子 -1.3724 個 ETH,+122.76 個 DAI


      深入分析 Uniswap V3 流動性供應的數學原理

這將在所有比重中分擔,於是提供者分擔23.077%,即失去0.3167個ETH,換取28.33個DAI,我們得出如下表格:


      深入分析 Uniswap V3 流動性供應的數學原理

IL_V2 = (540-536.66)/540 ≈ 0.6185%

具體將會取決於在 V3 做市區間,越小則槓杆越多,x' 和 y'越大,同時無常損失和手續費收益也會越多。

當然,用戶也可以如 V2 一樣將流動性分攤到整個曲线中去而不是某個线段,即在 0 到正無窮進行做市:


      深入分析 Uniswap V3 流動性供應的數學原理

後記

由於篇幅原因,本篇僅就集中流動性進行了討論。Uniswap V3 創新了很多的新功能,其復雜程度相較於 V2 增加了非常多。

無可否認,Uniswap V3 的創新使得 Uniswap V2 被加強,用戶可以選擇將其流動性集中在任何一個區間以獲得更多的手續費。

但與此同時這也將導致更多的無常損失和更大的資金轉換為劣勢資產速度,而這也產生了許多新特性如限價單 swap 等功能。

因此,在選擇做 LP 之前,需要認真思考自己的需求,切忌盲目做市。

參考

[1] Uniswap V3白皮書

[2] Uniswap V3新特性解析

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。

推薦文章

突破傳統預言機:Chaos Labs 發布 Edge,如何保障超 300 億美元交易的安全?

從隱祕中嶄露頭角:Edge Oracle Network 今天,@chaos_labs 推出了 E...

coincaso
22 6天前

mETH協議將迎來爆發:參與Methamorphosis活動,解鎖$COOK空投和重質押收益

mETH協議正在“COOK-ing”。$mETH已經是第四大ETH LST,有50萬枚$ETH被質...

coincaso
25 1周前

Hypernative 榮獲1600 萬美元融資,如何打造 Web3 安全防线

隨着 DeFi 的不斷發展,安全性仍然是該生態系統面臨的重大挑战,每年因安全問題而導致的資產損失高...

coincaso
33 2周前

特朗普強勢入局加密市場!DeFi項目首度曝光,創始團隊引發軒然大波

World Liberty Financial 白皮書中列出的四名團隊成員之前曾在 Dough F...

coincaso
50 2周前

ENA代幣暴跌超80%,算法穩定幣將陷入死亡螺旋?

在加密貨幣的世界裏,算法穩定幣一直是投資者和开發者心中的白月光,它代表着一種理想狀態,即使在最不確...

coincaso
37 2周前

Polymarket獨領風騷,萬字盤點各鏈預測市場現狀

以太坊創始人Vitalik Buterin,近期對公衆對預測市場的普遍誤解進行了深刻闡釋。他堅決地...

coincaso
45 2周前