如何与 Uniswap、Sushiswap 等去中心化交易所交互,理解 AMM(自动做市商)的原理

一、DEX 是什么(一句话面试版)

DEX(去中心化交易所)

→ 不靠订单簿撮合

→ 不托管资产

→ 通过智能合约 + AMM 算法,让用户直接在链上完成兑换

Uniswap / Sushiswap 本质:

一组部署在链上的合约 + 一个前端 UI


二、AMM 是什么(核心思想)

1️⃣ AMM 在解决什么问题?

传统交易所(CEX):

  • 有订单簿
  • 有做市商
  • 有撮合引擎

DEX 没有:

  • 没人挂买卖单
  • 没人撮合

👉 那价格从哪来?


2️⃣ AMM 的答案

价格由"池子里的资产比例"决定

池子里永远有两种币,比如:

复制代码
ETH / USDC 池
x = ETH 数量
y = USDC 数量

Uniswap V2 的核心公式(必须会):

复制代码
x * y = k   (恒定乘积)

k 是常数,交易前后不变


3️⃣ 用大白话解释一次交易过程

假设池子里:

复制代码
ETH = 10
USDC = 20,000

此时:

复制代码
ETH 价格 ≈ 2000 USDC

你用 1000 USDC 买 ETH

  • USDC ↑
  • ETH ↓
  • 必须保持 x * y = k

👉 价格自动变化

👉 你买得越多,价格越贵

👉 这就是滑点(slippage)


三、Uniswap / Sushiswap 怎么交互(前端视角)

1️⃣ 合约层结构(非常重要)

你前端真正交互的不是「DEX」,而是这些合约:

合约 作用
ERC20 代币合约
Pair / Pool 资金池
Router 封装好的交易入口
Factory 创建池子

👉 99% 前端只调 Router


2️⃣ 一次 Swap 的完整流程(必背)

USDC → ETH 为例:

Step 1:approve(必有)
ts 复制代码
USDC.approve(
  routerAddress,
  amountIn
)

授权 Router 花你的 USDC


Step 2:调用 Router.swap
ts 复制代码
router.swapExactTokensForTokens(
  amountIn,
  amountOutMin,
  path,        // [USDC, WETH]
  to,          // 你的地址
  deadline
)

🔑 参数解释(面试重点):

参数 说明
amountIn 你付出的币
amountOutMin 最少能接受多少(防滑点)
path 兑换路径
deadline 防止交易卡太久

3️⃣ 为什么一定要 approve?

因为:

  • ERC20 遵循 "转账必须授权"
  • Router 不是你
  • 合约不能随便动你资产

👉 approve → swap 是 DeFi 高频考点


四、AMM 的几个核心概念(必会)

1️⃣ 滑点(Slippage)

你看到的价格 ≠ 最终成交价

原因:

  • 交易会改变池子比例

前端常见处理:

  • 设置 0.5% / 1% / 自定义

2️⃣ LP(流动性提供者)

你也可以往池子里存币赚钱

复制代码
存 ETH + USDC
→ 获得 LP Token
→ 赚手续费

3️⃣ 无常损失(Impermanent Loss)

价格波动导致:

  • 你提供流动性
  • 不如直接持币

👉 LP 风险点,面试经常问


五、Uniswap vs Sushiswap(一句话区别)

项目 Uniswap Sushiswap
本质 AMM AMM
起源 原创 Fork Uniswap
代币 UNI SUSHI
特点 稳定、主流 激进、功能多

👉 前端交互几乎一模一样


六、前端如何"真的"用起来(你该练什么)

推荐最小实战路径(很适合你)

1️⃣ 用 wagmi + ethers

2️⃣ 连钱包

3️⃣ 调用 Uniswap Router

4️⃣ 实现:

  • 读价格(getAmountsOut)
  • approve
  • swap
  • 显示滑点 / 失败原因

七、面试一句话总结(直接背)

DEX 通过 AMM 算法,用资金池代替订单簿。

Uniswap 使用恒定乘积公式 x*y=k 定价,

前端主要通过 Router 合约完成 approve + swap,

交易中需要处理滑点、授权、路径和截止时间等问题。

相关推荐
xinlianyq1 天前
DeFi监管框架落地,美国认定多数代币为大宗商品
大数据·人工智能·区块链
Web3VentureView2 天前
SYNBO深度参与Ethereum on Tour 上海交大站:从高校 Builder 到链上一级市场基础设施
人工智能·web3·区块链·加密货币·synbo
ithadoop3 天前
Solana入门:区块链新手速成指南(第二阶段:开发入门)
rust·web3·区块链·智能合约·solana
Bczheng14 天前
二十.读写交易索引和验证交易
区块链
曦月逸霜4 天前
区块链技术与应用学习笔记(持续更新中)
笔记·学习·区块链
Web3VentureView4 天前
SYNBO维港私享局:在香港Web3嘉年华最后一天,打开链上一级市场的共识现场
人工智能·web3·区块链·加密货币·synbo
TechubNews5 天前
专访新火集团首席经济学家付鹏:解读比特币资产属性、香港楼市与普通人理财建议——Techub News对话实录
人工智能·区块链
王苏安说钢材A5 天前
无锡佳钛合不锈钢有限公司不锈钢焊管厂家
区块链
财迅通Ai5 天前
能源板块强势领涨,汇添富能源ETF(159930.SZ)单日大涨3.41%
区块链·能源·中国神华·陕西煤业
Web3VentureView5 天前
SYNBO亮相香港《前瞻》活动,联手HashKey共筑链上原生一级市场新范式
人工智能·web3·区块链·加密货币·synbo