简体   繁体   English

如何重新排列FIX消息中的标签?

[英]How to rearrange the tags in FIX message?

I'm sending my fix marketdata request message as: 我将固定市场数据请求消息发送为:

8=FIXT.1.1☺9=168☺35=V☺34=2☺49=XXXXX☺52=20160622-09:50:59.240☺56=XXXX☺262=1976060316☺263=1☺264=1☺265=0☺267=1☺269=0☺146=1☺55=ABC☺48=ABC☺22=8☺167=FXNDF☺762=PERIOD☺20000=1M☺10=165☺

In this I followed the order 35=V as follows: 在这种情况下,我遵循以下命令35 = V:

55=ABC|48=ABC|22=8|167=FXNDF|762=PERIOD|20000=1M

I want to rearrange my message sequence as this: 我想重新排列我的消息顺序,如下所示:

146=1|55=ABC||167=FXNDF|762=PERIOD|48=ABC|20000=1M|22=8

I'm using Quickfix DLL. 我正在使用Quickfix DLL。

The out of range exception you are getting is not a problem with the order of the fields of the FIX4.4 message but a problem with the contents of one particular field tag 625. This tag is usually called TradingSessionSubID and is usually expecting STRING content. 您得到的out of range异常不是FIX4.4消息的字段顺序有问题,而是一个特定字段标签625的内容有问题。此标签通常称为TradingSessionSubID, 通常需要 STRING内容。 However your configuration could easily redefine it as something else entirely. 但是,您的配置可以轻松地将其完全重新定义为其他内容。 Your dictionary definition file will have the precise requirement for your implementation, you'd best look there, the file is often named something like FIX44.xml. 您的字典定义文件将对您的实现有确切的要求,最好在那里查看,该文件通常被命名为FIX44.xml之类。

There is rarely any need to rearrange the order of your FIX message fields. 几乎不需要重新排列FIX消息字段的顺序。 You could try changing the order of the fields for your particular message in the dictionary definition file and see if that does it for you. 您可以尝试更改字典定义文件中特定消息的字段顺序,然后查看是否为您这样做。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM