OnixS ICE iMpact Multicast Price Feed Handler C++ library  8.18.0
API documentation
FuturesProductDefinition Struct Reference

#include <FuturesProductDefinition.h>

Classes

struct  BlockDetail
 

Public Types

enum  { messageType = 'B' }
 
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

typedef std::vector<BlockDetail> BlockDetails

Alias for collection of BlockDetails.

Definition at line 239 of file FuturesProductDefinition.h.

Member Enumeration Documentation

anonymous enum

Message type constant.

Enumerator
messageType 

Definition at line 42 of file FuturesProductDefinition.h.

Constructor & Destructor Documentation

Default constructor.

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

Initialize from raw message data.

Member Function Documentation

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

Deserialize from raw data.

void reset ( )

Reset all fields to default values.

std::string toString ( ) const

Returns string representation.

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.

Definition at line 303 of file FuturesProductDefinition.h.

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.

bool allowOptions

Indicate if the market supports option markets.

Definition at line 129 of file FuturesProductDefinition.h.

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.

Optional<char> altPriceDenominator

Denominator for the alternate deal price fields in the market.

Definition at line 245 of file FuturesProductDefinition.h.

Optional<bool> aonAllowed

Indicates if AON order is supported in the market.

Definition at line 355 of file FuturesProductDefinition.h.

Optional<BlockDetails> blockDetails

Collection of BlockDetails.

Definition at line 242 of file FuturesProductDefinition.h.

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.

std::string clearedAlias

Clearing limit admin related.

Definition at line 132 of file FuturesProductDefinition.h.

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.

Optional<char> contractSizeDenominator

Denominator for ContractSize.

Definition at line 401 of file FuturesProductDefinition.h.

std::string contractSymbol

See Naming Convention on Appendix D.

Definition at line 58 of file FuturesProductDefinition.h.

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.

Optional<long long> couponRate

Fixed Rate: The fixed rate for an instrument.

Definition at line 248 of file FuturesProductDefinition.h.

Optional<char> couponRateDenominator

Fixed Rate: The fixed rate Denominator for an instrument.

Definition at line 251 of file FuturesProductDefinition.h.

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.

Optional<bool> crossOrderSupported

Indicates if Cross order is supported in the market.

Definition at line 352 of file FuturesProductDefinition.h.

std::string currency

The currency that the market is traded on.

Definition at line 116 of file FuturesProductDefinition.h.

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.

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.

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::Enum exchangeSilo

Exchange silo code for the market.

Definition at line 188 of file FuturesProductDefinition.h.

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.

Optional<bool> flexAllowed

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

Definition at line 332 of file FuturesProductDefinition.h.

Optional<bool> gtAllowed

Indicates if GTC is allowed in the market.

Definition at line 349 of file FuturesProductDefinition.h.

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.

bool hedgeOnly

Indicate if the contract is for hedge only.

Definition at line 185 of file FuturesProductDefinition.h.

std::string hubAlias

Alias of the hub for the contract/market.

Definition at line 157 of file FuturesProductDefinition.h.

int hubId

ID of the hub for the contract/market.

Definition at line 209 of file FuturesProductDefinition.h.

int incrementPrice

Minimum increment price for this market.

Definition at line 67 of file FuturesProductDefinition.h.

int incrementQty

Minimum increment quantity for this market.

Definition at line 70 of file FuturesProductDefinition.h.

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.

Optional<DateTime> interestAccrualDate

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

Definition at line 260 of file FuturesProductDefinition.h.

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.

Optional<char> interpolationFactorDenominator

Denominator value for ContractMultiplier.

Definition at line 290 of file FuturesProductDefinition.h.

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.

bool isCrackSpread

Indicate if the market is crack spread.

Definition at line 95 of file FuturesProductDefinition.h.

Optional<bool> isDividendAdjusted

Indicates if dividend is adjusted.

Definition at line 380 of file FuturesProductDefinition.h.

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.

bool isSerialOptionsSupported

Indicate if serial options is supported.

Definition at line 163 of file FuturesProductDefinition.h.

bool isSpread

Indicate if the market is a spread.

Definition at line 92 of file FuturesProductDefinition.h.

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.

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.

bool isTradable

Indicate if the contract is tradable.

Definition at line 166 of file FuturesProductDefinition.h.

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.

std::string marketDesc

Description of the market.

Definition at line 77 of file FuturesProductDefinition.h.

MarketId marketId

Unique identifier of the market.

Definition at line 55 of file FuturesProductDefinition.h.

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.

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.

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.

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.

Price maxPrice

Maximum Price.

Definition at line 151 of file FuturesProductDefinition.h.

std::string micCode

Market Identifier Code for the market.

Definition at line 173 of file FuturesProductDefinition.h.

Optional<bool> miFIDRegulatedMarket

Indicates MIFID-II market.

Definition at line 358 of file FuturesProductDefinition.h.

Price minPrice

Minimum Price.

Definition at line 148 of file FuturesProductDefinition.h.

int minQty

Minimum quantity for this market.

Definition at line 109 of file FuturesProductDefinition.h.

char numDecimalsOptionsPrice

Only used for OffExchangeIncrementOptionPrice.

Definition at line 119 of file FuturesProductDefinition.h.

Optional<int> numOfCycles

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

Definition at line 404 of file FuturesProductDefinition.h.

Optional<int> numOfMarkets

The number of markets for the given market type.

Definition at line 339 of file FuturesProductDefinition.h.

int offExchangeIncrementOptionPrice

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

Definition at line 203 of file FuturesProductDefinition.h.

int offExchangeIncrementPrice

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

Definition at line 199 of file FuturesProductDefinition.h.

int offExchangeIncrementQty

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

Definition at line 195 of file FuturesProductDefinition.h.

char offExchangeIncrementQtyDenominator

Denominator for OffExchangeIncrementQty.

Definition at line 191 of file FuturesProductDefinition.h.

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.

short optionsExpirationDay

Day of the month.

Definition at line 145 of file FuturesProductDefinition.h.

short optionsExpirationMonth

Month range 1-12.

Definition at line 142 of file FuturesProductDefinition.h.

short optionsExpirationYear

4 digit year.

Definition at line 139 of file FuturesProductDefinition.h.

char orderPriceDenominator

Denominator for the order price fields in this market.

Definition at line 64 of file FuturesProductDefinition.h.

Optional<bool> overrideBlockMin

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

Definition at line 383 of file FuturesProductDefinition.h.

MarketId primaryMarketId

Ignored when it is not spread.

Definition at line 98 of file FuturesProductDefinition.h.

int productId

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

Definition at line 206 of file FuturesProductDefinition.h.

std::string productName

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

Definition at line 154 of file FuturesProductDefinition.h.

Optional<int> refSpreadProductId

Product ID to use when requesting new spread.

Definition at line 364 of file FuturesProductDefinition.h.

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.

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.

MarketType requestMarketType

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

Definition at line 52 of file FuturesProductDefinition.h.

int requestSeqId

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

Definition at line 49 of file FuturesProductDefinition.h.

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.

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.

MarketId secondaryMarketId

Ignored when it is not spread.

Definition at line 101 of file FuturesProductDefinition.h.

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.

Optional<SettlementType::Enum> settlementType

Settlement Type.

Definition at line 325 of file FuturesProductDefinition.h.

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.

int stripId

ID of the strip for the contract/market.

Definition at line 212 of file FuturesProductDefinition.h.

std::string stripName

Name of the strip for the contract/market.

Definition at line 160 of file FuturesProductDefinition.h.

Optional<bool> testMarketIndicator

Indicates this is a test market.

Definition at line 361 of file FuturesProductDefinition.h.

Optional<char> tickValueDenominator

Denominator for ScreenTickValue and BlockTickValue.

Definition at line 398 of file FuturesProductDefinition.h.

TradingStatus::Enum tradingStatus

See Appendix A on trading status codes.

Definition at line 61 of file FuturesProductDefinition.h.

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.

Optional<std::string> unitOfMeasure

Unit Of Measure.

Definition at line 346 of file FuturesProductDefinition.h.

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.

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.


The documentation for this struct was generated from the following file: