简介
最大可提取价值(MEV)代表了加密货币交易中最具争议但最有利可图的方面之一。 MEV 是指矿工、验证者或经验丰富的交易者可以通过策略性地排序(包括或排除他们生成的区块内的交易)来获取的利润。 2024 年,仅从以太坊中提取的 MEV 就超过 12 亿美元,这使其成为任何认真的 DeFi 参与者的重要考虑因素。
本综合指南探讨了 MEV 套利策略,重点关注前期运行和后期运行策略、保护措施、道德考虑以及 MEV 在合并后的以太坊和其他区块链生态系统中的未来。
了解 MEV 基础知识
什么是 MEV?
最初称为“矿工可提取价值”(在以太坊过渡到权益证明之前),MEV 现在代表“最大可提取价值”——除了标准区块奖励和汽油费之外,可以从区块生产中提取的最大价值。
主要 MEV 策略:
- 抢先交易:将您的交易置于目标交易之前,以从其价格影响中获利
- 后台运行:在目标交易之后立即放置您的交易
- 三明治攻击:围绕单个交易结合前置运行和后台运行
- 清算:竞相清算借贷协议上抵押不足的头寸
- 时间强盗攻击:重组区块链历史以获取利润(罕见且昂贵)
MEV 供应链
1. 搜索者:
经验丰富的交易者运行机器人,通过监控内存池(待处理交易池)来识别 MEV 机会。
2. 区块生成器:
构建包含可盈利 MEV 提取交易的优化区块的实体。
3. 提议者(验证者):
选择提议区块的验证者,通常选择最有利可图的区块。
4. 中继器:
像 Flashbots 这样的中介机构可以连接搜索者、构建者和提议者,同时保护交易隐私。
抢先策略
抢先交易涉及检测内存池中有利可图的交易,并提交您自己的具有较高汽油费的交易,以确保其首先执行。
经典抢先交易
场景:
用户提交 TOKEN X 的大额买单:
- 以每个 1 美元的价格购买 10,000 个 TOKEN X = 10,000 美元
- 预期价格影响:TOKEN X 升至 1.10 美元
领先者行动:
- 机器人检测内存池中待处理的购买交易
- 立即提交自己的具有更高汽油价格的买入订单
- 领先者的买入首先以 1.00 美元执行
- 受害者的购买第二次执行,将价格推至 1.10 美元
- 领先者立即以 1.10 美元出售
- 利润:1,000 美元(受害者交易的 10%)
广义抢先交易
现代 MEV 机器人不仅会抢先运行特定的交易类型,还会模拟任何待处理的交易,以确定抢先运行是否有利可图。
检测算法:
类 GeneralizedFrontRunner:
def __init__(self, w3):
自身.w3 = w3
defsimulate_transaction(self,pending_tx):
"""模拟交易以确定盈利能力"""
# 分叉当前区块链状态
fork_state = self.w3.eth.get_block('最新')
# 首先尝试执行我们的交易
our_tx = self.construct_front_run_tx(pending_tx)
# 模拟:our_tx→pending_tx→our_exit_tx
结果 = self.simulate_sequence([
我们的_tx,
待处理的交易,
self.construct_exit_tx(our_tx)
])
利润 = 结果['最终余额'] - 结果['初始余额']
Gas_cost = 结果['gas_used'] * self.w3.eth.gas_price
返回{
'盈利':利润>天然气成本,
'net_profit':利润-gas_cost,
'成功概率':结果['成功率']
}
def extract_mev(自身,pending_tx):
"""如果盈利则执行抢先交易"""
分析 = self.simulate_transaction(pending_tx)
如果分析['盈利'] 和分析['净利润'] > 100:# 最低 100 美元
self.submit_bundle([
self.construct_front_run_tx(pending_tx),
待处理的交易,
self.construct_exit_tx()
])
DEX 套利抢先交易
最常见的 MEV 策略之一涉及抢先交易 DEX 套利机会。
场景:
- 用户 A 通过在 Uniswap 上交易创造套利机会,导致与 SushiSwap 的价格差异
- 用户 B 提交套利交易以从差异中获利
- MEV 机器人检测到用户 B 的待处理套利交易
- 机器人抢先用户 B,首先执行套利
- 用户 B 交易失败或产生最小利润
现实示例(2024 年 3 月):
在高波动期间:
- 交易者提交了套利交易,预期利润为 5,000 美元
- MEV 机器人被检测到并以 500 gwei 汽油价格领先(相对于交易者的 100 gwei)
- 机器人提取了 4,800 美元利润
- 原始交易者的交易已恢复,损失 150 美元
- 机器人支付了 200 美元汽油,但净赚了 4,600 美元
NFT 抢先交易
MEV 机器人监控 NFT 市场的低价列表和抢先购买交易。
攻击向量:
- NFT 上市价格为 10 ETH(市值:15 ETH)
- 买家提交购买交易
- 机器人检测到待购买
- 机器人以更高的 Gas 抢先,首先购买 NFT
- 机器人立即以 14.5 ETH 重新上市
- 原始买家要么支付更多费用,要么错过机会
统计数据:
根据 MEV 研究公司 Flashbots 的数据:
- 15-20% 的 NFT 市场交易经历过抢先交易
- 成功的抢先交易平均利润为 0.5-2 ETH
- 高价值 NFT(>50 ETH)的抢先交易尝试率超过 60%
反向运行策略
后台运行涉及在目标交易之后立即进行交易,以从其市场影响中获利,而不干扰原始交易。
Oracle 更新返回运行
当价格预言机更新时,DeFi 协议会调整价格。在套利者做出反应之前,落后者会利用短暂的窗口。
进程:
- Chainlink 预言机将 ETH 价格从 2,000 美元更新至 2,100 美元
- 借贷协议现在对 ETH 抵押品的估值为 2,100 美元
- 立即竞选:
- 以新的更高估值以 ETH 抵押品借入最大金额
- 在大盘实现价格变化之前交换借入资产
- 在市场调整后偿还贷款
- 从临时错误定价中获利
清算回流
在使头寸可清算的交易后立即执行清算。
场景:
- 大额 ETH 卖单执行,ETH 价格下跌 5%
- 这使得 Aave 上的头寸 X 抵押不足
- 落后者的机器人检测到位置 X 现在可以清算
- 在同一区块中提交清算交易
- 获得 8% 清算奖金
- 利润:清算奖金减去天然气成本
成功因素:
- 速度:必须在竞争对手之前清算
- 资本:需要资金偿还债务(或使用闪电贷款)
- Gas 优化:Gas 越高 = 包含的机会越大
套利回流
从大额交易造成的价格差异中获利。
示例:
- Whale 在 Uniswap 上将 10,000 ETH 兑换成 USDC
- 这使得 Uniswap ETH 价格比 Binance 低 2%
- 立即支持:
- 在 Uniswap 上以折扣价购买 ETH
- 在币安上以更高的价格出售 ETH
- 临时价格差异利润
实现:
合约 BackRunningArbitrage {
函数执行返回运行(
地址[]内存路径,
uint256 金额,
uint256 minAmountOut,
uint256 块编号
)外部{
// 仅在特定块中执行(在目标 tx 之后)
require(block.number == blockNumber, "错误的块");
// 执行套利交易
uint256 amountOut = swapExactTokensForTokens(
金额,
最小出金额,
路径,
地址(这个),
区块时间戳 + 60
);
// 利润检查
require(amountOut > minAmountOut, "利润不足");
}
}
三明治攻击
三明治攻击结合了前端运行和后端运行,以从受害者交易中获取最大价值。
攻击机制
经典三明治:
- 抢先交易(购买):机器人在受害者之前购买 TOKEN,提高价格
- 受害者交易:受害者的买入订单以虚高价格执行
- 反向运行(出售):机器人以峰值价格向受害者出售 TOKEN
- 结果:机器人从价格操纵中获利,受害者遭受损失
具体示例:
设置:
- 代币价格:10 美元
- 受害者想要以 10,000 美元购买 1,000 个 TOKEN
- 矿池有 100,000 TOKEN 流动性
攻击序列:
- 机器人购买 5,000 个 TOKEN,将价格推至 10.50 美元
- 受害者以 $10.50 = $10,500 的价格购买 1,000 个 TOKEN
- 机器人以 10.40 美元 = 52,000 美元的价格出售 5,000 个代币
- 机器人成本:50,000 美元;收入:52,000 美元
- 机器人利润:2,000 美元
- 受害者损失:500 美元(支付 10.50 美元,而不是 10.00 美元)
多交易三明治
高级机器人同时夹入多个交易以获得更高的利润。
策略:
监控内存池中同一代币对上的多个待处理交易:
- 大额购买抢先整批
- 让所有受害者交易以虚高的价格执行
- 进行大量抛售以最大限度地提取收益
盈利能力:
可以提取受害者总交易量的 1-5%,使大型三明治极其有利可图(大批量配对中每个三明治可获利 10,000 至 100,000 美元)。
MEV 保护策略
对于交易者
1. 私密交易提交
使用私有内存池来防止公众可见性:
Flashbot 保护:
const {Flashbots} = require('@flashbots/ethers-provider-bundle');异步函数 sendPrivateTransaction(tx) {
const flashbotsProvider = 等待 Flashbots.create(
提供者,
授权签名者,
'https://relay.flashbots.net'
);
constsignedTx = 等待 wallet.signTransaction(tx);
返回等待 flashbotsProvider.sendPrivateTransaction({
交易:签名Tx,
最大块编号:当前块 + 5
});
好处:
- 无内存池可见性 = 无抢先交易
- 没有失败的交易浪费gas
- 公平交易排序
2. 严格的滑点容差
设置最大可接受滑点 (0.1-0.5%) 以防止三明治攻击:
函数 swapWithSlippageProtection(
uint256 金额,
uint256 minAmountOut, // 计算公式为:expectedOut * 0.995
地址[]内存路径
)外部{
uint256 amountOut = router.swapExactTokensForTokens(
金额,
最小出金额,
路径,
消息发送者,
区块时间戳 + 300
);
require(amountOut >= minAmountOut, "滑点太高");
3. 限价订单
使用限价单而不是市价单来指定确切的执行价格:
合约 LimitOrderProtection {
结构顺序{
地址令牌;
uint256 金额;
uint256 限制价格;
uint256 到期;
}
函数创建限价订单(
地址令牌,
uint256 金额,
uint256 limitPrice 价格
)外部{
订单[msg.sender] = 订单({
令牌:令牌,
金额:金额,
限制价格:限制价格,
到期时间:block.timestamp + 24 小时
});
}
4. 延时执行
将大额交易拆分为多个区块,以减少单笔交易 MEV 风险。
对于协议
1. 提交-揭示方案
实施两步交易:
- 提交阶段:用户承诺交易哈希而不透露详细信息
- 揭示阶段:提交被挖掘后,用户揭示交易详细信息并执行
2. 批量拍卖
收集时间窗口内的所有订单并作为单个批次执行:
- CoW 交换:使用批量拍卖进行 MEV 保护
- 结果:订单以相同的清算价格成交,消除了夹心机会
3. 抗 MEV AMM
设计 AMM 机制,使 MEV 提取无利可图:
- 渗透:对私人交易使用阈值加密
- Gnosis CoWSwap:批量拍卖和求解器竞争
- Rook 协议:MEV 捕获并重新分发给用户
4. 公平交易排序
执行先到先得的排序规则:
- Chainlink FSS:公平测序服务
- 仲裁:先到先得的排序器
- 结果:减少但不消除 MEV
道德考虑
MEV 辩论
Pro-MEV 参数:
- 市场效率:MEV 机器人提供保持价格一致的套利
- 清算服务:确保借贷协议偿付能力
- 经济安全:验证者奖励提高网络安全性
- 自由市场:任何人都可以竞争 MEV 机会
反 MEV 论点:
- 用户利用:三明治攻击直接伤害零售交易者
- 中心化:MEV 青睐技术成熟的玩家
- 网络拥塞:MEV 机器人提高所有人的汽油价格
- 不公平优势:验证者拥有订单流的特权访问权限
监管环境
美国 SEC 立场:
- 如果应用于代币化证券,抢先交易可能违反证券法
- 2024-2025 年加强对 MEV 实践的审查
- 某些 MEV 策略可能被归类为市场操纵
以太坊社区:
- PBS(提议者-构建者分离)实现民主化 MEV
- 正在进行 MEV 最小化研究
- 关注 MEV 重新分配而不是消除
MEV 的未来
合并后以太坊
以太坊向权益证明的过渡改变了 MEV 动态:
预合并(PoW):
- 矿工控制交易排序
- 大型矿池主导 MEV 提取
- 中心化优势
合并后 (PoS):
- 验证者提议区块
- PBS 将建设与提案分开
- 更多分布式 MEV 机会
其他链上的 MEV
索拉纳:
- 没有公共内存池会减少 MEV
- 但验证者仍然具有排序能力
- Jito Labs 开发 MEV 基础设施
币安智能链:
- 与以太坊类似的 MEV 景观
- 较低的天然气成本使较小的 MEV 机会变得可行
宇宙:
- Osmosis 实现阈值加密
- 跳过协议构建跨链 MEV 解决方案
第 2 层解决方案:
- 乐观/任意:定序器具有排序控制
- zkSync/StarkNet:隐私功能减少 MEV
- 持续挑战:平衡效率与公平
新兴解决方案
1. MEV 重新分配:
不是消除 MEV,而是将利润重新分配给用户:
- Rook 协议:将 MEV 返回给交易者
2. 加密内存池:
阈值加密:
- 提交加密交易
- 仅在包含在块 后才解密
- 消除抢先交易机会
3. 公平排序协议:
- Chainlink FSS:基于 Oracle 的公平排序
- 仲裁:默认先到先得
- 目标:为所有用户提供公平的竞争环境
4.跨链MEV:
随着桥梁的激增,跨链 MEV 机会出现:
- 跨链套利
- 跨链清算
- 桥操纵攻击
实用 MEV 工具包
结论
MEV 套利代表了加密货币市场中技术、经济和道德的复杂交叉。虽然前置和后台策略对于经验丰富的运营商来说可以带来高额利润,但它们往往是以牺牲普通用户和整体市场公平性为代价的。
关键要点:
- MEV 是不可避免的:只要交易顺序重要,MEV 就会存在
- 保护至关重要:交易者必须使用私有内存池和适当的滑点设置
- 技术正在不断发展:PBS、加密内存池和公平排序解决方案正在改进
- 道德问题:考虑 MEV 提取对生态系统健康的更广泛影响
- 监管审查加强:MEV 策略可能面临更严格的监管
MEV 的未来不在于消除,而在于公平分配和最大限度地减少有害开采。 Flashbots、MEV-Share 和协议级保护等解决方案正在推动生态系统走向更加公平的 MEV 格局,所有参与者都可以从提高的市场效率中受益,而不会遭受掠夺性行为。
常见问题
问:MEV 提取合法吗?
答:MEV 提取本身处于合法的灰色地带。虽然套利通常是合法的,但某些策略(例如三明治攻击)可能构成证券法规定的市场操纵行为。监管的清晰度仍在不断发展,特别是对于代币化证券而言。
问:MEV 机器人能赚多少钱?
答:顶级 MEV 机器人每月可赚取 50,000 至 500,000 美元,在某些特殊时期可赚取数百万美元。然而,竞争非常激烈,盈利需要大量的技术专业知识和基础设施投资(5 万至 20 万美元的启动成本)。
问:作为交易者我可以避免 MEV 攻击吗?
答:是的,通过使用:1)私人交易提交(Flashbots Protect),2)严格的滑点容限(0.1-0.5%),3)限价订单而不是市价订单,4)抗 MEV 的 DEX,如 CowSwap,以及 5)在低拥堵期间进行交易。
问:抢先交易和后轮交易有什么区别?
答:抢先交易将交易置于目标交易之前,以从其预期影响中获利。后台运行将交易放置在目标交易之后,以利用其产生的价格变化。三明治攻击将两者结合起来。
问:验证者总是提取 MEV 吗?
答:不会。合并后的以太坊使用提议者-构建者分离(PBS),其中专门的构建者构建区块并由验证者提出建议。许多验证者使用 MEV-Boost 外包区块构建,同时通过竞争性拍卖获取 MEV 收入的份额。