1

有两个主要的修复引擎:

它们各自的优缺点是什么?我知道 Fix Antenna 更快,但还有什么?

QuickFix 项目是否存在。Changelog 显示最后一次提交 QuickFix 是在 2010-04-06 06:22,这是否意味着该项目已死?

4

4 回答 4

3

正如 DumbCoder 所说,有不止 2 个主要的 FIX 引擎。Cameron 往往被许多投资银行使用。Rapid Addition 也有一个备受推崇的 FIX 引擎——而且还有更多。QuickFix 非常受欢迎,被许多个人和交易企业所依赖和使用,除非您对延迟非常敏感,否则它可能是一个很好的选择。

也总是可以选择自己编写。这取决于您的用例。如果您不是对延迟非常敏感(关心微秒),那么 QuickFix 可能是您最好的选择。否则,如果您确实关心每一微秒并希望处理每条消息的延迟更可预测,那么 QuickFix 将不适合您,您要么想要低延迟的商业解决方案(例如 Rapid Addition Cheetah),要么您想编写自己的针对您的使用场景进行了优化。请注意,编写自己的解决方案以超越商业解决方案的性能需要一些时间,而且并非易事,因为许多商业引擎现在都具有高性能。

于 2012-01-09T09:18:49.983 回答
3

在对 QuickFix、Antenna、Onix、Rapid Addition 和 Cameron 进行了广泛的基准测试后,我们选择了 Onix。www.onixs.biz。

我们对 Java、C++ 和 .net 解决方案进行了基准测试,并在 RHEL5 上使用了 C++。

于 2012-11-13T11:06:44.137 回答
1

我运行了 QuickFix C++ 中包含的性​​能测试代码,得到了以下结果。据我所知,这看起来很棒。而且我正在运行一个商品家庭桌面,而不是大型商店使用的高端交易服务器。该构建是使用 VS 2012 在完全优化的情况下完成的。

G:\projects\quickfix\test\release\pt>pt.exe -p 15000 -c 1000000

将整数转换为字符串:

num: 1000000, seconds: 0.016, num_per_second: 6.25e+007

将字符串转换为整数:

num: 1000000, seconds: 0, num_per_second: 1.#INF

将双精度数转换为字符串:

num: 1000000, seconds: 0.5, num_per_second: 2e+006

将字符串转换为双精度:

num: 1000000, seconds: 0.219, num_per_second: 4.56621e+006

创建心跳消息:

num: 1000000, seconds: 0.75, num_per_second: 1.33333e+006

识别消息类型:

num: 1000000, seconds: 0.062, num_per_second: 1.6129e+007

将心跳消息序列化为字符串:

num: 1000000, seconds: 0.516, num_per_second: 1.93798e+006

从字符串序列化心跳消息:

num: 1000000, seconds: 1.094, num_per_second: 914077

创建 NewOrderSingle 消息:

num: 1000000, seconds: 2.312, num_per_second: 432526

将 NewOrderSingle 消息序列化为字符串:

num: 1000000, seconds: 0.75, num_per_second: 1.33333e+006

从字符串序列化 NewOrderSingle 消息:

num: 1000000, seconds: 3.188, num_per_second: 313676

创建 QuoteRequest 消息:

num: 1000000, seconds: 41.547, num_per_second: 24069.1

将 QuoteRequest 消息序列化为字符串:

num: 1000000, seconds: 3.734, num_per_second: 267809

从字符串序列化 QuoteRequest 消息:

num: 1000000, seconds: 26.672, num_per_second: 37492.5

从 QuoteRequest 消息中读取字段:

num: 1000000, seconds: 15.89, num_per_second: 62932.7

存储 NewOrderSingle 消息:

num: 1000000, seconds: 3.485, num_per_second: 286944

验证没有数据字典的 NewOrderSingle 消息:

num: 1000000, seconds: 0.11, num_per_second: 9.09091e+006

使用数据字典验证 NewOrderSingle 消息:

G:\projects\quickfix\test\release\pt>

于 2013-12-07T08:52:22.207 回答
0

不一定是 2 个主要的 FIX 引擎。Cameron 是另一个广泛使用的 FIX 引擎。许多金融公司确实开发了自己的 FIX 引擎。FIX 引擎没有优缺点列表,因为它们中的大多数不是以相同的方式构建的,并且在开发过程中会出现其他因素。唯一的方法是根据您的特定需求自行评估它们。

Quickfix 项目非常活跃。确实存在一些为 Quickfix 提供支持的商业公司,它可能在 Quickfix 网站上。而且你确实有源代码,没有什么能阻止你修补自己。

于 2012-01-09T08:24:32.187 回答