12个版本
0.0.21 | 2023年11月27日 |
---|---|
0.0.20 | 2023年11月24日 |
#318 in 金融
每月121次下载
用于hotfix
395KB
4K SLoC
警告
HotFIX是一个实验性项目,目前尚未完成,距离完成还有很长的路要走。它不适合生产使用。
概述
HotFIX是使用Rust实现的FIX引擎。虽然最终目标是创建一个健壮、完全兼容、易于使用且性能优异的引擎,但这是一个庞大的任务。
HotFIX的主要目标是尽快提供一个功能齐全且实用的引擎,支持FIX 4.4和5.0。这意味着尽可能使用现有解决方案,优先考虑功能组件而不是性能,并且在现阶段使用实验性代码而不是优质代码。
已实现的功能
- TCP传输
- 使用
rustls
的TLS支持 - 基本消息编码和解码(FIX 4.4)
- 持久性消息存储
- 心跳、登录、重新连接会话
- 发送消息的基本逻辑
- 接收消息的基本逻辑
- 重发流程
- 测试请求和处理对端超时
- 消息代码生成 - 即将推出
查看示例以开始使用。
先验知识
HotFIX的两个主要影响是QuickFIX和FerrumFIX。
各种语言的QuickFIX实现(如QuickFIX/J)影响了传输层和会话层的设计。FIX消息逻辑基于QuickFIX XML规范。
HotFIX的FIX消息实现利用FerrumFIX进行代码生成、解析XML规范、定义字段等。这可能会在未来改变,但重用FerrumFIX代码已被证明可以加速达到功能引擎的过程。
贡献
在其当前状态下,该引擎存在许多将在适当时候解决的问题,因此请不要为单个错误创建问题或PR。
我们欢迎有志于此的贡献者与我们合作,将此项目变为一个成功的项目。有许多可以并行开发的组件。如果您有兴趣参与,请随时联系。
联系的最佳方式是通过发起讨论。
依赖关系
~7MB
~127K SLoC