FIXimate stands for FIX Interactive Message and Tag Explorer and is the visualization tool for the FIX Repository, which contains the meta-data for the FIX application and session layer.
Introduction
FIXimate makes the FIX Repository easily accessible and serves as a quick reference to lookup information about FIX messages, components, fields and values. FIXimate has been available for many years now and is being widely used, primarily by those that are already familiar with FIX. FIXimate is a navigable guide to the content in the FIX Repository supported by FIX Latest, which includes definitions for messages, components and fields. FIX Latest now has more than 160 messages and around 6,000 fields, making the availability of a tool an absolute necessity to find the subset of elements for a given set of requirements for a FIX interface.
A comprehensive user guide is available online via FIXimate. This blog explains the main concept and some of the new features available in FIXimate4.
Screen Layout
The first area on the upper left-hand side of the screen provides information about the tool itself.
FIXimate includes several search functions to lookup a specific message by its type, or a specific field by its tag number or name. It also supports search using free text or regular expressions to produce a list of messages, components, fields, code sets, and codes (a.k.a. enum values) containing this text in their name and/or description.
FIXimate then offers menu options with different sort orders for various elements, e.g. for fields and messages. The user can click on a menu option to display more detailed information.
The last area on the left-hand side menu provides direct access to individual FIX messages. The menu list is structured by business area (e.g. Pre-Trade) and category (e.g. Market Data), with FIX messages expanded for the selected message category. Multiple categories can be expanded at the same time.
What’s new?
FIXimate4 is the next generation of FIXimate and is fully based on the Orchestra XML format of the FIX Repository that follows the FIX Orchestra Technical Standard (FIXimate3 uses the FIX Unified Repository format). The following sections highlight the major changes and enhancements that are provided with FIXimate4.
Permanent URLs
URLs to elements of the FIX Repository are now permanent and directly accessible, i.e. they no longer include the Extension Pack number, and use the unique and persistent identifier from within the FIX Repository. For example, the URL to NewOrderSingle(35=D) changes
FROM: https://fiximate.fixtrading.org/en/FIX.Latest_EP266/body_495268.html
TO: https://fiximate.fixtrading.org/en/FIX.Latest/msg14.html
The new URL is a result of the NewOrderSingle(35=D) being defined in FIX Orchestra as:
<fixr:message name=”NewOrderSingle” id=”14″ msgType=”D” … />
where
id=”14″
refers to the immutable message ID for NewOrderSingle.
Pedigree information
Pedigree covers the history of FIX Repository elements being added, modified or deprecated. This was mainly limited to the pedigree of fields in the lower pane and has now been enhanced to also provide pedigree for the usage of fields and components within messages and components. This information is shown when displaying messages or components in the upper pane. Pedigree information has always been in the FIX Repository but had not been visualized in FIXimate3. The following screenshot shows the first few fields of the NewOrderSingle(35=D) message.
Code sets
Code sets, previously known as “enumeration values”, were introduced with the FIX Orchestra Technical Standard and represent a list of codes for a FIX field. The FIX Unified Repository attached enumeration values to a specific fields and other fields could re-use those values by referencing it. FIXimate3 visualized this relationship with the column “Enums from tag” on the far right of the lower pane.
FIX Orchestra defines “code sets” as independent of a specific field and all fields wanting to use a given code set simply reference the same code set. Code sets have a base datatype, e.g. “int”, that is identical for all codes in this set. FIXimate4 displays the base datatype as well as the code set, e.g. OrdType(40) has datatype char and uses the code set OrdTypeCodeSet.
The code set itself can be displayed by clicking on its name:
Search fields and components by dropdown list
FIXimate3 supported the search of fields by entering the name in a search box, however, the full name had to be provided for the search to be successful. It was easier to use the regular expression search box right beneath it since that allows only part of a name to be entered, resulting in not only fields but also messages, components and descriptions containing that search string.
FIXimate4 now offers dropdown lists with a type-ahead function and not only for fields but also for components and code sets.
Search abbreviated names
FIXimate4 supports the search of abbreviated names that exist for messages, components, and fields. These are primarily relevant for the FIXML encoding of messages. There is an additional checkbox below the generic search box called “Match abbreviated name only“. When this checkbox is selected, the results will display only those messages, components, and fields where their abbreviated name contains the search pattern.