OnixS Borsa Italiana IDEM SOLA HSVF Market Data Handler for C++  1.1.2.0
Listening to incoming messages

Events in the Handler

Once the Handler is started, it listens to a messages from the IDEM SOLA HSVF message flow, processes it and invokes client code for further processing.

The Handler processes messages asynchronously and uses concept of events and event listeners to notify client code about a particular occasion like reception of record.

Listening for a particular Event

For each event like Error Occurred or Handler State Changed Handler provides an interface (C++ class with pure virtual members) like OnixS::IDEM::SOLA::HSVF::MarketData::ErrorListener. Client code must implement this interface (C++ class) to be able to handle events of a particular type. Handler also exposes a member like OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerErrorListener which allows to associate an instance of the event handler with a appropriate event in bounds of a particular instance of the OnixS::IDEM::SOLA::HSVF::MarketData::Handler class.

Note
Associating listener for a particular event with an instance of the OnixS::IDEM::SOLA::HSVF::MarketData::Handler class must be performed while the Handler is in disconnected state. Once the Handler is started, changing listener-event associations is not allowed and may lead to unpredictable behavior as well as may cause unexpected errors.

Associating event listener with an instance of the OnixS::IDEM::SOLA::HSVF::MarketData::Handler class is also called subscribing to an event.

Primary High-level Events

There're multiple events exposed by the Handler. All events can be logically divided onto high- and low- level event sub-set. High-level events reflect various results of message processing done by the Handler like session events Handler state changed or Order Book updated. Low-level events are designed for more control over data processing as well for more flexibility and described in different section of this documentation including Advanced Programming section.

Error and Warning events

Below table describes Error and Warning events exposed by the Handler as well as depicts correspondence between events, interfaces for listeners and the Handler's members to subscribe to an event:

Event Listener (C++ class) to be implemented Handler's member to register listener Description
Error occured OnixS::IDEM::SOLA::HSVF::MarketData::ErrorListener::onError OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerErrorListener Occurs when error is detected.
Warning occured OnixS::IDEM::SOLA::HSVF::MarketData::WarningListener::onWarning OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerWarningListener Occurs when warning is detected.

For more details please see Error Handling and Warning handling sections.

Handler state changed events

Below table describes Handler state changed events exposed by the Handler as well as depicts correspondence between events, interfaces for listeners and the Handler's members to subscribe to an event:

Event Listener (C++ class) to be implemented Handler's member to register listener Description
Error occured OnixS::IDEM::SOLA::HSVF::MarketData::HandlerStateListener::onStateChanged OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerHandlerStateListener Occurs when Handler state changed.

For more details please see Understanding Handler States section.

Session events

Below table describes session events exposed by the Handler as well as depicts correspondence between events, interfaces for listeners and the Handler's members to subscribe to an event:

Event Listener (C++ class) to be implemented Handler's member to register listener Description
Message sending OnixS::IDEM::SOLA::HSVF::MarketData::SessionListener::onMessageSending OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerSessionListener Occurs just before Handler send message.
Bytes received OnixS::IDEM::SOLA::HSVF::MarketData::SessionListener::onReceivedBytes OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerSessionListener Occurs just after Handler received bytes.

Log-replay events

Below table describes log-replay events exposed by the Handler as well as depicts correspondence between events, interfaces for listeners and the Handler's members to subscribe to an event:

Event Listener (C++ class) to be implemented Handler's member to register listener Description
Log-replay error detected OnixS::IDEM::SOLA::HSVF::MarketData::ReplayListener::onReplayError OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerReplayListener Occurs when an error detected during replaying log files.
Log-replay finished OnixS::IDEM::SOLA::HSVF::MarketData::ReplayListener::onReplayFinished OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerReplayListener Occurs when replay finished.

Order Book events

Below table describes order book events exposed by the Handler as well as depicts correspondence between events, interfaces for listeners and the Handler's members to subscribe to an event:

Event Listener (C++ class) to be implemented Handler's member to register listener Description
Begin of order book update OnixS::IDEM::SOLA::HSVF::MarketData::OrderBookChangeListener::onBeginUpdate OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerOrderBookChangeListener Occurs when update of order book started.
End of order book update OnixS::IDEM::SOLA::HSVF::MarketData::OrderBookChangeListener::onEndUpdate OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerOrderBookChangeListener Occurs when update of order book finished.
Price level added OnixS::IDEM::SOLA::HSVF::MarketData::OrderBookChangeListener::onPriceLevelAdded OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerOrderBookChangeListener Occurs when price level added.
Price level changed OnixS::IDEM::SOLA::HSVF::MarketData::OrderBookChangeListener::onPriceLevelChanged OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerOrderBookChangeListener Occurs when price level changed.
Price level removed OnixS::IDEM::SOLA::HSVF::MarketData::OrderBookChangeListener::onPriceLevelRemoved OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerOrderBookChangeListener Occurs when price level removed.
Order book updated OnixS::IDEM::SOLA::HSVF::MarketData::OrderBookUpdateListener::onOrderBookUpdated OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerOrderBookUpdateListener Occurs when order book already updated.
Implied price level changed OnixS::IDEM::SOLA::HSVF::MarketData::ImpliedPriceLevelListener::onImpliedPriceLevelChanged OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerImpliedPriceLevelListener Occurs when calculated implied best limit changed.

Message events

Below table describes Message events exposed by the Handler as well as depicts correspondence between events, interfaces for listeners and the Handler's members to subscribe to an event:

Event Listener (C++ class) to be implemented Handler's member to register listener Description
OptionTrade received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onOptionTrade OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when OptionTrade message is received.
FuturesTrade received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onFuturesTrade OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when FuturesTrade message is received.
StrategyTrade received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onStrategyTrade OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when StrategyTrade message is received.
OptionRequestForQuote received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onOptionRequestForQuote OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when OptionRequestForQuote message is received.
FuturesRequestForQuote received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onFuturesRequestForQuote OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when FuturesRequestForQuote message is received.
StrategyRequestForQuote received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onStrategyRequestForQuote OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when StrategyRequestForQuote message is received.
InstrumentScheduleNoticeOption received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onInstrumentScheduleNoticeOption OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when InstrumentScheduleNoticeOption message is received.
InstrumentScheduleNoticeFuturesOption received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onInstrumentScheduleNoticeFuturesOption OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when InstrumentScheduleNoticeFuturesOption message is received.
InstrumentScheduleNoticeFuture received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onInstrumentScheduleNoticeFuture OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when InstrumentScheduleNoticeFuture message is received.
InstrumentScheduleNoticeStrategy received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onInstrumentScheduleNoticeStrategy OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when InstrumentScheduleNoticeStrategy message is received.
OptionQuote received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onOptionQuote OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when OptionQuote message is received.
FuturesQuote received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onFuturesQuote OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when FuturesQuote message is received.
StrategyQuote received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onStrategyQuote OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when StrategyQuote message is received.
GroupStatus received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onGroupStatus OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when GroupStatus message is received.
GroupStatusStrategies received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onGroupStatusStrategies OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when GroupStatusStrategies message is received.
GroupStatusScheduleNotice received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onGroupStatusScheduleNotice OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when GroupStatusScheduleNotice message is received.
OptionMarketDepth received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onOptionMarketDepth OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when OptionMarketDepth message is received.
FuturesMarketDepth received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onFuturesMarketDepth OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when FuturesMarketDepth message is received.
StrategyMarketDepth received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onStrategyMarketDepth OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when StrategyMarketDepth message is received.
OptionTradeCancellation received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onOptionTradeCancellation OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when OptionTradeCancellation message is received.
FuturesTradeCancellation received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onFuturesTradeCancellation OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when FuturesTradeCancellation message is received.
StrategyTradeCancellation received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onStrategyTradeCancellation OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when StrategyTradeCancellation message is received.
OptionInstrumentKeys received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onOptionInstrumentKeys OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when OptionInstrumentKeys message is received.
FuturesInstrumentKeys received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onFuturesInstrumentKeys OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when FuturesInstrumentKeys message is received.
StrategyInstrumentKeys received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onStrategyInstrumentKeys OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when StrategyInstrumentKeys message is received.
Bulletins received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onBulletins OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when Bulletins message is received.
OptionSummary received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onOptionSummary OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when OptionSummary message is received.
FuturesSummary received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onFuturesSummary OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when FuturesSummary message is received.
StrategySummary received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onStrategySummary OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when StrategySummary message is received.
BeginningOfOptionsSummary received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onBeginningOfOptionsSummary OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when BeginningOfOptionsSummary message is received.
BeginningOfFuturesOptionsSummary received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onBeginningOfFuturesOptionsSummary OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when BeginningOfFuturesOptionsSummary message is received.
BeginningOfFuturesSummary received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onBeginningOfFuturesSummary OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when BeginningOfFuturesSummary message is received.
BeginningOfStrategySummary received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onBeginningOfStrategySummary OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when BeginningOfStrategySummary message is received.
EndOfSales received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onEndOfSales OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when EndOfSales message is received.
EndOfTransmission received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onEndOfTransmission OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when EndOfTransmission message is received.
CircuitAssurance received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onCircuitAssurance OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when CircuitAssurance message is received.
GapSequence received OnixS::IDEM::SOLA::HSVF::MarketData::MessageListener::onGapSequence OnixS::IDEM::SOLA::HSVF::MarketData::Handler::registerMessageListener Occurs when GapSequence message is received.