Uniswap v2如何解决价格操控问题

Uniswap v2如何解决价格操控问题

电报联系方式

Uniswap v1版本提出了AMM的基础模型能够在此基础上完成去中心化的自动交易,同时也了解到v1版本中还存在着”价格操控“的问题,v2版本的出现就是为了解决v1版本中存在的这些问题。这篇文章就来了解下Uniswap v2如何解决价格操控问题。

Uniswap v2如何解决价格操控问题

Uniswap v2新特性

Uniswap V1的局限性:

  1. 无法直接创建两种ERC20代币流动性池
  2. 容易受到价格操控的影响

Uniswap v2的新特性:

任意两个ERC20代币之间可以进行兑换。

价格信息传输功能,每个区块都能按时间加权平均的方式刷新交易对的价格。

闪电互换,你可以从Uniswap流动性池中“借出”代币,用于与任意的外部服务进行交互,然后在同一笔交易内还清你的初始贷款。

支持不符合标准的ERC20代币。

目前Uniswap也推出了v3,v4版本,未来应该也会有更多的规划,新的功能和优化很多。

Uniswap V2中抗价格操控的措施

查询市场价格

在每个区块的初始交易之前,对每个交易对进行价格查询。这种方法的优势在于,使操控价格变得更加昂贵。价格是由前一个区块的最后一笔交易所决定的。如果有意操控价格,操纵者需要面临以下两个选择:

  1. 在前一个区块的最后一刻执行与市场价背离的交易(通常需要抬高价格以便后续套利),这将使操纵者额外付出更高的代价。
  2. 另一种方法是在进行价格操控后,立即执行一笔回血操作,以弥补前一步抬高价格所支付的成本。这需要掌握连续两次出块的权利,以在第二个区块中收回前一个区块中的资金成本。

这种方法的实施增加了操控者的成本和风险,从而提高了市场的安全性和公平性。

引入TWAP概念

首先,我们引入一个名为“累计价格”的变量。考虑以区块为单位来观察。在第一个区块中,累计价格的初始值为0。然后,第一个区块结束时的价格为10.2。接下来,当第二个区块开始时,它的价格等于前一个区块结束时的价格,也就是10.2。因此,第二个区块的累计价格计算如下:它等于前一个区块的累计价格加上第二个区块开始时的价格,再乘以两个区块之间的时间间隔。

通过这种方式,我们可以在每个区块中计算累计价格,以捕捉价格的变化随时间的推移。这有助于我们更全面地了解价格的动态变化。

Uniswap v2如何解决价格操控问题 Uniswap v2如何解决价格操控问题

在清楚了“累计价格”概念后,TWAP的概念就容易理解了。TWAP的值就是观测时间范围内的累计价格的平均值。

Uniswap v2如何解决价格操控问题 Uniswap v2如何解决价格操控问题

关于TWAP的说明

我们可以考虑不同的采样时间单位,比如可以是10分钟或一周的TWAP,这意味着我们每隔10分钟或一周进行一次价格采样。

引入了TWAP后,操控价格的成本将受到资金池流动性规模的影响。随着流动性提供者(LP)的资金规模增大,操控价格将变得更加昂贵。同时,攻击成本还会受到TWAP采样时间间隔的影响。以采样时间间隔为1小时的TWAP为例,使兑换价格上涨5%的成本大致相当于每个区块内使交易价格上涨5%的成本,这将持续一小时,并造成资金损失和手续费的损失。

这种方法有助于更容易估算操纵价格的成本,从而提高市场的安全性和公平性。

开发联系:DEXDAO

 

© 版权声明

相关文章

暂无评论

暂无评论...