Il Financial Information eXchange (FIX) protocol è un protocollo di rete creato nel 1992 per lo scambio di informazioni inerenti alle transazioni sui mercati telematici[1].
Originariamente denominato Fidelity Information eXchange, il protocollo FIX fu sviluppato nel 1992 da Robert "Bob" Lamoureux per le transazioni azionarie tra Fidelity Investments e Salomon Brothers. FIX è diventato uno standard de facto per i messaggi di comunicazione di pre-trading e di trading nel mercato globale dei titoli finanziari e si sta espandendo nell'ambito del post-trading. Inoltre continua la sua espansione in mercati come il Foreign Exchange, i mercati a rendimento fisso e quelli dei derivati.[2]
FIX Protocol, Ltd è la società che controlla e sviluppa le specifiche del protocollo che comunque rimangono di pubblico dominio.
I campi dei messaggi sono delimitati dal carattere ASCII 01: SOH (Start Of Header) e sono costituiti da una sezione iniziale (intestazione), una sezione centrale (corpo) ed una sezione finale (coda). I campi sono identificati da un numero (tag).
L'intestazione contiene cinque campi obbligatori, i tag: 8 (BeginString), 9 (BodyLength) e 35 (MsgType) , 49 (SenderCompID), 56 (TargetCompID) ed uno opzionale: 11 (ApplVerID).
Il corpo del messaggio dipende interamente dal tipo di messaggio definito nell'intestazione (Tag 35, MsgType).
L'ultimo campo del messaggio è il Tag 10, che è il Checksum ed è espresso da un numero a tre cifre (es.: 10=002).
Esempio di messaggio FIX: (Il carattere "|" rappresenta il carattere SOH)
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 |
Nel messaggio sopra la lunghezza del corpo è 178 byte, come indicato nel secondo campo (tag 9) ed il checksum è uguale a 128, come indicato dal tag 10 alla fine.
FIX è ampiamente utilizzato nei mercati finanziari. Per una lista dei maggiori utilizzatori del protocollo si veda FIX Protocol Organization.