FIX protocol
Encyclopedia
The Financial Information eXchange (FIX) protocol is an electronic communications protocol
Communications protocol
A communications protocol is a system of digital message formats and rules for exchanging those messages in or between computing systems and in telecommunications...

 initiated in 1992 for international real-time exchange of information related to the securities
Security (finance)
A security is generally a fungible, negotiable financial instrument representing financial value. Securities are broadly categorized into:* debt securities ,* equity securities, e.g., common stocks; and,...

 transactions and markets. With trillions of dollars traded annually on the NASDAQ
NASDAQ
The NASDAQ Stock Market, also known as the NASDAQ, is an American stock exchange. "NASDAQ" originally stood for "National Association of Securities Dealers Automated Quotations". It is the second-largest stock exchange by market capitalization in the world, after the New York Stock Exchange. As of...

 alone, financial service entities are investing heavily in optimizing electronic trading and employing Direct Market Access
Direct Market Access
Direct market access ' is a term used in financial markets to describe electronic trading facilities that give investors wishing to trade in financial instruments a way to interact with the order book of an exchange. Normally, trading on the order book is restricted to broker-dealers and market...

 (DMA) to increase their speed to financial markets. Managing the delivery of trading applications and keeping latency low increasingly requires an understanding of the FIX protocol.

History

The FIX Protocol specification was originally authored in 1992 by Chris Morstatt and Robert "Bob" Lamoureux to enable electronic communication of equity
Equity (finance)
In accounting and finance, equity is the residual claim or interest of the most junior class of investors in assets, after all liabilities are paid. If liability exceeds assets, negative equity exists...

 trading data between Fidelity Investments
Fidelity Investments
FMR LLC or Fidelity Investments is an American multinational financial services corporation one of the largest mutual fund and financial services groups in the world. It was founded in 1946 and serves North American investors. Fidelity Ventures is its venture capital arm...

 and Salomon Brothers
Salomon Brothers
Salomon Brothers was a bulge bracket, Wall Street investment bank. Founded in 1910 by three brothers along with a clerk named Ben Levy, it remained a partnership until the early 1980s, when it was acquired by the commodity trading firm Phibro Corporation and then became Salomon Inc. Eventually...

. FIX has become the de facto messaging standard for pre-trade and trade communication in the global equity markets, and is expanding into the post-trade space to support Straight Through Processing
Straight Through Processing
Straight-through processing enables the entire trade process for capital markets and payment transactions to be conducted electronically without the need for re-keying or manual intervention, subject to legal and regulatory restrictions...

, as well as continuing to expand into foreign exchange
Foreign exchange market
The foreign exchange market is a global, worldwide decentralized financial market for trading currencies. Financial centers around the world function as anchors of trading between a wide range of different types of buyers and sellers around the clock, with the exception of weekends...

, fixed income
Fixed income
Fixed income refers to any type of investment that is not equity, which obligates the borrower/issuer to make payments on a fixed schedule, even if the number of the payments may be variable....

 and derivatives markets.

FIX Protocol Limited

FIX Protocol, Ltd. is the company established for the purpose of ownership and maintenance of the specification. It maintains the specification, while keeping it in the public domain.

FIX message format layout

The message fields are delimited using the ASCII
ASCII
The American Standard Code for Information Interchange is a character-encoding scheme based on the ordering of the English alphabet. ASCII codes represent text in computers, communications equipment, and other devices that use text...

 01 character.
They are composed of a header, a body, and a trailer.

Up to FIX.4.4, the header contained three fields: 8 (BeginString), 9 (BodyLength), and 35 (MsgType) tags.

From FIXT.1.1 / FIX.5.0, the header contains five mandatory fields and one optional field: 8 (BeginString), 9 (BodyLength), 35 (MsgType), 49 (SenderCompID), 56 (TargetCompID) and 1128 (ApplVerID - if present must be in 6th position).

The body of the message is entirely dependent on the message type defined in the header (TAG 35, MsgType).

The last field of the message is TAG 10, FIX Message Checksum. It is always expressed as a three digit number (e.g. 10=002).

Header+Body+Trailer : FIX Content

Example of a FIX message : Execution Report (Pipe character is used to represent SOH character)

8=FIX.4.2 | 9=178 | 35=8 | 49=PHLX | 56=PERS | 52=20071123-05:30:00.000 | 11=ATOMNOCCC9990900 | 20=3 | 150=E | 39=E | 55=MSFT | 167=CS | 54=1 | 38=15 | 40=2 | 44=15 | 58=PHLX EQUITY TESTING | 59=0 | 47=C | 32=0 | 31=0 | 151=15 | 14=0 | 6=0 | 10=128 |

(In the above FIXMessage Body length 9 is correct and checksum 10 was checked out by using the source available from QuickFIX
QuickFIX
QuickFIX is a full-featured open source FIX messaging engine written in C++. It is cross-platform and runs on Windows, Mac OS X, Linux, Solaris, and FreeBSD. A variant QuickFIX/J is an equivalent 100% Java open source implementation of the engine...

, an open source FIX implementation)

Body : Order / Trade Details Info
Trailer: Security Check thru Signature and CheckSum.

Users

FIX is widely used by both the buy side
Buy side
Buy-side is a term used in investment banking to refer to advising institutions concerned with buying, rather than selling, assets or securities...

 (institutions) as well as the sell side
Sell side
Sell side is a term used in the financial services industry. It is a general term that indicates a firm that sells investment services to asset management firms, typically referred to as the buy side, or corporate entities...

 (brokers/dealers) of the financial markets. Among its users are mutual funds, investment banks, brokers, stock exchanges and ECN
Electronic communication network
An electronic communication network is the term used in financial circles for a type of computer system that facilitates trading of financial products outside of stock exchanges. The primary products that are traded on ECNs are stocks and currencies. The first ECN, Instinet, was created in 1969...

s. See FIX Protocol Organization for an extensive list of major FIX users.

FIX has become the standard electronic protocol for pre-trade communications and trade execution. Although it is mainly used for equity transactions in the front office
Front office
Front office is a business term that refers to a company's departments that come in contact with clients, including the marketing, sales, and service departments...

 area, bond, derivatives and FX-transactions are also possible. One could say that whereas SWIFT
Swift
The swifts are a family, Apodidae, of highly aerial birds. They are superficially similar to swallows, but are actually not closely related to passerine species at all; swifts are in the separate order Apodiformes, which they share with hummingbirds...

 is the standard for back office
Back office
A back office is a part of most corporations where tasks dedicated to running the company itself takes place. The term "Back office" comes from the building layout of early companies where the front office would contain the sales and other customer-facing staff and the back office would be those...

 messaging, FIX is the standard for front office messaging. However, today, the membership of FIX Protocol Ltd. is extending FIX into block-trade allocation and other phases of the trading process, in every market, for virtually every asset class.

Technical specification

The FIX protocol is a technical specification for electronic communication of trade-related messages. It is a self-describing protocol in many ways similar to other self-describing protocols such as the newer XML
XML
Extensible Markup Language is a set of rules for encoding documents in machine-readable form. It is defined in the XML 1.0 Specification produced by the W3C, and several other related specifications, all gratis open standards....

; XML representation of Business content of FIX messages is known as FIXML but FIXML is not widely deployed.

FIX Session is layered on TCP (Transmission Control Protocol
Transmission Control Protocol
The Transmission Control Protocol is one of the core protocols of the Internet Protocol Suite. TCP is one of the two original components of the suite, complementing the Internet Protocol , and therefore the entire suite is commonly referred to as TCP/IP...

). FIX is more popular than FIXML in Securities Trading because FIXML messages are much larger in size due to XML tags.

FIX messages are formed from a number of fields, each field is a tag value pairing that is separated from the next field by a delimiter SOH
C0 and C1 control codes
Most character encodings, in addition to representing printable characters, may also represent additional information about the text, such as the position of a cursor, an instruction to start a new line, or a message that the text has been received...

 (0x01). The TAG is a string representation of an integer that indicates the meaning of the field. The value is an array of bytes that hold a specific meaning for the particular TAG (e.g. TAG 48 is securityID, a string that identifies the security; TAG 22 is IDSource, an integer that indicates the identifier class being used). The values may be in plain text or encoded as pure binary (in which case the value is preceded by a length field). The FIX protocol defines meanings for most TAGs, but leaves a range of TAGs reserved for private use between consenting parties.

The FIX protocol also defines sets of fields that make a particular message, within the set of fields some will be mandatory and others optional. The ordering of fields within the message is generally unimportant, however repeating groups are preceded by a count and encrypted fields are preceded by their length. The message is broken into three distinct sections: the head, body and tail. Fields must remain within the correct section and within each section the position may be important as fields can act as delimiters that stop one message from running into the next - the final field in any FIX message is TAG 10 (checksum
Checksum
A checksum or hash sum is a fixed-size datum computed from an arbitrary block of digital data for the purpose of detecting accidental errors that may have been introduced during its transmission or storage. The integrity of the data can be checked at any later time by recomputing the checksum and...

).

There are two main groups of messages - admin and application. The admin messages handle the basics of a FIX session. They allow for a session to be started and terminated and for recovery of missed messages. The application messages deal with the sending and receiving of trade-related information such as an order request or information on the current state and subsequent execution of that order.

Body length

The Body length is the byte count starting at tag 35 (included) all the way to tag 10 (excluded). SOH separators do count in the body length.

For Example: (Pipe character is used to represent SOH character)

8=FIX.4.2|9=65|35=A|49=SERVER|56=CLIENT|34=177|52=20090107-18:15:16|98=0|108=30|10=062|

Has a Body length of 65 with the following breakdown, length(tag#)

5(35) + 10(49) + 10(56) + 7(34) + 21(52) + 5(98) + 7(108)

The SOH delimiter at the end of a Tag=Value belongs to the Tag

Checksum

The checksum algorithm of FIX consists of summing up the decimal value of the ASCII representation all the bytes up to the checksum field (which is last) and return the value modulo
Modulo operation
In computing, the modulo operation finds the remainder of division of one number by another.Given two positive numbers, and , a modulo n can be thought of as the remainder, on division of a by n...

 256.

Latest developments in FIX protocol

The latest version of FIX Protocol implements "Transport Independence" by permitting multiple versions of application messages to be carried over a single version of Transport Independent FIX Session (FIXT.1.1 and higher).

Transport Independence also paves the way for different transport protocols like Message Queue
Message queue
In computer science, message queues and mailboxes are software-engineering components used for interprocess communication, or for inter-thread communication within the same process. They use a queue for messaging – the passing of control or of content...

s, Web Services etc. to be used for FIX message transport other than traditional FIX over TCP.

FIX now supports Algorithmic Trading
Algorithmic trading
In electronic financial markets, algorithmic trading or automated trading, also known as algo trading, black-box trading or robo trading, is the use of electronic platforms for entering trading orders with an algorithm deciding on aspects of the order such as the timing, price, or quantity of the...

 by use of FIX Algorithmic Trading Definition Language FIXatdl
FIXatdl
FIXatdl is a standard for the exchange of meta-information required to enable algorithmic trading activity within the financial markets...



FIX Protocol Limited has released FAST protocol
FAST protocol
The FAST protocol is a technology standard developed by FIX Protocol Ltd., specifically aimed at optimizing data representation on the network...

 which stands for FIX Adapted for Streaming. FAST
FAST protocol
The FAST protocol is a technology standard developed by FIX Protocol Ltd., specifically aimed at optimizing data representation on the network...

 is used for sending Multicast
Multicast
In computer networking, multicast is the delivery of a message or information to a group of destination computers simultaneously in a single transmission from the source creating copies automatically in other network elements, such as routers, only when the topology of the network requires...

 market data
Market data
In finance, market data is quote and trade-related data associated with equity, fixed-income, financial derivatives, currency, and other investment instruments. Market data is numerical price data, reported from trading venues, such as stock exchanges...


Diagrammatic representation of FIX system

See also

  • Algorithmic trading platform
  • Electronic trading
    Electronic trading
    Electronic trading, sometimes called etrading, is a method of trading securities , foreign exchange or financial derivatives electronically...

  • QuickFIX
    QuickFIX
    QuickFIX is a full-featured open source FIX messaging engine written in C++. It is cross-platform and runs on Windows, Mac OS X, Linux, Solaris, and FreeBSD. A variant QuickFIX/J is an equivalent 100% Java open source implementation of the engine...

    , an open source FIX implementation
  • SWIFT:Message Types
    SWIFT:Message Types
    SWIFT or Society for Worldwide Interbank Financial Telecommunication provides a network to allow financial and non-financial institutions to transfer financial transactions through a 'financial message'....


External links

  1. FIX Protocol Organization - this official FIX website also includes a comprehensive list of closed-source and open-source FIX implementations.
  2. FIXimate FIX Dictionary 4.0 4.1 4.2 4.3 4.4
  3. FIXwiki - a Wiki dedicated to FIX. Contains much of the FIX specification.
  4. FIXopaedia FIX Dictionary 4.0 4.1 4.2 4.3 4.4 5.0 FIXT 1.1
  5. FIXForge FIX Dictionary: 4.0 4.1 4.2 4.3 4.4 5.0
  6. QuickFIX - an open-source FIX engine implemented in C++
  7. QuickFIX/J - a 100% Java implementation of the C++ QuickFIX engine
  8. QuickFIX Messenger - a front-end messaging application for the QuickFIX/J engine
  9. Transact Tools Data Dictionary
  10. ValidFIX - Free web-based services to analyze any FIX message.
  11. VersaFix - .NET commercial FIX engine implemented in C#
  12. UL FIX - a free FIX engine
  13. HadesFIX - Free FIX engine and Java object model
  14. Rapid Addition - Commercial FIX engine and free FIX-atdl vault at FIX adtl vault
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK