深度解读Uniswap V4:一个“集大成者”的去中心化交易所
作者:蒋海波,PANews
在美国监管加强,Binance、Coinbase等头部中心化交易所(CEX)遭到SEC打击,做市商撤出美国市场的背景下,去中心化交易所中(DEX)势必会不可或缺。
6月13日,Uniswap宣布了即将推出的Uniswap V4,并公开了白皮书的草稿版本,PANews对该白皮书和Uniswap V4的更新进行了分析。
Uniswap的演进史从V1到V4
Uniswap从2018年上线以来,经过了多个版本的更新。Uniswap V1引入了恒定乘积的做市商模型,支持无需许可的代币交换;Uniswap V2增加了ERC-20/ERC-20 对的交易(V1只支持ERC-20/ETH对的交易);Uniswap V3引入了“集中流动性”并让做市商可以自行选择费用层级(V2固定为0.3%),大大提高了资金利用率。
本次更新的Uniswap V4仍是一个无需托管、无需许可、无需升级的AMM协议,它基于Uniswap V3的集中流动性模型,更新了钩子(Hooks)功能、Singleton合约、瞬时账户、支持原生ETH、支持ERC-1155账户、增加治理功能和donate()功能,从而提高Uniswap的灵活性和可组合性,大大降低提供流动性和交易所需的Gas费。
V4版本更新细节和影响
通过钩子实现TWAMM、限价单、动态费用、内部MEV机制、自定义预言机等功能
在计算机中,钩子(Hooks)是一段处理系统消息的程序,通过系统调用,把它挂入系统。
Uniswap V4的钩子使得整合者可以创建更加灵活和可定制执的集中流动性池。钩子可以修改池参数,或者添加新的功能和特性,从而实现包括加权平均做市商(TWAMM)、限价单、动态费用、内部MEV机制、将多余的流动性存放到借贷协议中、自定义预言机在内的功能,可由钩子合约动态管理。
开发者可以基于Uniswap的钩子构建各种DApp,这将使得Uniswap V4的功能更加丰富,钩子合约也可以将交易手续费的一部分分配给自己。但用户在使用中也要更加小心,可能带来新的挑战和风险管理需求。
用Singleton合约取代Factory合约
Uniswap V4在架构设计上进行了重大改变,用Singleton(单例)模式取代Factory/Pool模式。在原来的版本中,每一个流动性池都是通过Factory合约独立部署的,那么在一个多步交易中,就要经过多个合约(如将ETH兑换为DAI,可能会经过ETH-USDC、USDC-DAI两个流动性池的合约)。
在新的Singleton合约中,所有流动性池都被包含在单个合约中,上述的多步交易可以通过一次合约交互完成,降低交易所需的Gas费。
瞬时账户在坎昆升级后大大降低Gas费
瞬时账户(Flash Accounting)是另一项架构转变。在Uniswap以前的版本中,每一步操作都会转移代币。而在Uniswap V4中,每个操作只会更新一个“内部净余额”,直至结束时才进行外部转账,从而简化多步交易、添加流动性和原子交易的复杂性,降低Gas费。
以太坊下一次的坎昆升级已确认包含EIP-1153,后者将引入“瞬态”存储,不需要瞬时账户在每次每次余额变动时都更新存储,进一步降低Gas费。
恢复对原生ETH的支持
Uniswap V1曾只支持ERC20/ETH的交易,从Uniswap V2开始不再进行限制,但考虑到代码的复杂性和对WETH/ETH之间流动性碎片化的担忧,Uniswap V2和V3在交易前会将ETH封装成WETH,WETH的转账费用也比原生ETH高,这就引来额外的Gas费。
Singleton和瞬时账户通过对架构的重新设计,已经解决了对复杂性了流动性的担忧,Uniswap V4也将重新支持原生ETH,降低Gas费。
支持ERC-1155代币
Uniswap V4将支持ERC-1155(将值作为数组传递,只有transferFrom,没有transfer )代币的铸造和销毁,用户可以在Singleton中保留代币,而不用进行ERC-20代币的转入、转出,对于操作频繁的流动性提供者和交易者有价值。
增加治理机制
Uniswap V4增加了新的治理机制,允许对交易和提款(从流动性池中提取资金)收费,并允许治理体系对这些费用进行分配,以奖励对Uniswap做出贡献的用户和开发者。
这项功能在钩子合约中可能有作用,如让钩子合约的开发者对LP收取一定的费用。但参考目前Uniswap在对交易收费上的缓慢进展,若协议从中收费,也可能会先对开发者的收入进行收费,这部分费用相对于用户持有的UNI代币价值也相对较低。
donate()功能
Uniswap V4引入了新的donate()功能,允许其他人向位于交易范围内的流动性提供者支付资金。这项功能可能对于项目方和TWAMM订单中的流动性激励有帮助。
Uniswap V4的更新对于Uniswap本身意义重大,钩子的引入将大大提高协议的灵活性,Singleton合约、瞬时账户、ERC-1155账户、对原生ETH的支持也都有利于降低Gas费。目前影响Uniswap使用的正是高昂的Gas费,预计Uniswap V4会将创建流动性池的Gas成本降低99%,这将进一步提高Uniswap在DEX中的地位。
博采众长,借鉴其它DEX已实现的功能
本次更新的某些功能,在已有的DEX中也有部分已经实现。而Uniswap v4是使用BSL许可证发布的,这点也受到诟病。
如架构调整中的Singleton合约和瞬时账户,在Balancer V2中,已经采用单一的Vault管理所有流动性池中的资产。在跨流动性池的交易中,Balancer V2也直接转移最终的Token数量,节省Gas费。由于钩子功能会带来各种各样的流动性池,对账户的调整在Uniswap V4中更加重要。钩子合约的创建者可以分配费用,这一点也和Balancer允许流动性池的创建者收费类似。
通过钩子实现的TWAMM,也有多个项目正在构建类似的方案,如Pulsar、Integral等,由于该功能正是这些项目的特色,品牌效应更加强大的Uniswap的更新可能使这类项目直接失去竞争力。
小结
Uniswap V4更新可能大幅提高Uniswap的竞争力,可借此实现TWAMM、限价单、动态费用、将流动性存入借贷协议、自动将手续费复投等功能。对于流动性提供者和交易者,所需的Gas费也可因为新的架构而大幅降低。虽然在Balancer、Integral等DEX中已经实现了部分功能,但凭借Uniswap的品牌效应,可能将这些功能发扬光大,成为一个集大成者。
而对于UNI持币者期待的费用调整,虽然Uniswap V4允许治理提取交易手续费和赎回费用,但优先考虑的分配对象可能也是对应的开发者。考虑到协议向流动性提供者收费的难度,如果仅向开发者收取一小部分费用,价值也不会太高。