一个关于MEV的零基础快速入门指南——by Wyeeeh
注意:本文仅涉及时事热点的学术分析和交流。
事件缘起
2023 年 3 月 8 日,硅谷银行(SVB)的母公司 SVB Financial Group 宣布亏本出售价值 210 亿美元的证券资产,以应对在美联储加息、科技股持续低迷背景下,用户提款造成的资金持续流出。亏本卖出资产以应对流动性危机的消息在市场上进一步引发了投资者的恐慌, 9 日,SVB Financial 的股价暴跌 60.41 %,投资者和储户试图从硅谷银行撤资 420 亿美元,是 10 多年来美国最大的银行挤兑之一。10 日,加州监管机构关闭了硅谷银行,并将其送入破产管理程序。
SVB 倒闭的黑天鹅引发了一系列连锁危机,并蔓延至了加密市场。3 月 11 日,稳定币USDC发行商 Circle 发推表示,在其共计约 400 亿美元的资金储备中,有大约 33 亿的现金储备存放在 SVB。Circle 发布声明后,其对 SVB 的风险敞口同样引发市场的恐慌。为了减少损失,投资者开始抛售他们的 USDC 以换取如 Tether (USDT)的其他稳定币,USDC 面临严重挤兑,其价格出现持续性脱锚,最低降至 0.88 美元。同时,Binance、Coinbase 等中心化交易平台均宣布关闭 USDC 的部分兑换服务。
在恐慌挤兑潮和一片市场混乱中,代币价格出现剧烈波动,MEV 搜索者反而能够看到获利机会。而成为 MEV 目标的受害者,则可能不幸承受巨额损失。在本轮 USDC 挤兑潮中,就出现了一例这样的 MEV 套利事件。一位地址开头为0x 8 ff 的投资者试图转换其稳定币仓位,想要将其持有的 203 万个 3 CRV 代币换成 USDT(3 CRV 为Curve 流动池的 LP 代币,由 USDT、USDC、DAI 三种稳定币组成),但其并未直接通过 Curve 解除 LP token,而是经由 KyberSwap 聚合路由将交易发送给了Uniswap上的一个几乎完全没有流动性(仅有约 2 美元的流动资金)的 LP,这个资金池在过去的 251 天里一直处于闲置状态。
此外,据推特用户@BowTiedPickle 分析,除了 KyberSwap 路由的问题外,这个巨鲸在匆忙之中很可能没有正确设置滑点,使得该笔交易不幸成为了 MEV 机器人套利的对象。
在该笔交易发送后,MEV 机器人完成了一笔尾随交易,支付了 45 美元的 Gas 费和 23.8 个ETH(价值约 3.9 万美元)的 builder 小费,用 1.45 枚 USDC 在 LP 中换得了受害者发送的 203 万个 3 CRV,抢走了约 204.5 万美元的利润。而受害者发送的 203 万个 3 CRV,最终仅换回了 0.05 个 USDT。
受害者交易:
https://etherscan.io/tx/0xde46a6bb1fc7834dde4d01428c88f84d65a607f4dc11b7f3dd710e86b7d226a8
https://eigenphi.io/mev/eigentx/0x de 46 a 6 bb 1 fc 7834 dde 4 d 01428 c 88 f 84 d 65 a 607 f 4 dc 11 b 7 f 3d d 710 e 86 b 7 d 226 a 8
MEV 机器人的尾随交易:
https://etherscan.io/tx/0x8a6be1e4db4375c1a1c9d1e5c5fcaa5c255b2d24f5da3de05f3b25d7c3508021
https://eigenphi.io/mev/eigentx/0x8a6be1e4db4375c1a1c9d1e5c5fcaa5c255b2d24f5da3de05f3b25d7c3508021
在DeFi生态中,MEV 是交易者在DEX中进行代币兑换过程中最头疼但也难以绕开的风险问题。特别是在危机中,MEV 反而是在动荡市场中最具活力和破坏性的存在。
什么是 MEV?它如何为交易者带来利润?一个完整的套利交易过程是什么样的?如何利用 DeFi 的闪电贷功能实现“零本万利”的回报?本文的目的旨在回答上述问题,为对 MEV 有兴趣的交易者提供入门指南。欢迎来到 MEV 的世界。
MEV 概述
在工作量证明(PoW)的背景下,MEV 最初是指矿工可提取价值(Miners extractable value),即指代矿工通过在其生产的区块内任意添加、排除或重新排序交易的能力可以获得的利润。
随着以太坊合并(Merge),加入权益证明共识层(PoS)后,实行了提议者 / 构建者分离 (PBS:Proposer/Builder Separation),将收集交易及提议区块的角色和排序构建区块的角色(即确定哪些交易以何种顺序包含在区块中)分开。其中,之前矿工的角色由 PoS 网络中的验证者(Validator)负责。在 PoS 的背景下,MEV 的定义扩展为了最大提取价值 (Maximal extractable value) ,指验证者通过添加、删除并更改区块中的交易顺序,在超过标准区块奖励和 gas 费用的区块生产中所能提取的最大价值。
虽然从理论上讲,MEV 应该完全由验证者获得,因为他们是唯一能够保证将套利机会付诸实践的一方。然而,实际中 MEV 并不会完全被验证者所提取,而是可能被称为“搜索者(searcher)”的套利交易者和机器人(MEV-bot)所瓜分。
事实上,MEV 的逻辑和证券交易中的高频交易(HFT)类似。在基于自动做市商(AMM)的 DEX 中,每一笔交易都会产生滑点:每出售一美元资产,就会将新的兑换价格压低一点。这为那些想通过价格差异赚取利润的搜索者提供了可能。MEV 搜索者依靠以太坊区块中交易的特定顺序来赚取利润。他们通过扫描区块链数据来捕获普通用户的 DEX 交易,并从不同 DEX 之间的价差中寻找潜在的套利机会,然后支付高额 gas 费用以抢占先机。在一般情况下,MEV 也是发生在链上套利交易的总称。
MEV 的几种类型
抢先交易 (front-runs)
这种类型的 MEV 指在内存池(mempool)中的已知交易之前执行交易。MEV 搜索者会扫描内存池以寻找可盈利的交易。例如,如果 MEV 机器人发现了一笔大额交易,它会复制用户的交易并支付更高的 gas 费用,以确保在区块的交易顺序中处于最高优先级,能够被更早确认。
尾随交易 (back-runs)
尾随交易指在已知待处理交易之后立即放置交易。搜索者通常使用此类机器人来监控内存池中的新代币对列表或在 Uniswap 等 DEX 上创建的流动性池,在发现新的代币对上市后,机器人可以在初始流动性之后立即下达交易订单,并购买尽可能多的代币,只留下少量供其他交易者购买。通过尾随交易,机器人可以在某个代币以极低的价格购买流动性池中出售的代币,然后在另一家交易所溢价出售,这笔溢价(减去交易费)就是搜索者的利润。与抢先交易不同,尾随交易可能是 MEV 机器人向网络发送很多相同的交易,其附加的交易费用会略高于目标交易,因此这可能会造成网络拥堵。
套利
套利的基础逻辑就是在不同的 DEX 流动性资金池(Liquidity Pool)之间进行“低买高卖”,利用兑换价差赚取利润。
双边套利又称作直接套利,它是通过发现同一交易对(如 WETH/USDC)在两个资金池间存在的价差关系,进行高卖低买,并从中套取差价利润。一个典型的双边套利过程如下:
首先,搜索者通过扫描链上数据,发现在 Uniswap V3的一个资金池 LP 1 中,WETH/USDC 的兑换价格是 1300 ;在另一个资金池 LP 2 中,WETH/USDC 的兑换价格是 1305 。那么,搜索者可以利用兑换价差,①在 LP 1 用 130, 000 个 USDC 兑换 100 个 WETH,②并在 LP 2 将这 100 个 WETH 兑换为 130, 500 个 USDC,③这两笔兑换交易需要向网络支付 gas 费用,一共 0.02 个 ETH。综上,搜索者可获得的总收入是 500 个 USDC,净利润等于 500 USDC 减去 0.02 ETH 的费用。
图:双边套利流程示意图
在简单的双边套利基础上,搜索者还可以扫描三个及以上的资金池之间的代币对价差(如 WETH/USDC, WETH/DAI, DAI/USDC),通过三次、四次及以上不断兑换不同的代币对,实现套利。
一个三边套利的流程如下:首先,假设发现在 LP 1 中,WETH/USDC 的兑换价格是 1300 ;在另一个资金池 LP 2 中,WETH/DAI 的兑换价格是 1305 ;在 LP 3 中,DAI/USDC 的兑换价格是 1.1 。那么,搜索者可以利用兑换价差,①在 LP 1 用 130, 000 个 USDC 兑换 100 个 WETH,②在 LP 2 将这 100 个 WETH 兑换为 130, 500 个 DAI,③在 LP 3 将 130, 500 DAI 兑换为 143, 550 USDC。这三笔兑换交易需要向网络支付 gas 费用,一共 0.03 个 ETH。综上,搜索者可获得的总收入是 13, 550 个 USDC,净利润等于 13, 550 USDC 减去 0.03 ETH 的费用。
图:三边套利流程示意图
以此类推,在实际的套利交易中,搜索者还可以从多个资金池中利用多个代币对的价差实现低买高卖的套利。目前,通过智能合约,MEV 机器人甚至可以瞬时间内,从上百个资金池中完成上百个代币对的兑换。例如,下面这个套利交易中,MEV 机器人就在 172 个资金池中完成了代币对兑换,共涉及 81 种代币。
对于整个市场来说,套利交易实际上起到了“价格发现”的作用。换句话说,通过上述套利交易,不同交易资金池中的代币对兑换价差会减小并趋向一致,实际上能够提高市场效率。然而,接下来要介绍的三明治攻击是最为糟糕的 MEV 类型,其实际上是损害了市场中投资者的利益。
三明治攻击
三明治 MEV 的存在是因为 DeFi 交易用户必须将预期的交易发送到区块链的内存池(memepool)等待确认。换言之,这些交易并不是即时放上区块,而是根据支付的 gas 费/优先费用在区块内排序的。而 MEV 机器人通常会在内存池中寻找特定交易,并试图根据预定的算法进行抢先交易或尾随交易。
一个典型的三明治过程如下:首先,搜索者发现有一个用户发送了一笔交易,想用 130, 500 USDC 兑换 WETH。此时资金池中 WETH/USDC 的兑换价格是 1300 。搜索者这时可以①发送一笔用 130, 000 USDC 兑换 WETH 的交易,并支付更高的 gas 费用以提前交易顺序,完成抢先交易,以 1300 的兑换价格购买了 100 WETH。如上文所述,每一笔兑换都可能在 DEX 中产生滑点。在抢先交易后,假设 DEX 中的 WETH/USDC 的价格被拉升至 1305 。②用户初始提交的 130, 500 USDC 兑换 WETH 的交易得到执行,以新的兑换价格购买了 100 WETH。③搜索者同时发送一笔尾随交易,以 1305 的价格用 100 WETH 兑换回了 130, 500 USDC。综上,搜索者可获得的总收入是 500 个 USDC。假设为了保证抢先交易的执行需要支付的优先 gas 费用是 0.05 ETH,那么净利润等于 500 USDC 减去 0.05 ETH。
从上述流程不难看出,三明治攻击并没有提高市场效率;相反,它给最开始发送交易的用户带来了损失,给市场参与者带来了更高的交易风险。在 T 1 时刻下,WETH/USDC 兑换价格为 1300 ,因此受害者实际上可以本应该获得约 100.384 个 WETH。然而,由于搜索者的抢先交易拉升了 WETH/USDC 的兑换价格,受害者最终只获得了 100 个 WETH,其损失为 0.384 个 WETH,折合为 500 USDC。搜索者的攻击为其带来了 500 USDC 的收入,这笔收入实际上是对受害者的一种“抢劫”。
清算
通常来说,诸如 AAVE、Compound等借贷协议会要求用户存入一定数额的资产作为抵押品,然后将这些存入的抵押品借出给其他用户。随着抵押资产价值的波动,用户的借贷能力也随之波动。当借款人的抵押品价值不足以弥补其债务价值时,借贷协议就会对借款人进行清算,而市场中任何人都能够完成清算。为了激励清算,协议向借款人收取清算费,并将其中一部分费用交给清算人。因此,搜索者会竞相监控所有借款人的头寸,以确定哪些借款人可以被清算,并成为第一个提交清算交易并收取清算费的人。
基于闪电贷的 MEV 链上套利
闪电贷
区块上可以包含多笔交易,而一个交易里面可以执行多个操作,只要是这个交易的最终状态是正确的,就可以完成操作。鉴于这种特点,DeFi 借贷平台 AAVE 创造了“闪电贷(flash loan)”。闪电贷是一种即时的无抵押贷款,允许用户在没有抵押品的情况下从链式流动性池中借入资产,但是借入的资产必须在同一区块链交易中偿还。这意味着借款人必须调用智能合约,在交易结束前即时还款,并按一定比例支付贷款服务费。因为交易结束通常是几秒钟,这种借贷行为被称为闪电贷。如果借款人没有在同一交易中偿还贷款,则整个交易将被撤销,包括初始借入和之后采取的任何操作。闪电贷可以为 DeFi 用户提供低成本、即时的流动性,目前已有多家协议(如 AAVE、Balancer Vault、Uniswap V3、dYdX等)提供闪电贷服务,这为流动性不足的 MEV 搜索者创造了“一本万利”甚至“零本万利”的机会。接下来文章将介绍如何利用闪电贷实现无风险套利。
套利交易分析实战
目前可用于分析 MEV 交易的数据产品有 EigenPhi、zeromev、flash bots 的 MEV-Explore 等,下文将利用 EigenPhi 的 EigenTx 可视化工具,对一笔真实的闪电贷套利交易进行分析。在这笔交易中
(0x2ac586b83b5222cac59c854cca1e202605919fe2fdacfbef1d2e0489bbb26e53),搜索者以$ 5.6 的成本,获得了$ 11, 981 的净利润。
下图呈现了一笔利用 Uniswap V3的闪电贷套利交易的代币流向。
图上共五个交易节点:两个 WOOL/WETH 代币对流动性池(UNI-V2 LP 1 与 UNI-V3 LP 2 ),to 地址(即搜索者提交的智能合约地址),闪电贷借贷协议(Uniswap V3 Pool),以及搜索者的钱包地址(leaf 叶子节点)。
该笔交易整体的套利逻辑是:搜索者发现在两个流动性池(LP 1 位于 Uniswap V2,LP 2 位于 Uniswap V3)中,WOOL/WETH 代币对的兑换价格存在差价,具有套利空间。搜索者先是在 LP 1 中用 1.1474 WETH 兑换了 851, 424 WOOL(见图中步骤 1, 2 ),并将换到的 851, 424 WOOL 在 LP 2 中换回了 11.4902 WETH(见步骤 3, 4 )。该笔套利的收入等于步骤 3 获得的 11.4902 WETH 减去步骤 1 付出的 1.1474 WETH,即约 10.34 WETH。
而在上述套利的过程中,步骤 1 的“启动资金”,即 1.1474 WETH,是从 Uniswap V3借得的闪电贷(见步骤 0 )。待到完成套利,搜索者偿还了该笔闪电贷并支付了服务费,共归还平台 1.1479 WETH(见步骤 5 )。最终,搜索者从这笔交易中获得的利润等于其收入(10.34 WETH)减去闪电贷服务费与 gas 费用(见步骤 6 )。
需要注意的是,虽然上述图将整个交易拆分为了几个步骤,但在智能合约中上述步骤都是同时完成的。搜索者甚至不需要支付初始资本就能完成套利,因此这笔交易其实是零成本的“空手套白狼”。
对于三明治攻击者来说,其闪电贷的使用逻辑也是类似的。搜索者可以使用闪电贷即时借出大额资金,在抢先交易阶段制造更大的滑点。等到受害者的交易被执行,搜索者只需要紧接着在尾随交易中偿还该笔闪电贷即可。由于三笔交易(搜索者的抢先交易、受害者的交易、搜索者的尾随交易)都是同时被验证并被记录上区块,闪电贷的借款-偿付同样能顺利完成。
总结
MEV 是 DeFi 生态的特别产物,其中像套利和清算能够促进市场效率,但三明治攻击则会威胁每一个 DeFi 交易者。根据 MEV-Explore 的数据,目前以太坊上的 MEV 累计利润已经达到了 6.87 亿美元。随着以太坊合并,MEV 的活跃度有所抑制,但仍是不可忽视的市场干扰力量。
本文的目的在于对 MEV 的概念和交易基础逻辑进行快速入门,涉及的概念都相对基础。但在真实的 DeFi 世界,不乏各种组合式套利类型和新式三明治攻击。无论是如果你是想规避链上风险,还是想成为一名合格的 MEV 搜索者,都不妨以此文作为指南,开始你的 MEV 进阶之旅。
参考
以太坊开发文档 https://ethereum.org/en/developers/docs/mev/
MEV 的第一个五年:从 Flashbots 诞生前说起 https://foresightnews.pro/article/detail/22060
MEV 的下一个五年:读懂 MEV 领域最新趋势 https://foresightnews.pro/article/detail/23394
一文读懂 MEV 链上套利 https://foresightnews.pro/article/detail/16585
深度研究:MEV 的过去、现状与未来 https://foresightnews.pro/article/detail/18044
深度| 一文全览 MEV 前沿发展与赛道项目全景图 https://www.defidaonews.com/article/6790242
The 0 to 1 GuideforMEVhttps://calblockchain.mirror.xyz/c 56 CHOu-Wow_ 50 qPp 2 Wlg 0 rhUvdz 1 HLbGSUWlB_KX 9 o
EigenPhi Classroom https://eigenphi-1.gitbook.io/classroom/
MEV 是不是一个好的投资机会?https://mp.weixin.qq.com/s/s 7 fTlOIlxP 92 w 5 fK 7 wsE 3 Q
Ethereum is a Dark Forest https://www.paradigm.xyz/2020/08/ethereum-is-a-dark-forest
一文看懂 MEV 是如何产生的,以及它在以太坊网络中的流动机制 https://cointelegraphcn.com/news/best-understand-mev
AAVEs documentation of flash loans https://docs.aave.com/developers/guides/flash-loans
What Is a Flash Loan? A guide to one of DeFi’s most innovative and controversial features. https://www.coindesk.com/learn/what-is-a-flash-loan/
Aave and Flash Loans: Uncollateralized Lending in DeFi https://www.gemini.com/cryptopedia/aave-flashloans
What Are Flash Loans? https://chain.link/education-hub/flash-loans
How to Use AAVE Loan to Launch a Sandwich MEV Attack? https://eigenphi.substack.com/p/aave-loan-sandwich-attack
Get Everything for Nothing: How to Use Flash Loans to Launch an Arbitrage? https://eigenphi.substack.com/p/complicated-flash-loan-mev
What Is MEV, aka Maximal Extractable Value? https://www.coindesk.com/learn/what-is-mev-aka-maximal-extractable-value/
Ethereum’s Hidden Tax: Maximal Extractable Value (MEV) https://www.treehouse.finance/insights/ethereums-hidden-tax-maximal-extractable-value-mev
https://www.mev.wiki/