高手续费的元凶之一:MEV如何影响以太坊链上交易的 后,发现这里还隐藏着一个新的世界,那就是MEVMEV简而言之就是区块链上的一种套利机制。首次出现是在2018年的时候,当然这种模式主要还是依赖于智能合约和DEX等交易的套利。由于17年的牛市发展催生了大量新兴项目,很多去中心化的DEX、兑换协议也开始出现在人们的眼前,也正是从那时起,其实MEV已经存在了。之前MEV没有引起币圈的关注,其实主要还是因为以太坊链上交易的频率相当低,DEFI当时还是以MakerDAO为主,这样一来,MEVMEVMEV简而言之就是区块链上的一种套利机制。首次出现是在2018年的时候,当然这种模式主要还是依赖于智能合约和DEX等交易的套利。由于17年的牛市发展催生了大量新兴项目,很多去中心化的DEX、兑换协议也开始出现在人们的眼前,也正是从那时起,其实MEV已经存在了。之前MEV没有引起币圈的关注,其实主要还是因为以太坊链上交易的频率相当低,DEFI当时还是以MakerDAO为主,这样一来,MEV的发展其实并不顺利,套利机会自然也就低了很多。而随着uniswap等交易模式逐渐引起用户关注之后,MEV也开始蓬勃发展起来,而从目前来看,以太坊高昂手续费的背后,很有可能是MEV的锅。MEV是如何运行的呢?这里就要说一说传统中心化交易所的套利交易和高频交易了,如果你体验过传统交易所特别是小交易所中的某个交易金额比较少的交易对,其实就会发现买一和卖一之间的价差会比较大,而这种现象其实就是真实市场的一种表现。项目方为了使得币价能够正常波动,一般都会寻求一些做市商来进行合作,而做市商则使用的是机器挂单的方式来为项目代币交易提供流动性,这种方式也有另一种通俗的叫法,那就是刷量。高频交易也是一种类似的刷量方式,做市商其实大部分都使用的是高频交易,他们利用时间上的优势来在高于高于用户挂单买入,然后迫使用户撤掉之前的挂单,以更高的价格买入,这样一来就可以完成一波盈利操作。而高频交易的手续费一般都是机构和交易所商量好的,手续费也特别低,甚至因为起到提供流动性的因素,一些交易所甚至会对这类团队实行免手续费的优惠措施,那么这样一来,高频交易在币圈蓬勃发展。那么我们说到MEV,其实就相当于去中心化交易所版本的高频和套利交易,但是去中心化交易所和中心化交易所有一点是不同的,那就是去中心化交易所的TPS是有一定限制的,因此这里就会出现了拥堵的情况,进而套利者就需要计算出完成一笔交易所需要的手续费成本和套利交易金额所赚的钱之间的关系,从而评估这次的交易是否值得进行。另外需要注意一点的是,在去中心化交易的过程中,其实对这种套利交易模式更加有利,主要有两个原因:1、盘口价差比中心化交易所会大一些,一般5%可能都属于非常普遍的现象,因此这部分利润其实是比较大的,这样就为MEV提供了生存环境。2、在利润大的情况下,一般也需要交易者需要有一定的抢跑能力,中心化交易所中一般大家都可以随时挂单和撤单,这里几乎是没有任何成本的。但是在去中心化交易所中,撤单和挂单都有成本,因此MEV需要做的就是比用户能够以更高的价格来挂单买入,然后再利用AMM交易机制的滑点来卖给后来的买入者。但是这里需要关注的风险就是矿工的打包能力,矿工需要按照特定的交易顺序来对交易进行打包才能提高MEV的成功率,也就是说MEV其实需要矿池来进行配合,这样才能真正获利。我们都知道矿池是可以自己决定打包交易的顺序的,而如果MEV交易先于正常交易被打包,那么这次的套利就获得了成功,如果落后,那么可能会失败,从这一点来说,MEV其实并不是100%都能获利的,它也存在着一定的概率,而矿池则有更高的动力来进行MEV套利交易,也正是这个原因。这里需要注意的是我们说的是矿池,而不是矿工,一般矿池的MEV盈利是扣除各种手续费之后的那部分,而即使失败,实际的损失也会小于所花费的手续费(前提是算力占比够大)。MEV套利是否会失败呢?虽然MEV的交易看似主动权都在矿池手里,而且还能够获得一定预期的套利机会,并且都采用程序的方式来进行,也就是几乎可以说这就是一个赚钱的机会,但是实际情况是MEV也存在着套利失败的情况。这种情况一般一方面是币价的波动,另一方面也有针对MEV交易的套利者,当然由于其机制较为复杂,本次暂时不进行讨论。不管是什么原因,也MEV的减少,在一定方面人们看到了确实对以太坊手续费降低产生了效果,那么这就已经说明了之前的套利交易是相当普遍的,那么最终这场战争可能就会转变为MEVMEV终结者之间的对抗,可以预计后期链上的MEV交易也将降低很多。其实最终不管这个结局是什么,至少证明了一件事情,那就是以太坊交易手续费的上涨其实是由于交易量增加所致,对于矿工来说,最多可能只赚到了交易中MEV抢跑的手续费,而真正的利润部分,可能就由矿池和MEV交易机器人所有者获得了。但是不管如何,ME
cncoin 2021-04-13 16:01  以太坊  Gas费  MEV
DeFi之道丨以太坊黑暗森林的一次猎杀:套利机器人惨遭套利130 ETH 安全之地。然而,随着FlashBots等MEV(矿工可提取价值)服务的兴起,这使得交易者可以创建一些“三明治包”(sandwichbundles),其中3笔交易要么全部被执行,要么都不执行。与此同时,矿工交易团队的活动也在增长,他们将“三明治包”直接纳入到自己挖得的区块。这两种创新的结合,就使得三明治交易者可以进行一些“无风险”的套利活动,这让很多人陷入了兴奋的情绪当中。但实际上,“无风险”并不是真的没有风险。为了向大家说明在mempool中玩游戏的风险,我演示了一种新的称为“沙门氏菌”(Salmonella‌)的新交易策略,它涉及到利用通用的抢跑交易设置。三明治交易的目的是利用他人交易造成的滑点来获利,而这种策略的目的是惩罚剥削者。对区块链进行的快速分析显示,目前一个名为“Ethermine”的团队执行了市场上大部分的三明治交易,在确定了最初的目标后,我开始分析他们的设置。在撰写MEV(矿工可提取价值)服务的兴起,这使得交易者可以创建一些“三明治包”(sandwichbundles),其中3笔交易要么全部被执行,要么都不执行。与此同时,矿工交易团队的活动也在增长,他们将“三明治包”直接纳入到自己挖得的区块。这两种创新的结合,就使得三明治交易者可以进行一些“无风险”的套利活动,这让很多人陷入了兴奋的情绪当中。但实际上,“无风险”并不是真的没有风险。为了向大家说明在mempool中玩游戏的风险,我演示了一种新的称为“沙门氏菌”(Salmonella‌)的新交易策略,它涉及到利用通用的抢跑交易设置。三明治交易的目的是利用他人交易造成的滑点来获利,而这种策略的目的是惩罚剥削者。对区块链进行的快速分析显示,目前一个名为“Ethermine”的团队执行了市场上大部分的三明治交易,在确定了最初的目标后,我开始分析他们的设置。在撰写本文时,Ethermine的设置相当基础,其依靠的是Uniswaprouter来执行交易,而交易历史显示Ethermine的大部分交易都属于revert交易,其智能合约本身也持有各种失败交易的代币,考虑到这些之后,我开始着手创建我的Salmonella合约。Salmonella合约的前提非常简单,它是一个常规的ERC20代币,其行为与正常用例中的任何其他ERC20代币完全相同。但是,它有一些特殊的逻辑来检测除指定所有者以外的其他人何时在进行交易,在这些情况下,它只返回指定金额的10%。下面就是“有毒”的transfer函数:function_transfer(addresssender,addressrecipient,uint256amount)internalvirtual{require(sender!=address(0),"ERC20:transferfromthezeroaddress");require(recipient!=address(0),"ERC20:transfertothezeroaddress");uint256senderBalance=_balances[sender];require(senderBalance>=amount,"ERC20:transferamountexceedsbalance");if(sender==ownerA||sender==ownerB){_balances[sender]=senderBalance-amount;_balances[recipient]+=amount;}else{_balances[sender]=senderBalance-amount;uint256trapAmount=(amount*10)/100;_balances[recipient]+=trapAmount;}emitTransfer(sender,recipient,amount);}我部署了Salmonella合约,然后建立了一个包含Salmonella和以太坊的简单Uniswap池子。然后,我用二分检索法复制了三明治交易的检测数学,创建了一系列诱饵交易,使得Ethermine和其他三明治交易者会认为这是一个有趣的机会。最后,我编写了一个执行架构,使我能够快速取消交易、更改gas价格和重置陷阱Uniswap池的状态。在喝了几杯浓咖啡之后,我开始工作,发出了一系列诱饵交易,谨慎地将价格定在略低于市场gas的水平,以保持交易在mempool中,但如果价格开始下降,我就取消掉交易。不到几个小时的时间,我就遇到了第一个目标,并从其机器人那里掠夺了68ETH,又过了几个小时后,我又从他们的合约中捞走了35ETH。过了一夜时间之后,我浏
洒脱喜 2021-03-22 15:45  以太坊  MEV
矿工积极参与MEV游戏,Gas费上涨,是福是祸? nerExtractedValue,简称MEV),这种“合法”操作,这就是我们经常听到的抢跑交易(frontrunning),如今越来越多矿工积极参与获取MEV的游戏。矿工的权力也许比我们想象的要大多了,他们是如何进行抢跑以获得MEV的,这些操作将会对以太坊生态造成什么影响?致力于减轻MEV给智能合约区块链带来的负面外部性和风险的研究和开发组织Flashbots首次对MEV进行深入研究,他们从2020年的第一个区块开始扒底研究Ethereum区块链,对超过130万笔MEV交易进行了分类,发现自2020年1月1日以来,至少有价值3.14亿美元的MEV被提取,失败的MEV交易浪费了450万美元的Gas费,相当MEV),这种“合法”操作,这就是我们经常听到的抢跑交易(frontrunning),如今越来越多矿工积极参与获取MEV的游戏。矿工的权力也许比我们想象的要大多了,他们是如何进行抢跑以获得MEV的,这些操作将会对以太坊生态造成什么影响?致力于减轻MEV给智能合约区块链带来的负面外部性和风险的研究和开发组织Flashbots首次对MEV进行深入研究,他们从2020年的第一个区块开始扒底研究Ethereum区块链,对超过130万笔MEV交易进行了分类,发现自2020年1月1日以来,至少有价值3.14亿美元的MEV被提取,失败的MEV交易浪费了450万美元的Gas费,相当于浪费了4500个以太坊区块空间!以下是Flashbots通过公共仪表板和实时MEV交易浏览器MEV-Explore发布的研究结果。引介MEV是一个度量指标,它指的是无需许可地对区块链上一个区块内的交易对进行重新排序、插队或删减,从而可以提取的总价值。到目前为止,以太坊上的MEV主要是由DeFi交易者和机器人执行那些交易顺序很重要的策略时提取的,有一小部分则是这些交易者或者机器人提取MEV时所产生的gas费。MEV-ExploreV0并不会给出特定区块中可以提取的理论价值,例如矿工从他们正在生产的区块中对交易进行重新排序可以获得多少MEV,而是专注于目前在Ethereum上发生的MEV活动的经验证据。在Ethereum上已经提取了多少MEV?DeFi交易员和机器人获取了多少MEVMEV交易花费的gas里有多少给到挖掘出MVE交易方案的矿工?最常见的MEV提取策略有哪些类型?哪些DeFi协议包含的MEV最多?成功和失败的MEV交易会占用多少网络资源?带着这些问题,我们对Ethereum进行了搜刮,覆盖到8种以上的主要DeFi协议,并收集了2020年1月1日以来链上的130多万笔MEV交易。通过我们推出的MEV-Explorev0(explor.flashbots.net)公开仪表盘,大家可以实时跟踪Ethereum上最新的MEV交易等情况。自2020年1月1日以来,MEV提取量至少达3.14亿美元从2020年第一个区块(9193266)开始,我们发现以太坊上被提取的MEV至少达到了3.14亿美元(约54万ETH)的规模,其中包括成功的、被恢复的和被检查的MEV交易,以及和这些交易相关的Gas费。(图1:2020年1月至今累计的MEV)提取的MEV大幅增长:2021年1月,MEV提取额为5700万美元(4.76万ETH),与2020年1月记录的18万美元(1.1万ETH)相比,以美元计价绝对值增长了300多倍,以ETH数量计算增长了43倍。鉴于在数据收集过程中并没有覆盖全部的协议和交易类型,我们相信实际提取的MEV会高于上述的衡量标准。预计该指标将继续增长,因为DeFi将会继续增长、Ethereum的复杂性会日益增加,复杂性增加将衍生出从交易排序中获取价值的新方法,更复杂的MEV提取方法的出现也将把MEV数值推高。在MEV-Explorev0中,我们通过MEV-Inspect对MEV活动进行量化和分类。目前,我们基于这些指标进行了数据收集,以此观测了下表所列的8个协议(见图2)。有许多新兴的DeFi协议,其MEV暴露比较显著(例如ESD/DSD),同时也有在DeFi大爆发之前就存在MEV暴露的DeFi协议(例如Bancor、Kyber、Etherdelta、Airswap),我们正计划在下一个版本中增加对这些协议的观察。此外,尚有大量的MEV活动未被涵盖到,比如多重交易机会(例如三明治交易)和CEX-DEX价格套利。(图2:覆盖的协议)提取的MEV都包含什么?如上所述,如今MEV主要是由交易者抓住那些依赖于交易顺序的交易机会而获得的。这包括Uniswap上代币之间的价格套利、dYdX上预言机更新后的贷款清算、ESD(算法稳定币)的兑换券赎回等机会。我们将MEV交易分为两大类:成功的和失败的。失败的交易包含两个子类型:被恢复的(Reverted)和被检查的(Checked)。成功的MEV交易是指那些追踪MEV机会并成功将其捕获的交易。被恢复的MEV交易是一种失败的MEV交易,交易者追踪一个MEV机会,但出于种种原因没能抓住它,比如有人比他们先抢到了机会、他们没gas了或者市场条件发生了不利的变化。被检查的MEV交易是另一种的失败的MEV交易,失败的原因比较微妙,发送者为了节省gas费,首先会检查机会是否还存在,然后才启动他们的MEV交易。虽然发送者最终还是要为他们的检查支付gas费,但其成本比直接启动交易要低得多。让我们来看几个例子:例1:通过优先拍卖gas费的成功MEV交易在3个流动性池:Balancer的ETH/USDC、Sushiswap的USDC/SIL和Sushiswap的SIL/ETH之间进行3跳套利,支付了12个ETH(当时为1.41万美元)的交易费用,价值16.7个ETH(当时为1.96万美元)的提取MEV。https://etherscan.io/tx/0x2bde6e654eb93c990ae5b50a75ce66ef89ea77fb05836d7f347a8409f141599f高额的交易费表明了这样一个事实,发送者为了与其他交易者竞争套利机会,在其现有的交易被打包之前,反复竞价提高其套利交易的gas价格。一个gas拍卖的失败者在这里损失了1.18ETH的"检查"MEV(见例3)。上面这个获胜的交易最终支付了5.16万gwei的gas价格,比当时的平均gas价格(94gwei)高547倍,但只比失败者高2倍(2.76万gwei)。tx#1的提取MEV明细:发送方为4.7ETH(当时为5.5千美元),该区块的矿工F2Pool为12ETH(当时为14.1千美元)。tx#2的提取MEV明细:该区块的矿工F2Pool为1.18ETH(当时为1.4千美元)。例2:失败的(被恢复的)MEV交易一笔试图从CreamFinance的清算中获取MEV的交易,因为没gas了而失败,发送者损失了5.75ETH(当时约1万美金)的交易费用https://etherscan.io/tx/0x8cfb46876ce1d40250e9690482bdaaffc1f6b60e18c3405ff5e98b636840875f有这样一笔交易,为了清算CreamFinance的仓位,使用1.5Mgas,花费近6ETH的费用,以申请8.8万USDC闪电贷。它一开始是这么执行的,然后由于缺乏需要的gas费而中途失败。虽然从表面上看0x8cfb4看起来很无辜,但其内部交易显示超过237笔。这是一个非常复杂的交易,在EVM计算中有着复杂的逻辑,最终使用了1.5M的gas,几乎是它所包含的区块的13%!不管用了多少gas,这笔交易还是因为用完gas而失败了,最终让发送者损失了约5.75ETH(当时约1万美元)的交易费用。在这次"被恢复的"交易后,机会仍然存在,被gas费第二高(或第一个失败者)拍卖者抓住了,总的MEV提取值为4.125ETH,其中支付的gas费为3.75ETH。tx#1的MEV提取明细:发送者的收入为0美元,该区块的矿工Sparkpool的收入约为5.75ETH(当时约9.3K美元)tx#2的MEV提取明细:发送者#2的收入为0.375ETH(当时为600美元),该区块的矿工Sparkpool的收入为3.75ETH(当时为约6千美元)例3:一个失败的(被检查的)MEV交易有一笔交易,检查了UniswapWETH/PRT、UniswapSFI/PRT和SushiswapSFI/WETH的流动性池想要寻找3跳套利机会,发现机会不存在于是返回,只消耗了43Kgas,让发送方损失了约0.01ETH(当时19美元)的交易费用。https://etherscan.io/tx/0xf629036e2740a98e1ca5ce32fff85f27337d224e94cbeee6c3d7aabb7507b050有些交易者比我们例2中的第一个发送者更节约成本,在发送一个逻辑复杂、消耗大量gas的交易之前,会执行一个"检查",以验证机会是否还在。我们认为这些也是失败的MEV交易,因为MEV交易最终没有被发送,因为检查返回的结果是机会已经消失了。提取的MEV明细:发送者的收入为0美元,出这个块的矿工收入为0.01ETH(当时为19美元)MEV交易有很多迷人之处,比如其复杂性、或多或少优雅地失败的方式,以及由于它们讲述的关于化名用户的故事(就像来自看似错位的0x开放订单簿的这笔套利,它为发送者净赚了190万美元的收入,收取了73美元的交易费用)。提取MEV的网络费用DeFi交易机器人通过参与像例子1中的抢跑/优先gas拍卖和参与追跑(backrunning)来争夺MEV机会(即在同一区块中,通过向网络发送许多gas价格略低于或等于目标的交易以图有一个被打包上,从而尽可能地跟在特定交易(如预言机更新)的后面)。这两种做法对Ethereum都是不利的,因为它使链上的交易量激增,对gas费施加上行压力,就像上面例子2中高企的gas价格。这样高企的价格会对Ethereum的无需许可性造成冲击,因为对小用户来说成本太高,迫使他们离开这个网络。此外,一笔交易会赢得一个MEV机会,我们发现Ethereum区块链上到处都是被恢复的和被检查的交易,我们将其归类为失败MEV交易。我们认为这些失败的MEV交易都不需要记录在链上,占用宝贵的区块空间。自2020年1月1日以来,提取MEV的操作至少占Ethereum网络整体gas消耗的3%(见图4)。放大还原和校验的MEV交易,我们发现它们的gas消耗至少可以填满4500个Ethereum区块,浪费了大量宝贵的区块空间!(图3:自2020年1月1日以来,按成功的(绿色)和失败的(红色)MEV交易划分,提取的MEV的gas量相对于整体网络gas量)\MEV的演进:矿工最大可提取价值今天以太坊在转向POS之前,矿工在交易打包和排序方面拥有最大的权力,因为他们是区块生产者。MEV一词最初是由PhilDaian等人在2019年的研究报告《闪电男孩2.0:抢跑、交易重新排序与DEX的共识不稳定》中提出的,意为矿工可提取价值。然而,MEV存在于所有智能合约区块链上,其中会有一方负责交易排序,执行这个操作的不一定是矿工,比如还有ETH2.0中的验证者和OptimisticRollups上的rollup提供者。因此,我们建议将MEV改名为最大可提取价值(maximalextractablevalue),扩大范围以涵盖其他区块链架构,同时仍保留MEV这个命名。从MEV的名称中去掉矿工这个词也解决了另一个常见的困惑:认为只有矿工是获取这个价值的唯一角色。现实情况是,到目前为止,以太坊上的MEV主要是由非挖矿的DeFi交易者和机器人提取的。(图4:自2020年1月1日起,MEVTx发送者和MEVTx开采者之间的提取MEV分成(gas费))然而最近几个月,我们开始看到更多的矿工积极参与MEV游戏,他们可以通过自己运行机器人直接提取、与DeFi交易者达成利润分成协议,或者采用提取MEV的市场基础设施,比如Flashbots的MEV-Geth。避免MEV危机MEV危机可能在以下几个方面发生:矿工激励失调导致共识不稳定,单方面的矿工交易导致不公平的信息不对称,以及网络费用过高导致Ethereum无法使用。这个危机很难解决,因为任何阻止矿工或交易者获取MEV收入流的尝试都可能导致不透明的协议外市场的滋生,然而Ethereum越来越高的复杂性(比如新智能合约部署,新用户加入,新的可组合性)表明MEV的规模只会继续增长我们认为提取MEV是不可避免的。为了避免MEV危机,提取必须以无需信任、公平、高效的方式进行。为避免这一危机,我们采取的第一步是创建一个高效和公平提取的机制,并努力改善其信任保证。展望虽然围绕MEV有了很多的关注,但一直停留在理论阶段,但直到最近几个月才有点走向实践,可以看到Zhou等人发表的研究论文《量化区块链可提取价值:森林有多黑》,以及1月21日我们MEV研讨会进行的讨论。这可能是因为量化MEV很麻烦,它需要大量的基础设施、数据分析和与智能合约交互进行深入了解。更糟糕的是,随着越来越多的安全关键基础设施转移到链外(例如,清算器机器人的交易逻辑转移到链外),以及链上状态和规模的增长,理解MEV将变得越来越复杂。我们相信未来MEV对以
屏风 2021-02-24 09:42  MEV  Gas费  矿工
加载更多