快速修复与修复天线

发布于 2024-12-25 16:35:43 字数 462 浏览 1 评论 0原文

有两个主要的修复引擎:

它们各自的缺点和优点是什么?我知道固定天线更快,但还有什么?

QuickFix 项目还活着吗?变更日志显示对 QuickFix 的最后一次提交是在 2010-04-06 06:22,这是否意味着该项目已经死亡?

There are two major fix engines:

What are cons and prons of each of them? I know that Fix Antenna is faster, but what else?

Is QuickFix project alive. Changelog shows that last commit to QuickFix was at 2010-04-06 06:22, does it mean that project is dead?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

脸赞 2025-01-01 16:35:43

正如 DumbCoder 所说,主要的 FIX 引擎远不止 2 个。卡梅伦往往被多家投资银行聘用。 Rapid Addition 还拥有备受推崇的 FIX 引擎 - 还有更多。 QuickFix 非常受欢迎,受到许多个人和交易企业的依赖和使用,除非您对延迟非常敏感,否则它可能是一个绝佳的选择。

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

As DumbCoder says, there are a lot more than 2 major FIX engines. Cameron tends to be used by a number of investment banks. Rapid Addition also have a highly regarded FIX engine - and there are lots more. QuickFix is very popular and is relied on and used by lots of individuals and trading businesses and can be an excellent choice unless you are very latency sensitive.

There is always also the option to write your own. It depends on your use case. If you aren't hugely latency sensitive (care about microseconds), then QuickFix is probably your best bet. Otherwise, if you do care about every microsecond and want more predictable latency per message processed, then QuickFix will not work for you and you either want a low latency commerical solution (such as Rapid Addition Cheetah) or you want to write your own which is optimised to your usage scenario. Note that writing your own to beat the performance of a commercial solution will take some time and is no easy feat as many of the commercial engines are now highly performant.

豆芽 2025-01-01 16:35:43

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

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

Having undertaken extensive benchmarking for QuickFix, Antenna, Onix, Rapid Addition and Cameron we have opted for Onix . www.onixs.biz.

We benchmarked Java, C++ and .net solutions and have gone live with C++ on RHEL5.

情徒 2025-01-01 16:35:43

我运行了 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>

I ran the performance test code included in QuickFix C++ and got the results below. As far as I can tell, this looks excellent. And I am running a commodity home desktop not a high-end trading server used by big shops. The build was done with VS 2012 at full optimization.

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

Converting integers to strings:

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

Converting strings to integers:

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

Converting doubles to strings:

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

Converting strings to doubles:

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

Creating Heartbeat messages:

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

Identifying message types:

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

Serializing Heartbeat messages to strings:

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

Serializing Heartbeat messages from strings:

num: 1000000, seconds: 1.094, num_per_second: 914077

Creating NewOrderSingle messages:

num: 1000000, seconds: 2.312, num_per_second: 432526

Serializing NewOrderSingle messages to strings:

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

Serializing NewOrderSingle messages from strings:

num: 1000000, seconds: 3.188, num_per_second: 313676

Creating QuoteRequest messages:

num: 1000000, seconds: 41.547, num_per_second: 24069.1

Serializing QuoteRequest messages to strings:

num: 1000000, seconds: 3.734, num_per_second: 267809

Serializing QuoteRequest messages from strings:

num: 1000000, seconds: 26.672, num_per_second: 37492.5

Reading fields from QuoteRequest message:

num: 1000000, seconds: 15.89, num_per_second: 62932.7

Storing NewOrderSingle messages:

num: 1000000, seconds: 3.485, num_per_second: 286944

Validating NewOrderSingle messages with no data dictionary:

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

Validating NewOrderSingle messages with data dictionary:

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

养猫人 2025-01-01 16:35:43

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

Quickfix 项目几乎还活着。确实存在一些为 Quickfix 提供支持的商业公司,可能在 Quickfix 网站上有。而且你确实有源代码,没有什么可以阻止你自己修改。

Not necessarily the 2 major FIX engines. Cameron is another widely used FIX engine. Many financial companies do develop their own FIX engines. There isn't a list of pros and cons for the FIX engines, per se as most of them aren't built the same way and other factors creep in during development. Only way is evaluate them yourselves for your specific needs.

Quickfix project is pretty much alive. There do exist some commercial companies which provide support for Quickfix, it is probably there on the Quickfix website. And you do have the source code, there is nothing stopping you from tinkering yourself.

夜司空 2025-01-01 16:35:43

我发现了一个很棒的“组合” - FIX Antenna .NET Core。它是一个高性能、开源 FIX 引擎,集速度和灵活性于一身。

您可以在此处查看详细的性能基准(包括 FIX Antenna VS QuickFIX):https://b2bits.atlassian.net/wiki/spaces/B2BITS/pages/6071241/Benchmarking+of+FIX+Antenna+.NET+Core+0.9.2+Linux

I have found a great "combo" - FIX Antenna .NET Core. It is a high-performance, open-source FIX engine that combines speed and flexibility.

You can review detailed performance benchmarks (including FIX Antenna VS QuickFIX) here: https://b2bits.atlassian.net/wiki/spaces/B2BITS/pages/6071241/Benchmarking+of+FIX+Antenna+.NET+Core+0.9.2+Linux

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文