Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

FIX message delimiter

I am relatively new to FIX-Protocol.

The delimiter for a FIX-Protocol message sometimes show ^ and other times |. Wikipedia for FIX-Protocol says [SOH] ( <Start of Header> for hex 0x01 ) being the character.

Please explain the meaning of the same.

For example a FIX-Protocol message can be visually represented as

8=FIX.4.4^9=122^35=D^34=215^49=CLIENT12^52=20100225-19:41:57.316^56=B^1=Marcel^11=13346^21=1^40=2^44=5^54=1^59=0^60=20100225-19:39:52.020^10=072^

or

8=FIX.4.4|9=122|35=D|34=215|49=CLIENT12|52=20100225-19:41:57.316|56=B|1=Marcel|11=13346|21=1|40=2|44=5|54=1|59=0|60=20100225-19:39:52.020|10=072|

So what exactly is the difference in using a ^ over |

Are there other delimiters used as well. Its not clear why [SOH] (0x01) fits for ^ or |

It could have been numerical ONE.

like image 232
Ashley Avatar asked Aug 13 '14 18:08

Ashley


People also ask

What is Soh in FIX message?

in a FIX message are terminated by a delimiter character. The non-printing, ASCII "SOH" (#001, hex: 0x01, referred to in this document as <SOH>), is used for field termination. Messages are delimited by the “SOH” character following the Checksum field.

What is FIX format?

The FIX format is a tagged, delimited ASCII format. Each message is composed of a delimited series of unordered tag/value pairs. General Message Structure. General message format is composed of the standard header followed by the body followed by the standard trailer.

How to calculate Body length in FIX message?

Body length calculation The length must be calculated by counting the number of octets in the message following the end of field delimiter ( <SOH> ) of BodyLength(9), up to and including the end of field delimiter ( <SOH> ) of the field immediately preceding the CheckSum(10) field.

What is the latest version of FIX Protocol?

FIX Latest Specification - Post-Trade 4.7 MB 666 downloads August 23, 2021 EP269.


1 Answers

The delimiter SOH = ASCII code 01 is a non-printable character. Looking at the binary representation of the message (e.g. in a hex editor view), you'll see the character as 0x01. To display the messages, it seems that some people use | and other use ^ which are rarely used characters and thus a good delimiter.

like image 174
MP24 Avatar answered Oct 01 '22 19:10

MP24