gpt4 book ai didi

java - 如何在 Java 的 QUICKFIX 中将字符串转换为 MarketDataIncrementalRefresh?

转载 作者:行者123 更新时间:2023-11-29 04:28:43 24 4
gpt4 key购买 nike

我在股票和交易市场工作。我有这样的情况:我需要从日志中取出一个字符串并将其转换为“消息”类型的对象。根据 this link我试过在 JAVA 中使用“MessageUtils”类的所有三种方法。但是我的 String 被剥离为具有唯一标签的 Message 类类型对象。但由于我的字符串是“MarketDataIncrementalRefresh”类型,我希望每个标签都出现在消息中。

例如:我正在向“MessageUtils.parse()”方法提供以下字符串。

8=FIX.4.2|9=00795|35=W|49=TT_PRICE|56=SAP0094X|34=2392|52=20170623-04:41:33.375|55=CL|48=00A0HR00CLZ|10455=CLQ7|167=FUT|207=CME|15=USD|262=MDRQ-751|200=201708|18210=1|387=12292|268=24|269=0|290=1|270=4290|271=33|269=0|290=2|270=4289|271=34|269=0|290=3|270=4288|271=40|269=0|290=4|270=4287|271=38|269=0|290=5|270=4286|271=46|269=0|290=6|270=4285|271=53|269=0|290=7|270=4284|271=46|269=0|290=8|270=4283|271=66|269=0|290=9|270=4282|271=48|269=0|290=10|270=4281|271=64|269=1|290=1|270=4291|271=21|269=1|290=2|270=4292|271=40|269=1|290=3|270=4293|271=48|269=1|290=4|270=4294|271=83|269=1|290=5|270=4295|271=62|269=1|290=6|270=4296|271=46|269=1|290=7|270=4297|271=34|269=1|290=8|270=4298|271=55|269=1|290=9|270=4299|271=31|269=1|290=10|270=4300|271=128|269=2|270=4291|271=1|269=4|270=4280|269=7|270=4292|269=8|270=4277|10=044|

但我得到的是:

8=FIX.4.2|9=192|35=W|34=2|49=TT_PRICE|52=20170622-14:16:23.685|56=SAP0094X|15=USD|48=00A0HR00GCZ|55=GC|167=FUT|200=201708|207=CME|262=MDRQ-21|268=25|269=0|270=12510|271=24|290=1|387=121890|10455=GCQ7|18210=1|10=036|

如您所见,字符串中仅存在唯一标记。但我想要每一个标签,无论它在提供的字符串中存在多少次。

请谁能帮我用 JAVA 做这个。这将是非常可观的。

下面是我用来转换的代码:

         MessageUtils mu = new MessageUtils();
Session session = Session.lookupSession(sessionID);
Message msg = MessageUtils.parse(new DefaultMessageFactory(), null, str);
// Message msg = new Message(str, false); //This can also be used for converting
System.out.println(msg.toString());

最佳答案

另一个线程说:

MessageUtils.parse(MessageFactory messageFactory, DataDictionary dataDictionary, java.lang.String messageString)

你的代码说:

Message msg = MessageUtils.parse(new DefaultMessageFactory(), null, str);

所以你需要修复你的数据字典并将它传递给parse方法而不是传递'null'

关于java - 如何在 Java 的 QUICKFIX 中将字符串转换为 MarketDataIncrementalRefresh?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44822107/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com