來源:DODO Research
*特別感謝 EigenPhi 團隊提供的高質量 MEV 數據,同時感謝 EigenPhi 研究員 Yixin 和 Sophie 參與文章討論,這些數據和建議對我們的分析至關重要。
黑森林中總藏匿着誘人的財富。MEV(Maximal Extractable Value,最大可提取價值)以先到先得的方式從用戶手裏提取價值。從優先天然氣拍賣(PGA)引起的區塊擁塞問題,到驗證者和區塊構建者之間可能存在漏洞,引發了對以太坊生態系統內公共問題的擔憂。
AMM 是 MEV 提取過程中最直接的一環,由於內存池無需許可的可見性,DEX 用戶會不可避免地面臨遭受 MEV 機器人攻擊的風險。同時,套利機器人在提高 AMM、市場的價格發現效率方面發揮着至關重要的作用。
在這份報告中,我們從 DEX 整體常見的 MEV 的分類及其市場規模出發,對 DEX MEV 發展階段建立大體的認識。放大鏡拉近,從區塊瀏覽器對 MEV 案例剖析。在對比和理解不同 DEX 中 MEV 的特點中,探索 MEV 的解決方案與發展方向。
DEX MEV 的主要分爲三種,三明治攻擊(Sandwich)、套利(Arbitrage)和清算(Liquidation)。根據 EigenPhi 的數據,過去 30 天,以太坊上套利 MEV 發生 $1.64M,三明治攻擊 MEV 發生 $1.74M,清算 MEV 發生 $21.01K。可見,套利和三明治是 DEX MEV 利潤來源的主要形式,佔 99.38%,也是本報告討論的重點。
清算(Liquidation)三明治攻擊(Sandwich)套利(Arbitrage)在過去 30 天的表現,來源:EigenPhi
展开之前,簡單介紹一下三種 MEV 類型攻擊的原理:
三明治攻擊:攻擊者通過監視未確認的交易,通過賄賂礦工,在目標交易之前和之後插入自己的交易,從而影響目標交易的價格並從中獲利。
套利:在 DEX 環境中,套利通常涉及利用不同交易平台之間的價格差異。由於 DEX 的去中心化特性,價格更新可能會滯後。套利者可以通過在一個平台上購买低價資產,並在另一個平台上以高價出售同樣的資產來實現利潤。
清算:當借款人的抵押品價值跌至預定閾值以下時,會觸發清算事件。此時,協議允許任何人對抵押品進行清算,立即償還債權人。當清算线被觸發時,清算機器人會在其後插入一筆清算訂單獲得費用。
從數據可以看出,清算 MEV 不是經常發生的,大額的清算攻擊通常發生在極端行情,從清算 MEV 的攻擊原理出發,這點並不難理解。比如,由於 BTC 在 10 月 23 日和 24 日出現 10 個點的拉升,清算 MEV 的交易量在當日高達 $561K,明顯高於其他時間。
清算 MEV 的規模和數量,來源:EigenPhi
三明治攻擊絕大部分都發生在頭部 DEX,Uniswap 中,佔據約 3/4 的市場份額。緊隨其後的來自聚合器。1inch v5: Aggregation 和 0x: Exchange 平分秋色,共佔 MEV 總量的 10%。Metamask: Swap Router 佔 4.8%。
三明治攻擊在各個路由中分布,來源:EigenPhi
82.18% 的單筆獲利金額在 $0-$10 之間,6.84% 在單筆獲利 $10-$100,9.28% 單筆虧損 $10-$100。
MEV 利潤分布,來源:EigenPhi
爲了理解 MEV 的發生過程,弄清楚 MEV 機器人的收益計算,從 EigenPhi 的網站上,我們選擇了近期發生的一筆 三明治攻擊作爲例子,詳解 MEV 攻擊的全過程。這是一筆發生在 2023-10-23 21:00:35 的三明治攻擊。攻擊者花費了 $634.93,收入 $6,167.48,獲利 $5,532.55。
MEV 攻擊解讀示例,來源:EigenPhi
整個三明治攻擊過程分爲三個步驟:Front-run,Victim,Back-run。這三筆事務緊密排列,依次打包在區塊 18413129 中。爲了更好闡述每個步驟,我們使用了 Etherscan 中的 Tag 功能對地址進行了標記,受害者 txn 的 from 地址標記爲“受害者”,front-run 和 back-run 中的交互地址標記爲“攻擊者”,其余標籤來自網絡。
Front-run 中,攻擊者首先向攻擊者 2 轉账 304.03 個 WETH,通過 Lido Curve 池子中以極低的滑點換出 304.027 個 stETH。接着將 stETH 在 Uniswap V2: stETH 2 池子中換成 259.59 個 WETH,引發流動性的偏移。(Lido 池子中有 5.6 萬個 ETH 與 stETH)
Front-run Transaction,來源:Etherscan
受害者在隨後的一筆事務中,通過同一個的 Uniswap v2 池子,將 20.37 個 stETH 換爲 14.81 個 WETH。由於攻擊者在 Front-run 中提前用大量 stETH 交換爲 WETH,在 AMM 曲线中造成偏移,進而拉高受害者 WETH/stETH 的均價。受害者遭遇 MEV 攻擊。
Victim Transaction,來源:Etherscan
BackRun:隨後,攻擊者 2 通過該池子將 259.59 的 WETH 換回 stETH,得到 307.76 個 stETH(注意:較先前多出 3.76 個)。最後攻擊者 2 將 stETH 利用 Lido Curve 池子以極低的滑點換出 WETH,並轉回攻擊者。完成獲利。
Back-run Transaction,來源:Etherscan
成本爲兩筆 Gas 加上 0.3667 ETH 給礦工作爲小費,收入爲 3.76 個 WETH,獲利 $5,532.55。從 Curve 看到受害者的 20.3691 個 stETH 在 UI 上的報價爲 20.359 WETH。而受害者僅收到 14.81 ETH,這意味着受害者遭受了高達 37.5% 的滑點。
Curve 中 20.3691 stETH 的報價,來源:Curve UI
注:這裏的攻擊者是指 MEV Bot,真正的獲利方是與該 Bot 的交互的地址,即 From 中的 0xFac…da00。
Eigentx 用 Token Flow 的方式將上述過程展示了出來,在理解之後方便復盤和可視化,更加直觀。下圖依次是 Front-run、 Victim、Back-run 的 Token Flow,數字表示發生的順序,供讀者梳理回憶。
示例 MEV 攻擊的 Token Flow,來源:Eigentx
從這筆交易中,我們可以總結出 MEV 獲利的必要條件:
首先需要大額 Swap 提前引發 AMM 曲线中流動性的偏移
對交易排序,將受害者 Swap 夾在 Frontrun 與 Back run 中間
同時保證受害者的 Swap 結果不超出滑點限制(否則交易失敗)
在第一步中,攻擊者通常利用閃電貸 (Flash Loan) 獲得大額的初始資金。閃電貸是區塊鏈中獨有的貸款方式,只要能在同一事務中完成還款,就能在 0 本金的情況下貸出大量資金。第二步需要攻擊者具有捆綁事務的能力,並在短時間內廣播給全球的節點,同時用 ETH 對礦工賄賂,優先將此交易打包在區塊中。MEV 攻擊者同時需要高精度的計算,保證受害者的 Swap 滑點不會超過約定。也要合理計算賄賂對礦工賄賂的金額,保證利潤最大化的同時,避免被其他 MEV 攻擊者利用 Front run,造成虧損。
這裏對 ETH 鏈上交易量排名靠前的 DEX 進行分析:DODO、Uniswap、Curve、Pancakeswap。TVL、交易量、費率、滑點是重要的主要指標。結合 EigenPhi 數據,我們首先從 Uniswap,市場份額長期佔據 50% 的 DEX,觀察下 DEX MEV 的“普世規律”。Uniswap 豐富的交易量爲 MEV 的觀察帶來了海量樣本,同時 Uniswap 也伴隨衆多 Forks,適合作爲基准參考。繼而,在與其他 DEX MEV 的特點的比較中,尋找差異的原因,對 DEX MEV 發生進一步認識。
1.Uniswap - Typical MEV Bots' Activities
Uniswap 作爲 ETH 鏈上市場份額接近一半的頭部 DEX,具有最多和最大的 MEV 交易筆數和交易量,我們可以從 Uniswap 上 MEV 的表現作爲基准,得出一些普適性結論:
套利機器人、三明治機器人與 LP 沒有利益衝突;
套利和三明治攻擊的發生與市場價格波動的強度有關;
交易量大的礦池更容易被三明治機器人從中提取價值;
涉及 2 個場所的空間套利是最常見的模式,最多涉及 100 多個場所;
盈利能力和三明治機器人的活躍程度呈現正相關。
1.1 套利機器人、三明治機器人與 LP 沒有利益衝突
我們首先觀察一下 MEV 機器人與 LP 的收入規模。EigenPhi 在《MEV's Impact on Uniswap》報告中,分別統計了 2022 年 1 月 1 日至 10 月 31 日期間,V3 LP 的收入與套利、三明治、JIT 三種機器人的收入,如下圖所示。從收入規模來看,三種 MEV 機器人的收入超過了 LP 收入的 25%,金額達到 54000 萬美元。這似乎在與 LP 爭奪市場,試圖從交易者的手中奪取本該屬於 LP 的利潤。
套利、JIT和三明治攻擊的利潤以及 LP 交易手續費的收入。來源:EigenPhi
然而,根據 Messari 在 Dune 中呈現的相關系數來看,套利和三明治機器人與 LP 的收入沒有負相關關系,這意味着套利和三明治 MEV 的發生與 LP 沒有利益衝突。這可能是因爲三明治機器人的攻擊並非只涉及用戶交易的幣對的兩者,而是會路由到頭部流動性池對代幣兌換,如將穩定幣 USDC、DAI 兌換成幣對中需要的 ETH。一定程度上,套利和三明治攻擊會在用戶的普通交易之外帶來額外的交易量,這不會對 LP 的收入產生負面影響,他們的收入更有可能隨着整個市場而波動。
套利、JIT和三明治攻擊的利潤與 LP 交易手續費收入的相關系數矩陣,來源: Dune, @messari
1.2 套利和三明治攻擊的發生與市場價格波動的強度有關
爲了探究套利和三明治機器人收入的影響因素,我們探究了其收入市場價格波動的關系。EigenPhi 報告中的數據展示了 ETH 價格變化與套利和三明治活動的數量關系,如下圖所示。我們可以明顯觀察到隨着 ETH 價格波動變大,套利和三明治共計的次數也隨之增加,呈現明顯的正相關關系。
ETH 的 7 天價格變化百分比(波動強度)與套利和三明治活動的數量關系,來源:EigenPhi
這種現象的發生有幾種可能的原因:
市場價格的波動會加劇價格不一致性:ETH 價格的顯著波動可能會在不同交易所之間產生短暫的價格不一致。套利機器人利用這些不一致來從中獲利,因此在價格波動較大時套利活動增加。
大的價格波動可能對應市場低的流動性:價格波動通常與市場流動性有關。在流動性較低的市場中,大訂單會對市場價格產生較大影響,從而爲套利和三明治交易提供了機會。
價格波動會激發交易的活躍程度: ETH價格波動加劇時,交易者對於潛在利潤的追求會增加,從而增加了市場活動,這爲三明治交易創造了條件。
1.3 交易量大的礦池更容易被三明治機器人從中提取價值
爲了觀察哪些流動性池更有可能參與 MEV 活動,EigenPhi 在報告中合並了 Uniswap V3 礦池的元數據和按礦池地址分組的 MEV 活動參數。結果表明:在交易量排名前十的流動性池中,三明治機器人能夠從中獲得超過 80% 的利潤。然而,這些流動性池中只發生了 20% 的三明治交易活動。
這意味着對於三明治機器人來說,具有大交易量的流動性池更容易從中提取價值。因爲交易量大的流動性池中涉及的資金和交易更多,深度更佳,爲三明治攻擊中有限的可利用的滑點帶來了豐厚的利潤空間。不過,需要提醒的是,這這並不意味着交易量較小的流動性池就不容易受到三明治攻擊。
1.4 其他一些有趣的觀測結論
從 EigenPhi 報告呈現的數據中,我們還可以得出其他有趣的結論幫助理解 DEX MEV 的發生。比如,從排名前 10 的套利的分布組合中可以看出,涉及一個 Uniswap V3 池和另一個場所的空間套利是最常見的模式。隨後的兩種常見模式是涉及一個或兩個 Uniswap V3 池的三角套利。有些單筆套利交易也可能涉及 100 多個場所。
套利模式的不同場所數目的分布,來源:EigenPhi
同時,三明治攻擊的總利潤和總活動數之間的關系表明,盈利能力和活躍程度呈現正相關,大多數盈利機器人有能力成功提交交易 1000 次以上。(EigenPhi 的報告中筆誤爲 ‘100’)。這意味着越’勤勞‘的三明治機器人收入越多。
三明治 Bot 攻擊頻率與利潤的點圖,來源:EigenPhi
2.DODO - Where Does High Volume Come From?
DODO 專注於穩定幣交易,主動做市的策略爲穩定幣池帶來了極佳的深度。在市值僅爲 4200 萬美元,但它在 DEX 交易量中一直位居前三。DODO 上 MEV 表現爲兩個特點:
MEV 爲 DODO 貢獻了高額的交易量,約佔總交易量的 60%;
DODO 上的 MEV 大部分來自 1inch 路由。
2.1 MEV 爲 DODO 貢獻了高額的交易量,約佔總交易量的 60%
與之相比,Uniswap 的市值爲 410 億美元。也就是說,DODO 在市值爲 Uniswap 1% 的情況下,實現了 Uniswap 8.6% 的交易量。究其原因,是利用 DODO 流動性的 MEV 作祟。
頭部 DEX 過去一年與一周的交易量分布,來源:EigenPhi
Dune 的數據顯示,DODO 在 ETH 鏈的主要交易對是穩定幣。從普適性結論我們能了解到,交易量大的礦池更容易被三明治機器人從中提取價值。這與 DODO 的數據一致,穩定幣池成了 DODO 中 MEV 攻擊活動發生的主要場所。根據 EigenPhi 在 《DODO: Where Does High Volume Come From?》報告中的研究:DODO 上受到三明治攻擊的交易總數達到 1,322 筆,USDC-USDT 交易佔 55.99 %,DAI-USDT 交易佔 44.01%。
三明治攻擊中影響的交易對份額分布餅圖,來源:EigenPhi
從這兩個穩定幣對的交易量分布來看,大約 60% 的交易量來自三明治交易。因爲三明治攻擊需要大額的交易引發流動性偏移,所以盡管 Victim Volume 只佔 2% 左右的份額,但爲此所做出努力的 Front-run 和 Back-run 爲 USDC-USDT 與 DAI-USDT 貢獻了 60% 的交易量。
在 USDC-USDT 與 DAI-USDT 交易對中交易量的分布,來源:EigenPhi
2.2 DODO 上的 MEV 大部分來自 1inch 路由
DODO 的前端交易通常有滑點的保護,超過滑點的交易無法成交,穩定幣對的滑點默認爲 0.01%。可爲什么還會發生如此高額的 MEV 交易量呢?
根據 Eigenfi 的數據,可以發現:受害 txn 數量大於 20 的地址的交易中,一半以上與 1inch 聚合器交互路由交易,如下圖所示。1inch 作爲聚合器,並不直接提供流動性爲用戶成交,而是把訂單路由到其他 DEX 中的流動性解決。其 Fusion 模式提供了三種選項:
Fast 模式:適於希望訂單立即執行的用戶,意味着較差的價格;
Fair 模式:用戶短暫等待以換取更具吸引力的價格;
Auction 模式:用戶將訂單拍賣,爲最優的價格等待最多十分鐘。
被攻擊超過 20 次的地址交互的路由分布,來源:EigenPhi
簡單來說,1 inch 的 Fusion 模式可能會以大額的滑點爲代價實現快速成交,減緩用戶交易的等待時間。盡管 DODO 的前端已經嚴格對用用戶的滑點做了保護,對穩定幣默認使用 0.01% 的滑點容忍,對 BTC、ETH 等主流幣默認使用 0.5% 的滑點容忍。但對於 1 inch 路由過來並未對用戶進行滑點保護,這是 1inch 聚合器交易處在危險之中的根本原因。
在傳統的滑點設置中,絕大部分 DEX 都採取了固定的滑點值,例如 Uniswap 提供的 0.3%。這種靜態設置存在一定的局限性,交易逆轉的發生會給用戶帶來挫敗感和潛在損失。另一方面,在波動性較小的時期,此設置可能過高,使交易容易受到 MEV 攻擊。
DODO 前端推出的“動態滑點”利用時間序列模型預測實現最佳滑點容忍度。幫助用戶減輕交換過程中的潛在損失,同時保持高成功率。利用 ARIMA 模型,一個經過驗證且穩健的時間序列預測器,動態滑點在回測中證明了 98% 的准確率。
“動態滑點”示意圖:長尾資產價格與預測的邊界,來源:@DODO
3.PancakeSwap - ’Uniswap’ of BNB Chain
PancakeSwap 一直是交易量僅次於 Uniswap 的 DEX,市場份額約佔 15%。在 BNB 鏈上,Pancake 是絕對的巨頭,壟斷了約 90% 的市場份額。這與 EigenPhi 的統計的 MEV 數據一致,BNB 鏈上超過 90% 的總 MEV 來自涉及 PancakeSwap 的活動。PancakeSwap 上 MEV 的顯著特點是:
Pancakeswap v3 在 BNB 鏈有着顯著更少的 MEV 比例;
Pancakeswap v3 的三明治攻擊非常罕見。
BNB 鏈上不同協議的市場份額,來源:Dune
MEV 在 BNB 鏈上收入分布、比例以及 Pancakeswap 的份額,來源:EigenPhi
3.1 Pancakeswap v3 在 BNB 鏈有着顯著更少的 MEV 比例
Panacakeswap 在 BNB 鏈的主導地位一如 Uniswap 在 Etherum 鏈一般,兩者的機制設計也沒有截然的不同。我們很難不自然而然地推斷 Pancakeswap v3 在 BNB 鏈上的表現會和 Uniswap V3 在 Etherum 鏈上的表現一致。
然而,根據 EigenPhi 在《PancakeSwap V3's Ascendancy in the MEV Market - A Comprehensive Study》中數據,Pancakeswap v3 在 BNB 鏈上,套利攻擊次數僅佔總交易的 7.65%,三明治攻擊次數僅佔總交易的 1.92%,相比之下,Uniswap V3 在 Etherum 鏈上 的 MEV 交易量比例相對穩定地保持在 50% 至 60% 左右。這一現象有兩個可能的原因解釋:
鏈的基本設施。在比較 PancakeSwap V3 在 BNB 鏈和 ETH 鏈的 MEV 交易比例時。發現 BNB 鏈中有 9.4% 的 MEV 比例,在 ETH 鏈上則爲 30.3%。這意味着 ETH 鏈和 BNB 鏈有不同的 MEV 生態系統。
協議的豐富性。PancakeSwap 是 BNB 鏈上的主要協議,而在 ETH 鏈上,協議更加多樣和豐富,這提供了更多的 MEV 機會。
MEV 中間商。在Uniswap 上,三明治攻擊是 MEV 的主要來源,而在 PancakeSwap 上則很少見。像 Flashbots 這樣的中間服務在 Ethereum 上使 MEV 提取過程變得更爲簡單。而這樣的服務在 BNB Chain上還不夠成熟。
MEV 的基礎設施。Ethereum 引入了如 MEV-Boost 和 MEV-Boost Relay 這樣的機制,鼓勵更多的驗證者加入。這些設施使得驗證者的 MEV 提取過程更爲高效。Ethereum 有超過 820k 的驗證者,而 BNB Chain 只有 29 個。
交易量影響。從 Uniswap 的普世性結論中,我們可以得知:在相同的條件下,MEV 活動的比例與大的交易量高度相關。交易量大的交易更有可能產生 MEV 的機會和更大的 MEV 交易量和 MEV 收入。在對比兩條鏈上的每筆的交易量時,也能明顯注意到:ETH 鏈上的交易量單筆約爲 BNB 上的 10 倍。
PancakeSwapV3 在 BNB 鏈和 UniswapV3 在 Ethereum 的交易量大小對比,來源:Dune
3.2 Pancakeswap v3 的三明治攻擊非常罕見
EigenPhi 的報告還表明:較於 PancakeSwap V2,V3 的三明治攻擊非常罕見,其收入僅佔三明治總收入的 2.32%。差異的出現可能來自於 V3 的機制特點:
交易費用調整:PancakeSwap V3 引入了四個不同的交易費用層(0.01%,0.05%,0.25%和1%),而 V2 的單一費用水平爲 0.25%。流動性提供者可能會根據市場情況和自身的風險容忍度選擇不同的費用層。這種動態變化可能導致更加復雜的交易環境,使得 MEV 機會不穩定,因爲流動性和交易模式可能會隨時間而改變。
改進的智能路由:通過添加拆分路由功能和利用協議中所有可能的流動性的能力,爲交易引擎帶來了整體改進。新的智能路由器通過利用 PancakeSwap V3、V2 和 StableSwap 的流動性,具有多跳和拆分路由功能,智能地找到最佳交易路线。通過優化交易路徑和利用多個流動性來源,PancakeSwap V3 可能會降低單一交易的潛在利潤性。因爲交易是在多個池中進行的,這可能會使得潛在的 MEV 機會更加復雜和難以利用。智能路由還將利用做市商集成提供的流動性爲交易者提供最佳交易。用戶可以選擇或禁用某些流動性來源,這爲用戶提供了更多的靈活性。這可以避免某些池的潛在前跑或後跑行爲。
4.Curve - Haven of arbitrage for the Clever
Curve 與 2020 年推出,以 StableSwap 聞名,其獨特的價格曲线不同於恆定產品公式曲线,使其池在穩定幣 AMM 市場中遭受的滑點較少。Curve 有一個強大的生態系統,允許用戶以較低的費用和滑點與其他 DEX 協議交換穩定幣。Curve 主打的業務有:
穩定幣的交換:經典的流動性池有 3pool,LUSD/3Crv 等;
穩定的掛鉤資產:例如,Curve 支持 ETH 的 PoS 和合成資產,stETH、frxETH 等;
不穩定的掛鉤資產:在曲线 V2 之後,用戶可以在 Curve 的 Tricrypto 池中兌換 BTC,ETH 和 USDC。
這也讓 Curve 上發生的 MEV 呈現與衆不同的表現:
三明治攻擊和套利機器人的收入佔 Curve 池收入的 73%,且套利活躍;
MEV 機器人收入 80% 的利潤被 20% 的機器人賺取;
套利機會與市場價格波動的強度相關,而三明治攻擊與市場價格波動無關。
4.1 三明治攻擊和套利機器人的收入佔 Curve 池收入的 73%,且套利活躍
Curve 的 3Pool,也稱爲 Tri-Pool,爲 DeFi 中三種頂級穩定幣提供了大量流動性(約 34 億美元)。與其他去中心化交易所(例如 Uniswap 或 SushiSwap)相比,這種深度流動性和 Curve 的優化使 3Pool 通常爲 USDT、USDC 和 DAI 的交換提供最具資本效率的途徑,這對於套利者和交易者來說非常有利。根據 EigenPhi 的數據,三明治攻擊和套利機器人的收入佔 Curve 池收入的 73%。對比 Uniswap 中 25% 的比例,Curve 上的 MEV 活動可謂相當活躍。
同時,Curve 中有大量、豐富的掛鉤資產的交易對池,這些池子往往會產生巨大的套利機會。EigenPhi 統計了套利和三明治機器人的每日收入,如下圖所示,2022 年 6 月 13 日 stETH 脫鉤,套利機器人產生了相當可觀的利潤。
Curve 協議中的三明治攻擊、套利收入與手續費收入隨時間變化的折线圖和比例,來源:EigenPhi
4.2 MEV 機器人收入 80% 的利潤被 20% 的機器人賺取
EigenPhi 在 《10M Revenue Drain in 5 Months: MEV impact on Curve》報告中,繪制了套利和三明治機器人的收入分配的箱线圖,如下圖所示。從圖中可以看出:MEV 機器人產生的收入呈現肥尾分布。肥尾相對於正態分布,意味着極端事件的概率更高,既 “聰明” 的高利潤機器人貢獻了大部分收入。
套利和三明治的收入分配的箱线圖(箱线圖中的柱體表示四分之一分位點,中間的线表示中位數),來源:EigenPhi
根據 EigenPhi 更詳細的數據,可以發現,頭部 25% 的套利機器人收入佔比 94% 以上,頭部 25% 的三明治機器人收入佔比 87.8%。最賺錢的三明治機器人只發起了 14 次三明治攻擊,僅使用 2 筆交易即可在 Curve stETH 池中產生超過 46,000 美元的總利潤。
4.3 套利機會與市場價格波動的強度相關,而三明治攻擊與市場價格波動無關
EigenPhi 在報告中使用 ETH、BTC 和 CRV 的 7 天價格的波動頻率觀察套利和三明治機器人的活動時發現,套利交易機會的發生與市場價格波動的強度相對相關。然而,三明治機器人的機會似乎與市場的價格波動無關。這與 Uniswap 得到的普世性結論並不相同(其相關系數爲 0.6),這可能意味着即使在波動大的行情,不夠聰明的三明治機器人仍然無法完成攻擊。
這一點發現和 4.2 相互印證。結合 4.1 中套利機器人的收入遠高於三明治攻擊的現象我們不難推測:相較於 Uniswap,Curve 池中的三明治攻擊更爲困難,而技術高超的套利機器人在 Curve 擁有無與倫比的施展空間。
一個可能的原因是:Curve 提供了像 3pool 和 Tricrypto pool 這樣的多資產流動性池,這可能使得在 Curve 上執行三明治攻擊相對於 Uniswap 的簡單流動性池結構更爲復雜。多資產池可能引入額外的變量和動態,這可能使攻擊者難以有效地預測和操縱價格。這一點在 MEV 收入的肥尾分布中也可以看出,頭部的高利潤的機器人貢獻了 MEV 收入的絕大部分。
另一個原因是 Curve 包含更多的穩定幣池,這意味着三明治機會將更少地依賴市場的價格波動。大量、豐富的掛鉤資產交易對池,給套利提供了機會。
從上文可以了解到,不同 DEX 中 MEV 的分布可能存在巨大的差異,機制、業務、技術的不同都在影響着 MEV 的分布和規模。不管是鏈上的基礎設施,還是優化算法,再到 DEX 本身的機制創新,市場正在爲力求克服 MEV 尋找方案。我們嘗試總結出了以下 5 種類型的解決方案。
1.私人 PRC 節點
MEV 的必要條件是公共內存池無需許可的可見性,通過私人 RPC 節點交易可以直接路由到區塊提議者(proposer),從而有效免受公共內存池的影響,在惡意搶跑者之前執行交易。
PropellerRPC 是一種即插即用的 RPC 解決方案。接收到用戶的交易之後,專門設置的 PropellerSolver 會啓動算法自動搜索可能的 backruns,如果發現可能的 backruns,PropellerRPC 會將原始的 tx 捆綁(bundle)在一起私下發送給“誠實的”構建者,並將 backruns 所有利潤返還給用戶。由於 RPC 私下提交給區塊構建者,搜索者無法搶先或夾在交易中間。當監控到構建者的不當行爲時,如構建者以用戶爲代價重新排序 tx,則會將這些構建者列入“不誠實”黑名單。
MEV-Share 是一個开源協議,爲用戶、錢包和應用程序提供了一個框架,使它們能夠將其交易創建的 MEV 內部化。具體地,它通過所謂的訂單流拍賣(orderflow auction)實現。它允許用戶選擇性地與搜索者分享有關其交易的數據,而搜索者則會競標將這些交易包含在捆綁中。用戶可以選擇如何重新分配搜索者的出價,例如分配給自己、驗證者或其他方。MEV-Share 是可信的中立的,對搜索者來說無需許可,不偏袒任何一個區塊構建器。旨在減少獨家訂單流(exclusive orderflow)對以太坊的中心化影響,同時使錢包和其他訂單流來源能夠參與 MEV 供應鏈。用戶可以將交易提交到 Flashbots MEV-Share 節點來從 MEV-share 賺取 MEV 退款。
PropellerRPC 和 MEV-Share 本質區別在於一個利用算法,搜索可能 backruns 將利潤返還給用戶;一個利用拍賣的方式,使所有搜索者參與進來,通過充分的競爭將利潤返還給用戶。兩者防止的MEV 的核心都是繞過公共內存池,將用戶的交易私下發送從而減緩 MEV。大多數 DEX 都已經集成私有 RPC 節點供用戶开啓選擇。
2.機制創新——訂單打包拍賣
用戶不需要發送一個 transaction 來提交一個交易,而是需要用戶發送一個籤名的訂單。所有未結訂單被打包成一個 Batch 交給 solver 求最優解。優化的路徑一方面來自鏈下求解需求巧合(CoW, Coincidence of Wants),另一方面依賴鏈上的流動性。荷蘭拍的方式選擇最優的方案,第三方支付 Gas 代表用戶提交。批量拍賣允許批次內的交易具有相同的統一清算價格,因此礦工沒有必要重新排序交易。
訂單打包的好處有很多:減少訂單被搶跑或被三明治攻擊的機會,改善價格,增加可用的流動性和優化交易路由,詳細的論證可以參見我們另一篇報告《CowSwap 未來 Intent 的 DEX 形態?》。但是這種方式有兩個顯然的劣勢:
難以確定 Solvers 的不同解決方案哪個是最優的。對於單個訂單而言,顯然最大化用戶的所得是簡單的。但如果對於 1 個 transaction 中有多個用戶,評判 solvers(求解器)之間的解決方案就很難。比如一個解決方案可能對 A 好,對 B、C 沒那么好;但另一個方案對 B 好,對 A、C 沒那么好。市場尚不確定是否存在一種去中心化又可靠的標准對 solvers 的解決方案做評判。
CoWSwap 提出了“最大化盈余” 策略,選擇能爲所有參與的用戶總體創造最大剩余的方案處理打包的訂單。這種方法是基於集體最優而不是個別最優的原則。在實際操作中,solvers 通過算法優化來考慮所有訂單,並試圖找到一個整體最優的匹配,這可能涉及跨多個訂單完成復雜“需求巧合”,從而找到一個整體最有效率的交易組合,使得所有用戶的總滿意度最大化。可以作爲一個研究學習的參考。
等待時間會比執行單個時間長。對於不活躍的標的,受 AMM 曲线的影響可能會在執行等待的過程中發生較大的價格波動。不過,對於進行大額交易的參與者,特別是那些不需要立即成交的用戶,例如 DAO,這種方法提供了一個更優的選擇。它允許這些用戶通過更好的價格執行和減少市場影響的交易,同時可能從批量處理中獲得更好的滑點保護和費用優化。對於那些尋求成本效益且可以容忍較長結算時間的用戶,這種機制能夠提供顯著的經濟利益。這也是 1/3 的 DAO 的交易量都在 CoWSwap 上發生的原因(來源:Dune)。
3.機制創新——外包訂單
CoW、UniswapX、1inch fusion 等都希望通過機制創新解決 MEV 問題。如果以 Uniswap 爲 DEX 的行業基准的話,外包訂單的解決方案甚至可能是一種趨勢。因爲將訂單流的執行權移交給專業填充器(filler)上會方便得多。用戶籤署交易訂單,執行邏輯從鏈上拉到鏈下,交易對手執行並具有預保證的兜底交易結果,由智能合約驗證保證作保障。
具體來講,UniswapX 將路由的復雜性外包給第三方填充者。這些填充者競爭使用鏈上流動性(如Uniswap v2 或 v3)或他們自己的私人流動性存來執行用戶的交易,同時爲用戶支付 Gas。任何人都可以成爲UniswapX交換的第三方填充者,荷蘭拍的定價價值保障了最優的價格。CoWSwap 則是將交易打包後,對求解器(solver)的解決方案排名,並交授交易的執行權。1inch 類似 UniswapX,不同點是求解器(resolver)按時間順序依次允許求解。
尤其是等到 Uniswap v4 推出後,由於 Hook 的特殊性質,將出現大量同樣幣對的池子。如果沒有強大的工具,面對 AMM 復雜的數學時,用戶幾乎不可能自己找到最佳路线。因此,外包訂單的方式實際上是將路由和執行外包給市場,然後說,誰給我最好的執行力,誰就可以進行交易。
這種方案的解決難點在於,如果確保這些求解器/填充者的行爲方式符合預期。
一種解決方案是引入信譽機制:通過監視,在他們行爲不端時,他們就會從訂單流中被切斷,並且必須支付罰款才能重新上市。
另一種解決方案是創建一個高度競爭性的市場。在這個市場中,用戶的訂單可以被無許可地執行,這意味着任何人都可以參與。通過利用 MEV-Share,可以在保護隱私和承諾的前提下,促進用戶或訂單流提供者與 MEV Searcher 之間的無許可合作。從長遠來看,這種無許可的執行方式將極大地增加市場的競爭力,從而爲用戶提供更優惠的價格。
另一個難點是:如何對最佳執行進行基准測試?
第一道防线,也是始終得到保證的,就是你在訂單中設置的限價。第二道防线是EBBO(交易所最佳买賣報價)獲取鏈上可見的最佳價格,即考慮到 Uniswap,Balancer 等 DEX 的報價。
由於私有內存池的存在,提供最佳執行可能會受到內存池訪問權限的限制。爲了解決這個問題,可以考慮實現 SUAVE,這種即插即用的架構旨在爲所有區塊鏈提供一個通用的內存池和區塊構建網絡,在構建區塊(block building)的過程中將鏈上所有待處理的信息都考慮在內。
4.滑點優化
爲了避免交易失敗,DEX 經常設置較高的默認滑點,例如 Uniswap 提供了 0.3% 的默認滑點。但靜態的滑點設置具有局限性,滑點太小了可能面臨交易失敗,太大了可能給用戶造成損失。在某些市場條件下,這樣的靜態設置可能導致嚴重的交易回撤,給用戶帶來挫折和潛在損失。
DODO 最新推出的動態滑點基於時間序列預測模型能夠在保障成功率的前提下,推薦合適的滑點避免用戶的損失。它利用 ARIMA 模型,一個經過驗證且穩健的時間序列預測器,動態滑點在回溯測試中展示出了 98% 的准確率。旨在幫助用戶在交換過程中減少潛在的損失,同時保持高成功率。
甚至對於以“不可預測性”而聞名的長尾幣種,有 95.8% 的實際價格都緊密地符合預測的置信區間。在更穩定的市場條件下測試時,表現更爲出色,97.2% 的實際價格都可以保持在預測的置信區間內。展現了其模型的靈活性,能夠無縫地適應不同的市場情緒。
“動態滑點”示意圖:市場波動期間的長尾幣種的價格預測與實際走勢,來源:@DODO
Sushiswap 則推出了自動檢測“徵稅代幣”的功能(徵稅代幣是具有交易“稅”的代幣,即購买、出售或轉讓代幣時的額外費用)。如果UI顯示“低滑點:由於價格變動或轉账費用,此交易可能無法成功”,如下所示,則可能是徵稅代幣。此時就需要將代幣的稅收百分比添加到原始容差中。
較低的滑點交易徵稅代幣可能會導致交易失敗,來源:SushiSwap
5.透明化
DEX 將訂單路由到私有節點,而不是公共交易池。保護用戶的同時帶來了系統性風險。Flashbots 致力於所有市場參與者都無需許可。用戶可以選擇在使用 Flashpots Protect 時將訂單流發送到何處,以及發送給哪些構建器。
這種方案的難點是:如何從系統設計上消除與搜索者玩貓捉老鼠的遊戲,即不需要花費大量的時間、投資和資源來識別某人何時在系統中實際行爲不端。而是一種不需要做監管,不需要在系統中不斷擁有人力資源來知道它是否正常工作的系統。
寫在最後
黑森林的 MEV 蛋糕散發着誘人的香氣。DEX MEV 在過去 30 天的利潤高達百萬(million)美金,意味着對用戶的損失仍有較大規模。在對 MEV 過程詳解後,我們也得出了 MEV(以三明治攻擊爲例)的必要條件:1、引發流動性偏移;2、對交易排序;3、保證不超出滑點範圍。在交易排序中,礦工需要支付費用賄賂礦工以保證 Back-run 緊貼在 Victim 之後,最大化利潤的同時保證不被其他 MEV bot 搶佔利用。賄賂礦工是 MEV Bot 的一大/主要支出, 引發流動性偏移而不在攻擊後超出滑點範圍也爲 MEV bot 提出了高難度的計算要求。其余成本發生在硬件設施上,保證捆綁事務後能在短時間內廣播給全球的節點。
深究 DEX 中 MEV 的發生原因,相互聯系又不盡相同。以 Uniswap 爲基准,存在一些普世的結論。比如市場波動越大,發生三明治攻擊和套利攻擊的頻率和利潤就越高;交易量更大的池子的獲利金額也往往越大;MEV 的收入於 MEV bot 的“努力”程度正相關。但每個 DEX 擁有其各自特點,基於此,在 MEV 的發生中各自演變出獨屬的分布。例如 Curve 由於多幣池的存在以及豐富的掛鉤資產交易對業務,套利在 Curve 中的獲利尤爲突出,且不容易受市場波動影響,套利難度大。又例如 DODO 主打穩定幣對的交易,以主動做市提供極佳的流動性深度使 MEV 的三明治攻擊有機可乘,爲 DODO 貢獻 60% 的總交易量。對比 PancakeSwap 在 BNB 和 Etherum 的表現,證明 DEX 的機制特點並非單一的影響 MEV 分布的變量,所處的公鏈的基礎設施、協議的數量等也會使該 DEX 的 MEV 分布發生變化。譬如,Etherum 鏈擁有比 BNB 鏈更豐富的協議,爲 MEV 的攻擊提供了更多選擇,對比下 MEV 的發生也更爲激烈。Pancakeswap 中 Etherum 上的 MEV 高於 BNB 鏈也可能取決於 Etherum 擁有更完備的基礎設計,爲 MEV 提供了工具。
面臨 DEX MEV 的以上情境,從 DEX 到基礎設施,Web 3 世界正在積極尋求解決方案。我們搜集整理了 5 類解決方案:私人 RPC 節點、訂單打包拍賣、外包訂單、滑點優化和透明化。私人 PRC 希望通過繞开公共內存池無許可的可見性扼殺 MEV 的發現。訂單打包拍賣和外包訂單都屬於機制創新。前者將多個未結訂單打包執行,通過需求巧合和統一清算價,在提升效率的同時阻止 MEV bot 利用交易排序操縱價格,代表項目是 CoWSwap;後者將訂單無許可地交給任何求解器,在市場的充分競爭後,選出最有利於用戶的方案執行,用“內卷”減緩 MEV bot 作惡,代表項目是 UniswapX。滑點優化實質上是產品的優化,代表項目是 DODO 的“動態滑點”,智能推薦滑點在保障成功率的同時讓三明治攻擊無隙可乘。透明化是 Flashbots 的愿景,通過系統設計上使黑森林中用戶的訂單照在陽光下,以自監督的方式維持正常運行。
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。
標題:全景解讀 DEX MEV:發生、發展與破局式創新
地址:https://www.torrentbusiness.com/article/85385.html