{{Quickfixn}} Problem with quickfix 4.2 and multiLegReportingType

Grant Birchmeier gbirchmeier at connamara.com
Thu Mar 10 12:49:12 PST 2022


If you look at the FIX4.2. spec's default DataDictionary, you'll see that
MultiLegReportingType (tag 442) does not actually belong to
NewOrderSingle.  Since the default FIX42 build is based on the spec, of
course the method NewOrderSingle.Set(MultiLegReportingType) does not exist.

I'm guessing you're new to FIX and QuickFIX.  What you're seeing is that
your counterparty has made customizations to their DD, adding 442 to
NewOrderSingle.  Surely they have made many other customizations as well.
You will need to obtain (ask your counterparty!) or create a new custom
FIX42.xml DataDictionary and set your QF config to use it.

To set 442 in your message outside of a repeating group, you can use a
generic tag setter:
> order.SetField(new MultiLegReportingType('3'));

See for more tips:
http://quickfixn.org/tutorial/sending-messages.html

Depending on the complexity of your DD changes, another option is
regenerating the QF/n source with your DD and creating a custom build.  But
that's an advanced topic.

-Grant


On Thu, Mar 10, 2022 at 1:33 PM Miguel Angel Torres <mikitowers at gmail.com>
wrote:

>
> Hi everybody,
> I sent a email last week about send order with legs with fix 4.2. I was
> investigating about it, there is a property MultiLegReportingType at
> documentation fix 4.2, the code is 442 and it indicates the type of
> instrument the Execution Report refers to. Used with multi-leg securities
> such as, Options Strategies, Spreads, etc.
>
> Using this property at quickfix 4.2 I can' t set to the NewOrderSingle
> because the attribute MultiLegReportingTye isn't at NewOrderSingle class
> but it's present at QuickFix.Fields.
>
> For example:
> QuickFix.FIX42.NewOrderSingle orden = new QuickFix.FIX42.NewOrderSingle(
>                                new QuickFix.Fields.ClOrdID("1"),
>                                new QuickFix.Fields.HandlInst(1),
>                                new QuickFix.Fields.Symbol("AAL"),
>                                new
> QuickFix.Fields.Side(QuickFix.Fields.Side.BUY),
>                                new
> QuickFix.Fields.TransactTime(DateTime.Now),
>                                new
> QuickFix.Fields.OrdType(QuickFix.Fields.OrdType.MARKET)
>   );
>   orden.Set(new QuickFix.Fields.MultiLegReportingType('3'));
>
> The error is here:
> CS1503: argument 1 can't convert  from
> QuickFix.Fields.MultiLegReportingType to QuickFix.Fields.ClOrdID
>
> I don't know how solve it, if anyone have any idea about the solution
> please answer me. I will continue investigating about it.
>
> Thanks for all.
> Best regards.
>
>
> --
> ::Miguel Angel Torres Pado::
> _______________________________________________
> 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

-- 
This email, along with any attachments, is confidential. If you believe you 
received this message in error, please contact the sender immediately and 
delete all copies of the message. Thank you from Connamara Systems, LLC.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quickfixn.com/pipermail/quickfixn-quickfixn.com/attachments/20220310/bcce8a4b/attachment.htm>


More information about the Quickfixn mailing list