FIX Doctorsupport@fixdoctor.tech
FIX Knowledge Base

FIX Protocol Basics – Quick Guide for Trade Support & Developers

What is FIX Protocol?

FIX (Financial Information eXchange) is an electronic communications protocol used globally for real-time exchange of securities transaction information. It standardizes how buy-side and sell-side firms communicate order and execution data.

Core Message Types

MsgType (35)NameDescription
ALogonInitiates a FIX session
0HeartbeatKeeps session alive
1TestRequestTests connectivity
2ResendRequestRequests retransmission of messages
3RejectSession-level reject
4SequenceResetResets sequence numbers
5LogoutEnds a FIX session
DNewOrderSingleSubmit a new order
8ExecutionReportOrder status update
FOrderCancelRequestCancel an order
GOrderCancelReplaceRequestModify an order
9OrderCancelRejectCancel request rejected

Tags Overview

FIX messages consist of tag=value pairs separated by a delimiter (typically SOH \u0001 or pipe |). Each tag is a numeric identifier representing a field.

Common Tags:

  • 8 – BeginString (FIX version, e.g., "FIX.4.4")
  • 9 – BodyLength (message length)
  • 10 – CheckSum (message integrity)
  • 11 – ClOrdID (Client Order ID)
  • 34 – MsgSeqNum (Sequence number)
  • 35 – MsgType (Message type)
  • 38 – OrderQty (Order quantity)
  • 40 – OrdType (Order type: 1=Market, 2=Limit)
  • 41 – OrigClOrdID (Original ClOrdID for cancels)
  • 44 – Price (Limit price)
  • 49 – SenderCompID (Sender identifier)
  • 52 – SendingTime (Timestamp)
  • 54 – Side (1=Buy, 2=Sell)
  • 55 – Symbol (Security symbol)
  • 56 – TargetCompID (Target identifier)
  • 150 – ExecType (Execution type)
  • 151 – LeavesQty (Remaining quantity)
  • 371 – RefTagID (Referenced tag in rejects)
  • 372 – RefMsgType (Referenced message type)

Message Structure

Example NewOrderSingle:

8=FIX.4.4|9=123|35=D|11=ORDER123|34=1|49=SENDER|52=20240101-10:00:00|54=1|55=AAPL|38=100|40=2|44=150.00|56=TARGET|10=123|

Structure: BeginString | BodyLength | MsgType | Fields... | CheckSum

Quick Glossary

Session Messages

  • Logon (A): Establishes session
  • Heartbeat (0): Keep-alive
  • Logout (5): Ends session
  • Reject (3): Session error

Order Messages

  • NewOrderSingle (D): New order
  • ExecutionReport (8): Order status
  • OrderCancelRequest (F): Cancel
  • OrderCancelReplaceRequest (G): Modify

Key Concepts

  • Sequence Number: Message ordering
  • ClOrdID: Client order identifier
  • Side: Buy (1) or Sell (2)
  • OrdType: Market (1) or Limit (2)

Common Issues

  • Sequence Gaps: Missing messages
  • Missing Fields: Required tags absent
  • Invalid Values: Wrong enum/number
  • Rejects: Validation failures

Learn More

Ready to analyze your FIX logs? Upload your FIX protocol logs to FIX Doctor for instant error detection and analysis.

Upload FIX Log