forwardWorking with Books   Table of ContentThreading Modelforward
Optional Fields

This section provides information about optional fields supported by ICE since iMpact version 1.1.21.

The mechanism

The mechanism in which new fields are added to the messages has been changed. As ICE continue to add new asset classes to the platform that continue to be supported via the same API interface, there is a need to support optionality for some fields in this message to reduce the impact of the new fields particularly where the new fields have no meaning for a specific product. For backwards compatibility purposes, all existing fields (pre v 1.1.21) will remain unchanged. However, all new fields will follow the format of FieldId|Length|Value. Any new fields will leverage this new mechanism.

The implementation

In the current implementation all the optional fields represented as references. In order to check if the field present in a underlying message, it is required to test it for null.

Example
C#
public void OnFuturesProductDefinitionReceived(object sender, FuturesProductDefinitionEventArgs args)
{
    if (null != args.AccruedPremiumAmt)
    {
        /// do something
    }
}
Futures/OTC Product Definition Response Message
Futures Strategy Definition Response Message
Options Strategy Definition Response Message
New Futures Strategy Definition Message
New Options Strategy Definition Response Message
Special Field Message

Represented by SpecialFieldReceived event with following optional arguments: