MEV 入門指南:套利與三明治攻擊的完整解析
來源: @beiyue66
日期: Sun Mar 02 03:00:05 +0000 2025
標籤:
MEV套利鏈上套利機器人交易
來源: @beiyue66 (beiyue1)日期: 2026-02-18 標籤:
MEV套利三明治攻擊DeFi閃電貸
什麼是 MEV?
MEV(Maximal Extractable Value,最大可提取價值)主要分為兩類:
- 套利
- 三明治攻擊(也就是常說的夾子)
套利原理
在鏈上存在很多池子,不同池子間會存在價差。套利的原理就是利用不同池子的價差,制定資金流動策略,來制定資金越換越多的策略。
核心公式
利潤 = 高價市場賣出價 - 低價市場買入價 - 交易成本只要價格差異覆蓋交易成本(如 Gas 費、滑點、手續費),套利機會就存在。
常見套利方式
簡單套利
比特幣在交易所 A 報價 90000 美元,交易所 B 報價 91000 美元。同時在 A 買入、B 賣出,賺取 100 美元價差(扣除 gas 費等成本後)。
三角套利
例如用 ETH → DAI → USDC → ETH,最終 ETH 數量增加,套利成功。
範例:
- Uniswap 中 ETH/DAI 匯率為 1:2000
- DAI/USDC 為 1:1
- USDC/ETH 為 1:0.00055
投入 1 ETH → 2000 DAI → 2000 USDC → 2000×0.00055 = 1.1 ETH,淨賺 0.1 ETH。
閃電貸套利
閃電貸是一種不需要抵押物的 DeFi 借貸方式,可以實現不需要任何抵押物的情況下借出大量資產,但是需要在同一個交易區塊內進行歸還(連帶利息)。如果一個交易區塊內無法歸還,交易就會回滾,交易就會失敗。
利用閃電貸可以放大資金效率。現在比較高效的 MEV 都會使用這個策略:監控不同池子的價差,出現套利機會後立馬使用閃電貸套利,利用巨額資金搬平池子。
範例: 借出 100 SOL,套出 110 SOL,然後支付 1 SOL 的利息,剩下的 9 SOL 就是利潤。
內存池(Mempool)
說到套利就必須要了解內存池的相關概念。內存池是區塊鏈中存儲未確認交易的緩存區。
套利 bot 通過監控內存池的異動(例如發現大額未確認交易)來判斷套利機會。
交易優先級
在內存池中有一個交易優先級的概念:gas 給的越高,上鏈速度越快。搶新 bot 就是通過拉高 gas 來實現比別人更快的上鏈。
所以就會出現:即使是你先發布的交易,但是交易首先會緩存到內存池等待確認,bot 監控到異動,通過拉高 gas 費來搶先上鏈,這就有很多的潛在套利機會了。
三明治攻擊
MEV 的另一種形式三明治攻擊的原理也是如此:
- 監控內存池的交易
- 通過拉高 gas 費,插入前置交易和後置交易
- 瞬間拉高市值
- 夾取被害者資金後瞬間賣出
這就是最基本的原理。
技術棧要求
想要編寫一個優秀的 MEV bot,需要掌握以下技術棧:
核心技術
- 熟悉 Rust 語言,並能熟練運用
- 熟悉 SVM/EVM/Move 這些虛擬機,理解交易原理和區塊鏈編程,通過編寫智能合約來實現交易策略
- 熟悉運維(因為 MEV 對網絡要求極為精細,大概率每天都要維護自己的服務器)
算法知識
- 套利算法
- 三角套利策略
- Gas 容忍度
- 循環檢測
- 圖論
- 動態規劃
成本與門檻
編寫 MEV bot 是一個很燒錢的事。
網絡延遲要求
MEV 對於網絡要求極為精細,這是一個高門檻高競爭的地方。你必須擁有極低的延遲(高於 10ms 級別不用玩了)。
為了實現這一點,使用免費的 RPC 是不可能的。你必須要通過購買或者搭建在節點附近的服務器(物理層面)來自建 RPC,以實現極低的網絡延遲來進行套利。
競爭激烈
機會往往都是轉瞬即逝的,套利機會很可能就是一瞬間的事。同一時間,別人已經抓取機會完成了套利,而你卻剛剛檢測到機會。等你發起交易的時候,價差已經被搬平了,最後的結果就是白白浪費 gas。
總結
想玩 MEV,就要先好好修煉自身。這是一個門檻極高的地方,你必須要自己的專業知識過硬,才能玩得轉。