在 Uniswap V3 中,增加流动性和移除流动性是通过不同的方法实现的,具体取决于你是直接与智能合约交互还是通过前端界面操作。以下是核心方法和技术细节: 1. 增加流动性(Deposit Liquidity)核心方法:mint
在 NonfungiblePositionManager 合约中,用户通过调用 mint 方法创建新的流动性头寸(即 LP NFT),或向已有头寸添加流动性。 参数:包括代币对、价格区间(tickLower/tickUpper)、流动性数量等。 触发事件:IncreaseLiquidity(如果是对现有头寸操作)。
交互流程: 前端示例(通过 SDK): javascript
import { NonfungiblePositionManager } from '@uniswap/v3-sdk';const tx = await NonfungiblePositionManager.mint(params);
2. 移除流动性(Withdraw Liquidity) 3. 关键合约与方法 4. 注意事项Gas 优化:批量操作(如 multicall)可合并多个步骤(如增减流动性+提取代币)。 价格区间:V3 的流动性必须指定价格区间,移除时需确保头寸未完全超出当前价格范围。 手续费:移除流动性时需手动调用 collect 提取累积的手续费。
|