quickfix与修复天线

时间:2012-01-08 15:17:24

标签: quickfix

有两个主要的修复引擎:

他们每个人的利弊是什么?我知道Fix Antenna更快,但还有什么?

QuickFix项目是否还活着。 Changelog显示最后一次提交给QuickFix的时间是2010-04-06 06:22,这是否意味着项目已经死了?

4 个答案:

答案 0 :(得分:3)

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

总是可以选择自己编写。这取决于您的使用案例。如果你对延迟不敏感(关注微秒),那么QuickFix可能是你最好的选择。否则,如果您确实关心每微秒并且希望处理的每个消息有更多可预测的延迟,那么QuickFix将无法为您工作,您或者想要一个低延迟的商业解决方案(例如Rapid Addition Cheetah),或者您想要自己编写,这是根据您的使用场景进行优化请注意,编写自己的产品以击败商业解决方案的性能需要一些时间,并不容易,因为许多商用引擎现在都具有高性能。

答案 1 :(得分:3)

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

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

答案 2 :(得分: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

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

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

从字符串序列化Heartbeat消息:

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:\项目\的quickfix \测试\释放\ PT>

答案 3 :(得分:0)

不一定是两个主要的FIX引擎。 Cameron是另一种广泛使用的FIX引擎。许多金融公司都在开发自己的FIX引擎。 FIX引擎本身没有优缺点列表,因为它们中的大多数都没有以相同的方式构建,并且其他因素在开发过程中不断涌现。只有这样才能根据您的具体需求对它们进行评估。

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