Uniswap V4 解读:钩子和其他功能

摘要: Uniswap V4 是领先的去中心化交易所的最新升级版,旨在提高效率和降低成本。它将所有流动性池合并为单一合约,降低了气体费用,简化了流动性管理。

主要升级包括:可最大限度减少代币转移的闪存记账、可根据市场情况调整的动态费用、支持更便宜交易的原生以太坊,以及可让开发人员修改交易执行和流动性行为的可定制钩子。

什么是 Uniswap V4?

Uniswap V4 引入了迄今为止可定制性最强、资本效率最高的 Uniswap 协议版本。该版本于2025 年 1 月 31 日推出,扩大了开发人员的控制权,降低了气体费用,并为交易商和流动性提供商(LP)提供了先进的流动性策略。

主要改进包括减少代币转移的闪存记账、适应市场条件的动态费用,以及将所有流动性池整合到一个系统中的单一合约。此次升级还恢复了原生 ETH 交易,不再需要 WETH,并引入了更深入的池定制钩子。

什么是 uniswap v4

Uniswap V4 功能和工作原理

正如Uniswap V4 Core 官方白皮书所概述的那样,此次升级引入了一个整合所有流动性池的单一合约、用于优化代币转移的闪存记账,以及供开发人员自定义交换执行的钩子。下面将深入介绍 Uni V4 的主要功能。

挂钩

Uniswap V4钩子是外部智能合约,允许开发人员自定义和扩展流动池行为。每个池可以附加一个钩子,而多个池可以使用一个钩子来修改池生命周期中特定点的执行流程。

使用案例包括

  • 池专用钩子:钩子是可选的,必须在创建池时指定,以便进行有针对性的定制。
  • 生命周期钩子:在池初始化、流动性添加/移除、交换和捐赠等关键事件之前或之后执行逻辑。
  • 细粒度流动性控制:开发人员可使用预定义的钩子函数修改流动性的添加或移除方式。
  • 自定义掉期执行:钩子允许修改交易行为,如整合其他定价模型或附加掉期条件。
  • 扩展用例:钩子支持高级 DeFi 应用,包括定制 AMM、收益农业激励措施、合成资产和借贷集成。
uniswap v4 钩子示例

辛格尔顿合同与 Flash 会计

Uniswap V4 引入了单子合约,在一个系统下管理所有流动池。这减少了部署的复杂性,降低了气体成本。

此外,闪存会计通过首先更新内部余额并在最后执行最终转账来优化交易。这样既能确保偿付能力,又能改善原子交换和多跳交易。

单对单合同

本地 ETH 支持

Uniswap V4 恢复了原生以太坊交易,无需将以太坊包装成 WETH 再拆开。原生 ETH 的转账成本比 ERC-20 的转账成本低近 50%。

通过将 ETH 直接整合到流动性池中,Uniswap V4 消除了 ETH 和 WETH 池之间因流动性分散而造成的低效。

自定义会计

自定义会计允许开发人员在交换和流动性事件期间修改代币余额,覆盖默认的集中流动性模型。这就实现了退出费用、替代 AMM 曲线和自定义 LP 奖励结构。

动态收费

Uniswap V4 允许按交换、按区块或按任意时间调整费用,根据市场情况优化费用。费用结构可根据波动性、交易量和网络拥塞情况进行调整,确保流动性提供商得到公平补偿,同时最大限度地降低交易者的成本。

如何使用 Uniswap V4

Uniswap V4 包括新的池管理、可定制的钩子和更便宜的流动性供应,同时可与以前的版本无缝集成。无论是交换、提供流动性还是构建自定义逻辑,Uniswap V4 都能满足您的需求。

1.交换令牌

Uniswap V4 可自动通过 V2、V3 和 V4 中最有效的流动性池进行交易,从而实现无缝的代币交换

如何在 Uniswap V4 上交换令牌:

  1. 访问 Uniswap V4:打开 Uniswap 网络应用程序并连接钱包(如 Metamask)。
  2. 选择代币:从下拉菜单中选择要交换的 ERC-20 令牌。
  3. 输入交易金额:输入发送或接收的金额(例如 0.1 ETH 对应 USDC 的金额)。
  4. 确认掉期:路由器找到最佳流动性路径并执行交易。
在单工位交换时进行交换

2.提供流动性

Uniswap V4 允许流动性提供者(LPs)在资金池中创建头寸,并为高级策略提供可选的自定义挂钩。增加流动性可赚取交易费,并可灵活定制池的功能。

如何在 Uniswap V4 上提供流动性:

  1. 打开流动性页面:进入 Uniswap 网络应用程序,点击 "提供流动性"。
  2. 选择 Uniswap V4:选择 "V4 "选项。如果使用自定义挂钩,请输入合同地址(可选)。
  3. 设置池参数:选择代币对,设置收费层级(如 0.05%、0.3%),并定义价格范围。
  4. 批准并存款:在钱包中确认代币批准,完成存款并开始赚取手续费。
在联合互换中提供流动性

3.创建资源库

Uniswap V4 允许用户在未经许可的情况下创建流动性池,从而实现新的交易市场和定制流动性策略。

如何在 Uniswap V4 上创建资源库:

  1. 打开池创建页面:访问 Uniswap 网络应用程序,选择 "创建程序库"。
  2. 设置池参数:选择代币对(如 ETH/USDC),选择费用层级(如 0.3%),并定义刻度线间距。
  3. 初始化池:开发者可以通过智能合约或 Foundry、Hardhat 或 Etherscan 等 web3 工具使用 PoolManager 设置初始价格。
  4. 有无流动性均可部署:要么使用 PositionManager 立即为池提供资金,要么为未来的流动性预留资金。
在 UNISWAP 上创建流动性池

4.开发钩子

Uniswap V4钩子可让开发人员自定义掉期执行、动态费用和流动性策略,从而增加流动性池的灵活性。

如何在 Uniswap V4 上开发和实施钩子:

  1. 建立项目:安装 Uniswap V4 依赖项(v4-core、v4-periphery)并配置重映射。
  2. 编写钩子逻辑:开发可调整掉期、费用或流动性行为的智能合约功能。
  3. 部署钩子合约:使用 Foundry 或 Hardhat 部署合约并检索其地址。
  4. 将钩子附加到池:创建池时,指定钩子合约地址以修改执行流程。
开发 uniswap v4 钩子

Uniswap V4 与 V3 和旧版本的对比

Uniswap V4保留了 V3 中的集中流动性模式,但用单个合约取代了单独的池合约,从而降低了气体成本。它还具有闪存记账功能,减少了不必要的代币转移,并支持原生 ETH,无需封装 ETH。

与早期版本相比,V4 是最省油的版本。V1 和 V2 有更简单的 AMM 模型,而 V3 以更高的成本提高了资本效率,V4 则通过更便宜的掉期、自动流动性管理和通过钩子进行池级定制来完善这一模型。

单点对换 V4 与旧版本

什么是 ERC-6909?

ERC-6909是Uniswap V4的代币标准,可通过单个合约管理多个ERC-20代币。它通过使用内部会计最大限度地提高了交易效率,降低了申领、赎回和流动性管理的气体成本。

与ERC-1155不同,Uniswap V4的ERC-6909消除了不必要的回调,简化了转移委托,并缩小了合约规模。它还引入了总供应量变量,以跟踪已铸造和烧毁的代币,通过实现代币化债权,使高频交易商和流动性提供商受益。

Uniswap V4 许可

Uniswap V4采用商业源代码许可(BUSL),限制商业或生产使用其源代码,直到2027年6月15日,届时将过渡到MIT许可。与 Uniswap V3 类似,Uniswap Governance 可以通过 "附加使用授权 "授予 BUSL 的例外情况。

关于 Uniswap

Uniswap由 Hayden Adams 于 2018 年创立,是第一家主要的去中心化自动做市商(AMM),此后成为交易量最大的去中心化交易所(DEX)。

在 Uniswap V2 和 V3 中,该协议已处理了超过 2.75 万亿美元的交易量和 4.65 亿次掉期,所有这些都没有出现过一次黑客攻击或漏洞利用。

最近的里程碑事件包括九次独立审计、一次有 500 多人参加的价值 235 万美元的安全竞赛,以及历史上最大的漏洞悬赏活动,为关键的 V4 漏洞提供高达 1550 万美元的奖金

关于 uniswap

最后的想法

在 1550 万美元的漏洞赏金计划之后,Uniswap V4 在 10 个区块链上推出,包括以太坊、BNB Chain、Arbitrum、Base 和 Polygon。在最初的两周里,从 V3 迁移到 V4 的 TVL 平均每天达 700 万美元,反映了采用率的稳定。

Uniswap V4 预计将通过降低运营成本对流动性提供商(LP)和投资者产生重大影响。新的单子合约(Singleton Contract)可将天然气费降低多达 30%,而动态费用(Dynamic Fees)可确保 LP 在高波动期获得更多收益。