20个版本
0.0.21 | 2023年11月27日 |
---|---|
0.0.20 | 2023年11月24日 |
0.0.9 | 2023年10月31日 |
0.0.5 | 2023年9月28日 |
#99 在 财务
每月下载量 188次
205KB
4.5K 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。
我们欢迎有志于与我们合作将此项目变为成功的项目的贡献者。有许多可以并行开发的组件。如果您有兴趣参与,请随时联系我们。
联系的最佳方式是发起讨论。
依赖项
~17–33MB
~587K SLoC