The following article provides the developer with a structured approach to identify the wide array of Market Data Asset classes offered within Refinitiv when building their market data applications. Embedded within each market data record, resides the Field ID (FID) 259 (RECORDTYPE) that enables the developer to programmatically decipher the type of asset presented. Available within the Eikon/Refinitiv Workspace Desktop Applications or the convenient SpeedGuide Utility, developers can easily navigate through these guides to better understand the meaning behind the values contained within FID 259.
The basic problem
Developers building complex market data applications may need a structured way of managing multiple, complex classes of data available from Refinitiv. Having a way to identify with these multiple types of data formats will greatly simplify data-processing efforts. For example, Refinitiv market data records span multiple assets such as Equities, Fixed Income, Options Chains, Foreign Exchange, Futures, etc. In each case, the fields within these asset records differ.
For example, an Equity instrument contains important elements traders would expect to see such:
- bid price
- ask price
Whereas a Fixed Income instrument contains slightly different important elements such as:
- bid price
- ask price
- bid yield
In the above comparison, as expected, some of the Fixed Income fields will not be present within an Equity record. As a result, it is imperative that data processing must be able to identify the asset in order to pull out the relevant details. Refinitiv Market Data APIs, such as the Refinitiv Real-Time SDKs, are designed to be data agnostic. That is, the APIs do not have any knowledge around the type of data requested. As such, when data arrives, it is up to the application developer to determine the nature of the asset. In such a scenario, processing can be somewhat clunky if there is no knowledge of the type of data received.
FID 259 (RECORDTYPE)
When requesting market data, the first response or REFRESH message received will carry a common FID identifying the type of record, i.e. FID 259 (RECORDTYPE). FID 259 holds a numeric field that represents the type of asset for that record. This information is necessary for an application to determine how to properly process that data record.
For example, when pulling up a typical Fixed Income instrument within the SpeedGuide utility, we see the following:
In the above scenario, FID 259 contains a value of 33, which represents a Fixed Income Record. As a result, developers will be able to identify what the incoming image is based on the understanding of the values contained within FID 259 to process the records accordingly.
Understanding FID 259
The SpeedGuide utility provides a quick way for the developer to determine the values defined within FID 259. Due to the complexity of data, Refinitiv created convenient instrument codes, i.e. RICs, to document the values represented within this FID. At the root, the RIC FID259/1 represents the home page detailing the meaning behind this FID. Utilizing the SpeedGuide, developers can easily peruse and decipher these codes enabling them to understand and build algorithms to process any type of asset.
Using the SpeedGuide, the user can pull up the documentation for this FID:
The above page defines a matrix of codes the user can cross reference to determine the nature of data associated with a given record type. In our example, the FID 259 value of 33 is cross referenced to the row (Asset Class) "TSY" and column (Instrument Type) "b". Within this page, we can navigate to the following pages, i.e. FID259/2, FID259/3, etc to determine what these 2 values represent.
For example, on page FID259/2, we can see the Assert Class "TSY":
And navigating to page FID259/4, we can see the Instrument Type "b":
The net result is that when we subscribed to the U.S 30-year Treasury bond (RIC: US30YT=RR), we can determine that a value of 33 within FID 259 indicates the record is an Treasury Debt Cash Instrument Record. Developers can use this knowledge to build algorithms to manage multiple asset types and confidently map data accurately.
The SpeedGuide utility is a simple subscription-based GUI application built using Refinitiv Real-Time Java SDK. For access:
- SpeedGuide Utility
- Source code available within GitHub.