读懂MEV链上套利操作_WETH:AlphaSwap

01

什么是MEV?

我经常被问到MEV是什么,以及抢先交易和尾随交易是如何工作的,那么我就以我自己的机器人工作机制为例,在这篇长文中做一个解释。

链上流动性是碎片化的,虽然类似Uniswap这样的流动性池子很多,但是它们之间没有相互通信,每个池子都提供实时交换资产的报价,而正是这种分散的流动性,创造了在不同池子中低买高卖的机会。

举例:一个用户在Uniswap的WETH-USDC池子卖出了500万美元的WETH,当他卖出的时候,Uniswap上的WETH价格下降,那么它就会允许其他用户以相较于Sushiswap上更便宜的价格购买WETH。

因此,精明的用户就可以在Uniswap上购买WETH,然后在Sushiswap上面出售。

02

直播 | 方鱼 > 老牌交易所满币如何在合约市场异军突起:金色财经 · 直播主办的《 币圈 “后浪” 仙女直播周》第5期本期3:00准时开始,本期“后浪”仙女 满币网 CMO 将在直播间聊聊“老牌交易所满币如何在合约市场异军突起”,感兴趣的朋友扫码移步收听![2020/6/18]

链上套利有什么不同?

上面举例说的是传统套利的原理,链上defi还多了一点不同的东西:原子性。

我们都知道,区块链的状态逐块更新,这意味着一个交易里面可以执行多个操作,前提是这个交易的最终状态是正确的,即这个交易最终要是成功的。

例如,我可以从Aave借贷池免费借到500万美元的USDC,前提是我在交易结束时将500万美元的USDC准确归还给借贷池,这就是传说中的「闪电贷」,相信你在很多项目被盗的新闻中经常听到。

声音 | V神:如何公平有效地分配资源取决于机制设计的可信度:据prnewswire消息,V神表示,好的机制应该能够给需求方分配最佳资源,无论需求方是项目、政府还是公司。如何公平、有效地分配资源取决于机制设计的可信度。虽然中心化机制仍然是常态,但这要求所有参与方都相信中心化机制能够正确运作。[2018/9/15]

闪电贷为那些没有大量资金的用户免费创造了大规模链上套利的机会。当然了,这种钱并不容易赚。以上套利思路的出现,就带来了「套利空间的竞争」。

而大多数原子套利的空间都由少数地址主导,这些地址获得了大部分的利润,所以这大概率是所有领域中竞争最激烈的一块儿。套利的成功,是套利者的智慧、网络的低延迟以及良好的基础设施的结合。

03

机器人是如何工作的?

机器人会直接连接到内存池,内存池是一个队列,里面存储着一组等待被确认的交易。机器人会埋伏在池子里面,等待可以创造套利机会的交易出现。

在恶性通胀的委内瑞拉,比特币如何成了\"硬通货\":3月26日消息,据国外媒体报道,在世界各地,比特币主要是一种投机性投资,其飙升的价格往往被人们视为数字货币泡沫。而在委内瑞拉,由于国家的通货膨胀率畸高,持有数子货币成为了当地民众的生存手段。[2018/3/26]

一旦发现可套利的交易,机器人会自动计算套利的最佳方式,然后将一系列操作,放到一个交易里面,直接将这个交易提交到内存池中,和可套利的那个交易放在同一个区块中进行打包。

我的机器人会在类似Uniswap这样的交易所中寻找的套利机会,它可以在目标交易出现后执行,最后以利用不同池子之间流动性的差异,来获取利润。

为了搞明白什么样的交易算是可套利的机会,你必须先要了解UniswapV2的工作原理。

04

UniswapV2的工作原理

中国纪检监察报:中国区块链发展的最大挑战是“如何让监管理解区块链并适度监管”: 中国纪检监察报发文表示,区块链底层技术获得实质性突破之前的这个阶段,恰恰是一个战略机遇期。如果中国区块链行业能紧密合作,监管能够适当包容、鼓励,中国在区块链领域引领全球指日可待。实际上,区块链技术最终必然演化为“监管融入技术”的模式,区块链的难以篡改、共享账本和分布式的特性,更易于监管介入,获得更加全面实时的监管数据。让监管机构本身也参与到技术中去,通过技术本身实现对技术的监管,最终化解区块链与监管的冲突。[2018/3/6]

假设一个池子里面包含X个WETH和Y个USDC,并且它允许用户在池子中进行WETH和USDC的交易。那么池子的管理原则是:保证这个X和Y的乘积始终是一个常数我们称之为「Uniswap不变量」。

因此,对于一个储备为(X,Y)的池子,我们可以通过求解以下等式计算出我们期望将ΔXWETH卖出多少USDC到矿池中:

中国信通院云计算与大数据研究所所长何宝宏:区块链中如何使用共识机制是大问题:中国信通院云计算与大数据研究所所长何宝宏:区块链是唯一崛起于草根的颠覆性技术,越来越多的行业应用正在采用分布式账本技术;在区块链中如何使用共识机制是大问题,当信任缺失时,共识机制十分消耗算力;区块链技术人才需求朝复合型方向发展。[2017/12/22]

实际操作中,池子还会收取大概30bps的手续费,在计算上面的公式时,你可以通过将ΔXWETH乘以0.997来保证计算结果的准确性。为了解释起来方便,我们这里简化一下,省略这个步骤。

重要的是,我们可以重新拓展和排列这个方程,然后根据WETH输入的ΔX,得到一个UDDC输出的ΔY的表达式:

不错,现在在任何一个UniswapV2池子中给你一个输入量,相信你都能确切地计算出预期输出量了。

05

套利机会是如何运作的?

套利一般可以简化为「低买高卖」,在这种情况下,我们需要找到一个A池去购买WETH,A池的WETH价格比B池的便宜,然后我们将WETH在B池中出售,即在A池中低买,在B池中高卖。

假设A池有储备金(X,Y),B池有储备金(X,),那么如果我们在A池中卖出ΔX个WETH,收到ΔY个USDC,那么我们可以计算这些USDC在B池中能后换到多少个WETH,如果有得赚,那么一个套利机会就形成了。

所以让我们计算一下,在第一次交易中,我们将X换成Y,第二次交易中,我们又将换成X,根据前面的方程,计算如下:

这里的ε表示输入的ΔX与执行两次交易之后的输出之间的差异。如果我们能找到将ε>0最大化的方法,我们就找到了有利可图的套利。

所以我们可以用下面这个表达式来简化我们上面的方程:

套利机器人的其中一项工作就是使得利润最大化,在我们的方程中,这相当于最大化ε。只有当A>B时,方程才会有一个唯一的最优解,一旦A<B,那就不存在套利机会了。

06

机器人如何从机会中获利?

一旦我们弄清楚了如何执行交易以获得最大利润的话,剩下的事儿就简单了,我们需要让机器人获得初始资金来进行套利,放到上面的公式里,就是获得ΔX。

初始资金可以从AAVE中操作闪电贷中获取。机器人需要将借贷、交易以及还贷三个操作,捆绑在一个交易里面。这个过程,我们可以通过使用预先部署在链上的自定义智能合约来完成。

一旦我们的交易被创建,同时签名成功,它就会被提交到内存池等待矿工挖矿,即等待交易成功。但是由于还有其它很多的机器人同样也在寻找套利的机会,我们需要保证我们的交易被首先通过。

这意味着我们的套利交易应该跟随目标交易,被打包在同一个区块中,然后立刻完成交易。

这就是所谓的尾随交易,这种情况下,开采区块中的交易顺序如下所示:

为了实现尾随交易,机器人必须要先知道目标交易所提供的gas费是多少,然后将这些参数准确的复制到我们的套利交易中。最后,套利交易由机器人进行签名,并提交到内存池中进行验证,利润到手!

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金智博客

[0:15ms0-2:909ms