To make external order placement/modification handling possible for CQG FIX Client FIX server shall populate following order parameters related fields in the Execution Report (8) message sent to CQG FIX Client:
• UnsolicitedIndicator(325) field set to Y.
• ExternalOrderIndicator (50935) field set to Y.
NOTE: UnsolicitedIndicator(325) and ExternalOrderIndicator (50935) have the same meaning but UnsolicitedIndicator(325) is deprecated for future using and ExternalOrderIndicator(50935) should be used instead.
• Account(1) - populated with an account number external orders belongs to.
• OrdType(40) - type of an order (see 3.5.1 for supported order types).
• TimeInForce(59) - order duration (see 3.5.1 for supported order durations).
• ExpireDate(432) - order’s expiration date in YYYYMMDD format when TimeInForce(59) is GTD (‘6’).
NOTE: expiration date of external GTD order shall be lesser or equal to last trading day of contract of that order, otherwise external order placement/modification processing will fail at CQG FIX Client side.
• MaxShow(210) - visible quantity of a Limit (OrdType(40)=’2’) Iceberg order if applicable.
• Side(54) - external order side.
• Price(44) - limit price of an external order when OrdType(40)=’2’ (Limit) or ‘4’ (StopLimit).
• StopPx(99) - stop price of an external order when OrdType(40)=’3’ (Stop) or ‘4’ (StopLimit).
• OrderQty(38) - external order quantity.
• OrderID(37) – unique system order identifier assigned by FIX Server.
Additionally for identifying external order’s contract following fields are required:
• Symbol(55) shall have same value as it would be populated by CQG FIX Client if order request was submitted from it (see 3.1.1 for symbol format details).
• SecurityType(167) shall be FUT for futures, OPT for options, SPD for spreads, SSI for strategy as a single instruments.
• ExDestination(100) shall have same value as it would be populated by CQG FIX Client if order request was submitted from it.
• MaturityMonthYear(200) shall be present when external order’s contract expiration is referenced using month and year and SecurityType(167) is either FUT or OPT. Field format is YYYYMM.
• MaturityDate(541) shall be present when external order’s contract expiration is referenced using date and SecurityType(167) is either FUT or OPT. Field format is YYYYMMDD.
• PutOrCall(201) defines an option type, valid values are 0 for Put option and 1 for Call. Required when SecurityType(167) is OPT.
• StrikePrice(202) defines option contract strike price. Required when SecurityType(167) is OPT.
• In case of HKFE After-Hours Futures Trading NoTradingSessions(386) shall be set to 1 and TradingSessionID(336) shall be set to 6.