EPAM B2BITS ICE Impact Handler C++  1.1.4
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Groups Pages
Classes | Functions
Getting Market Data in User Callbacks

Classes

struct  IceImpact::ResetReason
 Reasons why instrument resets its state. More...
 
struct  IceImpact::PriceLevel
 PriceBook level. More...
 
struct  IceImpact::TOP5PriceData
 Price/size information for top 5 price levels. More...
 
struct  IceImpact::TOP10PriceData
 
struct  IceImpact::BBOData
 Best Bid/Offer data and trade statistics. More...
 
struct  IceImpact::BBOUpdateEvent
 Best Bid/Offer event. More...
 
struct  IceImpact::BBOSnapshot
 Best Bid/Offer current snapshot. More...
 
struct  IceImpact::InstrumentResetEvent
 Instrument book reset. More...
 
struct  IceImpact::InstrumentRecoveryEvent
 Instrument book recovered. More...
 
struct  IceImpact::MessageFlowResetEvent
 Message flow reset. More...
 
struct  IceImpact::MessageEvent
 Ice Impact Message delivered to user callback. More...
 

Functions

virtual void IceImpact::ApplicationListener::onMarketTypesAvail (const IceImpact::AvailMarketTypesSet &marketTypeSet)
 onMarketTypesAvail called when market types are available More...
 
virtual void IceImpact::ApplicationListener::onProductDefinitionsAvail (IceImpact::u64 requestTag, const IceImpact::RequestMarketTypesSet &requestMarketTypes, const IceImpact::ProductDirectoryPtr productDirectory)
 onProductDefinitionsAvail called when product definitions requests is completed More...
 
virtual void IceImpact::ApplicationListener::onBBO (const IceImpact::BBOUpdateEvent &ev)
 
virtual void IceImpact::ApplicationListener::onMessage (const IceImpact::MessageEvent &event, bool isLastMessageInBlock)
 
virtual void IceImpact::ApplicationListener::onInstrumentReset (const IceImpact::InstrumentResetEvent &ev)
 
virtual void IceImpact::ApplicationListener::onInstrumentRecovered (const IceImpact::InstrumentRecoveryEvent &ev)
 
virtual void IceImpact::ApplicationListener::onMessageFlowReset (const IceImpact::MessageFlowResetEvent &ev)
 
virtual void IceImpact::ApplicationListener::onServiceNotification (const std::string &channelId, IceImpact::BookDepth bookDepth, IceImpact::Notification::Type type)
 onServiceNotification user callback is called when there's service state change. This event is informational. More...
 

Detailed Description

Function Documentation

virtual void IceImpact::ApplicationListener::onBBO ( const IceImpact::BBOUpdateEvent ev)
inlinevirtual

onBBO user callback is called when top of the book entry is updated for subscribed instrument. An update is triggered whenever the changes in Bid/Ask/Low/High/Open/Settlement fields happen (note, changes in Last Trade price/size are just piggy backed with other updates). onBBO() callback is called in the context of a thread from internally managed set of threads. The updates from particular multicast channel are lined up and delivered sequentially keeping the designated cpu core affined to UDP data flow.

Parameters
evBBOUpdateEvent
virtual void IceImpact::ApplicationListener::onInstrumentRecovered ( const IceImpact::InstrumentRecoveryEvent ev)
inlinevirtual

onInstrumentRecovered user callback is called to inform that the order book of particular instrument is recovered from Snapshot.

Parameters
ev- InstrumentRecoveryEvent
virtual void IceImpact::ApplicationListener::onInstrumentReset ( const IceImpact::InstrumentResetEvent ev)
inlinevirtual

onInstrumentReset user callback is called to inform that the order book of particular instrument is to be cleared. If the user does not build their own order books, this event can be skipped.

Parameters
ev- InstrumentResetEvent
virtual void IceImpact::ApplicationListener::onMarketTypesAvail ( const IceImpact::AvailMarketTypesSet marketTypeSet)
inlinevirtual

onMarketTypesAvail called when market types are available

Parameters
marketTypeSeta set of market types available.
virtual void IceImpact::ApplicationListener::onMessage ( const IceImpact::MessageEvent event,
bool  isLastMessageInBlock 
)
inlinevirtual

onMessage user callback is called when new message is received for subscribed instrument onMessage callback is called in the context of a thread from internally managed set of threads. The updates from particular multicast channel are lined up and delivered sequentially keeping the designated cpu core affined to UDP data flow.

Parameters
eventMessageEvent
isLastMessageInBlock- specifies whether the received message will be the last one and no more messages from the current UDP packet will be delivered Use MessageEvent::eventFlowId field to identify previous onMessage events.
See Also
MessageEvent::eventFlowId
virtual void IceImpact::ApplicationListener::onMessageFlowReset ( const IceImpact::MessageFlowResetEvent ev)
inlinevirtual

This user callback is called to inform that the message flow on a UDP channel is broken and is restarted. It usually happens after the seqnuence number loss and recovery. The user code which depends on particular sequence of ICE messages should reset its state (e.g. MessageBundleMarker messages, isLastMessageinBlock indicators) The eventFlowId member of the event indicates the event flow which is affected. The value is correlated with eventFlowId of MessageEvent and BBOUpdateEvent.

Parameters
ev- MessageFlowResetEvent
virtual void IceImpact::ApplicationListener::onProductDefinitionsAvail ( IceImpact::u64  requestTag,
const IceImpact::RequestMarketTypesSet requestMarketTypes,
const IceImpact::ProductDirectoryPtr  productDirectory 
)
inlinevirtual

onProductDefinitionsAvail called when product definitions requests is completed

Parameters
requestTagrequest tag that was passed to request function
requestMarketTypesmarket types that were requested excluding those which were not actually found at ICE.
productDirectoryproduct directory that contains product definitions data.
virtual void IceImpact::ApplicationListener::onServiceNotification ( const std::string &  channelId,
IceImpact::BookDepth  bookDepth,
IceImpact::Notification::Type  type 
)
inlinevirtual

onServiceNotification user callback is called when there's service state change. This event is informational.

Parameters
channelIdId of the channel, corresponds to <multicastGroup name="the name"> in XML file
bookDepthdepth of book
type