如何在quickfixj消息中重复组

时间:2015-07-20 14:02:31

标签: java quickfix quickfixj

对于像交易捕获报告这样的quickfixj消息,它有时可以嵌套重复组。请查看其文档第10页上纽约证券交易所的交易捕获报告消息:https://www.nyse.com/publicdocs/nyse/markets/nyse/NYSE_TRF_Messaging_Spec.pdf

假设一个人需要获得partyID(448),partyIDSource(447)和partyRole(452),如何使用Java和QuickFixJ java api

1 个答案:

答案 0 :(得分:3)

获得第二级嵌套与获得第一级别组没什么不同。

我没有阅读您的纽约证券交易所文档,但我认为Parties组位于NoSides组内,就像常规FIX44规范一样。

此代码可能会有效。 (我没有编译它。)我没有进行任何组计数检查,但我认为你知道那部分。

PartyID partyId = new PartyID();

// group
quickfix.fix44.TradeCaptureReport.NoSides sidesGroup = 
  new quickfix.fix44.TradeCaptureReport.NoSides();

// subgroup
quickfix.fix44.TradeCaptureReport.NoSides.NoPartyIDs partyIdsGroup =
  new quickfix.fix44.TradeCaptureReport.NoSides.NoPartyIDs();

// get first sidesGroup
message.getGroup(1, sidesGroup);

// get first partyIdsGroup out of first sidesGroup
sidesGroup.getGroup(1, partyIdsGroup);
// do something with it...

// get second partyIdsGroup out of first sidesGroup
sidesGroup.getGroup(2, partyIdsGroup);
// do something with it...

// -----
// get second sidesGroup
message.getGroup(2, sidesGroup);

// get first partyIdsGroup out of second sidesGroup
sidesGroup.getGroup(1, partyIdsGroup);

// and so on...