從Drift的困境看Solana為何執著訂單薄

從目前來看,AMM 模式可能只適用與現貨。而鏈上合約交易,還是需要在去中心化和中心化之間保持平衡。

研究Drift Protocol之後,我充分充分理解了為什麼Solana對CLOB 也就是訂單薄有執念。

因為想要在鏈上實現永續合約AMM 實在是太難太難了。以致於放棄,轉而擁抱中心化做市商。

儘管Perpetual Protocol創立的vAMM(virtual AMM)解決了在現貨AMM X * Y = K 基礎上加槓桿的問題。

但沒有中心化做市商,使得永續合約AMM 必須要透過預先決定的數值規則,解決對手盤(例如所有使用者一致做多,沒有人做空)、深度、價格偏離(永續合約價格偏離現貨)等問題。

使得Drift v1 在可調整參數及其公式化表達上顯得異常複雜。

複雜到,要根據合約價格偏離狀態,規定市場情況,例如Healthiest Market 最健康市場、Unhealthy Marker 亞健康市場等等,一共四種情況,要評估多空失衡狀態,規定該狀態下是否對用戶倉位清算,以及調整係數的解決方案。

看到這裡是不是已經頭大了。再對比下訂單薄,是不是感覺中心化的東西,好像也挺眉清目秀的。現在是不是能理解一點Solana 對訂單薄的執念了。

後來,Drift 上線了限價單功能,但體驗上還是跟訂單薄有些不同。

目前,Drift 上的交易由三種流動性機制支援:

1)JIT 拍賣,做市商提供流動性;

2)限價訂單簿,做市商提供流動性;

3)AMM,如果沒有MM 介入提供流動性,則由Drift 的AMM 提供。

但UTC 時間8月7日0:00 之後,Drift 將放棄AMM 模式,徹底擁抱中心化做市商。

vAMM 會面臨以下核心問題,

1)資金費率持續流失。協議的保險基金相當於在做空波動率-在市場波動劇烈時會被套利者慢慢蠶食;

2)無法維持價格錨定,需要持續補貼來維持期貨價格與現貨價格的一致性;

3)路徑依賴性問題。價格偏離越遠,維持成本越高。

連vAMM 的鼻祖,Perpetual Protocol 也在考慮新方向,“Perp V2 將採用更主動的做市策略,以避免V1 模式中的資金費率流失問題。新版本將整合Uniswap V3 的功能,團隊相信去中心化永續合約的解決方案在於CLOB 和AMM 模式的有機結合。”

這種轉變其實是讓原文依賴數學公式定價的vAMM,變成做市商主動報價。風險從協議承擔,分攤到了市場。

從目前來看,AMM 模式可能只適用與現貨。而鏈上合約交易,還是需要在去中心化和中心化之間保持平衡。

接下來,還是說說vAMM,這也是最難的部分。會是助眠好幫手呢。

vAMM(virtual AMM)

Perpetual Protocol 的vAMM 採用與Uniswap 相同的X * Y = K 恆定乘積公式。

對於Uniswap 等現貨AMM,用戶直接基於LP 交易,LP 資產的比價反應了現貨價格。

而vAMM 其實是兩層結構,LP 是抵押品,真實資產存放在智慧合約保險庫中。 vAMM 其實是用戶開槓桿之後一個價格發現機轉。

舉個例子,

1/ 假設ETH 目前價格為4000 USDT,vAMM 池子初始為100 ETH 和400,000 USDT。

2/ Alice 用100 U 作為保證金,10 倍槓桿做多ETH,

1)Alice 向智能合約存入1000 U,作為保證金。

2)Perpetual Protocol 將10,000 U(100 U × 10 倍槓桿)記入vAMM, vAMM 依恆定乘積公式X * Y = K 計算Alice 應得ETH。

初始狀態X * Y = K 100 ETH * 400,000 U= 40,000,000

Alice 存入1000U之後,變成410,000 U。 X = K / Y 40,000,000 / 410,000 = 97.5609 ETH

Alice 實際獲得約2.44 ETH。

此時vAMM 內的狀態更新為97.5609 ETH 和410,000 U。

3/ Bob 隨後使用1000 U 作為保證金,10 倍槓桿做空ETH,

1)Bob 向同一個合約存入1000 U。 Perpetual Protocol 將-10,000 vDAI 記入vAMM,vAMM 依照恆定乘積公式X * Y = K 計算Bob 的空頭部位大小。

Bob 做空了2.4391 ETH,此時vAMM 內的狀態恢復為100 ETH 和400,000 U。

價格機制也採用資金費率機制,類似CEX 永續合約的資金費率支付(funding payments)。

具體公式,使用了FTX 交易所的:

這裡其實有一個點,對於理解vAMM 與傳統CEX 合約的差異非常非常非常重要。

在CEX,每個多頭都有對應的空頭,也就是有真實對手方,所以持倉用戶會支付資金費率。交易所只是一個交易場所,不承擔任何持倉風險。而在vAMM,情況完全不同。

可以看到vAMM 利用X * Y = K 來定價的,而資產是作為保證金質押到合約內的。所以本質上,是依據價格曲線交易,而非真實對手方。

所以一旦面臨多空失衡,協議就需要想辦法吸引真實對手盤,而吸引的方式是補助。

這就使得補貼來源的穩定性和資金池,非常重要,關係項目生死。

尤其在單邊行情下,或價格劇烈波動時,所以資金池相當於做空波動率。而做空波動率的特徵,恰恰是平時小賺,波動時大虧損。

Drift 在Perpetual Protocol 的vAMM 基礎上進行了創新,推出了dAMM(動態AMM),區別是參數可以配置,用來應對標的價格偏離,多空對手盤不對稱、深度等問題。不過還是有些事情解決不了。

Drift AMM

Drift 採用動態AMM,基於Perpetual Protocol 創新的虛擬AMM(vAMM)改進,但具有以下可配置參數:

  • Peg:價格乘數。控制合約價格與現貨價格偏離度,幾乎是透過硬控的方式,讓合約價格錨定現貨價格。

  • K:控制流動性深度,K值越大,深度越好,滑點越少。反之同理。而在合約價格極度偏離現貨價格的情況下,降低K值有助於造成價格波動,將合約價格向現貨價格靠攏。

  • 費用池(Fee Pool):收入主要用於調整Peg 和K。

在配合預言機價格(合約價格)與標記價格(現貨價格)偏離度的四種情況,就有以下表格,

1/ Peg(錨定乘數)

vAMM 合約價格偏離市場現貨價格時,用於快速調整價格,讓標的價格接近真實市場價格。

公式:

Price = ( Y / X ) * Peg

價格= (基礎資產/ 計價資產) * Peg 乘數

調整方案

每筆交易後檢查預言機-標記價格偏離度。如果偏離度超過LIQ_LIMIT值(目前為10%) ,會有兩種選項,

1)若費用池儲備充足,則直接調整Peg,讓價格重新錨定;

2)若費用池儲備不足,就會比較兩種成本:

費率補貼,吸引套利的成本,與直接重新錨定的成本。

通常情況下,會考慮先降低K值,減少流動性深度,使價格更容易推動。

調整後,虧損方的部位會真實計損,而獲利方倉位會由費用池補足。

2/ k(流動性深度)

控制滑點大小。其實很好理解,因為是X * Y = K,K值大,代表兩個資產X 和Y 就多,自然K值越大滑點越小。

當然,因為Drift 是基於Perpetual Protocol 的vAMM,其中X * Y= K 起到加槓桿之後的定價作用,並非真實LP 資產,所以K值是可以調整的。

小結下,

k 值控制價格對交易量的敏感度;

Peg 調整價格的絕對水平

3/ 費用池(Fee Pool)

不僅是收入,更是市場調節工具。用途:調整Peg值、k值後需補給獲利交易者的獲利,支付資金費率失衡。

費用池主要收入來源,

1)Taker 吃單手續費,基本費率0.05-0.1%;

2)清算費用,50%給費用池;

3)資金費率收入。

到這裡,其實能看出該模式相當依賴費用池的健康狀況。會使得Drift 在手續費方面失去優勢,這是其一。

另一個更本質的問題是,收入成長是線性的,交易量* 手續費= 收入,但支出可能隨著行情走單邊變成指數級,價格偏離的平方* 持倉量* 時間= 支出。

所以從更長期的角度,支出並不能完全涵蓋收入。

這也是為什麼,Drift 要放棄vAMM,擁抱中心化做市的原因。

總結下

vAMM 模式下,用戶交易永續合約需存入保證金,用於潛在的清算。而X * Y = K 公式實際變陳用於定價的曲線。

由此,在該公式基礎上,Drift 改變了定價方式,加入Peg 錨定乘數,同時也讓K值變得可調,以此來讓合約價格錨定現貨價格。而在調整過程中,出現的用戶部位獲利,則由費用池補充。

所以,這使得費用池變得異常重要,但長期看,在極端行情下,支出會成指數級增長,但收入只能線性增長。造成協議對失衡部位淨補貼。

單純透過數學公式控制鏈上AMM 這個路徑,目前看行不通,仍舊需要中心化做市商撮合,使得對手方平衡,這才是永續合約的本質。

分享至:

作者:戈多Godot

本文為PANews入駐專欄作者的觀點,不代表PANews立場,不承擔法律責任。

文章及觀點也不構成投資意見

圖片來源:戈多Godot如有侵權,請聯絡作者刪除。

關注PANews官方賬號,一起穿越牛熊
推薦閱讀
10分鐘前
1小時前
1小時前
2小時前
3小時前
3小時前

熱門文章

行業要聞
市場熱點
精選讀物

精選專題

App内阅读