问题标签 [quickfixn]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
732 浏览

c# - QuickFix - 用微秒将字符串解析为 DateTime

我的 .Net 应用程序中出现以下错误:

20170710-18:47:34.938:连接成功 20170710-18:47:34.940:启动登录请求 20170710-18:47:35.012:验证失败:无法转换字段:无法转换字符串 (20170710-18:47:34.979386)到日期时间:字符串未被识别为有效的日期时间。

我希望我的应用程序支持微秒,目前我可以发送一条LogOn消息,但是当我收到响应时,我的应用程序无法处理该消息。实际上,收到的消息不会出现在我的日志中,也不会触发我的任何事件(FromAdmin, FromApp

我试过改变我的字典,但我无法成功。

0 投票
1 回答
1066 浏览

quickfixn - QuickFix/N:如何在使用 FIXT1.1 和 FIX5.0 时键入消息?

语境

我有一个测试接受者和发起者。我正在使用 QuickFix/N 1.7 版本。如果我将 Acceptor 和 Initiator 都配置为 FIX 4.4,一切正常。什么都不做,只是连接,然后将传入/传出的心跳消息记录到调试控制台。一切OK,见下文。

我只更改从 FIX 4.4 到 FIX 5.0 的两个配置文件。一切正常(我的意思是心跳消息仍然来来往往),但回调的消息参数不再是类型化(心跳)运行时实例消息,而是基类。

诊断:

  • 所有引用的规范文件都已到位。如果我故意破坏 TransportDataDictionary 路径或 AppDataDictionary 中的字符,我会得到预期的异常
  • 使用开箱即用的规范文件,根本不需要定制。

问题:

为什么消息实例在 FIX 5.0 案例中不是类型化的运行时实例消息,而在 FIX 4.4 案例中是类型化的?这是预期的行为还是我错过了什么?

代码展品:

生成输出行的 Initiator IApplication 实现中的代码:

使用 4.4 配置时,我看到:(消息类型为QuickFix.FIX44.Heartbeat

当使用 5.0 和配置时,我看到了这个:(消息类型只是 QuickFix.FIX50.Message

Intiator 的 FIX5.0 配置:

Acceptor 的 FIX5.0 配置:

0 投票
0 回答
258 浏览

c# - 如何在 Quickfixn 中配置加密标准

我将如何在Quickfixn中为 FIX 连接配置加密标准。例如,我可以看到Quickfixj有一个专用设置 - CipherSuites

控制启用哪些特定 SSL 密码套件以实现安全连接

因此,在 FIX 配置文件中,我可以使用以下内容并应用加密标准:

现在我需要为 quickfixn 提供类似的东西,但似乎SSL 配置没有提供类似的设置。

那么如何配置 FIX 连接以使用给定的加密标准。

0 投票
2 回答
457 浏览

quickfix - quickfixn executionreport 35=8 in message log but didn't hit from app or crack

因此,我们发送一条不带边的 FIX 交易消息,银行拒绝使用 35=8 执行报告和 150=8 拒绝,然后是文本FIX Tag 54 (Side) has invalid value (0). Reason (should be either 1 or 2),然后是 35=3 拒绝消息Value is incorrect (out of range) for this tag。35=3 消息被破解,但 35=8 消息永远不会到达 fromapp。

我错过了一个设置吗?

在此处输入图像描述

0 投票
2 回答
2682 浏览

exception - QuickFix 可选字段检查值是否存在

我正在编写一个基于Quickfix/N的 FIX 引擎,它侦听交易执行 (ExecutionReport) 并将它们保存到数据库中。

如果接收到的消息中不存在该值,则从 API 请求字段值会引发 FieldNotFoundException。例如,如果帐户不存在,调用 executionReport.Account 将引发异常。

由于某些字段是可选的,因此我必须在获取字段值之前明确检查字段值是否存在。我有两种可能性:

可能性一: executionReport.IsSetAccount() ? executionReport.Account : null;

可能性2:

第一个选项很干净,但我觉得它真的很重,第二个可以概括为辅助函数,但它违背了 API 理念,我觉得我做错了什么。

那么我的问题是:

  • 还有另一种干净/正确的方法来完成这项工作吗?
  • 还是我对协议/API 的理解完全错误?我觉得我没有以正确的方式解决问题。

    非常感谢

0 投票
2 回答
3722 浏览

tls1.2 - QuickFIX/n 彭博配置

我正在尝试使用 QuickFIX/n 通过 FIX 协议 (4.4) 连接到 Bloomberg。

Bloomberg 要求使用 TLS 1.2 协议。我已按照说明安装了 PFX 证书。

我当前的 FIX 配置文件如下所示:

当我打开会话时,我立即断开连接。实际上,这不是网络问题,因为已到达服务器。布隆伯格告诉我,他们有一条“未知协议”消息。我这边没有任何日志。

你看到我的配置有问题吗?是否有人成功地与彭博建立了快速修复连接?如果是的话,根据您的经验,我的设置可能有什么问题?

0 投票
3 回答
565 浏览

c# - 消息怎么会乱序?

我已经使用 QuickFix/.NET 很长时间了,但在过去的两天里,引擎似乎两次发送了乱序消息。

这是一个示例,第三条消息是乱序的:

我了解 QuickFix 记录器不在单独的线程中。

什么可能导致这种情况发生?

0 投票
2 回答
508 浏览

quickfix - QuickFixN 白天断开连接,无法重新连接

我们正在使用 QuickFixN 向交易所发送订单并接收执行报告。

如果用于交换的 VPN 在白天断开,QuickFixN 直到第二天才能重新连接,尽管ResetOnLogonResetOnDisconnected设置设置为 N。

我们不明白原因:顺序,还是别的什么?

交换请求

0 投票
1 回答
703 浏览

quickfix - 如何使用 SessionQualifier 来消除其他相同的 Quickfix 会话的歧义?

我有两个具有相同 SessionID 的修复会话(无法更改,因为服务器端指定了 SenderCompID 和 TargetCompID 的值)。我了解到我可以在配置文件中使用 SessionQualifier 来消除两个会话的歧义。

现在,当我要通过特定会话发送消息时,

我应该怎么做才能告诉计算机通过哪个会话发送它?

0 投票
0 回答
109 浏览

c# - QuickFix/.Net 的最佳 TCP/NIC 设置

我通过 QuickFix/Net 从几个非常活跃的市场数据提供商处接收数据。

我看到偶尔的消费问题(dumpcap 日志和 FIX 标签 52 之间的延迟)。

我的服务器很忙,我想知道是否有设置 TCP 和/或适配器的建议,可以为 QuickFix/Net 提供最佳性能。