风险提示:防范以虚拟货币/区块链名义进行的非法集资风险。 ——银保监会等五部门

UniswapX 交易机制详解,构建一个复杂且竞争激烈的网络

白话区块链 2023-07-20 11:16:32
微信分享

扫码分享

UniswapX是一个路由器协议,允许交易者在AMM之间进行更好价格、无gas交换的交换操作,借助交换器、填充器、反应器和执行器的组件实现。

作者:@MrAndersonChen / 来源:https://twitter.com/MrAndersonChen/status/168128879842312601

翻译:火火/白话区块链


在花了一些时间阅读#UniswapX的材料和代码库后,@MrAndersonChen 写了进行一个推特来描述其背后的具体运行原理!希望对您有所帮助。

https://github.com/Uniswap/UniswapX/tree/main

简而言之,UniswapX是一种路由器协议(routing),允许交易者在AMM之间进行交换。

该架构由几个关键组件组成:交换器(Swapper)、填充器(Filler)、反应器(Reactor)和执行器(Excutor)。存储库中有一个清晰的体系结构图表。现在按顺序解释一下。

1.交换器(Swapper)

#Swapper创建并签署一个订单,其中包含将输入Token交换为输出Token的指令,然后将签名的订单发送到 Filler。好处是什么呢?更好的价格,无gas交换,MEV保护,失败交易无成本,甚至可以实现跨链交换。

2.填充器(Filler)

#Filler执行订单并支付gas费。这涉及调用反应器的“execute()”并决定执行器。根据白皮书,Filler 可能是MEV搜索者,做市商或其他链上代理。

3.反应器(Reactor)

#Reactor是负责结算订单的合同。它并没有真正执行订单,而是通过调用fill Contract的'reactor Callback'将其传递给执行者(也称为fill Contract)。

https://github.com/Uniswap/UniswapX/blob/main/src/reactors/BaseReactor.sol

4.执行器(Excutor)

#Executor,实现一个策略来填写订单并将输出Token转移给收件人。它能够一次填写多个订单。

一个官方的例子是 SwapRouter02Executor.sol,它使用 swapRouter02 的简单策略来完成订单。此合约只能由某些特定的 Filler 调用,因为它会检查 Filler 是否被列入白名单。

https://github.com/Uniswap/UniswapX/blob/main/src/sample-executors/SwapRouter02Executor.sol

5.小结

借助 UniswapX,routing 成为一个复杂且竞争激烈的网络。任何人都可以按照接口(IReactor.sol 和 IReactorCallback.sol)构建自己的 Reactor 来创建新的订单类型,或自己的执行器来创建新的订单匹配策略。

无论如何,最终的受益者永远是swapper。


 

白话区块链

区块链世界入口第一站,人人都能看懂的区块链;24 小时热点实时追踪。