01什么是MEV?
我经常被问到MEV是什么,以及抢先交易和尾随交易是如何工作的,那么我就以我自己的机器人工作机制为例,在这篇长文中做一个解释。
链上流动性是碎片化的,虽然类似Uniswap这样的流动性池子很多,但是它们之间没有相互通信,每个池子都提供实时交换资产的报价,而正是这种分散的流动性,创造了在不同池子中低买高卖的机会。
举例:一个用户在Uniswap的WETH-USDC池子卖出了500万美元的WETH,当他卖出的时候,Uniswap上的WETH价格下降,那么它就会允许其他用户以相较于Sushiswap上更便宜的价格购买WETH。
因此,精明的用户就可以在Uniswap上购买WETH,然后在Sushiswap上面出售。
02链上套利有什么不同?
上面举例说的是传统套利的原理,链上defi还多了一点不同的东西:原子性。
超过10.45亿美元BTC和4.8亿美元ETH期权合约将于今日到期交割:4月7日消息,Deribit数据显示,超过10.45亿美元BTC期权合约和4.8亿美元ETH期权合约将于今日到期交割。其中BTC的最大痛点价格为2.8万美元;ETH的最大痛点价格为1800美元。[2023/4/7 13:50:02]
我们都知道,区块链的状态逐块更新,这意味着一个交易里面可以执行多个操作,前提是这个交易的最终状态是正确的,即这个交易最终要是成功的。
例如,我可以从Aave借贷池免费借到500万美元的USDC,前提是我在交易结束时将500万美元的USDC准确归还给借贷池,这就是传说中的「闪电贷」,相信你在很多项目被盗的新闻中经常听到。
闪电贷为那些没有大量资金的用户免费创造了大规模链上套利的机会。当然了,这种钱并不容易赚。以上套利思路的出现,就带来了「套利空间的竞争」。
而大多数原子套利的空间都由少数地址主导,这些地址获得了大部分的利润,所以这大概率是所有领域中竞争最激烈的一块儿。套利的成功,是套利者的智慧、网络的低延迟以及良好的基础设施的结合。
Ripple诉讼律师:SBF如果被捕可能会获得较轻的刑罚:金色财经报道,Ripple诉讼律师约翰·迪顿 (John Deaton) 表示,SBF在FTX上持有资金,而他未经许可将资金借给他的其他公司,这直接构成盗窃罪,此外约翰·迪顿还声称 FTX 和 BlockFi 的交易也是欺诈性的,BlockFi 交易本身就提供了美国管辖权,但是 BlockFi 很可能会申请破产。然而约翰·迪顿暗示,SBF 会与美国刑事部门达成协议,这意味着如果 SBF 曾面临起诉,最终人们看到的判决结果也不要感到惊讶,因为这位前 FTX 首席执行官的刑期可能比其他人轻。(coingape)[2022/11/26 20:48:20]
03机器人是如何工作的?
机器人会直接连接到内存池,内存池是一个队列,里面存储着一组等待被确认的交易。机器人会埋伏在池子里面,等待可以创造套利机会的交易出现。
一旦发现可套利的交易,机器人会自动计算套利的最佳方式,然后将一系列操作,放到一个交易里面,直接将这个交易提交到内存池中,和可套利的那个交易放在同一个区块中进行打包。
FTX重组顾问在FTX离线冷钱包中找到约7.4亿美元加密货币:金色财经报道,FTX新任首席执行官JohnJ.Ray III表示,FTX内部控制和记录保存不当,FTX重组顾问正努力寻找该公司的现金和加密货币,已经在离线冷钱包中找到了约7.4亿美元的加密货币。JohnJ.Ray III表示,该公司的经审计的财务报表不应该被信任,顾问们正在努力自下而上地为FTX实体重建资产负债表。顾问们还不知道FTX集团在申请破产时有多少现金,但到目前为止已经找到了归属于FTX各实体的大约5.6亿美元。[2022/11/17 13:18:08]
我的机器人会在类似Uniswap这样的交易所中寻找的套利机会,它可以在目标交易出现后执行,最后以利用不同池子之间流动性的差异,来获取利润。
为了搞明白什么样的交易算是可套利的机会,你必须先要了解UniswapV2的工作原理。
04UniswapV2的工作原理
假设一个池子里面包含X个WETH和Y个USDC,并且它允许用户在池子中进行WETH和USDC的交易。那么池子的管理原则是:保证这个X和Y的乘积始终是一个常数我们称之为「Uniswap不变量」。
美元指数DXY上破113,续创2002年1月以来新高:行情显示,美元指数DXY上破113,续创2002年1月以来新高,日内涨1.61%。[2022/9/24 7:17:30]
因此,对于一个储备为(X,Y)的池子,我们可以通过求解以下等式计算出我们期望将ΔXWETH卖出多少USDC到矿池中:
实际操作中,池子还会收取大概30bps的手续费,在计算上面的公式时,你可以通过将ΔXWETH乘以0.997来保证计算结果的准确性。为了解释起来方便,我们这里简化一下,省略这个步骤。
WhaleAlert:1000枚BTC从Xapo转入币安:金色财经消息,据WhaleAlert数据显示,1000枚BTC(约21386536美元)从Xapo转入币安。[2022/8/19 12:36:31]
重要的是,我们可以重新拓展和排列这个方程,然后根据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费是多少,然后将这些参数准确的复制到我们的套利交易中。最后,套利交易由机器人进行签名,并提交到内存池中进行验证,利润到手!
责任编辑:Kate
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。