深度研究 逆向解構Curve V2
以為Uni V3 已經开啓了AMM 通用兌換的巔峯,沒想到Curve V2 是更為艱難的“岡仁波齊峯”。在為技術蝶變而驚喜的同時,我們更驚訝地發現這些頭部DEX/AMM 項目正在走向一種“大同歸一”的演變模式,就像今天要講的Curve V2 實際上正是一種直接競爭Uniswap 的通用兌換模式,而在這之前不久,UniV3 也正式攜全新的數學模型向Curve V1 長期霸佔的穩定幣交易領域幹涉和蠶食。本文嘗試用逆向解構的方式呈現Curve V2 的基本數學原理。
基礎模型
簡單來講,CurveV2 採用了一種跟UniswapV3 非常類似的基本哲學——圍繞“均衡點”聚集流動性。兩者都並未依賴外部預言機來達成“均衡點”,而是依靠傳統AMM系統內的交易博弈,直至系統均衡,在Uni V3裏叫“職業做市商LP緊跟市場變化調整range”,在Curve V3中其命名為“內部預言機internaloracle”。作為兩大最頂尖的AMM項目,可見其對任何外部風險都十分敬畏。雖然沒有依賴外部因子,但這兩種模型,尤其是CurveV2,在通用兌換的道路上給出了非常優越的無常損失、集中流動性、提升資本效率、低滑點、動態費用等一系列難題的解決方案。這當然得益於其“變態”的數學模型。
(圖1)
數學模型最核心的部分是其創造了一條全新形態的曲线。從上圖直觀來看,兩條虛线是恆定乘積曲线,藍色线是著名的Curve V1穩定幣兌換曲线,而Curve V2構造的黃色曲线具備兩個基本特徵——
(1)介於恆定乘積曲线和Curve V1曲线之間;
(2)其曲线尾部特徵擁有明顯的恆定乘積曲线擬合。
所以它可以解決什么問題:
(a)繼承了Curve V1在“均衡點”附近區域超低滑點和聚集流動性的優勢;
(b)通過介於恆定乘積曲线和Curve V1曲线之間,以及在曲线的中尾部區域向恆定乘積曲线擬合,獲得恆定乘積曲线快速響應流動性變化的優勢,避免池子流動性枯竭,靈活響應快速的市場變化。
直接來看表達式:
(圖2)
乍一看十分晦澀,這裏再引用一張KurtBarry 分享在twitter上的圖:
(圖3)
稍微有點恍然大悟。沒錯,CurveV2 的“變態”曲线其實也是脫胎於Curve V1表達式。
(圖4:CurveV1 表達式)
當K0 趨近於1時,即從曲线形態上逼近“均衡點”範圍時(對照圖1 來理解),整個Curve V2表達式將退化為Curve V1表達式,使得兌換曲线擁有Curve V1的優良特性。
公式裏最復雜的引入變量是gamma,它的由來要從圖1中的兩條恆定乘積曲线來講。上方恆定乘積曲线與Curve V1表達式共同成就了V2曲线的“均衡點”區域範圍,而下方恆定乘積曲线是對上方恆定乘積曲线的一個參數化縮小,即
上方恆定乘積曲线:
下方恆定乘積曲线:
gamma是一個很小的正小數,在曲线形態上會比上方曲线更縮進原點。如前所述,CurveV2 需要引入這么一條gamma曲线,使得V2 曲线擺脫V1曲线在中、尾段的劣勢(流動性枯竭和快速響應匯率變化),也就是讓曲线擁有更大的後半段曲率。在這個基本原理的指引下,我們需要逆向來理解表達式的構成——
當坐標變化不斷向橫縱坐標軸的遠方移動時,越趨近無窮大,V2曲线形態越向下方恆定乘積曲线擬合。即K0 趨近gamma,CurveV2 表達式reduction:
移項:
很明顯,這將是一條偏向下方恆定乘積曲线的新曲线。
在這裏,我們暫時只能從混合曲线的基本構造原理出發,逆向來解釋Curve V2表達式的構成緣由,即以極限的思想分別向“均衡點”範圍逼近以及向橫縱遠端逼近,表達式會分別reduction為Curve V1和恆定乘積曲线,以此來實現Curve V2將Uniswap 和Curve V1融合的目的,使得這種復雜混合曲线可以支撐通用兌換,並且具備更好的集中流動性和滑點優勢,同時保留Uniswap對流動性的保護以及對市場匯率突發變化的響應優勢。
內部預言機
其實Curve V2還有一項非常重要的創新——內部預言機repegging機制。這項機制對實施更好的集中流動性以及減緩無常損失是十分有利的。
Curve V2 引入了一種price_scale的價格度量,比如池子中有USDT 和B_token兩種資產,balance為b=[1000,500],匯率上1 B = 2USDT,則price 為p=[1,2],最後相乘獲得一種scaledbalance 為x=[1000,1000]。
結合圖1,在均衡點處,scaledbalance 序列內元素相等(恆定乘積特性)——
隨着市場匯率的變化、兌換的發生、LP做市行為的影響,系統坐標點會逐漸偏離原始“均衡點”,如果不加以糾正曲线形態,不僅會造成流動性的聚集性減弱,還會帶來無常損失。CurveV2 為此提出了MarketPrice Update 機制【1】——
i)exponentially moving average (EMA) price oracle
ii)profit measurement
iii)repricing algorithm (depends on i and ii)
概括來講,系統會通過經典的內部預言機機制EMA不斷捕獲系統內匯率的移動序列,然後不斷在每一次交易和做市行為後根據priceoracle 來更新一種名為收益度量(profit)的變量Xcp。
這種變量可以理解為每一次價格偏移距離原始均衡點的幅度,可以直觀理解為,如果匯率變化幅度不大,系統公式將依舊以原始均衡點為根基,如果匯率變化非常大,坐標點在曲线上偏移很大,則系統應該重建公式,更換新的“均衡點”根基,以此來縮小無常損失和重新聚集流動性。Xcp這個變量便是用來量化合適可以更換公式和均衡點的手段。
如上所述,當Xcp突破閾值後,系統會根據此時更新的oracleprice 來更新price_scale,以此來為新公式定位新的均衡點位置,隨後更新新的D值,獲取新的表達式。
這樣,原本固定的Curve V1曲线便會隨着場內匯率的大偏移不斷變換均衡點,使得永遠在當前匯率附近具備最大的流動性,及時對抗套利者,減緩無常損失。論文中有關於此項機制非常詳細的參數化定義,也是實現的復雜之處。
總結
Michael Egorov一如既往地不愿意多說,所以我們看Curve V2非常晦澀。本文介紹了V2引領性的兩大創新機制:新曲线和repegging。這條新曲线不僅靜態復雜,還擁有了動態屬性,可以根據EMA 和Xcp智能響應系統偏移,讓池子流動性最大化地聚集在當前匯率範圍內,極大地提高了動態資本效率,這是可以超越Uni V3的地方。我們最終會發現,CurveV2 可以與Uni V3再組合。
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。
Defi之道
文章數量
89粉絲數
0