DeFi 核心协议:DEX、AMM、借贷与闪电贷

深入拆解去中心化金融的核心协议:恒定乘积 AMM 数学原理、Uniswap v3 集中流动性、Aave 借贷池模型、闪电贷机制及 Yield Farming 收益策略。

DeFi(Decentralized Finance)是区块链最成功的应用领域之一,它使用智能合约重建了传统金融体系的核心功能:交易、借贷、衍生品、资产管理。本文将深入解析 DEX 的 AMM 数学原理、借贷协议的风险模型以及闪电贷的创新机制。

一、DEX 与自动做市商(AMM)

传统订单簿 vs AMM

特性中心化交易所(订单簿)DEX(AMM)
流动性来源做市商挂单流动性提供者(LP)资金池
交易对手买方 ↔ 卖方交易者 ↔ 资金池
价格发现买卖订单撮合数学公式自动定价
MEV 风险低(中心化撮合)高(公开内存池)

恒定乘积公式(Uniswap v2)

$$ x \times y = k $$

其中:

  • $x$ = 资金池中 Token A 的储备量
  • $y$ = 资金池中 Token B 的储备量
  • $k$ = 常数(仅在添加/移除流动性时变化)
初始池:100 ETH + 200,000 USDC
常数 k = 100 × 200,000 = 20,000,000

用户想用 1 ETH 换 USDC:
新 x' = 100 + 1 = 101
新 y' = k / x' = 20,000,000 / 101 = 198,019.80
获得 USDC = 200,000 - 198,019.80 = 1,980.20

实际价格 = 1,980.20 USDC/ETH(含 0.3% 手续费)

滑点与价格影响

大额交易会导致显著的价格滑移:

$$ \text{滑点} = \frac{\Delta x}{x + \Delta x} \times 100% $$

交易规模(占池比例)有效价格影响
0.1%~0.1%
1%~1%
5%~5.3%
10%~11.1%

⚠️ 大额交易应拆分多笔或使用聚合器(1inch、Matcha)跨多池路由。

无常损失(Impermanent Loss)

LP 面临的核心风险:当两种代币价格比率变化时,相对于单纯持有(HODL)会产生损失。

$$ IL = \frac{2\sqrt{p}}{1 + p} - 1 $$

其中 $p$ 为价格比率变化(新价格 / 初始价格)。

价格变化倍数无常损失
1.25x0.6%
1.5x2.0%
2x5.7%
5x25.5%

💡 只有当价格波动恢复到初始比率时,“损失"才会消失,因此称为"无常”。但若价格持续偏离,损失将变为永久。

二、Uniswap v3:集中流动性与资本效率

v2 的问题:资金利用率低

在 v2 的 $x \times y = k$ 模型中,流动性均匀分布在 $(0, \infty)$ 价格区间。绝大多数时间在远离当前价格的区域闲置。

v3 的核心创新

Uniswap v3 流动性区间示意:

价格
▲
│    ╭──────╮
│   ╱  活跃  ╲      ← LP 在此区间提供流动性
│  ╱  流动性  ╲
│ ╱            ╲
├╱──────────────╲───
│                ╲
│                 ╲  ← 此区间无流动性(资本闲置)
│
└──────────────────►
        价格区间 [a, b]

LP 可以自定义价格区间 $[P_a, P_b]$,仅在该区间内有效。这带来了:

  • 资本效率提升:最高可达 4000x
  • 多费率层级:0.05%(稳定币)、0.3%(主流币对)、1%(长尾资产)
  • LP 头寸变为 NFT(可转让、可组合)

集中流动性的数学

v3 在每个区间内采用与 v2 相同的恒定乘积公式,但通过虚拟储备量实现:

$$ (x + L/\sqrt{P_b}) \times (y + L\sqrt{P_a}) = L^2 $$

其中 $L$ 为流动性单位,$P_a$、$P_b$ 为价格区间边界。

三、借贷协议:Aave 与 Compound

资金池模型

┌─────────────────────────────────────────┐
│           Aave 资金池                    │
│                                         │
│  存款方          池            借款方     │
│   ETH ──►  ┌─────────┐  ──► ETH + 利息  │
│   USDC ──► │  智能合约 │  ──► USDC + 利息│
│   WBTC ──► └─────────┘  ──► WBTC + 利息 │
│                              (超额抵押)   │
│  获得 aToken                 需支付利息   │
│  (生息代币)                               │
└─────────────────────────────────────────┘

超额抵押与清算机制

用户必须存入价值高于借款的抵押品:

$$ \text{健康因子} = \frac{\sum (\text{抵押品价值} \times \text{清算阈值})}{\text{总借款价值}} $$

  • 健康因子 > 1:安全
  • 健康因子 < 1:可被清算

清算流程

  1. 抵押品价格下跌导致健康因子 < 1
  2. 清算-bot 触发 liquidationCall()
  3. 清算人偿还部分债务,获得抵押品 + 5-10% 清算奖励

利率模型

借贷利率根据资金利用率 $U$ 动态调整:

$$ U = \frac{\text{已借出}}{\text{总存款}} $$

利率曲线:
利率 ▲
     │         ╱
     │        ╱
     │       ╱   ← 高利用率时利率快速上涨
     │      ╱
     │     ╱
     │    ╱    U_optimal
     │   ╱
     │  ╱
     │ ╱
     │╱
     └─────────────────► 利用率 U
     0%              100%
利用率借款利率(示例)目的
0%0%吸引存款
50%4%均衡状态
90%15%鼓励还款
95%+50%+紧急抑制借款

四、闪电贷(Flash Loan)

零抵押借款的魔法

闪电贷允许用户在同一个交易原子内借款并偿还,无需抵押品。如果最终未还清,整个交易回滚。

闪电贷交易结构(原子操作):

[ 开始交易 ]
    │
    ▼
[ 借入 10,000 ETH ]
    │
    ▼
[ 外部操作 ]
    ├─ 在 DEX A 用 ETH 买 Token
    ├─ 在 DEX B 用 Token 卖 ETH(套利)
    ├─ 或:清算 Aave 头寸获取奖励
    └─ ...任何操作...
    │
    ▼
[ 偿还 10,000 ETH + 0.09% 手续费 ]
    │
    ▼
[ 结束交易 ] ← 全部成功或全部回滚

闪电贷手续费

平台手续费单笔最大额度
Aave v30.09%单个池的全部流动性
Balancer0%单个池的全部流动性
Uniswap v30 (通过闪电互换)N/A
dYdX2 Wei(极小)2 倍保证金池余额

闪电贷攻击与防御

闪电贷放大了攻击者的资本能力:

  • 价格预言机操纵:借入大量资金在 DEX 上操纵价格 → 在借贷协议中获利
  • 治理攻击:借入大量治理代币 → 通过恶意提案 → 获利并还款

防御措施

  • 使用 Chainlink 等去中心化预言机(抗操纵)
  • TWAP(时间加权平均价格)替代即时价格
  • 治理代币的锁仓机制(veToken)
  • 闪电贷锁:在同一交易内禁止某些关键操作

五、Yield Farming 与流动性挖矿

基本原理

用户提供流动性获得三重收益:

  1. 交易手续费分成(AMM 池)
  2. 借贷利息(借贷协议)
  3. 平台代币奖励(如 UNI、AAVE、CRV)

收益计算

总年化收益 (APY) = 
    手续费 APY + 代币激励 APY + 借贷利息 APY

实际收益 = APY - 无常损失 - Gas 成本 - 合约风险

风险警示

风险描述
无常损失币价偏离导致 LP 价值低于 HODL
智能合约漏洞协议被黑客攻击(历史损失超 $30 亿)
治理风险代币持有者可修改协议参数
流动性风险池子深度不足导致大额滑点
预言机操纵价格源被攻击导致错误清算

六、本章小结

DeFi 协议通过数学公式和博弈设计,在没有中心化中介的情况下实现了交易、借贷等核心金融功能。AMM 的恒定乘积公式虽然简单,却支撑了数百亿美元的交易量;Aave 的超额抵押和清算机制保障了借贷协议的安全;闪电贷则展示了"原子性"如何创造全新的金融原语。参与 DeFi 时,必须充分理解无常损失、清算机制和智能合约风险,将安全性置于收益之上。

继续阅读

探索更多技术文章

浏览归档,发现更多关于系统设计、工具链和工程实践的内容。

全部文章 返回首页

「区块链 Web3」更多文章

  1. Web3 全栈 DApp 开发实战:从前端到智能合约的完整链路
  2. 企业级区块链:Hyperledger Fabric 架构与链码开发
  3. 区块链安全:合约审计、攻击模式与防御体系