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

一、问题背景

在前面的学习当中,已经了解到Uniswap v1版本提出了AMM的基础模型,能够在此基础上完成去中心化的自动交易,同时也了解到v1版本中还存在着"价格操控"的问题juejin.cn/post/727082...

显然,Uniswap v1版本存在一些问题,v2版本的出现就是为了解决v1版本中存在的这些问题。

二、Uniswap v2新特性

  1. Uniswap v1的不足

    • 不能直接创建两种ERC20代币的流动性池
    • 容易被操控价格
  2. Uniswap v2的新特性

    • 允许任意两个ERC20之间进行兑换
    • 价格信息传输功能,每个区块都能基于按时间加权平均的定价方式为交易对刷新价格
    • 闪电互换,或者说你可以从 Uniswap 流动性池中 "借出" 代币、用于与任意的外部服务交互、然后 还清 你的初始贷款,所有操作都要放在一笔交易内
    • 支持不标准的 ERC20 代币

目前Uniswap也推出了v3,v4版本,未来应该也会有更多的规划,新的功能和优化很多,本文聚焦的是Uniswap v2版本如何解决AMM的价格操控问题。

三、Uniswap V2中抗价格操控的措施

1. 查询市场价格

  • 在每个区块的第一笔交易开始确认前,先对每个pair进行价格查询。这么做的好处是让操控价格的成本变得昂贵了,这个价格是由上一个区块的最后一笔交易决定的,如果要操控它,操纵者有两个选择:

    • 一个是赶在上一个区块的最后做一笔背离市场价的交易(通常要拔高价格才能方便后面套利),这会让操纵者额外付出更大的代价。
    • 另一个是办法就是在做完上面说的操控外,立刻做一笔回血操作以弥补前面拔高交易所支付的成本。这就需要掌握连续两次的出块权利,以便在第二个区块中收回前一个区块中付出的资金成本。

思考:通过增加每次查询市场价格的步骤,可以增加操纵者操控价格套利的成本,但如果可套利的空间比操控价格的成本要高的情况下,还是比较容易操控,因此从防操控手段上,还需要加强。

2.引入TWAP概念

  • TWAP (Time-weighted average prices), 时间加权平均价格。
  • 通过官方文档中的示意图,能很清晰地了解到TWAP的概念。
  • 为了介绍TWAP,首先引入一个"累计价格"变量。以区块为单位来看,第一个区块的累计价格值为0,第一个区块末尾的价格为10.2,那么第二个区块开始的价格等于上一个区块结束时的价格,即也是10.2,那么第二个区块的累积价格就等于:上一个区块的累计价格+第二个区块开始时的价格*两个区块间隔时间, 在下面的示意图中,第二个区块的累计价格变量计算如下:
js 复制代码
priceCumulative_1=priceCumulative_0+Price_1*timestamp_1 = 0+(10.2*7)=71.4

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

js 复制代码
TWAP= (priceCumulative_end - priceCumulative_start)/(timestamp_end - timestamp_start)

3.关于TWAP的几点说明

  • 采样时间单位可以是几分钟,比如10分钟的TWAP就是每隔10分钟的采样值,也可以是一周的采样值
  • 引入TWAP后,操纵价格的成本会随着资金池的LP流动性的变大而变大,同时也会随着TWAP的采样时间间隔增大而变大。
  • 攻击的成本相对容易估计。以采用1小时的TWAP的参数为例,使得兑换价格上涨5%的成本大致等于每个区块交易价格上涨5%,持续一小时所带来资金和手续费的损失。

四、参考资料

  1. Uniswap官方文档:docs.uniswap.org/contracts/v...
  2. 《Uniswap V1/V2/V3 AMM做市全面解析》www.163.com/dy/article/...
相关推荐
科技快报1 天前
微算法科技(NASDAQ:MLGO)基于信任的集成共识和灰狼优化(GWO)算法,搭建高信任水平的区块链网络
科技·区块链
电报号dapp1191 天前
加密货币钱包开发指南:多链资产管理与非托管安全范式
安全·web3·去中心化·区块链·智能合约
这儿有一堆花1 天前
比特币:固若金汤的数字堡垒与它的四道防线
算法·区块链·哈希算法
穗余2 天前
NodeJS全栈WEB3面试题——P2智能合约与 Solidity
web3·区块链·智能合约
选择不变2 天前
更新版【飞云翻倍系统】新增支撑压力多线参考技术,操盘技术图文解说
区块链·通达信指标公式·炒股技巧·短线指标·炒股指标
落雪财神意2 天前
沪铜6月想法
区块链
菠萝012 天前
共识算法Raft系列(1)——什么是Raft?
c++·后端·算法·区块链·共识算法
caig0002 天前
稳定币的深度剖析与展望
人工智能·区块链
反向跟单策略2 天前
期货反向跟单运营逻辑推导思路
大数据·人工智能·数据分析·区块链
江瀚视野2 天前
虎扑正式易主,迅雷完成收购会带来什么变化?
大数据·区块链