# Uniswap v3 设计原理深度解析：可自定义区间的集中流动性

By [solana price](https://paragraph.com/@solana-price) · 2025-09-02

---

> 关键词：Uniswap v3、集中流动性、虚拟储备、AMM、资金效率、tick、流动性聚合、手续费分层

为何需要 v3？——从低效的「全覆盖」谈起
---------------------

Uniswap v2 用一句 `$x \cdot y = k$` 撬动了整个 DeFi 世界，却在市场走向精细化后暴露硬伤：**做市资金像地毯一样平铺在 0 到 ∞ 的整个价格区间，99% 的时间里都在睡觉**。以 ETH/DAI 为例，即便一个月内 95% 的成交量集中在 1,300–2,200 DAI/ETH，v2 依然把资产摊在 0 附近与 5,000 以上的“荒原”。结果是：池子看着很大，真实**资金利用率**常低于 25%，稳定币交易对甚至不足 5%。

Uniswap v3 的口号很直接：**只做有价值区间的生意**。

集中流动性：用“价格区间”代替“无限长直线”
----------------------

### 1\. 虚拟储备让曲线弯得更聪明

传统 AMM 曲线是 **连续** 的：如果你想在 1,500 附近做市，就得把资产一路铺到 0 与 ∞，公式上就是储备 $x + x\_{virtual}$ 与 $y + y\_{virtual}$ 两部分叠加——

*   $x\_{real}, y\_{real}$：你真金白银放进去的代币
    
*   $x\_{virtual}, y\_{virtual}$：系统为你“虚拟”出来的那部分，**永远恒定**，用来满足 `$x \cdot y = k$` 的数学关系
    

当价格跑到设定边界 a 或 b，$x\_{real}$ 或 $y\_{real}$ 会被全部换成对手资产，一踏出边界，流动性直接被「断电」。借助虚拟储备，你只在**有效区间**内承担做市义务，资金效率成倍提升。

👉 [想把这一技巧用在实盘？先看资金效率暴涨 20 倍的秘密](https://okxdog.com/)

### 2\. “聚合器”视角下的单一池

由于每位 LP 设置的价格区间不同，**同一池子里的流动性实际上由多条小曲线拼接而成**。一笔交易发生时，`*协议按价格切片*`：依次穿过不同 LP 的小区间，逐段报价，再把结果聚合。听起来像 1inch 在做路由，只不过 v3 把这件事写进了核心合约。

### 3\. 交易计算：从 $k$ 到 $L=\\sqrt k$

为了避免反复开根号带来的精度与 Gas 灾难，v3 只存储 $\\sqrt P$ 与 $L = \\sqrt k$：

*   $x = \\frac{L}{\\sqrt P},\\quad y = L \\cdot \\sqrt P$
    
*   $\\Delta x \\approx \\frac{\\Delta (\\frac{1}{\\sqrt P})} {\\L}$, $\\Delta y \\approx \\Delta \\sqrt P \\cdot L$
    

这样任何跨区间的交易，都可以通过 **Tick 级别的 Liquidity Netting** 快速结算。

Tick：离散化的价格梯子
-------------

无限细分的区间会让合约爆炸。于是 v3 将价格空间切分为 0.01% 的固定步长（即价格放大系数 1.0001），每格称为一个 **tick**。指数化后的公式：$i=\\log\_{\\sqrt{1.0001}} \\sqrt p$，$i=0$ 时价格正好 1，把连续空间降为整数索引，

*   最小下标支持到 −887272，最大 887272，
    
*   结合 64.96 位定点数，死死咬住精度。
    

`tickSpacing` 再次优化：

*   0.05 % 费率池间距 10 (即 0.10 % 刻度)，
    
*   0.30 % 费率池间距 60，
    
*   1.00 % 费率池间距 200。低波动稳定币用小步长，高波动交易对同步拉大，既省 Gas 又不牺牲颗粒度。
    

👉 [点击解锁 tick 间距与手续费的最佳搭配策略](https://okxdog.com/)

多费率池：让市场在流动与成本间博弈
-----------------

v3 一次性推出 0.05 %、0.30 %、1.00 % 三档费率，同一交易对可衍生 3 条独立池。

*   高频稳定币：选 0.05 %，极薄价差也能盈利
    
*   蓝筹资产：0.30 % 兼顾交易深度与 LP 收益
    
*   长尾代币：1.00 %，补偿高无常损失风险
    

问题是流动性被打散，需要专业路由（或聚合器）才能帮用户挑到最优路线，官方前端暂未涵盖。

问答环节（FAQ）
---------

\*\*Q1：把区间缩得太小，会不会刚加池就“踏空”？\*\*A：确实，若价格迅速突破设定区间，你就只剩单边资产。建议用波动范围的历史分位数 + 1.2 倍安全垫来设界，并定期重新平衡。

\*\*Q2：v3 的手续费谁决定，会改吗？\*\*A：初始 0.05 %/0.30 %/1.00 % 由社区治理投票决定，未来可追加更多层级。任何新费率参数需经 UNI 持有者链上投票通过才能生效。

\*\*Q3：如果大家对同一个区间蜂拥而入，收益会被稀释吗？A：会。v3 的竞争点在于 **区间策略**，不再是比谁钱多。选对冷门但高交易频次的区间，反而收益更高。

\*\*Q4：入池后如何退？\*\*A：LP 仓位被 ERC-721 NFT 化，任何时候都能烧毁 NFT 赎回对应资产+累计手续费。需注意的是，如果价格已跳出区间，你只能提回单边资产。

\*\*Q5：做市技术门槛这么高，小白怎么办？A：可以交给第三方策略 Vault，把复杂定价、再平衡留给算法，你享受分红即可。

\*\*Q6：所有 Tick 全存一次状态会否无限膨胀？A：不会。v3 使用「稀疏存储」：只在作为边界的 tick 上写下 liquidityNet，中间空白 tick 不落地。

展望下一篇
-----

我们将拆解 **创建交易对 + 注入流动性** 的完整合约交互路径，演示怎样用最小代码把自定义区间 LP 摆上链。

---

*Originally published on [solana price](https://paragraph.com/@solana-price/uniswap-v3)*
