|
4.2 Changes
< Previous Next >
Custom Messaging and QuickFIX
Christopher Whittington / OTC Technologies 4 May 2010 11:49AM ET I'm trying to build a Custom message (35=CX) in FIX 4.2 using QuickFIX. This message represents a cleared execution from CME's ClearPort that will be used by our internal systems. It is a very simple message that contains an OrderID, a ClearPortExecID, a status and a repeating group for each leg of the cleared strategy. Within that repeating group, I have a custom tag that represents the cleared quantity for that leg (thus, if I buy 100 1x2s, this quantity would contain 100 for the first leg and -200 for the second). The problem is that no matter what I do, QuickFIX rejects with an Incorrect NumInGroup (even though tag 555 is correct). Here's the relevant FIX42.xml data dictionary entries:
<message name="ClearPortExecution" msgtype="CX" msgcat="app">
<field name="ClearPortExecID" required="Y"/>
<field name="OrderID" required="Y"/>
<field name="ClearPortStatus" required="Y"/>
<field name="Text" required="N"/>
<group name="NoLegs" required="Y">
<field name="LegPrice" required="N"/>
<field name="LegSecurityDesc" required="N"/>
<field name="LegQty" required="N"/>
</group>
<field number="9803" name="ClearPortStatus" type="CHAR">
<value enum="0" description="PENDING"/>
<value enum="1" description="ACCEPTED"/>
<value enum="2" description="REJECTED"/>
</field>
<field number="9804" name="LegQty" type="QTY"/>
and some sample messages and rejects:
8=FIX.4.2 9=139 35=CX 37=20103004100537397 49=OTCTECH 50=EBROKERFIX 56=OTCMKTDATA 57=EBROKERFIX 555=1 620=LOM0 C7500 566=100.0 9804=-10 9802=283657 9803=1 10=031
8=FIX.4.2 9=131 35=3 34=9 49=OTCTECH 52=20100504-15:30:43.814 56=EBROKERFIX 45=41 58=Incorrect NumInGroup count for repeating group 371=555 372=CX 10=059
Any thoughts?
Thanks,
Chris
Custom Messaging and QuickFIX Christopher Whittington / OTC Technologies 4 May 2010 11:49AM ET |