OnixS ICE iMpact Multicast Price Feed Handler C++ library 8.18.0
API documentation
Loading...
Searching...
No Matches
FuturesProductDefinition Struct Reference

Classes

struct  BlockDetail

Public Types

enum  
typedef std::vector< BlockDetailBlockDetails

Public Member Functions

 FuturesProductDefinition ()
 FuturesProductDefinition (const char *data, std::size_t dataSize)
void deserialize (const char *data, std::size_t dataSize)
void reset ()
std::string toString () const

Public Attributes

int requestSeqId
MarketType requestMarketType
MarketId marketId
std::string contractSymbol
TradingStatus::Enum tradingStatus
char orderPriceDenominator
int incrementPrice
int incrementQty
int lotSize
std::string marketDesc
short maturityYear
short maturityMonth
short maturityDay
bool isSpread
bool isCrackSpread
MarketId primaryMarketId
MarketId secondaryMarketId
char dealPriceDenominator
int minQty
int unitQuantity
std::string currency
char numDecimalsOptionsPrice
long long oldTickValue
bool allowOptions
std::string clearedAlias
bool allowsImplied
short optionsExpirationYear
short optionsExpirationMonth
short optionsExpirationDay
Price minPrice
Price maxPrice
std::string productName
std::string hubAlias
std::string stripName
bool isSerialOptionsSupported
bool isTradable
char settlePriceDenominator
std::string micCode
char unitQtyDenominator
SecuritySubType::Enum securitySubType
bool hedgeOnly
ExchangeSilo::Enum exchangeSilo
char offExchangeIncrementQtyDenominator
int offExchangeIncrementQty
int offExchangeIncrementPrice
int offExchangeIncrementOptionPrice
int productId
int hubId
int stripId
std::string underlyingISIN
Optional< BlockDetailsblockDetails
Optional< char > altPriceDenominator
Optional< long long > couponRate
Optional< char > couponRateDenominator
Optional< DateTimedatedDate
Optional< DateTimeinterestAccrualDate
Optional< DateTimeissueDate
Optional< PricerepurchaseRate
Optional< DateTimerepurchaseDate
Optional< long long > factor
Optional< long long > interpolationFactor
Optional< char > interpolationFactorDenominator
Optional< std::string > instrRegistry
Optional< std::string > creditRating
Optional< long long > accruedPremiumAmt
Optional< long long > eventPaymentAmt
Optional< long long > alignmentInterestRate
Optional< SettlementType::EnumsettlementType
Optional< bool > isBlockOnly
Optional< bool > flexAllowed
Optional< MarketIdhedgeMarketId
Optional< int > numOfMarkets
Optional< std::string > contractSymbolExtra
Optional< std::string > unitOfMeasure
Optional< bool > gtAllowed
Optional< bool > crossOrderSupported
Optional< bool > aonAllowed
Optional< bool > miFIDRegulatedMarket
Optional< bool > testMarketIndicator
Optional< int > refSpreadProductId
Optional< std::string > isin
Optional< MarketTransparencyType::EnummarketTransparencyType
Optional< DatescreenLastTradeDate
Optional< bool > isDividendAdjusted
Optional< bool > overrideBlockMin
Optional< int > contractSize
Optional< long long > screenTickValue
Optional< long long > blockTickValue
Optional< char > tickValueDenominator
Optional< char > contractSizeDenominator
Optional< int > numOfCycles
Optional< bool > isStandardEquity

Detailed Description

Definition at line 39 of file FuturesProductDefinition.h.

Member Typedef Documentation

◆ BlockDetails

typedef std::vector<BlockDetail> BlockDetails

Alias for collection of BlockDetails.

Definition at line 239 of file FuturesProductDefinition.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Message type constant.

Enumerator
messageType 'B' 

Definition at line 42 of file FuturesProductDefinition.h.

Constructor & Destructor Documentation

◆ FuturesProductDefinition() [1/2]

Default constructor.

◆ FuturesProductDefinition() [2/2]

FuturesProductDefinition ( const char * data,
std::size_t dataSize )

Initialize from raw message data.

Member Function Documentation

◆ deserialize()

void deserialize ( const char * data,
std::size_t dataSize )

Deserialize from raw data.

◆ reset()

void reset ( )

Reset all fields to default values.

◆ toString()

std::string toString ( ) const

Returns string representation.

Member Data Documentation

◆ accruedPremiumAmt

Optional<long long> accruedPremiumAmt

Total Premium Accrual: Premium that has accrued during the current quarterly payment period. Based on 100 Notional and will be applied to the A value. Number of decimal places for AccruedPremiumAmt is 10.

Definition at line 303 of file FuturesProductDefinition.h.

◆ alignmentInterestRate

Optional<long long> alignmentInterestRate

Price Alignment Interest (C): Eris PAI is the cumulative daily interest on variation margin adjustment for 100 notional. Eris PAI is one of the primary inputs needed for calculating a futures price for a swap future. IRS - Accrued Coupons (B Value): This value represents historical fixed and floating payments for 100 notional, and is one of the primary inputs needed for calculating a futures price for a swap future. Denominator value for AlignmentInterestRate is 10.

Definition at line 322 of file FuturesProductDefinition.h.

◆ allowOptions

bool allowOptions

Indicate if the market supports option markets.

Definition at line 129 of file FuturesProductDefinition.h.

◆ allowsImplied

bool allowsImplied

Indicate if implication is done for a given spread market and its given outright leg markets.

Definition at line 136 of file FuturesProductDefinition.h.

◆ altPriceDenominator

Optional<char> altPriceDenominator

Denominator for the alternate deal price fields in the market.

Definition at line 245 of file FuturesProductDefinition.h.

◆ aonAllowed

Optional<bool> aonAllowed

Indicates if AON order is supported in the market.

Definition at line 355 of file FuturesProductDefinition.h.

◆ blockDetails

Optional<BlockDetails> blockDetails

Collection of BlockDetails.

Definition at line 242 of file FuturesProductDefinition.h.

◆ blockTickValue

Optional<long long> blockTickValue

Identifies the monetary amount per tick move when calculated for Off- Exchange trades.

Definition at line 395 of file FuturesProductDefinition.h.

◆ clearedAlias

std::string clearedAlias

Clearing limit admin related.

Definition at line 132 of file FuturesProductDefinition.h.

◆ contractSize

Optional<int> contractSize

The deliverable quantity of a stock, commodity, or other financial instrument that underlies a futures or options contract.

Definition at line 387 of file FuturesProductDefinition.h.

◆ contractSizeDenominator

Optional<char> contractSizeDenominator

Denominator for ContractSize.

Definition at line 401 of file FuturesProductDefinition.h.

◆ contractSymbol

std::string contractSymbol

See Naming Convention on Appendix D.

Definition at line 58 of file FuturesProductDefinition.h.

◆ contractSymbolExtra

Optional<std::string> contractSymbolExtra

Only sent if contract symbol is greater than 35. Client should use this field if sent else use existing contract symbol field.

Definition at line 343 of file FuturesProductDefinition.h.

◆ couponRate

Optional<long long> couponRate

Fixed Rate: The fixed rate for an instrument.

Definition at line 248 of file FuturesProductDefinition.h.

◆ couponRateDenominator

Optional<char> couponRateDenominator

Fixed Rate: The fixed rate Denominator for an instrument.

Definition at line 251 of file FuturesProductDefinition.h.

◆ creditRating

Optional<std::string> creditRating

Rate Descriptor: The description of Float Rate. Sent for float leg on aged or spot starting swap futures.

Definition at line 298 of file FuturesProductDefinition.h.

◆ crossOrderSupported

Optional<bool> crossOrderSupported

Indicates if Cross order is supported in the market.

Definition at line 352 of file FuturesProductDefinition.h.

◆ currency

std::string currency

The currency that the market is traded on.

Definition at line 116 of file FuturesProductDefinition.h.

◆ datedDate

Optional<DateTime> datedDate

Cash Flow Alignment Date: The cash flow alignment date is a date not adjusted for holidays used to derive interest payment dates. Any calendar day.

Definition at line 256 of file FuturesProductDefinition.h.

◆ dealPriceDenominator

char dealPriceDenominator

Denominator for the deal price fields in the market. For most markets, this is the same as OrderPriceDenominator. However, it could be different for some crack or spread markets.

Definition at line 106 of file FuturesProductDefinition.h.

◆ eventPaymentAmt

Optional<long long> eventPaymentAmt

CDS - Premium & Credit Event Payments (B): This value represents historical premium and credit event payments for 100 notional, and is one of the primary inputs needed for calculating a futures price for a swap future. IRS - Accrued Coupons (B Value): This value represents historical fixed and floating payments for 100 notional, and is one of the primary inputs needed for calculating a futures price for an interest rate swap future. Number of decimal places for EventPaymentAmt is 10. This value can be negative.

Definition at line 313 of file FuturesProductDefinition.h.

◆ exchangeSilo

ExchangeSilo::Enum exchangeSilo

Exchange silo code for the market.

Definition at line 188 of file FuturesProductDefinition.h.

◆ factor

Optional<long long> factor

Index Factor: Percentage of the original index that is still accruing interest. Number of decimal places for Factor is 2.

Definition at line 281 of file FuturesProductDefinition.h.

◆ flexAllowed

Optional<bool> flexAllowed

Indicates if flexible strikes can be created for the option market.

Definition at line 332 of file FuturesProductDefinition.h.

◆ gtAllowed

Optional<bool> gtAllowed

Indicates if GTC is allowed in the market.

Definition at line 349 of file FuturesProductDefinition.h.

◆ hedgeMarketId

Optional<MarketId> hedgeMarketId

Market ID for the corresponding hedge market. It will be set to -1 when not applicable.

Definition at line 336 of file FuturesProductDefinition.h.

◆ hedgeOnly

bool hedgeOnly

Indicate if the contract is for hedge only.

Definition at line 185 of file FuturesProductDefinition.h.

◆ hubAlias

std::string hubAlias

Alias of the hub for the contract/market.

Definition at line 157 of file FuturesProductDefinition.h.

◆ hubId

int hubId

ID of the hub for the contract/market.

Definition at line 209 of file FuturesProductDefinition.h.

◆ incrementPrice

int incrementPrice

Minimum increment price for this market.

Definition at line 67 of file FuturesProductDefinition.h.

◆ incrementQty

int incrementQty

Minimum increment quantity for this market.

Definition at line 70 of file FuturesProductDefinition.h.

◆ instrRegistry

Optional<std::string> instrRegistry

Payment Frequency: The interest rate swap future payment frequency. Supported values: 6M = 6 months, 1Y = 1 year.

Definition at line 294 of file FuturesProductDefinition.h.

◆ interestAccrualDate

Optional<DateTime> interestAccrualDate

Effective Date: The effective date of the swap future. Any business day.

Definition at line 260 of file FuturesProductDefinition.h.

◆ interpolationFactor

Optional<long long> interpolationFactor

Interpolation Factor: Multiplier that when applied to the longer rate in the CreditRating (Rate Descriptor) field results in RepurchaseRate (Previous Fixing Rate). Not sent for forward starting interest rate swap futures.

Definition at line 287 of file FuturesProductDefinition.h.

◆ interpolationFactorDenominator

Optional<char> interpolationFactorDenominator

Denominator value for ContractMultiplier.

Definition at line 290 of file FuturesProductDefinition.h.

◆ isBlockOnly

Optional<bool> isBlockOnly

Indicates if Market is only tradable via ICE Block Trade. This also means the screen trading is not allowed for the market.

Definition at line 329 of file FuturesProductDefinition.h.

◆ isCrackSpread

bool isCrackSpread

Indicate if the market is crack spread.

Definition at line 95 of file FuturesProductDefinition.h.

◆ isDividendAdjusted

Optional<bool> isDividendAdjusted

Indicates if dividend is adjusted.

Definition at line 380 of file FuturesProductDefinition.h.

◆ isin

Optional<std::string> isin

This ISIN is only supported for MiFID Regulated Markets. Of the MiFID markets, only Futures and Options markets will support ISINs; some strategies will have an ISIN.

Definition at line 369 of file FuturesProductDefinition.h.

◆ isSerialOptionsSupported

bool isSerialOptionsSupported

Indicate if serial options is supported.

Definition at line 163 of file FuturesProductDefinition.h.

◆ isSpread

bool isSpread

Indicate if the market is a spread.

Definition at line 92 of file FuturesProductDefinition.h.

◆ isStandardEquity

Optional<bool> isStandardEquity

Indicates when a market is standard vs nonstandard. Field will only exist on/be applicable to equity markets. Default value is false.

Definition at line 408 of file FuturesProductDefinition.h.

◆ issueDate

Optional<DateTime> issueDate

First Fixing Date: The first Fixing Date is the date at which the float rate is set during the first float period. Any acceptable business day.

Definition at line 265 of file FuturesProductDefinition.h.

◆ isTradable

bool isTradable

Indicate if the contract is tradable.

Definition at line 166 of file FuturesProductDefinition.h.

◆ lotSize

int lotSize

The lot size is minimum size of contracts in lots. It is multiplier to determine the total lots.

Definition at line 74 of file FuturesProductDefinition.h.

◆ marketDesc

std::string marketDesc

Description of the market.

Definition at line 77 of file FuturesProductDefinition.h.

◆ marketId

MarketId marketId

Unique identifier of the market.

Definition at line 55 of file FuturesProductDefinition.h.

◆ marketTransparencyType

Optional<MarketTransparencyType::Enum> marketTransparencyType

This field can be used to identify if a market is Platts or not.

Definition at line 372 of file FuturesProductDefinition.h.

◆ maturityDay

short maturityDay

Day of the month. Last date that the market can be traded and should be removed from the system.

Definition at line 89 of file FuturesProductDefinition.h.

◆ maturityMonth

short maturityMonth

Month range 1-12. Last date that the market can be traded and should be removed from the system.

Definition at line 85 of file FuturesProductDefinition.h.

◆ maturityYear

short maturityYear

4 digit year. Last date that the market can be traded and should be removed from the system.

Definition at line 81 of file FuturesProductDefinition.h.

◆ maxPrice

Price maxPrice

Maximum Price.

Definition at line 151 of file FuturesProductDefinition.h.

◆ micCode

std::string micCode

Market Identifier Code for the market.

Definition at line 173 of file FuturesProductDefinition.h.

◆ miFIDRegulatedMarket

Optional<bool> miFIDRegulatedMarket

Indicates MIFID-II market.

Definition at line 358 of file FuturesProductDefinition.h.

◆ minPrice

Price minPrice

Minimum Price.

Definition at line 148 of file FuturesProductDefinition.h.

◆ minQty

int minQty

Minimum quantity for this market.

Definition at line 109 of file FuturesProductDefinition.h.

◆ numDecimalsOptionsPrice

char numDecimalsOptionsPrice

Only used for OffExchangeIncrementOptionPrice.

Definition at line 119 of file FuturesProductDefinition.h.

◆ numOfCycles

Optional<int> numOfCycles

Number of cycles (days, hours, MWh, etc) for a contract.

Definition at line 404 of file FuturesProductDefinition.h.

◆ numOfMarkets

Optional<int> numOfMarkets

The number of markets for the given market type.

Definition at line 339 of file FuturesProductDefinition.h.

◆ offExchangeIncrementOptionPrice

int offExchangeIncrementOptionPrice

Off exchange options increment price. NumDecimalsOptionsPrice should be applied to this field.

Definition at line 203 of file FuturesProductDefinition.h.

◆ offExchangeIncrementPrice

int offExchangeIncrementPrice

Off exchange increment price. OrderPriceDenominator should be applied to this field.

Definition at line 199 of file FuturesProductDefinition.h.

◆ offExchangeIncrementQty

int offExchangeIncrementQty

Off exchange increment qty. OffExchangeIncrementQtyDenominator should be applied to this field.

Definition at line 195 of file FuturesProductDefinition.h.

◆ offExchangeIncrementQtyDenominator

char offExchangeIncrementQtyDenominator

Denominator for OffExchangeIncrementQty.

Definition at line 191 of file FuturesProductDefinition.h.

◆ oldTickValue

long long oldTickValue

Use ScreentickValue and BlockTickValue instead of this field. OrderPriceDenominator should be applied to get the real value. Please take note that this value can be different for the same markets with different expiry and that this value can change over time for a given market (i.e. MarketID).

Definition at line 126 of file FuturesProductDefinition.h.

◆ optionsExpirationDay

short optionsExpirationDay

Day of the month.

Definition at line 145 of file FuturesProductDefinition.h.

◆ optionsExpirationMonth

short optionsExpirationMonth

Month range 1-12.

Definition at line 142 of file FuturesProductDefinition.h.

◆ optionsExpirationYear

short optionsExpirationYear

4 digit year.

Definition at line 139 of file FuturesProductDefinition.h.

◆ orderPriceDenominator

char orderPriceDenominator

Denominator for the order price fields in this market.

Definition at line 64 of file FuturesProductDefinition.h.

◆ overrideBlockMin

Optional<bool> overrideBlockMin

Indicates whether the Block Minimum can be overridden for the market.

Definition at line 383 of file FuturesProductDefinition.h.

◆ primaryMarketId

MarketId primaryMarketId

Ignored when it is not spread.

Definition at line 98 of file FuturesProductDefinition.h.

◆ productId

int productId

ID of the product that the contract/market is under.

Definition at line 206 of file FuturesProductDefinition.h.

◆ productName

std::string productName

Name of the product that the contract/market is under.

Definition at line 154 of file FuturesProductDefinition.h.

◆ refSpreadProductId

Optional<int> refSpreadProductId

Product ID to use when requesting new spread.

Definition at line 364 of file FuturesProductDefinition.h.

◆ repurchaseDate

Optional<DateTime> repurchaseDate

Previous Fixing Date: The date the floating rate was set for the next floating payment. Milliseconds since Jan 1st, 1970, 00:00:00 GMT. 0 is valid for this field up until the First Fixing Date (IssueDate).

Definition at line 277 of file FuturesProductDefinition.h.

◆ repurchaseRate

Optional<Price> repurchaseRate

Previous Fixing Rate: The rate set on the last reset date. Sent for float leg on aged or spot starting swap futures. Not sent for forward starting swap futures. Number of decimal places for RepurchaseRate is

  1. 0 is valid for this field up until the First Fixing Date (IssueDate).

Definition at line 272 of file FuturesProductDefinition.h.

◆ requestMarketType

MarketType requestMarketType

See Appendix C for the list of market types and IDs.

Definition at line 52 of file FuturesProductDefinition.h.

◆ requestSeqId

int requestSeqId

The original request sequence ID assigned by client, unique per session.

Definition at line 49 of file FuturesProductDefinition.h.

◆ screenLastTradeDate

Optional<Date> screenLastTradeDate

ScreenLastTradeDate is the last date, by Exchange rule, that the market is available for trading on the Central Order Book. It applies to all cleared instruments on the trading platform.

Definition at line 377 of file FuturesProductDefinition.h.

◆ screenTickValue

Optional<long long> screenTickValue

Identifies the monetary amount per tick move when calculated from the Central Limit Order Book.

Definition at line 391 of file FuturesProductDefinition.h.

◆ secondaryMarketId

MarketId secondaryMarketId

Ignored when it is not spread.

Definition at line 101 of file FuturesProductDefinition.h.

◆ securitySubType

SecuritySubType::Enum securitySubType

Contains the Strategy Code for defined market where applicable. See Appendix E for list of codes.

Definition at line 182 of file FuturesProductDefinition.h.

◆ settlementType

Optional<SettlementType::Enum> settlementType

Settlement Type.

Definition at line 325 of file FuturesProductDefinition.h.

◆ settlePriceDenominator

char settlePriceDenominator

Denominator for the settlement price fields in the market. For most markets, this is the same as DealPriceDenominator.

Definition at line 170 of file FuturesProductDefinition.h.

◆ stripId

int stripId

ID of the strip for the contract/market.

Definition at line 212 of file FuturesProductDefinition.h.

◆ stripName

std::string stripName

Name of the strip for the contract/market.

Definition at line 160 of file FuturesProductDefinition.h.

◆ testMarketIndicator

Optional<bool> testMarketIndicator

Indicates this is a test market.

Definition at line 361 of file FuturesProductDefinition.h.

◆ tickValueDenominator

Optional<char> tickValueDenominator

Denominator for ScreenTickValue and BlockTickValue.

Definition at line 398 of file FuturesProductDefinition.h.

◆ tradingStatus

TradingStatus::Enum tradingStatus

See Appendix A on trading status codes.

Definition at line 61 of file FuturesProductDefinition.h.

◆ underlyingISIN

std::string underlyingISIN

The ISIN of the security this market is associated with. This is currently only populated for Liffe Equity markets.

Definition at line 216 of file FuturesProductDefinition.h.

◆ unitOfMeasure

Optional<std::string> unitOfMeasure

Unit Of Measure.

Definition at line 346 of file FuturesProductDefinition.h.

◆ unitQtyDenominator

char unitQtyDenominator

Denominator for UnitQuantity. Clients should also apply UnitQtyDenominator when calculating LotSize. This field will be 0 for most of the markets.

Definition at line 178 of file FuturesProductDefinition.h.

◆ unitQuantity

int unitQuantity

The quantity in unit of measurement per lot. For example, it is 1000 barrels per lot for Brent.

Definition at line 113 of file FuturesProductDefinition.h.