EPAM B2BITS CME MDP Handler C++  6.2.1
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Groups Pages
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
Cme::Mdp Namespace Reference

Namespaces

 FIXTag
 

Classes

struct  ChannelOptions
 Channel options. More...
 
struct  ChannelDataEvent
 Channel data event. More...
 
struct  ChannelStatistics
 Channel statistics. More...
 
class  Channel
 
class  ChannelDataListener
 
class  ChannelListener
 
struct  TagValue
 Lightweight TagValue wrapper for generated messages. More...
 
struct  Group
 
struct  InstrumentOptions
 Instrument options. More...
 
struct  InstrumentQuoteRequest
 QuoteRequest event params. More...
 
struct  UpdateEndFlags
 UpdateEnd event params. More...
 
struct  InstrumentEvent
 Instrument event. More...
 
class  Instrument
 
class  InstrumentListener
 
struct  InstrumentDefinition
 Instrument definition. More...
 
struct  MarketDataServiceSequenceOptions
 Market data service sequence options. More...
 
struct  MarketDataServiceThreadOptions
 Market data service thread options. More...
 
struct  MarketDataServiceSocketOptions
 Market data service socket options. More...
 
struct  MarketDataServiceLoggingOptions
 Market data service logging options. More...
 
struct  MarketDataServiceOptions
 Market data service options. More...
 
class  MarketDataService
 
struct  Int32NULL
 
struct  Int8NULL
 
struct  LocalMktDate
 
struct  UInt16NULL
 
struct  UInt32NULL
 
struct  UInt64NULL
 
struct  UInt8NULL
 
struct  Decimal9
 
struct  Decimal9NULL
 
struct  DecimalQty
 
struct  MaturityMonthYear
 
struct  PRICE9
 
struct  PRICENULL9
 
struct  GroupSize
 
struct  GroupSize8Byte
 
struct  GroupSizeEncoding
 
struct  MessageHeader
 
struct  ChannelReset4
 
struct  AdminHeartbeat12
 
struct  AdminLogin15
 
struct  AdminLogout16
 
struct  SecurityStatus30
 
struct  MDIncrementalRefreshVolume37
 
struct  QuoteRequest39
 
struct  MDIncrementalRefreshBook46
 
struct  MDIncrementalRefreshOrderBook47
 
struct  MDIncrementalRefreshTradeSummary48
 
struct  MDIncrementalRefreshDailyStatistics49
 
struct  MDIncrementalRefreshLimitsBanding50
 
struct  MDIncrementalRefreshSessionStatistics51
 
struct  SnapshotFullRefresh52
 
struct  SnapshotFullRefreshOrderBook53
 
struct  MDInstrumentDefinitionFuture54
 
struct  MDInstrumentDefinitionOption55
 
struct  MDInstrumentDefinitionSpread56
 
struct  MDInstrumentDefinitionFixedIncome57
 
struct  MDInstrumentDefinitionRepo58
 
struct  SnapshotRefreshTopOrders59
 
struct  SecurityStatusWorkup60
 
struct  SnapshotFullRefreshTCP61
 
struct  CollateralMarketValue62
 
struct  MDInstrumentDefinitionFX63
 
struct  MDIncrementalRefreshBookLongQty64
 
struct  MDIncrementalRefreshTradeSummaryLongQty65
 
struct  MDIncrementalRefreshVolumeLongQty66
 
struct  MDIncrementalRefreshSessionStatisticsLongQty67
 
struct  SnapshotFullRefreshTCPLongQty68
 
struct  SnapshotFullRefreshLongQty69
 
class  MockPlayer
 
struct  OrderBookLevel
 Order book level. More...
 
class  OrderBookSide
 Order book side. More...
 
class  OrderBook
 Order book. More...
 
struct  ConsolidatedOrderBookLevel
 Consolidated order book level. More...
 
class  ConsolidatedOrderBookTop
 Consolidated order book top. More...
 
struct  Packet
 
struct  Message
 
class  ReferenceCounter
 
struct  ResolverEvent
 Resolver event. More...
 
class  Resolver
 
class  ResolverListener
 
struct  ThresholdLimits
 Threshold limits. More...
 
struct  Trade
 Trade. More...
 
struct  TradeOrder
 
struct  TradeStatistics
 Trade statistics. More...
 
struct  Timestamps
 Timestamps. More...
 

Typedefs

typedef std::vector< Channel * > ChannelVector
 
typedef Message< TagValueFIXMessage
 
typedef u32 InstrumentBuildOptions
 
typedef u32 InstrumentSubscriptionMask
 
typedef std::vector< Instrument * > InstrumentVector
 
typedef SbeSet< InstAttribValueInstAttribValueSet
 
typedef SbeSet
< MatchEventIndicator
MatchEventIndicatorSet
 
typedef SbeSet< SettlPriceTypeSettlPriceTypeSet
 
typedef char Asset [6]
 
typedef char CFICode [6]
 
typedef char CHAR
 
typedef char CountryCode [2]
 
typedef char Currency [3]
 
typedef int8_t InstAttribType
 
typedef int16_t Int16
 
typedef int32_t Int32
 
typedef int8_t Int8
 
typedef char LongName [35]
 
typedef char MDEntryTypeChannelReset
 
typedef char MDEntryTypeLimits
 
typedef char MDEntryTypeTrade
 
typedef char MDEntryTypeVol
 
typedef char MDFeedType [3]
 
typedef int8_t MDUpdateActionNew
 
typedef int8_t MDUpdateTypeNew
 
typedef char QuoteReqId [23]
 
typedef uint8_t SecurityAltIDSourceISIN
 
typedef char SecurityExchange [4]
 
typedef char SecurityGroup [6]
 
typedef char SecurityIDSource
 
typedef char SecuritySubType [5]
 
typedef char SecurityType [6]
 
typedef char String12 [12]
 
typedef char String20 [20]
 
typedef char String25 [25]
 
typedef char String3 [3]
 
typedef char String5 [5]
 
typedef char String6 [6]
 
typedef char String7 [7]
 
typedef char String8 [8]
 
typedef char Symbol [20]
 
typedef char Text [180]
 
typedef char UnderlyingSymbol [20]
 
typedef char UnitOfMeasure [30]
 
typedef char UserDefinedInstrument
 
typedef uint16_t UInt16
 
typedef uint32_t UInt32
 
typedef uint64_t UInt64
 
typedef uint8_t UInt8
 
typedef AdminHeartbeat12 AdminHeartbeat
 
typedef AdminLogout16 AdminLogout
 
typedef AdminLogin15 AdminLogin
 
typedef
MDInstrumentDefinitionFuture54 
MDInstrumentDefinitionFuture
 
typedef
MDInstrumentDefinitionOption55 
MDInstrumentDefinitionOption
 
typedef
MDInstrumentDefinitionSpread56 
MDInstrumentDefinitionSpread
 
typedef
MDInstrumentDefinitionFixedIncome57 
MDInstrumentDefinitionFixedIncome
 
typedef
MDInstrumentDefinitionRepo58 
MDInstrumentDefinitionRepo
 
typedef MDInstrumentDefinitionFX63 MDInstrumentDefinitionFX
 
typedef SecurityStatus30 SecurityStatus
 
typedef SecurityStatusWorkup60 SecurityStatusWorkup
 
typedef QuoteRequest39 QuoteRequest
 
typedef SnapshotFullRefresh52 SnapshotFullRefresh
 
typedef
SnapshotFullRefreshOrderBook53 
SnapshotFullRefreshOrderBook
 
typedef SnapshotRefreshTopOrders59 SnapshotRefreshTopOrders
 
typedef SnapshotFullRefreshTCP61 SnapshotFullRefreshTCP
 
typedef
SnapshotFullRefreshTCPLongQty68 
SnapshotFullRefreshTCPLongQty
 
typedef
SnapshotFullRefreshLongQty69 
SnapshotFullRefreshLongQty
 
typedef ChannelReset4 ChannelReset
 
typedef
MDIncrementalRefreshVolume37 
MDIncrementalRefreshVolume
 
typedef MDIncrementalRefreshBook46 MDIncrementalRefreshBook
 
typedef
MDIncrementalRefreshOrderBook47 
MDIncrementalRefreshOrderBook
 
typedef
MDIncrementalRefreshTradeSummary48 
MDIncrementalRefreshTradeSummary
 
typedef
MDIncrementalRefreshDailyStatistics49 
MDIncrementalRefreshDailyStatistics
 
typedef
MDIncrementalRefreshLimitsBanding50 
MDIncrementalRefreshLimitsBanding
 
typedef
MDIncrementalRefreshSessionStatistics51 
MDIncrementalRefreshSessionStatistics
 
typedef CollateralMarketValue62 CollateralMarketValue
 
typedef
MDIncrementalRefreshBookLongQty64 
MDIncrementalRefreshBookLongQty
 
typedef
MDIncrementalRefreshTradeSummaryLongQty65 
MDIncrementalRefreshTradeSummaryLongQty
 
typedef
MDIncrementalRefreshVolumeLongQty66 
MDIncrementalRefreshVolumeLongQty
 
typedef
MDIncrementalRefreshSessionStatisticsLongQty67 
MDIncrementalRefreshSessionStatisticsLongQty
 
typedef Message
< SnapshotFullRefresh
MBPSnapshotMsg
 
typedef Message
< SnapshotFullRefreshLongQty
MBPSnapshotLongQtyMsg
 
typedef Message
< SnapshotFullRefreshOrderBook
MBOSnapshotMsg
 
typedef Message
< MDInstrumentDefinitionFuture
InstrumentFutureMsg
 
typedef Message
< MDInstrumentDefinitionSpread
InstrumentSpreadMsg
 
typedef Message
< MDInstrumentDefinitionOption
InstrumentOptionMsg
 
typedef Message
< MDInstrumentDefinitionFixedIncome
InstrumenFixedIncomeMsg
 
typedef Message
< MDInstrumentDefinitionRepo
InstrumentRepoMsg
 
typedef Message
< MDInstrumentDefinitionFX
InstrumentFXMsg
 
typedef Message< SecurityStatusSecurityStatusMsg
 
typedef Message< QuoteRequestQuoteRequestMsg
 
typedef Message
< MDIncrementalRefreshBook::MDEntriesEntry
MBPIncBookMsg
 
typedef Message
< MDIncrementalRefreshBookLongQty::MDEntriesEntry
MBPIncBookLongQtyMsg
 
typedef Message
< MDIncrementalRefreshBook::OrderIDEntriesEntry
MBOIncBookMsg
 
typedef Message
< MDIncrementalRefreshBookLongQty::OrderIDEntriesEntry
MBOIncBookLongQtyMsg
 
typedef Message
< MDIncrementalRefreshOrderBook::MDEntriesEntry
MBOIncOrderBookMsg
 
typedef Message
< MDIncrementalRefreshDailyStatistics::MDEntriesEntry
IncDailyStatisticsMsg
 
typedef Message
< MDIncrementalRefreshLimitsBanding::MDEntriesEntry
IncLimitsBandingMsg
 
typedef Message
< MDIncrementalRefreshSessionStatistics::MDEntriesEntry
IncSessionStatisticsMsg
 
typedef Message
< MDIncrementalRefreshSessionStatisticsLongQty::MDEntriesEntry
IncSessionStatisticsLongQtyMsg
 
typedef Message
< MDIncrementalRefreshTradeSummary::MDEntriesEntry
IncTradeSummaryMsg
 
typedef Message
< MDIncrementalRefreshTradeSummaryLongQty::MDEntriesEntry
IncTradeSummaryLongQtyMsg
 
typedef Message
< MDIncrementalRefreshTradeSummary::OrderIDEntriesEntry
IncTradeSummaryOrderMsg
 
typedef Message
< MDIncrementalRefreshTradeSummaryLongQty::OrderIDEntriesEntry
IncTradeSummaryOrderLongQtyMsg
 
typedef Message
< MDIncrementalRefreshVolume::MDEntriesEntry
IncVolumeMsg
 
typedef Message
< MDIncrementalRefreshVolumeLongQty::MDEntriesEntry
IncVolumeLongQtyMsg
 
typedef u32 ResolverSubscriptionMask
 
typedef std::vector< Resolver * > ResolverVector
 
typedef std::vector< TradeOrderTradeOrderVector
 
using String = B2bits::StringEx
 
typedef u32 ChannelID
 
typedef std::string ResolverID
 Resolver ID. More...
 
typedef u32 InstrumentID
 
typedef std::size_t Tag
 
typedef int ThreadPriority
 Thread priority. More...
 

Enumerations

enum  ChannelDataEventType { cdeFeedConnected, cdeFeedDisconnected, cdeFeedFail, cdeUdpPacketProcessed }
 Channel data event type. More...
 
enum  ChannelDataControlCode { cdccContinue }
 
enum  InstrumentEventType {
  ieSubscribed, ieUnsubscribed, ieRecoveryBegin, ieRecoveryEnd,
  ieFullUpdate, ieStatusUpdate, ieThresholdLimitsUpdate, ieTradeUpdate,
  ieVolumeUpdate, iePriceBidUpdate, iePriceAskUpdate, ieImpliedPriceBidUpdate,
  ieImpliedPriceAskUpdate, ieUpdateEnd, ieQuoteRequest, ieReset
}
 Instrument event type. More...
 
enum  InstrumentRecoveryBeginReason { irbrSequenceStart, irbrSequenceGap, irbrSequenceReset }
 Recovery begin reason. More...
 
enum  InstrumentRecoveryEndReason { irerSnapshotRefresh, irerNaturalRefresh, irerSnapshotRecoveryError }
 Recovery end reason. More...
 
enum  InstrumentControlCode { iccContinue, iccStartRecovery, iccStopRecovery }
 
enum  SemanticType {
  SemanticType::ST_X, SemanticType::ST_0, SemanticType::ST_A, SemanticType::ST_5,
  SemanticType::ST_f, SemanticType::ST_R, SemanticType::ST_W, SemanticType::ST_d
}
 
enum  AggressorFlag : uint8_t { AggressorFlag::NotAggressor = 0, AggressorFlag::Aggressor = 1, AggressorFlag::NullValue = 255 }
 
enum  AggressorSide : uint8_t { AggressorSide::NoAggressor = 0, AggressorSide::Buy = 1, AggressorSide::Sell = 2, AggressorSide::NullValue = 255 }
 
enum  EventType : uint8_t { EventType::Activation = 5, EventType::LastEligibleTradeDate = 7 }
 
enum  HaltReason : uint8_t {
  HaltReason::GroupSchedule = 0, HaltReason::SurveillanceIntervention = 1, HaltReason::MarketEvent = 2, HaltReason::InstrumentActivation = 3,
  HaltReason::InstrumentExpiration = 4, HaltReason::Unknown = 5, HaltReason::RecoveryInProcess = 6, HaltReason::TradeDateRoll = 7
}
 
enum  LegSide : uint8_t { LegSide::BuySide = 1, LegSide::SellSide = 2 }
 
enum  MDEntryType : char {
  MDEntryType::Bid = '0', MDEntryType::Offer = '1', MDEntryType::Trade = '2', MDEntryType::OpenPrice = '4',
  MDEntryType::SettlementPrice = '6', MDEntryType::TradingSessionHighPrice = '7', MDEntryType::TradingSessionLowPrice = '8', MDEntryType::VWAP = '9',
  MDEntryType::ClearedVolume = 'B', MDEntryType::OpenInterest = 'C', MDEntryType::ImpliedBid = 'E', MDEntryType::ImpliedOffer = 'F',
  MDEntryType::BookReset = 'J', MDEntryType::SessionHighBid = 'N', MDEntryType::SessionLowOffer = 'O', MDEntryType::FixingPrice = 'W',
  MDEntryType::ElectronicVolume = 'e', MDEntryType::ThresholdLimitsandPriceBandVariation = 'g', MDEntryType::MarketBestOffer = 'w', MDEntryType::MarketBestBid = 'x'
}
 
enum  MDEntryTypeBook : char {
  MDEntryTypeBook::Bid = '0', MDEntryTypeBook::Offer = '1', MDEntryTypeBook::ImpliedBid = 'E', MDEntryTypeBook::ImpliedOffer = 'F',
  MDEntryTypeBook::BookReset = 'J', MDEntryTypeBook::MarketBestOffer = 'w', MDEntryTypeBook::MarketBestBid = 'x'
}
 
enum  MDEntryTypeDailyStatistics : char { MDEntryTypeDailyStatistics::SettlementPrice = '6', MDEntryTypeDailyStatistics::ClearedVolume = 'B', MDEntryTypeDailyStatistics::OpenInterest = 'C', MDEntryTypeDailyStatistics::FixingPrice = 'W' }
 
enum  MDEntryTypeStatistics : char {
  MDEntryTypeStatistics::OpenPrice = '4', MDEntryTypeStatistics::HighTrade = '7', MDEntryTypeStatistics::LowTrade = '8', MDEntryTypeStatistics::VWAP = '9',
  MDEntryTypeStatistics::HighestBid = 'N', MDEntryTypeStatistics::LowestOffer = 'O'
}
 
enum  MDUpdateAction : uint8_t {
  MDUpdateAction::New = 0, MDUpdateAction::Change = 1, MDUpdateAction::Delete = 2, MDUpdateAction::DeleteThru = 3,
  MDUpdateAction::DeleteFrom = 4, MDUpdateAction::Overlay = 5
}
 
enum  MoneyOrPar : uint8_t { MoneyOrPar::Money = 1, MoneyOrPar::Par = 2, MoneyOrPar::NullValue = 255 }
 
enum  OpenCloseSettlFlag : uint8_t {
  OpenCloseSettlFlag::DailyOpenPrice = 0, OpenCloseSettlFlag::IndicativeOpeningPrice = 5, OpenCloseSettlFlag::IntradayVWAP = 100, OpenCloseSettlFlag::RepoAverage8_30AM = 101,
  OpenCloseSettlFlag::RepoAverage10AM = 102, OpenCloseSettlFlag::PrevSessionRepoAverage10AM = 103, OpenCloseSettlFlag::NullValue = 255
}
 
enum  OrderUpdateAction : uint8_t { OrderUpdateAction::New = 0, OrderUpdateAction::Update = 1, OrderUpdateAction::Delete = 2 }
 
enum  PriceSource : uint8_t {
  PriceSource::MarketPlaceAssistant = 0, PriceSource::Globex = 1, PriceSource::Refinitiv = 2, PriceSource::ICAP = 3,
  PriceSource::NullValue = 255
}
 
enum  PutOrCall : uint8_t { PutOrCall::Put = 0, PutOrCall::Call = 1 }
 
enum  RepoSubType : uint8_t { RepoSubType::Special = 0, RepoSubType::GC = 1, RepoSubType::GCForDBV = 2 }
 
enum  SecurityAltIDSource : uint8_t { SecurityAltIDSource::CUSIP = 1, SecurityAltIDSource::ISIN = 4, SecurityAltIDSource::NullValue = 255 }
 
enum  SecurityTradingEvent : uint8_t {
  SecurityTradingEvent::NoEvent = 0, SecurityTradingEvent::NoCancel = 1, SecurityTradingEvent::ResetStatistics = 4, SecurityTradingEvent::ImpliedMatchingON = 5,
  SecurityTradingEvent::ImpliedMatchingOFF = 6, SecurityTradingEvent::EndOfWorkup = 7
}
 
enum  SecurityTradingStatus : uint8_t {
  SecurityTradingStatus::TradingHalt = 2, SecurityTradingStatus::Close = 4, SecurityTradingStatus::NewPriceIndication = 15, SecurityTradingStatus::ReadyToTrade = 17,
  SecurityTradingStatus::NotAvailableForTrading = 18, SecurityTradingStatus::UnknownorInvalid = 20, SecurityTradingStatus::PreOpen = 21, SecurityTradingStatus::PreCross = 24,
  SecurityTradingStatus::Cross = 25, SecurityTradingStatus::PostClose = 26, SecurityTradingStatus::NoChange = 103, SecurityTradingStatus::PrivateWorkup = 201,
  SecurityTradingStatus::PublicWorkup = 202, SecurityTradingStatus::NullValue = 255
}
 
enum  SecurityUpdateAction : char { SecurityUpdateAction::Add = 'A', SecurityUpdateAction::Delete = 'D', SecurityUpdateAction::Modify = 'M' }
 
enum  Side : uint8_t { Side::Buy = 1, Side::Sell = 2 }
 
enum  WorkupTradingStatus : uint8_t { WorkupTradingStatus::ReadyToTrade = 17, WorkupTradingStatus::NotAvailableForTrading = 18, WorkupTradingStatus::PrivateWorkup = 201, WorkupTradingStatus::PublicWorkup = 202 }
 
enum  InstAttribValue : uint32_t {
  InstAttribValue::ElectronicMatchEligible = (1 << 0), InstAttribValue::OrderCrossEligible = (1 << 1), InstAttribValue::BlockTradeEligible = (1 << 2), InstAttribValue::EFPEligible = (1 << 3),
  InstAttribValue::EBFEligible = (1 << 4), InstAttribValue::EFSEligible = (1 << 5), InstAttribValue::EFREligible = (1 << 6), InstAttribValue::OTCEligible = (1 << 7),
  InstAttribValue::iLinkIndicativeMassQuotingEligible = (1 << 8), InstAttribValue::NegativeStrikeEligible = (1 << 9), InstAttribValue::NegativePriceOutrightEligible = (1 << 10), InstAttribValue::IsFractional = (1 << 11),
  InstAttribValue::VolatilityQuotedOption = (1 << 12), InstAttribValue::RFQCrossEligible = (1 << 13), InstAttribValue::ZeroPriceOutrightEligible = (1 << 14), InstAttribValue::DecayingProductEligibility = (1 << 15),
  InstAttribValue::VariableProductEligibility = (1 << 16), InstAttribValue::DailyProductEligibility = (1 << 17), InstAttribValue::GTOrdersEligibility = (1 << 18), InstAttribValue::ImpliedMatchingEligibility = (1 << 19),
  InstAttribValue::TriangulationEligible = (1 << 20), InstAttribValue::VariableCabEligible = (1 << 21), InstAttribValue::InvertedBook = (1 << 22), InstAttribValue::IsAoNInstrument = (1 << 23),
  InstAttribValue::SEFRegulated = (1 << 24), InstAttribValue::MTFRegulated = (1 << 25), InstAttribValue::eFIXInstrument = (1 << 26), InstAttribValue::HedgeInstrument = (1 << 27)
}
 
enum  MatchEventIndicator : uint8_t {
  MatchEventIndicator::LastTradeMsg = (1 << 0), MatchEventIndicator::LastVolumeMsg = (1 << 1), MatchEventIndicator::LastQuoteMsg = (1 << 2), MatchEventIndicator::LastStatsMsg = (1 << 3),
  MatchEventIndicator::LastImpliedMsg = (1 << 4), MatchEventIndicator::RecoveryMsg = (1 << 5), MatchEventIndicator::Reserved = (1 << 6), MatchEventIndicator::EndOfEvent = (1 << 7)
}
 
enum  SettlPriceType : uint8_t {
  SettlPriceType::FinalDaily = (1 << 0), SettlPriceType::Actual = (1 << 1), SettlPriceType::Rounded = (1 << 2), SettlPriceType::Intraday = (1 << 3),
  SettlPriceType::ReservedBits = (1 << 4), SettlPriceType::NullValue = (1 << 7)
}
 
enum  ResolverEventType {
  reStarted, reStopped, reRecoveryBegin, reRecoveryEnd,
  reCycleBegin, reCycleEnd, reInstrumentAdded, reInstrumentModified,
  reInstrumentDeleted
}
 Resolver events type. More...
 
enum  ResolverControlCode { rccContinue }
 
enum  RecoveryType { rtSnapshotRecovery, rtNaturalSnapshotRecovery, rtNaturalRecovery }
 Recovery type. More...
 
enum  SocketType { stSystem, stAsio, stMyricomDBL, stMock }
 Socket type. More...
 
enum  DataFeedID {
  dfiInstrumentDefintionA, dfiInstrumentDefinitionB, dfiSnapshotA, dfiSnapshotB,
  dfiIncrementalA, dfiIncrementalB
}
 Data feed ID. More...
 

Functions

std::string getConfigFileName ()
 
void setConfigFileName (const std::string &fileName)
 
MarketDataServicecreateMarketDataService (const std::string &name, const MarketDataServiceOptions &options)
 
std::string messageToString (const MessageHeader &h, const char *delim="\01")
 

Variables

const InstrumentBuildOptions iboNone = 0x00000000
 
const InstrumentBuildOptions iboThresholdLimits = 0x00000001
 
const InstrumentBuildOptions iboLastTrade = 0x00000002
 
const InstrumentBuildOptions iboElectronicVolume = 0x00000004
 
const InstrumentBuildOptions iboDirectOrderBook = 0x00000008
 
const InstrumentBuildOptions iboImpliedOrderBook = 0x00000010
 
const InstrumentBuildOptions iboConsolidatedOrderBookTop = 0x00000020
 
const InstrumentBuildOptions iboTradeStatistics = 0x00000040
 
const InstrumentBuildOptions iboAll = 0xFFFFFFFF
 
const InstrumentSubscriptionMask ismNone = 0x00000000
 
const InstrumentSubscriptionMask ismFullUpdateEvents = 0x00000001
 
const InstrumentSubscriptionMask ismStatusUpdateEvents = 0x00000002
 
const InstrumentSubscriptionMask ismThresholdLimitsUpdateEvents = 0x00000004
 
const InstrumentSubscriptionMask ismTradeUpdateEvents = 0x00000008
 
const InstrumentSubscriptionMask ismVolumeUpdateEvents = 0x00000010
 
const InstrumentSubscriptionMask ismPriceUpdateEvents = 0x00000020
 
const InstrumentSubscriptionMask ismImpliedPriceUpdateEvents = 0x00000040
 
const InstrumentSubscriptionMask ismUpdateEndEvents = 0x00000080
 
const InstrumentSubscriptionMask ismQuoteRequestEvents = 0x00000100
 
const InstrumentSubscriptionMask ismConsolidatedBookTopUpdate = 0x00000200
 
const InstrumentSubscriptionMask ismMessages = 0x00000400
 
const InstrumentSubscriptionMask ismAll = 0xFFFFFFFF
 
const InstrumentSubscriptionMask ismResetEvents = 0x00000000
 
const uint16_t SCHEMA_ID = 1
 
const uint16_t SCHEMA_VERSION = 13
 
const ResolverSubscriptionMask rsmNone = 0x00000000
 
const ResolverSubscriptionMask rsmCycleEvents = 0x00000001
 
const ResolverSubscriptionMask rsmInstrumentEvents = 0x00000002
 
const ResolverSubscriptionMask rsmMessages = 0x00000004
 
const ResolverSubscriptionMask rsmAll = 0xFFFFFFFF
 
const ResolverSubscriptionMask rsmResetEvents = 0x00000000
 

Typedef Documentation

typedef char Cme::Mdp::Asset[6]
typedef char Cme::Mdp::CFICode[6]
typedef u32 Cme::Mdp::ChannelID

ID of the channel from the config.xml

typedef char Cme::Mdp::CHAR
typedef char Cme::Mdp::CountryCode[2]
typedef char Cme::Mdp::Currency[3]
typedef int8_t Cme::Mdp::InstAttribType

Instrument ID. Value of the SecurityID(48) field of the Security Definition(d) message.

typedef int16_t Cme::Mdp::Int16
typedef int32_t Cme::Mdp::Int32
typedef int8_t Cme::Mdp::Int8
typedef char Cme::Mdp::LongName[35]
typedef char Cme::Mdp::MDFeedType[3]
typedef int8_t Cme::Mdp::MDUpdateTypeNew
typedef char Cme::Mdp::QuoteReqId[23]
typedef std::string Cme::Mdp::ResolverID

Resolver ID.

typedef char Cme::Mdp::SecurityExchange[4]
typedef char Cme::Mdp::SecurityGroup[6]
typedef char Cme::Mdp::SecuritySubType[5]
typedef char Cme::Mdp::SecurityType[6]
typedef char Cme::Mdp::String12[12]
typedef char Cme::Mdp::String20[20]
typedef char Cme::Mdp::String25[25]
typedef char Cme::Mdp::String3[3]
typedef char Cme::Mdp::String5[5]
typedef char Cme::Mdp::String6[6]
typedef char Cme::Mdp::String7[7]
typedef char Cme::Mdp::String8[8]
typedef char Cme::Mdp::Symbol[20]
typedef std::size_t Cme::Mdp::Tag

Tag. Tag is an integer type of pointer size used to store user data or a pointer to user data.

typedef char Cme::Mdp::Text[180]

Thread priority.

typedef std::vector<TradeOrder> Cme::Mdp::TradeOrderVector
typedef uint16_t Cme::Mdp::UInt16
typedef uint32_t Cme::Mdp::UInt32
typedef uint64_t Cme::Mdp::UInt64
typedef uint8_t Cme::Mdp::UInt8
typedef char Cme::Mdp::UnderlyingSymbol[20]
typedef char Cme::Mdp::UnitOfMeasure[30]

Enumeration Type Documentation

enum Cme::Mdp::AggressorFlag : uint8_t
strong
Enumerator
NotAggressor 
Aggressor 
NullValue 
enum Cme::Mdp::AggressorSide : uint8_t
strong
Enumerator
NoAggressor 
Buy 
Sell 
NullValue 

Data feed ID.

Enumerator
dfiInstrumentDefintionA 
dfiInstrumentDefinitionB 
dfiSnapshotA 
dfiSnapshotB 
dfiIncrementalA 
dfiIncrementalB 
enum Cme::Mdp::EventType : uint8_t
strong
Enumerator
Activation 
LastEligibleTradeDate 
enum Cme::Mdp::HaltReason : uint8_t
strong
Enumerator
GroupSchedule 
SurveillanceIntervention 
MarketEvent 
InstrumentActivation 
InstrumentExpiration 
Unknown 
RecoveryInProcess 
TradeDateRoll 
enum Cme::Mdp::InstAttribValue : uint32_t
strong
Enumerator
ElectronicMatchEligible 
OrderCrossEligible 
BlockTradeEligible 
EFPEligible 
EBFEligible 
EFSEligible 
EFREligible 
OTCEligible 
iLinkIndicativeMassQuotingEligible 
NegativeStrikeEligible 
NegativePriceOutrightEligible 
IsFractional 
VolatilityQuotedOption 
RFQCrossEligible 
ZeroPriceOutrightEligible 
DecayingProductEligibility 
VariableProductEligibility 
DailyProductEligibility 
GTOrdersEligibility 
ImpliedMatchingEligibility 
TriangulationEligible 
VariableCabEligible 
InvertedBook 
IsAoNInstrument 
SEFRegulated 
MTFRegulated 
eFIXInstrument 
HedgeInstrument 
enum Cme::Mdp::LegSide : uint8_t
strong
Enumerator
BuySide 
SellSide 
enum Cme::Mdp::MatchEventIndicator : uint8_t
strong
Enumerator
LastTradeMsg 
LastVolumeMsg 
LastQuoteMsg 
LastStatsMsg 
LastImpliedMsg 
RecoveryMsg 
Reserved 
EndOfEvent 
enum Cme::Mdp::MDEntryType : char
strong
Enumerator
Bid 
Offer 
Trade 
OpenPrice 
SettlementPrice 
TradingSessionHighPrice 
TradingSessionLowPrice 
VWAP 
ClearedVolume 
OpenInterest 
ImpliedBid 
ImpliedOffer 
BookReset 
SessionHighBid 
SessionLowOffer 
FixingPrice 
ElectronicVolume 
ThresholdLimitsandPriceBandVariation 
MarketBestOffer 
MarketBestBid 
enum Cme::Mdp::MDEntryTypeBook : char
strong
Enumerator
Bid 
Offer 
ImpliedBid 
ImpliedOffer 
BookReset 
MarketBestOffer 
MarketBestBid 
Enumerator
SettlementPrice 
ClearedVolume 
OpenInterest 
FixingPrice 
enum Cme::Mdp::MDEntryTypeStatistics : char
strong
Enumerator
OpenPrice 
HighTrade 
LowTrade 
VWAP 
HighestBid 
LowestOffer 
enum Cme::Mdp::MDUpdateAction : uint8_t
strong
Enumerator
New 
Change 
Delete 
DeleteThru 
DeleteFrom 
Overlay 
enum Cme::Mdp::MoneyOrPar : uint8_t
strong
Enumerator
Money 
Par 
NullValue 
enum Cme::Mdp::OpenCloseSettlFlag : uint8_t
strong
Enumerator
DailyOpenPrice 
IndicativeOpeningPrice 
IntradayVWAP 
RepoAverage8_30AM 
RepoAverage10AM 
PrevSessionRepoAverage10AM 
NullValue 
enum Cme::Mdp::OrderUpdateAction : uint8_t
strong
Enumerator
New 
Update 
Delete 
enum Cme::Mdp::PriceSource : uint8_t
strong
Enumerator
MarketPlaceAssistant 
Globex 
Refinitiv 
ICAP 
NullValue 
enum Cme::Mdp::PutOrCall : uint8_t
strong
Enumerator
Put 
Call 

Recovery type.

Enumerator
rtSnapshotRecovery 

Snapshot recovery.

rtNaturalSnapshotRecovery 

Natural and snapshot combined recovery.

rtNaturalRecovery 

Natural recovery.

enum Cme::Mdp::RepoSubType : uint8_t
strong
Enumerator
Special 
GC 
GCForDBV 
enum Cme::Mdp::SecurityAltIDSource : uint8_t
strong
Enumerator
CUSIP 
ISIN 
NullValue 
enum Cme::Mdp::SecurityTradingEvent : uint8_t
strong
Enumerator
NoEvent 
NoCancel 
ResetStatistics 
ImpliedMatchingON 
ImpliedMatchingOFF 
EndOfWorkup 
enum Cme::Mdp::SecurityTradingStatus : uint8_t
strong
Enumerator
TradingHalt 
Close 
NewPriceIndication 
ReadyToTrade 
NotAvailableForTrading 
UnknownorInvalid 
PreOpen 
PreCross 
Cross 
PostClose 
NoChange 
PrivateWorkup 
PublicWorkup 
NullValue 
enum Cme::Mdp::SecurityUpdateAction : char
strong
Enumerator
Add 
Delete 
Modify 
Enumerator
ST_X 
ST_0 
ST_A 
ST_5 
ST_f 
ST_R 
ST_W 
ST_d 
enum Cme::Mdp::SettlPriceType : uint8_t
strong
Enumerator
FinalDaily 
Actual 
Rounded 
Intraday 
ReservedBits 
NullValue 
enum Cme::Mdp::Side : uint8_t
strong
Enumerator
Buy 
Sell 

Socket type.

Enumerator
stSystem 

Operating system sockets.

stAsio 

Asio sockets.

stMyricomDBL 

Myricom DBL sockets.

stMock 

Mock sockets (for testing). To replay stored data use MockPlayer class.

enum Cme::Mdp::WorkupTradingStatus : uint8_t
strong
Enumerator
ReadyToTrade 
NotAvailableForTrading 
PrivateWorkup 
PublicWorkup 

Function Documentation

MarketDataService* Cme::Mdp::createMarketDataService ( const std::string &  name,
const MarketDataServiceOptions &  options 
)

Creates a new market data service object.

Parameters
nameName of the market data service object.
optionsOptions of the market data service object.
Returns
Reference to the market data service object created. The object should be destroyed with MarketDataService::destroy() method.
std::string Cme::Mdp::getConfigFileName ( )

Returns handler config file name and path.

Returns
fileName Config file name and path.
Note
Default config file name is b2b_cme_mdp_handler.config.
std::string Cme::Mdp::messageToString ( const MessageHeader &  h,
const char *  delim = "\01" 
)
void Cme::Mdp::setConfigFileName ( const std::string &  fileName)

Sets handler config file name and path.

Parameters
fileNameConfig file name and path.
Note
Default config file name is b2b_cme_mdp_handler.config.

Variable Documentation

const uint16_t Cme::Mdp::SCHEMA_ID = 1
const uint16_t Cme::Mdp::SCHEMA_VERSION = 13