Uniswap V4是如何实现限价单交易的?
昨日,Uniswap 发布了未来即将推出的 Uniswap V4 版本代码草稿,相比 V3 出现了很多创新点。其中,最引人瞩目的一点就是 V4 版本出现了限价单交易。大家对于 Uniswap V4 如何实现限价单交易比较好奇,接下来为大家深入分析一下 Uni V4 版本如何实现限价单交易。
关于 Hooks
根据 Uniswap 官方白皮书,限价单交易隶属于其新功能的 Hooks 之下,所以是依靠 Hooks 机制来实现链上限价单交易。
Hooks 是 Uniswap V4 的核心机制,指的是在资金池生命周期的某个特定时刻运行的代码片段。与之前的 Uniswap 版本相比,新版本资金池的可定制程度更高,因此无论是创建池子,还是 LP(流动性提供者)添加/移除流动性,抑或是在 swap 之前/后,Hooks 起到的作用都非常重要。
在 DeFi 中,Hooks 是一种编程概念,指的是一组用于在智能合约执行特定操作时自动触发的函数或代码片段,可用于在特定事件发生前、后或期间执行自定义逻辑。Hooks 为开发者提供了一种在智能合约的不同阶段执行自定义逻辑的方式。通过使用 Hooks,开发人员可以实现更灵活、可定制和可扩展的 DeFi 应用程序。
例如,Hooks 可以用来创建具有根据市场条件变动的动态交换费用的资金池,而不是预先设置和静态的交换费用。同时,Hooks 还使交易者能够下更复杂的订单,例如限价订单或 TWAP(时间加权平均价格)订单,这些订单会在一定时间内买入/卖出一定数量的 Token。
不仅如此,Hooks 还允许以不同的方式使用 Uniswap 的流动性。这类似于 Balancer 的 Boosted Pools,超出范围的流动性可以存入其他协议,例如借贷者,以获得额外的收益。
V4 限价单机制
通过分析 Uniswap V4 的限价单 LimitOrder.sol 的示例合约代码,得出的限价单运行流程大概如下:
1. 导入库和合约:引入了相关的库,如 SafeERC20 和 IERC20,以及用于与 Uniswap V4 交互的合约,如 IUniswapV4Router02。
2. 定义变量:
- tokenIn:交易中的输入的 token;
- tokenOut:交易中的输出的 token;
- totalAmountIn:交易中输入的 token 总量;
- minAmountOut:交易中用户预期的最小输出 token 量。
3. 定义限价单:
- OrderExecuted:当限价订单成功执行时触发的 token 价格。
4. 构造函数:在部署此合约时,需要提供以下参数:
- _router:Uniswap V4 的路由合约地址;
- _tokenIn:输入 token 的合约地址;
- _tokenOut:输出 token 的合约地址;
- _totalAmountIn:输入 token 的总量;
- _minAmountOut:期望的最小输出 token 量;
- _deadline:限价订单的截止时间。
5. executeOrder 函数:该函数用于执行限价订单
首先,该函数确保当前区块的时间戳早于截止时间,然后计算交易的实际输出金额。接下来,它会检查实际输出金额是否大于或等于最小输出金额。如果满足条件,它将使用 SafeERC20 库安全地将输入 token 从用户地址转移到合约地址,然后执行交易。最后,将输出 token 发送回用户,并触发 OrderExecuted 事件。
6. onUniswapV4Swap 函数:这个函数是一个回调函数,当交易被 Uniswap V4 路由合约执行时会被调用。该函数将检查交易的输入和输出金额是否符合预期,并返回适当的布尔值。
BlockBeats 注:布尔值是 Python 中一种取值仅能为真或假的数据类型,它赋予了编程语言在逻辑上表达真或假的能力。如果没有这种能力,很多功能将无法被实现。
7. recoverToken 函数:这个函数允许合约的拥有者在特殊情况下从合约中取回 token。例如,当由于某种原因订单未被执行,用户可以通过这个函数来找回他们锁定在合约中的 token。
有了 Hooks,限价单的运行机制就很明显了:
-在 Hooks 合约上下订单;
-Hooks 合约将你的订单添加到其 V4 交易上;
-根据自定义或托管预言机,当价格到限价单价格时,会触发 Hooks 自动执行 Swap 操作,并调整流动性;
-Hooks 自动 remove order
-订单取消或完成。
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
您可能感兴趣
-
我参与早期项目的逻辑和心态
这几天文章末尾有读者提到了一个很常见的问题:如果错过项目最早期应该用什么心态来评估是否还值得参与?这个问题中提到的一个重要概念是“早期”。但以我的经验,判断一个项目是否还处于早期在很大程度上是非常主观
-
早报丨特朗普拟发布一系列行政令 经济日报:着力降低人工智能应用门槛
头条▌特朗普拟在宣誓就职数小时内发布一系列行政令美国候任总统唐纳德·特朗普计划在1月20日就职后数个小时内就移民、能源、联邦工作人员和监管改革等问题发布一系列行政命令,力争迅速全面落实其施政方针。他计
-
AI Agent 深度投研:全方位盘点 AI Agent 框架、Launchpad、应用、Meme 的崛起
Crypto 与 AI 的结合,正以全新的方式展示其巨大的市场潜力。AI Agent 不仅仅是对传统 AI 技术的延伸,更是一个嵌入区块链世界的超潜力赛道。究竟 AI Agent 是什么?为什么市场如
-
当 SOL Layer2 遇上 VC 币:圈外引流、玩法创新、技术转型的「三叉戟」
作者:Rui 来源:X,@YeruiZhang 在 ETH Layer2 势微的情况下,今年新起来的叙事是 SOL Layer2,大概逻辑就是用了 Anza Lab 的 SVM 标准,开发更多扩展功能
-
Web3.0日报 | XRP可能是下一个加密现货ETF
DeFi数据1.DeFi代币总市值:1182.04亿美元DeFi总市值 数据来源:coingecko2.过去24小时去中心化交易所的交易量102.08亿美元过去24小时去中心化交易所的交易量 数据来源
-
史上最快区块链诞生在即?一文解析 Solana Firedancer 亮点
作者:吴天一,DeThings1 月 8 日,据 CoinDesk 报道,Solana 正在加强对 Firedancer 的测试,这是一项备受期待的软件升级,有望大幅提高区块链的处理速度。根据 Sol
-
洞察AI Agent新趋势:DeFAI、游戏代理与投资DAO初露锋芒
原文标题:《ai agents weekly recap》原文作者:sandraaleow,kaitoai、partyhatDAO 成员原文编译:zhouzhou,BlockBeats编者按:本周 A
-
AI Agent深度投研(上篇):全方位盘点AI Agent框架、Launchpad、应用、Meme的崛起
原文作者:Biteye 核心贡献者 Viee原文编辑:Biteye 核心贡献者 Viee原文来源:@BiteyeCNCrypto 与 AI 的结合,正以全新的方式展示其巨大的市场潜力。AI Agent
- 成交量排行
- 币种热搜榜