用 Rust 写了一个极简撮合引擎核心:Lighting Match Engine Core
内容提要
该项目是用Rust编写的极简撮合引擎核心,名为Lighting Match Engine Core,专注于订单簿和交易阶段,支持连续竞价和集合竞价,提供dense和sparse两种订单簿实现。项目旨在与Rust社区交流低延迟撮合系统的设计,欢迎反馈和建议。目前已实现基本功能并进行性能测试,未来计划增加更多功能和完善文档。
关键要点
-
项目名为Lighting Match Engine Core,使用Rust编写,专注于订单簿和交易阶段。
-
支持连续竞价和集合竞价,提供dense和sparse两种订单簿实现。
-
目前已实现基本功能,包括订单匹配、集合竞价和固定长度二进制消息编码。
-
撮合核心保持窄,外围系统处理复杂订单和市场特有交易制度。
-
当前测试状态良好,已有34个单元测试通过,项目仍在早期阶段。
-
未来计划增加更多功能,完善文档和架构图,欢迎社区反馈和建议。
延伸解读
项目的设计理念
Lighting Match Engine Core 的设计理念是保持核心功能的简洁性,专注于基础的撮合逻辑,而将复杂的市场规则和策略型订单处理放在外围系统中。这种设计使得核心部分更易于测试和维护,同时也便于未来的扩展和优化。
性能测试的重要性
尽管当前的性能测试显示出极低的匹配延迟,但这些数据仅反映了特定条件下的结果,并不代表生产环境的真实表现。因此,开发者需要关注如何在更复杂的场景中进行性能基准测试,以确保系统在实际应用中的稳定性和效率。
社区反馈的价值
项目鼓励社区的反馈和建议,这不仅有助于发现潜在的设计缺陷,还能促进更广泛的技术交流。参与者可以通过提出问题和建议,帮助项目团队优化核心功能和外围系统的设计,提升整体性能和用户体验。
延伸问答
Lighting Match Engine Core 的主要功能是什么?
该项目专注于订单簿和交易阶段,支持连续竞价和集合竞价,提供 dense 和 sparse 两种订单簿实现。
为什么选择用 Rust 编写这个撮合引擎核心?
项目旨在与 Rust 社区交流低延迟撮合系统的设计,Rust 提供了高性能和安全性。
项目目前的测试状态如何?
当前已有 34 个单元测试通过,项目仍在早期阶段,存在一些警告和未使用的代码。
Lighting Match Engine Core 支持哪些类型的订单?
目前只接受限价单,市价单会被拒绝,支持开盘和可选收盘的集合竞价。
未来对 Lighting Match Engine Core 有哪些计划?
未来计划增加更多功能,完善文档和架构图,增加外围组件示例。
如何运行 Lighting Match Engine Core 的 demo?
可以通过命令行参数运行 demo,例如使用 'cargo run --features match-timing --release -- --prodid 7 --name AAPL --test-order-book-size 50k'。