WEB3 Uniswap DEX learn books
Uniswap
1.
背景
1.1.
Solidity-Fixed-Point
1.2.
ERC4626
1.3.
闪电贷Flashloan
1.4.
去中心化交易所
1.5.
恒定乘积公式
1.6.
价格操纵
2.
uniswapV1
2.1.
工厂合约
2.2.
Exchange合约
2.3.
Uniswap合约
3.
uniswapV2
3.1.
架构
3.2.
兑换函数
3.3.
流动性代币
3.4.
Uniswap协议手续费
3.5.
代币价格预言机
3.6.
库View函数
3.7.
Routes
4.
uniswapV3
4.1.
uniswapV3
4.1.1.
框架
4.1.2.
开发环境
4.2.
手动计算的Swap
4.2.1.
完整合约代码
4.2.2.
计算流动性
4.2.3.
添加流动性
4.2.4.
swap代币
4.2.5.
管理流动池
4.3.
池子内的自动Swap
4.3.1.
完整合约代码
4.3.2.
添加流动性
4.3.3.
计算swap数量
4.3.4.
计算新的Tick位置
4.3.5.
swap代币
4.3.6.
预估swap数量
4.4.
跨流动性区间的Swap
4.4.1.
完整合约代码
4.4.2.
添加流动性
4.4.3.
swap代币
4.4.4.
swap滑点
4.5.
Milestone 4. 跨池子兑换
4.5.1.
完整合约代码
4.5.2.
部署Pool的工厂合约
4.5.3.
计算兑换路径
4.5.4.
swap代币
4.6.
Milestone 5. 累计手续费用 + Oracle price
4.6.1.
完整合约代码
4.6.2.
swap 手续费
4.6.3.
协议手续费
4.6.4.
价格预言机
4.7.
Milestone 6: NFT Positions
4.7.1.
完整合约代码
4.7.2.
NFT Manager
4.7.3.
NFT源数据
Light
Rust
Coal
Navy
Ayu
Web3 Uniswap Development Book
跨tick交易
在这个milestone中,会:
更新
mint
函数,使得能够在不同的价格区间提供流动性;
更新
swap
函数,使得在当前价格区间流动性不足时能够跨价格区间交易;
学习如何在智能合约中计算流动性;
在
mint
和
swap
函数中实现滑点控制;
增加对于定点数运算的一些了解。
完整合约代码
V3Manager
V3Pool
Quoter
Lib
BitMath
FixedPoint
LiquidityMath
Math
Position
PrbMath
SwapMath
Tick
TickBitMap
TickMath
Interface
FlashLoanCall
Manager
MintCall
SwapCall
Pool