{{Quickfixn}} How to properly read groups from dialect/custom message?

Grant Birchmeier gbirchmeier at connamara.com
Tue Sep 18 07:27:18 PDT 2018


Unless you regen the source with your DD as input and recompile QF, you
will not see conveniently-named accessors for custom attributes, e.g.
mdsfr.NoLegs.  However, QF/n provides generic methods for accessing fields,
and you can use mdsfr.GetInt(555).

To get the group, you can use mdsfr.GetGroup(n, 555), where 'n' is a
1-based index.  (I don't know why we start from 1 instead of 0, but that's
how all QF ports do it.)  That will get you a generic Group object, where
you can call GetInt(), GetString(), GetChar(), etc to get the fields.

On Tue, Aug 28, 2018 at 9:17 AM, Matthias Güntert <
matthias.guentert at raiffeisen.ch> wrote:

> Hello
>
> I am trying to request market data (MsgType=W) by sending a market data
> request message to our counterparty.
>
> As our counterparty is using a dialect of FIX version 4.3 I had to heavily
> modify the data dictionary, so my client does not reject the inflowing
> messages (see example of an inflowing message structure below [0]).
>
> This works so far and messages are getting passed from the FromApp()
> method to my OnMessage(MarketDataSnapShotFullRefresh message, ...)
> method.
>
> However I am not able to read the NoLegs group from the
> MarketDataSnapshotFullRefresh object, as there is no such attribute. The
> model seems not automatically "adjust" to the data-dictionary defined in
> the xml.
>
> I therefor tried to inherit from MarketDataSnapshotFullRefresh and add the
> NoLegs attribute to my custom class. Unfortunately it won't let me read the
> NoLegs attribute.
>
> What is the correct/intended way to read a dialect/custom message?
>
> Thanks in advance!
>
> Best, Matthias
>
> [0] Example structure of inflowing message
>
> Tag     Name
> --------------------
> 8       BeginString
> 9       BodyLength
> 35      MsgType (=W)
> 34      MsgSeqNum
> 49      SenderCompID
> 52      SendingTime
> 56      TargetCompID
> 22      IDSource
> 48      SecurityID
> 55      Symbol
> 262     MDReqId
> 461     CFICode
>
> 268     NoMDEntries
> => 269  MDEntryType
> => 270  MDEntryPx
> => 272  MDEntryDate
> => 273  MDEntryTime
> => 276  QuoteCondition
> => 423  PriceType
> => 1026 MdEntrySpotRate
> => 1027 MDEntryForwardPoints
>
> => 269  MDEntryType
> => 270  MDEntryPx
> => 272  MDEntryDate
> => 273  MDEntryTime
> => 276  QuoteCondition
> => 423  PriceType
> => 1026 MdEntrySpotRate
> => 1027 MDEntryForwardPoints
>
> 555     NoLegs
> => 600  LegSymbol
> [...]
> => 687  LegQty
> [...]
>
> *****************************************************
>
> This e-mail may contain confidential material. It is intended only for the
> person or entity which it is addressed to. In case you should not be
> supposed to get this e-mail we ask you to delete it without taking notice
> of its content. Any views or opinions expressed in this e-mail are those of
> the sender and do not necessarily coincide with those of The Swiss
> Raiffeisen Group. Therefore this e-mail does not represent a binding
> agreement nor an offer to deal. E-Mail transmission can be insecure and can
> contain errors. Information could be intercepted, corrupted, lost,
> destroyed, incomplete or may contain viruses. Neither The Swiss Raiffeisen
> Group nor the sender can accept any liability for any kind of damage as the
> result of viruses or transmission errors.
>
> *****************************************************
>
> _______________________________________________
> Quickfixn mailing list
> Quickfixn at lists.quickfixn.com
> http://lists.quickfixn.com/listinfo.cgi/quickfixn-quickfixn.com
>
>


-- 
Grant Birchmeier
*Connamara Systems, LLC*
*Made-To-Measure Trading Solutions.*
Exactly what you need. No more. No less.
http://connamara.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quickfixn.com/pipermail/quickfixn-quickfixn.com/attachments/20180918/38b465dc/attachment.htm>


More information about the Quickfixn mailing list