当我想发送一个Quickfix消息(例如Logon),是否需要手动填写每个字段,或者设置文件中的数据会根据需要自动添加。
目前,我可以连接但不能登录到我的经纪人的FIX服务器,我无法得知我做错了什么。
当您从启动器调用start
时,QuickFix将自动连接并发送登录信息。如果无法与经纪人建立联系,请要求他们确认是否能够看到您的登录请求。另外,请确保他们不需要额外的字段,例如密码或SubID。
QuickFIX会从QuickFIX设置/配置文件中填充字段。因此,当QuickFIX处理连接时,诸如TargetCompID、SenderCompID、Host等内容都会自动填充。请参阅配置指南以获取更多可以在此处填充的字段的详细信息。虽然您可以向此文件添加字段,但是quickFIX引擎不会自动填充它们。您需要覆盖toAdmin
方法以添加消息的其他字段。
当您覆盖toAdmin
方法时,您需要检查消息类型。如果消息对象与Java中的消息对象相同,则需要获取消息头并检查消息头中的消息类型字段,因为它不在消息正文中。
toAdmin
方法并在消息中填写相应的字段。 - chrisaycocksessionID.isHeaderField(554)
时,我发现密码字段不存在,但是当我尝试使用sessionID.setString(554, password)
添加它时,一切都崩溃了,说我没有正确使用setField()
方法。(顺便说一句,我正在使用Python 2.7) - gearhead