0

作为我们的 FIX 提供商对我们开发的连接器应用程序执行的一致性测试的一部分,在经历所有会话的突然断开后,应该自动重新连接并重新订阅报价会话。

由于我们使用 QuickfixJ,当报价会话发生任何中断时,客户端应用程序会自动重新连接并重新登录成功,并且默认情况下会将序列号重置为从 1 开始。但是,重新登录后,我们的应用程序不会收到任何报价消息即使交易对手在中断之前不断发送订阅的报价(这就是我们的交易对手所说的)。除了成功的 Heartbeat 消息外,我们在日志中也看不到任何内容。

重新登录后是否必须再次发送新的 QuoteRequest?还是我们必须发送 ResendRequest?

我认为我们不能在这里发送 ResendRequest,因为在登录期间序列号已经被重置。如果我们必须发送一个新的 QuoteRequest,它是否会导致交易对手出现任何错误,因为它没有停止发送先前订阅的 Quotes?

您能否建议我们一个解决方案。提前致谢。

4

1 回答 1

2

重新登录后是否必须再次发送新的 QuoteRequest?

这个答案是特定于交易对手的。FIX 协议没有回答这个问题。您确实需要询问您的交易对手。我的直觉说答案可能是“是”,但你应该与他们确认。

FIX 提供了一组默认的应用程序级消息和字段,但没有描述它们必须如何使用。因此,每个交易对手的做法都会有所不同。

或者我们必须发送一个 ResendRequest?

天哪,不!ResendRequest 是传输层消息;QF/j 引擎会在需要时自动发送。你不应该手动发送它(就像你不应该手动发送心跳一样)。

于 2014-03-30T19:30:22.417 回答