OnixS ICE iMpact Multicast Feed Handler for C++  3.13.0.0
Classes | Public Types | Public Member Functions | Public Attributes | Friends | List of all members
FuturesProductDefinition Struct Reference

This class represents the Futures/OTC Product Definition Response Message. More...

Classes

struct  BlockDetail
 This nested class represents block details definition. More...
 

Public Types

enum  { messageType = 'B' }
 Message type constant.
 
typedef std::vector< BlockDetail > BlockDetails
 Alias for collection of BlockDetails.
 

Public Member Functions

 FuturesProductDefinition ()
 Default constructor.
 
std::string toString () const
 Returns string representation.
 

Public Attributes

int requestSeqId
 The original request sequence ID assigned by client, unique per session. More...
 
MarketType requestMarketType
 See Appendix C for the list of market types and IDs.
 
MarketId marketId
 Unique identifier of the market.
 
std::string contractSymbol
 See Naming Convention on Appendix D.
 
TradingStatus::Enum tradingStatus
 See Appendix A on trading status codes.
 
char orderPriceDenominator
 Denominator for the order price fields in this market.
 
int incrementPrice
 Minimum increment price for this market.
 
int incrementQty
 Minimum increment quantity for this market.
 
int lotSize
 The lot size is minimum size of contracts in lots. More...
 
std::string marketDesc
 Description of the market.
 
short maturityYear
 4 digit year. More...
 
short maturityMonth
 Month range 1-12. More...
 
short maturityDay
 Day of the month. More...
 
bool isSpread
 Indicate if the market is a spread.
 
bool isCrackSpread
 Indicate if the market is crack spread.
 
MarketId primaryMarketId
 Ignored when it is not spread.
 
MarketId secondaryMarketId
 Ignored when it is not spread.
 
char dealPriceDenominator
 Denominator for the deal price fields in the market. More...
 
int minQty
 Minimum quantity for this market.
 
int unitQuantity
 The quantity in unit of measurement per lot. More...
 
std::string currency
 The currency that the market is traded on.
 
char numDecimalsOptionsPrice
 Only used for OffExchangeIncrementOptionPrice.
 
long long tickValue
 A market's tick value is the cash value of one tick (one minimum price movement). More...
 
bool allowOptions
 Indicate if the market supports option markets.
 
std::string clearedAlias
 Clearing limit admin related.
 
bool allowsImplied
 Indicate if implication is done for a given spread market and its given outright leg markets. More...
 
short optionsExpirationYear
 4 digit year.
 
short optionsExpirationMonth
 Month range 1-12.
 
short optionsExpirationDay
 Day of the month.
 
Price minPrice
 Minimum Price.
 
Price maxPrice
 Maximum Price.
 
std::string productName
 Name of the product that the contract/market is under.
 
std::string hubAlias
 Alias of the hub for the contract/market.
 
std::string stripName
 Name of the strip for the contract/market.
 
bool isSerialOptionsSupported
 Indicate if serial options is supported.
 
bool isTradable
 Indicate if the contract is tradable.
 
char settlePriceDenominator
 Denominator for the settlement price fields in the market. More...
 
std::string micCode
 Market Identifier Code for the market.
 
char unitQtyDenominator
 Denominator for UnitQuantity. More...
 
SecuritySubType::Enum securitySubType
 Contains the Strategy Code for defined market where applicable. More...
 
bool hedgeOnly
 Indicate if the contract is for hedge only.
 
ExchangeSilo::Enum exchangeSilo
 Exchange silo code for the market.
 
char offExchangeIncrementQtyDenominator
 Denominator for OffExchangeIncrementQty.
 
int offExchangeIncrementQty
 Off exchange increment qty. More...
 
int offExchangeIncrementPrice
 Off exchange increment price. More...
 
int offExchangeIncrementOptionPrice
 Off exchange options increment price. More...
 
int productId
 ID of the product that the contract/market is under.
 
int hubId
 ID of the hub for the contract/market.
 
int stripId
 ID of the strip for the contract/market.
 
std::string underlyingISIN
 The ISIN of the security this market is associated with. More...
 
Optional< BlockDetails > blockDetails
 Collection of BlockDetails.
 
Optional< char > altPriceDenominator
 Denominator for the alternate deal price fields in the market.
 
Optional< long long > couponRate
 Fixed Rate: The fixed rate for an instrument.
 
Optional< char > couponRateDenominator
 Fixed Rate: The fixed rate Denominator for an instrument.
 
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. More...
 
Optional< DateTime > interestAccrualDate
 Effective Date: The effective date of the swap future. More...
 
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. More...
 
Optional< Price > repurchaseRate
 Previous Fixing Rate: The rate set on the last reset date. More...
 
Optional< DateTime > repurchaseDate
 Previous Fixing Date: The date the floating rate was set for the next floating payment. More...
 
Optional< long long > factor
 Index Factor: Percentage of the original index that is still accruing interest. More...
 
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). More...
 
Optional< char > interpolationFactorDenominator
 Denominator value for ContractMultiplier.
 
Optional< std::string > instrRegistry
 Payment Frequency: The interest rate swap future payment frequency. More...
 
Optional< std::string > creditRating
 Rate Descriptor: The description of Float Rate. More...
 
Optional< long long > accruedPremiumAmt
 Total Premium Accrual: Premium that has accrued during the current quarterly payment period. More...
 
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. More...
 
Optional< long long > alignmentInterestRate
 Price Alignment Interest (C): Eris PAI is the cumulative daily interest on variation margin adjustment for 100 notional. More...
 
Optional< SettlementType::Enum > settlementType
 Settlement Type.
 
Optional< bool > isBlockOnly
 Indicates if Market is only tradable via ICE Block Trade. More...
 
Optional< bool > flexAllowed
 Indicates if flexible strikes can be created for the option market.
 
Optional< MarketId > hedgeMarketId
 Market ID for the corresponding hedge market. More...
 
Optional< int > numOfMarkets
 The number of markets for the given market type.
 
Optional< std::string > contractSymbolExtra
 Only sent if contract symbol is greater than 35. More...
 
Optional< std::string > unitOfMeasure
 Unit Of Measure.
 
Optional< bool > gtAllowed
 Indicates if GTC is allowed in the market.
 
Optional< bool > crossOrderSupported
 Indicates if Cross order is supported in the market.
 
Optional< bool > aonAllowed
 Indicates if AON order is supported in the market.
 
Optional< bool > miFIDRegulatedMarket
 Indicates MIFID-II market.
 
Optional< bool > testMarketIndicator
 Indicates this is a test market.
 
Optional< int > refSpreadProductId
 Product ID to use when requesting new spread.
 
Optional< std::string > isin
 This ISIN is only supported for MiFID Regulated Markets. More...
 
Optional< MarketTransparencyType::Enum > marketTransparencyType
 This field can be used to identify if a market is Platts or not.
 
Optional< Date > screenLastTradeDate
 ScreenLastTradeDate is the last date, by Exchange rule, that the market is available for trading on the Central Order Book. More...
 
Optional< bool > isDividendAdjusted
 Indicates if dividend is adjusted.
 
Optional< short > numOfCycles
 Number of cycle (days, hours, MWh, etc.) for a contract.
 

Friends

class MessageDeserializer
 

Detailed Description

This class represents the Futures/OTC Product Definition Response Message.

Member Data Documentation

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.

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.

bool allowsImplied

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

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.

Optional<std::string> creditRating

Rate Descriptor: The description of Float Rate.

Sent for float leg on aged or spot starting swap futures.

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.

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.

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.

Optional<long long> factor

Index Factor: Percentage of the original index that is still accruing interest.

Number of decimal places for Factor is 2.

Optional<MarketId> hedgeMarketId

Market ID for the corresponding hedge market.

It will be set to -1 when not applicable.

Optional<std::string> instrRegistry

Payment Frequency: The interest rate swap future payment frequency.

Supported values: 6M = 6 months, 1Y = 1 year.

Optional<DateTime> interestAccrualDate

Effective Date: The effective date of the swap future.

Any business day.

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.

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.

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; strategies will not.

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.

int lotSize

The lot size is minimum size of contracts in lots.

It is multiplier to determine the total lots.

short maturityDay

Day of the month.

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

short maturityMonth

Month range 1-12.

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

short maturityYear

4 digit year.

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

int offExchangeIncrementOptionPrice

Off exchange options increment price.

NumDecimalsOptionsPrice should be applied to this field.

int offExchangeIncrementPrice

Off exchange increment price.

OrderPriceDenominator should be applied to this field.

int offExchangeIncrementQty

Off exchange increment qty.

OffExchangeIncrementQtyDenominator should be applied to this field.

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).

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).
int requestSeqId

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

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.

SecuritySubType::Enum securitySubType

Contains the Strategy Code for defined market where applicable.

See Appendix E for list of codes.

char settlePriceDenominator

Denominator for the settlement price fields in the market.

For most markets, this is the same as DealPriceDenominator.

long long tickValue

A market's tick value is the cash value of one tick (one minimum price movement).

OrderPriceDenominator should be applied to get the real value.

std::string underlyingISIN

The ISIN of the security this market is associated with.

This is currently only populated for Liffe Equity markets.

char unitQtyDenominator

Denominator for UnitQuantity.

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

int unitQuantity

The quantity in unit of measurement per lot.

For example, it is 1000 barrels per lot for Brent.