Magnus 是一个开源的 Solana 聚合器,旨在统一与 Solana 上的各种流动性来源(包括 AMM、Prop AMM 和聚合器)集成所需的组件。它包含用于跟踪链下账户状态的链下服务和用于促进链上交换的链上路由器,旨在帮助开发者理解不同的流动性来源。
4 分钟
在 LimeChain,我们的研发过程通常遵循一个特定的模式:我们找到一个复杂的系统,我们分析它,然后我们尝试测量并重现它。
最近,我花了大量时间研究 Solana 上的路由订单流和 Prop AMM。因此,我们发表了一篇关于如何理解这些“黑暗”协议的研究,并构建了一个基准环境来观察它们在不同条件下的行为。
在研究完模拟工具后,我在我的 X 推文中寻宝时,偶然看到理查德·费曼的一句话,据说这句话是在他 1988 年去世时在他的黑板上发现的:
“凡我不能创造的,我便不能理解。”
这让我开始思考——虽然模拟告诉你发生了什么,但它们并没有给你一个关于它实际是如何在执行级别上发生的清晰的画面。
基准测试和分析模拟是一回事。但对我来说,Prop AMM 的“黑盒”只有在你必须编写与之交互、处理其状态并通过它路由实际交易的代码时才会真正打开。
这个认识促使我创建了 Magnus——一个开源的 Solana 聚合器。
简单来说,我创建了一个工具,旨在统一与 Solana 上各种流动性来源集成所需的组件。这包括 AMM、Prop AMM 和聚合器。
我试图将其构建为开发者理解的工具——一个你可以看到连接和执行网络上最流行的协议所需的实际机制的仓库。
该系统由两个核心组件组成:
链下服务: 实时跟踪账户状态,计算预定义的策略,并发送定制的交易或bundle。我将其设计为离散的,因此你可以将其作为独立的、可运行的二进制文件运行,或者作为即插即用框架将其拉入你自己的项目中。
链上路由器: 这是一个 Solana 程序,用于促进实际的swap。它确保链下服务发送的指令在链上正确且安全地执行。
目前实现的流动性来源包括:
HumidiFi
SolFiV2
ObricV2
ZeroFi
TesseraV
GoonFi
Raydium (恒定乘积)
Raydium (集中流动性)
因为一些(大多数)专有 AMM 是故意混淆的,所以我绕过了本地存储反序列化状态和手动计算swap金额的传统方式。相反,这些交互是通过内置的类似 chroot 的 shell 直接模拟的。为了保持灵活性,所有适配器都需要实现一个统一的接口,该接口抽象了特定于交易所的逻辑,允许所有流动性来源可以互换地处理。
如果你是开发人员或研究人员,并且对高频交易感兴趣,那么你知道速度与精度之间的权衡是在 Solana 上构建的永恒斗争。这个开源聚合器提供了一个起点,让你可以自己探索这种权衡。
我看到人们使用这个仓库主要有三种方式:
虽然我们之前的工具 pmm-sim 非常适合历史基准测试,但这个工具提供了实时跟踪,让你可以看到流动性如何流动以及价格如何在不同来源之间变化。
如果你正在开发执行机器人,Magnus 提供了交易构建和路由的基础。你可以使用统一的接口与多个协议进行交互,而无需从头开始构建每个新的流动性来源。
这可能是最有趣的用例。Magnus 允许你创建自己的执行算法。你不必被迫使用内置逻辑。相反,你可以试验如何处理滑点,优先选择哪些路线,以及如何绑定你的指令。它基本上是一个沙盒,用于找到你自己在执行速度和价格影响之间的平衡。
代码已在 GitHub 上发布:https://github.com/limechain/magnus\ \
这是一个完全可用的实现,但我留下了很多改进空间。本着开源研发的精神,你可以将其视为一个基础。
如果你一直在阅读 Solana 协议的文档,并且感觉仍然缺少完整的画面,只需克隆该仓库,查看交互逻辑,并尝试自己重建swap。
这就是我们真正了解系统的方式。
Magnus 是由 LimeChain 开发的开源 Solana 聚合器。它旨在统一与 Solana 网络上各种流动性来源集成所需的组件,包括自动做市商 (AMM)、专有 (Prop) AMM 和其他聚合器。
虽然模拟提供了历史数据,但创建者认为,真正理解专有 AMM 的“黑盒”需要编写在执行级别与其交互的代码。Magnus 作为开发人员学习这些复杂协议如何运作的工具。
Magnus 由两个主要部分组成:
链下服务: 实时跟踪账户状态,计算策略,并发送定制的交易或bundle。它可以作为独立的二进制文件运行,也可以集成到其他项目中。
链上路由器: 一个 Solana 程序,确保来自链下服务的指令在区块链上安全正确地执行。
该聚合器目前支持:
由于许多专有 AMM 故意难以分析,Magnus 绕过了传统的本地状态存储。相反,它使用内置的“类似 chroot 的 shell”来直接模拟交互,使用统一的接口,允许所有流动性来源可以互换地处理。
Magnus 主要为开发人员和研究人员构建,特别是那些对高频交易 (HFT)、去中心化金融 (DeFi) 执行和 Solana 协议机制感兴趣的人。
实时分析: 实时跟踪流动性如何在不同来源之间流动以及价格如何变化。
交易和机器人开发: 提供交易构建和路由的基础,而无需为每个新协议从头开始。
自定义执行算法: 充当开发人员试验滑点处理、路由优先级和交易绑定的“沙盒”。
虽然这是一个完全可用的实现,但创建者将其视为一个“有很大的改进空间”的基础。它旨在成为开源社区内进一步研究和开发的起点。
该仓库已上线,可在 GitHub 上访问:https://github.com/limechain/magnus
- 原文链接: limechain.tech/blog/to-u...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!