Page tree
Skip to end of metadata
Go to start of metadata

 

The main purpose for Splitter Adaptor

The main purpose for Splitter Adaptor to work in conjunction with FIXEdge CME handler. FIXEdge CME handler retrieves  FIXML 4.4 messages containing NYMEX, COMEX and DME Division cleared trade information from CME and sends them to Splitter Adaptor. In turn Splitter Adaptor generates a bunch of messages from a single inbound FIXML message. The only tag that drives the splitting process is <TrdCaptRpt>.




See the following table for examples of inbound and outbound messages for the described case:

 

 Inbound message Outbound messages

CME Batch message

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type='text/xsl' href='test-1.xsl'?>
<FIXML r="20030618" s="20040109" v="4.4">
	<Batch>
		<Hdr SSub="utbapi" SID="NYMEX" />
		<TrdCaptRpt RptID="141D70231870004CE2FC131023140949726B" ExecID="141D70231870004CE2FC" TrdID="100682" TrdMtchID="524834" LastPx="57.49" TxnTm="2013-10-22T14:08:00-05:00" TrdDt="2013-10-23" BizDt="2013-10-23" TransTyp="0" PrevlyRpted="N" MLEGRptTyp="2" ReqID="1382568962609_2" QtyTyp="1" LastQty="1" LastUpdateTm="2013-10-23T14:09:49.726-05:00" TrdTyp="1" TotNumLegRpts="5">
			<Instrmt ID="QL" Sym="QLZ13" Desc="CAPPCOAL-Dec13" SecTyp="MLEG" MMY="201312" Exch="NYMEX" Mult="1550" UOM="tn" CFI="FXXXX" SubTyp="SA" />
			<RptSide Side="1" ClOrdID="1236" InptSrc="CPC" Ccy="USD">
				<Pty R="12" ID="1H2K">
					<Sub Typ="27" ID="KGLOBA" />
					<Sub Typ="9" ID="Kseniia Globa" />
				</Pty>
				<Pty R="1" ID="epam">
					<Sub Typ="5" ID="Epam systems Inc." />
				</Pty>
				<Pty R="16" ID="1H2K" />
				<Pty R="37" ID="1H2K" />
				<Pty R="36" ID="epamuser">
					<Sub Typ="9" ID="Ksenilla Globa" />
				</Pty>
				<Pty R="7" ID="epam">
					<Sub Typ="5" ID="Epam systems Inc." />
				</Pty>
				<Alloc Qty="1" CustCpcty="4">
					<Pty R="24" ID="EPAMTEST1">
						<Sub Typ="26" ID="2" />
					</Pty>
					<Pty R="4" ID="661" />
					<Pty R="1" ID="epam" />
				</Alloc>
			</RptSide>
		</TrdCaptRpt>
		<TrdCaptRpt RptID="141D70231870004CE304131023140949726B" ExecID="141D70231870004CE304" TrdID="100686" TrdMtchID="524834" LastPx="57.49" TxnTm="2013-10-22T14:08:00-05:00" TrdDt="2013-10-23" BizDt="2013-10-23" TransTyp="0" PrevlyRpted="N" MLEGRptTyp="2" ReqID="1382568962609_2" QtyTyp="1" LastQty="1" LastUpdateTm="2013-10-23T14:09:49.726-05:00" TrdTyp="1" TotNumLegRpts="5">
			<Instrmt ID="QL" Sym="QLJ14" Desc="CAPPCOAL-Apr14" SecTyp="MLEG" MMY="201404" Exch="NYMEX" Mult="1550" UOM="tn" CFI="FXXXX" SubTyp="SA" />
			<RptSide Side="1" ClOrdID="1236" InptSrc="CPC" Ccy="USD">
				<Pty R="12" ID="1H2K">
					<Sub Typ="27" ID="KGLOBA" />
					<Sub Typ="9" ID="Kseniia Globa" />
				</Pty>
				<Pty R="1" ID="epam">
					<Sub Typ="5" ID="Epam systems Inc." />
				</Pty>
				<Pty R="16" ID="1H2K" />
				<Pty R="37" ID="1H2K" />
				<Pty R="36" ID="epamuser">
					<Sub Typ="9" ID="Ksenilla Globa" />
				</Pty>
				<Pty R="7" ID="epam">
					<Sub Typ="5" ID="Epam systems Inc." />
				</Pty>
				<Alloc Qty="1" CustCpcty="4">
					<Pty R="24" ID="EPAMTEST1">
						<Sub Typ="26" ID="2" />
					</Pty>
					<Pty R="4" ID="661" />
					<Pty R="1" ID="epam" />
				</Alloc>
			</RptSide>
		</TrdCaptRpt>
	</Batch>
</FIXML>

1st splitted message

<?xml version="1.0" encoding="UTF-8"?>
<FIXML r="20030618" s="20040109" v="4.4">
	<Batch>
		<Hdr SSub="utbapi" SID="NYMEX" />
		<TrdCaptRpt RptID="141D70231870004CE2FC131023140949726B" ExecID="141D70231870004CE2FC" TrdID="100682" TrdMtchID="524834" LastPx="57.49" TxnTm="2013-10-22T14:08:00-05:00" TrdDt="2013-10-23" BizDt="2013-10-23" TransTyp="0" PrevlyRpted="N" MLEGRptTyp="2" ReqID="1382568962609_2" QtyTyp="1" LastQty="1" LastUpdateTm="2013-10-23T14:09:49.726-05:00" TrdTyp="1" TotNumLegRpts="5">
			<Instrmt ID="QL" Sym="QLZ13" Desc="CAPPCOAL-Dec13" SecTyp="MLEG" MMY="201312" Exch="NYMEX" Mult="1550" UOM="tn" CFI="FXXXX" SubTyp="SA" />
			<RptSide Side="1" ClOrdID="1236" InptSrc="CPC" Ccy="USD">
				<Pty R="12" ID="1H2K">
					<Sub Typ="27" ID="KGLOBA" />
					<Sub Typ="9" ID="Kseniia Globa" />
				</Pty>
				<Pty R="1" ID="epam">
					<Sub Typ="5" ID="Epam systems Inc." />
				</Pty>
				<Pty R="16" ID="1H2K" />
				<Pty R="37" ID="1H2K" />
				<Pty R="36" ID="epamuser">
					<Sub Typ="9" ID="Ksenilla Globa" />
				</Pty>
				<Pty R="7" ID="epam">
					<Sub Typ="5" ID="Epam systems Inc." />
				</Pty>
				<Alloc Qty="1" CustCpcty="4">
					<Pty R="24" ID="EPAMTEST1">
						<Sub Typ="26" ID="2" />
					</Pty>
					<Pty R="4" ID="661" />
					<Pty R="1" ID="epam" />
				</Alloc>
			</RptSide>
		</TrdCaptRpt>
	</Batch>
</FIXML>
2nd splitted message

 

<?xml version="1.0" encoding="UTF-8"?>
<FIXML r="20030618" s="20040109" v="4.4">
	<Batch>
		<Hdr SSub="utbapi" SID="NYMEX" />
		<TrdCaptRpt RptID="141D70231870004CE304131023140949726B" ExecID="141D70231870004CE304" TrdID="100686" TrdMtchID="524834" LastPx="57.49" TxnTm="2013-10-22T14:08:00-05:00" TrdDt="2013-10-23" BizDt="2013-10-23" TransTyp="0" PrevlyRpted="N" MLEGRptTyp="2" ReqID="1382568962609_2" QtyTyp="1" LastQty="1" LastUpdateTm="2013-10-23T14:09:49.726-05:00" TrdTyp="1" TotNumLegRpts="5">
			<Instrmt ID="QL" Sym="QLJ14" Desc="CAPPCOAL-Apr14" SecTyp="MLEG" MMY="201404" Exch="NYMEX" Mult="1550" UOM="tn" CFI="FXXXX" SubTyp="SA" />
			<RptSide Side="1" ClOrdID="1236" InptSrc="CPC" Ccy="USD">
				<Pty R="12" ID="1H2K">
					<Sub Typ="27" ID="KGLOBA" />
					<Sub Typ="9" ID="Kseniia Globa" />
				</Pty>
				<Pty R="1" ID="epam">
					<Sub Typ="5" ID="Epam systems Inc." />
				</Pty>
				<Pty R="16" ID="1H2K" />
				<Pty R="37" ID="1H2K" />
				<Pty R="36" ID="epamuser">
					<Sub Typ="9" ID="Ksenilla Globa" />
				</Pty>
				<Pty R="7" ID="epam">
					<Sub Typ="5" ID="Epam systems Inc." />
				</Pty>
				<Alloc Qty="1" CustCpcty="4">
					<Pty R="24" ID="EPAMTEST1">
						<Sub Typ="26" ID="2" />
					</Pty>
					<Pty R="4" ID="661" />
					<Pty R="1" ID="epam" />
				</Alloc>
			</RptSide>
		</TrdCaptRpt>
	</Batch>
</FIXML>

 

Empty FIXML messages

Empty FIXML messages are batches with no trades:

<FIXML r=\"20030618\" s=\"20040109\" v=\"4.4\"><Batch><Hdr SSub=\"utbapi\" SID=\"NYMEX\" /></Batch></FIXML>

They are ignored by Splitter Adaptor while processing. 

 

  • No labels