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/...
相关推荐
taxunjishu10 小时前
西门子 1500 PLC 依托 Ethernet/ip 转 Modbus RTU联合发那科机器人优化生产流程
人工智能·区块链·工业物联网·工业自动化·总线协议
软件工程小施同学14 小时前
区块链论文速读 CCF A--USENIX Security 2025(1)
区块链
虚行18 小时前
Go学习资料整理
golang·区块链
链科天下21 小时前
蚂蚁集团注册“AntCoin”商标,积极布局Web3!
区块链
央链知播2 天前
重磅新书 | 《链改2.0:从数字资产到RWA》
金融·区块链·业界资讯
Webb Yu2 天前
加密货币学习路径
学习·区块链
openHiTLS密码开源社区2 天前
椭圆曲线密码学的效率核心:单标量与多标量乘法详解
区块链·零知识证明·rsa·隐私保护·ecc·多标量·单标量
本郡主是喵2 天前
基于区块链的商品溯源平台的设计与实现(源码+文档)
区块链
数据与人工智能律师2 天前
数据淘金时代的法治罗盘:合法收集、使用与变现数据的边界与智慧
大数据·网络·人工智能·云计算·区块链
大桔骑士v2 天前
【区块链学习笔记】17:以太坊中的GHOST协议
区块链·以太坊·比特币·ghost