ZagTrader

FIX 5.0 vs FIX 5.0 SP2: What Changed

FIX 5.0, 5.0 SP1 and 5.0 SP2 all run over FIXT.1.1, so the session layer does not change. The service packs add messages and a very large number of fields; SP2 also takes in the later extension packs.

Message types
101 to 164
Messages added
63
Fields
1,100 to 6,028
Fields added / removed
4,928 / 0

BeginString: FIXT.1.1 and FIXT.1.1. Counts come from the standard data dictionaries; FIX 5.0 counts include the FIXT 1.1 session messages and fields.

Migrating from FIX 5.0 to FIX 5.0 SP2

  • Sessions stay on FIXT.1.1. The difference is the application version: DefaultApplVerID (1137) or ApplVerID (1128) = 7 for FIX 5.0 and 9 for FIX 5.0 SP2.
  • SP1 adds market structure messages such as Market Definition, and order mass actions. SP2 adds risk limits, party entitlements, stream assignment and many derivatives fields.
  • SessionRejectReason 373=18 (unsupported application version) and CxlRejReason codes 7 and 8 arrive in SP1.
  • SP2 adds BusinessRejectReason throttle codes 8 to 10, ExecType M and N, and OrdRejReason codes up to 29.
  • Twelve fields are renamed, for example SideQty (1009) becomes SideLastQty and UnitofMeasure (996) becomes UnitOfMeasure.

Value changes in key fields

Enumerated values added or removed between the two versions.

MsgType (35)

Added in FIX 5.0 SP2: BQ Settlement Obligation Report; BR Derivative Security List Update Report; BS Trading Session List Update Report; BT Market Definition Request; BU Market Definition; BV Market Definition Update Report; BW Application Message Request; BX Application Message Request Ack; BY Application Message Report; BZ Order Mass Action Report; CA Order Mass Action Request; CB User Notification; CC Stream Assignment Request; CD Stream Assignment Report; CE Stream Assignment Report ACK; CF Party Details List Request; CG Party Details List Report; CH Margin Requirement Inquiry; CI Margin Requirement Inquiry Ack; CJ Margin Requirement Report; CK Party Details List Update Report; CL Party Risk Limits Request; CM Party Risk Limits Report; CN Security Mass Status Request; CO Security Mass Status; CQ Account Summary Report; CR Party Risk Limits Update Report; CS Party Risk Limits Definition Request; CT Party Risk Limits Definition Request Ack; CU Party Entitlements Request; CV Party Entitlements Report; CW Quote Ack; CX Party Details Definition Request; CY Party Details Definition Request Ack; CZ Party Entitlements Update Report; DA Party Entitlements Definition Request; DB Party Entitlements Definition Request Ack; DC Trade Match Report; DD Trade Match Report Ack; DE Party Risk Limits Report Ack; DF Party Risk Limit Check Request; DG Party Risk Limit Check Request Ack; DH Party Action Request; DI Party Action Report; DJ Mass Order; DK Mass Order Ack; DL Position Transfer Instruction; DM Position Transfer Instruction Ack; DN Position Transfer Report; DO Market Data Statistics Request; DP Market Data Statistics Report; DQ Collateral Report Ack; DR Market Data Report; DS Cross Request; DT Cross Request Ack; DU Allocation Instruction Alert Request; DV Allocation Instruction Alert Request Ack; DW Trade Aggregation Request; DX Trade Aggregation Report; EA Pay Management Report; EB Pay Management Report Ack; DY Pay Management Request; DZ Pay Management Request Ack

OrdType (40)

Added in FIX 5.0 SP2: R Stop on bid or offer; S Stop limit on bid or offer

TimeInForce (59)

Added in FIX 5.0 SP2: 8 Good through crossing; 9 At crossing; A Good for time; B Good for auction; C Good for month

ExecType (150)

Added in FIX 5.0 SP2: M Locked; N Released

SessionRejectReason (373)

Added in FIX 5.0 SP2: 18 Invalid or unsupported application version

OrdRejReason (103)

Added in FIX 5.0 SP2: 16 Price exceeds current price band; 19 Reference price not available; 20 Notional value exceeds threshold; 21 Algorithm risk threshold breached; 22 Short sell not permitted; 23 Short sell security pre borrow restriction; 24 Short sell account pre borrow restriction; 25 Insufficient credit limit; 26 Exceeded clip size limit; 27 Exceeded max notional order amt; 28 Exceeded DV01 PV01 limit; 29 Exceeded CS01 limit

CxlRejReason (102)

Added in FIX 5.0 SP2: 7 Price exceeds current price; 8 Price exceeds current price band

BusinessRejectReason (380)

Added in FIX 5.0 SP2: 8 Throttle limit exceeded; 9 Throttle limit exceeded session disconnected; 10 Throttled messages rejected on request

Messages added in FIX 5.0 SP2 (63)

Messages renamed

  • 35=BN: ExecutionAcknowledgement becomes ExecutionAck
  • 35=b: MassQuoteAcknowledgement becomes MassQuoteAck

Field changes in the core order messages

6 messages most sessions carry, compared field by field.

New Order Single 35=D

2,541 fields added, counting fields inside components and repeating groups.

Order Cancel/Replace Request 35=G

2,536 fields added, counting fields inside components and repeating groups.

Required in FIX 5.0, optional in FIX 5.0 SP2: OrigClOrdID (41)

Order Cancel Request 35=F

2,438 fields added, counting fields inside components and repeating groups.

Required in FIX 5.0, optional in FIX 5.0 SP2: OrigClOrdID (41)

Execution Report 35=8

3,961 fields added, counting fields inside components and repeating groups.

Logon 35=A

2 fields added, counting fields inside components and repeating groups.

Added: RefApplExtID (1406), DefaultVerIndicator (1410)

Fields renamed (12)

Same tag number and wire format, new name. Code generated from a dictionary changes.

TagFIX 5.0 nameFIX 5.0 SP2 name
327HaltReasonCharHaltReasonInt
982ExpTypeExpirationQtyType
996UnitofMeasureUnitOfMeasure
998UnderlyingUnitofMeasureUnderlyingUnitOfMeasure
999LegUnitofMeasureLegUnitOfMeasure
1008SideTrdSubTypSideTrdSubType
1009SideQtySideLastQty
1059UndlyInstrumentPartyIDUnderlyingInstrumentPartyID
1060UndlyInstrumentPartyIDSourceUnderlyingInstrumentPartyIDSource
1061UndlyInstrumentPartyRoleUnderlyingInstrumentPartyRole
1063UndlyInstrumentPartySubIDUnderlyingInstrumentPartySubID
1064UndlyInstrumentPartySubIDTypeUnderlyingInstrumentPartySubIDType

Fields removed (0)

No field of FIX 5.0 is missing from FIX 5.0 SP2.

Fields added (4,928)

The full list is in the FIX 5.0 SP2 dictionary. Listed here: the 300 lowest-numbered new fields.

Tag rangeNew fields
1 to 9991
1000 to 1999847
2000 to 2999953
40000 to 409991,000
41000 to 419991,000
42000 to 429991,000
43000 to 43999124
50000 to 509993
Show 300 fields

Version dictionaries

Other comparisons

Field and message data comes from the QuickFIX data dictionaries for FIX 4.0 to 5.0 SP2 and FIXT 1.1, used under the QuickFIX Software License. This product includes software developed by quickfixengine.org (http://www.quickfixengine.org/). Enumerated value names are converted to plain text for reading.