在quickfix

时间:2015-10-14 00:43:14

标签: c++ quickfix

我正在与经纪人合作,该经纪人告诉我不要在登录时重置序列号,除非在本周初。 但是,如果序列号没有出现问题,我应该在登录消息中使用标记141来请求序列号重置。显然我可以检查被拒绝的登录因为序列号被拒绝而被拒绝,并在onlogon中设置标签,但是如何告诉quickfix它需要重置它的序列号?这是一个难以测试的功能,因为连接问题使得序列号不会经常发生。

我正在使用Quickfix的C ++版本。

1 个答案:

答案 0 :(得分:1)

您可以在LOGOUT消息中监控正确的消息。如果它类似于" msgseqnum太低"设置一个标志以重置下一个LOGON消息。这来自FIX::Application::fromAdmin实施。

然后在FIX::Application::toAdmin实施中检查消息是否为LOGON并且设置了重置标志。如果是,请查找您的会话(FIX::Session::lookupSession)并致电setNextSenderMsgSeqNum(1)setNextTargetMsgSeqNum(1)。同时重置你的旗帜:)