通过链上数据和交易,了解 MEV 机器人攻击个过程。本文源自 Ye & Kan , Sentio 所着文章《Dive into MEV Through Data and Transaction Insights 》,由 BlockBeats 整理、编译和撰写。
(前情提要:MEV发展及潜在机会在哪?一览市场规模、价值链与产业格局)
(背景补充:MEV赛道总览:重要性被低估了吗? )
本文目录
MEV 机器人攻击在 DeFi 中很常见,但很多人对其理解也仅限概念上,例如套利攻击、三明治攻击等,但其实通过追踪链上交易资料可以更好地理解 MEV。近日,Web3 观测平台 Sentio 发文解读了 MEV,通过链上资料和示例可以帮助你更好地理解 MEV。
文章开始前简单介绍一下 Sentio,Sentio 是一个链上资料监测平台,通过低程式码解决方案从智慧合约资料生成指标、日志和追踪,可用於分析和监控、模拟 / 除错交易、资料汇出 API 等。目前 Sentio 支援 ETH、BSC、Polygon、Solana、Sui、Aptos 等链。该平台由来自 Google、Linkedin、微软和 TikTok 的资深工程师建立,并得到了 Lightspeed Venture Partners、Hashkey Capital 和 Canonical Crypto 等顶级 VC 的支援。
介绍
随着区块链和 DeFi 的不断发展,最大可提取价值(MEV)已成为一个颇具吸引力且有争议的话题。本文旨在通过来自 Sentio 的真实交易、资料点和简单执行示例来深入探讨 MEV 相关话题,为大家揭开 MEV 概念的神秘面纱。
什麽是 MEV?最大有多大?
MEV 是指矿工、验证者或交易订单者在将区块中的交易新增到链上之前通过对区块中的交易顺序後获取的潜在利润。这种重组交易顺序的行为也提供了获取利润的机会。
下图是近 14 天内两种 MEV 策略(即套利和三明治)产生的每日收入和利润,以证明 MEV 的机会有多大。每日总收入平均值超过 50 万美元,每日利润平均值在 10 万美元左右。仅 jaredfromsubway.eth(蓝色区域)收入就占据了三明治攻击的总利润和收入金额的一半。
延伸阅读:以太坊MEV赚烂纪录:单日获利100万,近1个月总利润超1,300万美元
MEV 是如何运作的?
套利
我们从最「简单」的套利策略开始,来说明 MEV 交易的工作原理。让我们从上帝视角看一下典型 MEV 套利交易的工作流程,如下图:
套利交易:首先,MEV 机器人发现 2 个流动性池之间存在价格差距;随後机器人可以在单笔交易中从低价池买入并在高价池卖出,从而产生利润。
例如,交易 A 是套利交易,点选 交易 A 连结就可以在 Sentio 侦错程式的帮助下检视详细的资金流向、持仓变化和交易追踪,以逐步了解此交易的执行情况。
图中的 MEV 交易是由 0x1a6 开头交易机器人发起的,本次交易中,MEV-bot 能够检测到 Uniswap V3 池中 SDEX 中 WETH 的价格比 SmarDex 池中的 WETH 价格更便宜(SmarDex 是一个类似 Uniswap V2 的 DEX)。MEV-bot 首先在低价池中 swap,然後将收到的 WETH 到高价池卖出,最终获利 0.07ETH(5.91-5.98)。
此外,本次交易中的第 5 步支付了 0.047 ETH 给 Flashbots,这是 MEV 机器人向区块构建者支付的贿赂,以使其包含在後面的区块中,考虑到贿赂费用,MEV 机器人私下赚取了 0.02 WETH 收益。
让我们更深入地了解 MEV-bot 是如何在 0x1a6 上找到获利机会的。可以看到本次 MEV 交易位於 Block 17935927 上,在该交易之前,同一区块还有一笔 交易 B ,这笔交易在 SmarDex 池中进行了大额 swap(在 SDEX 上 swap 了 8.52 WETH),该交易使该池中的 ETH 价格上涨。
上面的 MEV-bot 很快注意到这一过程,并在这笔交易之後添加了自己的交易,抓住了这个「低入高出」的机会。
在交易被纳入区块之前,MEV 机器人如何发现交易的呢,这就不得不提到 mempool 了,在交易被新增到区块并上链前,它们存在於一个被称为 mempool 的池中,mempool 中的交易尚未确认时会等待纳入到下一个区块。区块构建者负责选择要纳入哪些交易以及按什麽顺序纳入,这个过程可能会受到交易费用和 Gas 价格等因素的影响(这是 MEV 机器人为获得参与而支付的费用)。
在上述情况下,MEV 机器人可以检视所有 mempool 交易,并发现该某笔交易存在。随後 MEV 机器人在其後面新增另一笔交易,形成 bundle 以获取利润。MEV 机器人可以使用 Flashbot 等工具建立 bundle,并强制 bundle 交易包含在同一块中并按所需顺序执行。
事实上,在这个特定的区块中发生了更多的 MEV 交易。由於这是一个 Flashbot 构建块,你可以点选进入 Marto 构建的 Flashbot 浏览器 来检视更多交易,并在 Sentio 侦错程式中检视资金流、余额变化和呼叫追踪详细资讯。
三明治攻击
套利策略通常是在有利可图的交易後追加交易,但三明治攻击是一种通过在目标交易之前和之後新增 1 个(或更多)交易并强制这些交易按顺序执行来获利的策略。让我们从上帝视角看一下典型 MEV 三明治攻击的运作流程,如下图:
首先,使用者向 mempool 提交交易,MEV 机器人持续监控所有 mempool 交易,并追踪该交易,并确定该交易是否可以成为三明治的盈利机会。一旦发现机会,MEV 机器人需要通过在目标交易之前和之後插入交易(就像包装三明治)来建立一个 bundle,并向区块构建者提交该 bundle。当 mempool 交易被包含在下一个区块中并执行时,bundle 交易将按照下面的确切顺序执行。
MEV 机器人通过操纵池流动性来产生利润。在抢先交易中,MEV 机器人可以以较低的价格购买资产。在目标交易之後,攻击者以更高的价格出售之前购买的 token。
我们以区块 17786884 上的最近 3 笔交易为例(Position 0—2)。
Position 0(抢先交易): 0x850 开头的交易
该交易是由 MEV 机器人插入的,以 swap 724.6 WETH 为 1.34M USDC,目标交易之前,该交易是按 1857 ETH/USDC 价格进行的。
Position(目标交易者): 0xc3ae 开头的交易
目标交易者希望 swap 2743 ETH 为 USDT(Uniswap V3),最终由 Uniswap Router 处理并以平均 1851 ETH/USDC 价格完成交易。由於抢先交易的出现,目标交易者遭受了不同的价格,在 MEV 机器人抢跑的池中以 1850 ETH/USDC 的价格 swap 了 1782 ETH
Position 2(後跑): 0x040 开头的交易
该交易是由 MEV-bot 在目标交易之後插入的,134M USDC 被 swap 为 727.6 ETH。Position 0 和 Position 2 结合的最终结果是 MEV-bot 获利了 3 ETH,而目标交易者则遭受了更高的 swap 价格。下面这两个 Position 的持仓变化可以让您快速了解 MEV 机器人获取的利润。
为了保护 swap 免受三明治攻击的影响,你应始终设定最大滑点。否则,滑点将被三明治攻击利用,并成为 MEV-bot 的收入(例如,以程式设计方式设定时,在应用 UI 或 amountOutMinimum/sqrtpricelimitx 96 引数内的 swap 设定中设定一个百分比)。
延伸阅读:揭秘加密货币市场上「三明治交易机器人」:从以太坊赚数十亿美元利润
清算
MEV 机器人还可以在借贷协议中获利,借贷协议是连线贷款人和借款人的 DEX(例如 MakerDAO、Aave、Compound 等)。借款人提供平台支援的抵押品後可以借入一定价值的资产,当借款人的抵押品无法偿还债务时,就会发生清算,清算人被激励以低价购买抵押品偿还债务。(
让我们以 0x652 开头的交易为例。
0x310 地址开头的 MEV 机器人通过从 Balancer 获得闪电贷获得 212 USDT 借款,然後 MEV-bot 在步骤 3-8 中清偿了借款人所欠的 USDT, 0x994 地址开头的 MEV 机器人以折扣价获得了抵押品作为回报,在步骤 8-11 中,MEV 机器人将所有收到的 TUSD swap 为 WETH 和 USDT,并在步骤 12 中还清了初始闪电贷,所有步骤都在一次交易中完成。
长尾 MEV
套利、三明治攻击和清算是提取 MEV 的主要方式。此外,MEV 中还有其他一些策略,这些策略是利基的、神秘的和未被发现的( 参考连结 ),这些均被称为长尾 MEV。
📍相关报导📍
MEV发展及潜在机会在哪?一览市场规模、价值链与产业格局
MEV揭秘:以太坊「最大可提取价值」产业利益的阴暗面
MEV-Burn 烧掉更多ETH!详解以太坊延续 EIP-1559 的重大升级