我们目前正在开发一个FIX连接,可以标记只应验证的数据。已决定使用特定的 TargetSubID 标记此数据。但这意味着新的会议。
我们假设我们将消息发送到会话 FIX.4.4:S-> T 。如果我们然后得到只应使用TargetSubID V验证的消息,则这意味着会话 FIX.4.4:S-> T / V 。如果未配置此会话,则会收到错误
Unknown session: FIX.4.4:S->T/V
如果我们在另一个旁边显式配置此会话,则会出现错误
quickfix.Session – [FIX/Session] Disconnecting: Encountered END_OF_STREAM
与bhageera says一样,您使用相同的凭据登录。
(...)我连接的对方只允许1个连接 每个用户/密码(即具有这些凭据的会话)。
我不是FIX专家,但我想知道TargetSubID是否只是在这里被误用了。如果没有,我想知道如何做到这一点。我们使用camel-quickfix开发FIX客户端。
答案 0 :(得分:0)
取决于交易对手-有时将Sender / TargetSubID视为唯一连接的一部分,有时它们会在一个连接上区分消息。
您的库是否具有配置选项以从连接查找中排除子ID?例如在QuickFix中,您可以设置SessionQualifier。
答案 1 :(得分:0)
这在很大程度上取决于您的系统是什么样的以及最终要实现的目标。
通常要评估的维度是:
就我自己而言,除非我只需要路由功能并且我的系统可靠地按照我期望的方式运行(可能不是您的情况),否则我不会使用可能与sesson / routing行为有关的标签进行测试。
相反,我会考虑其中之一:
来自自定义范围的标签将提供很大的灵活性,损坏的符号体系标签将确保如果偶然发送给产品的测试订单会退回。
对于这两种解决方案,您可能都可能需要基于标签的路由和转换层。如果您使用的是基于Java的内容,那么这两个步骤都将以通用形式在几个小时内完成(我希望使用javax.scripting / Nashorn)。