OnixS Eurex ETI Handler C++ library 9.25.0
Users' manual and API documentation
Loading...
Searching...
No Matches
Events in the Handler

Messages and Events

Once the Handler is started, it listens to messages from the Eurex ETI 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 Handler provides an interface (C++ class with pure virtual members) like OnixS::Eurex::Trading::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::Eurex::Trading::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::Eurex::Trading::Handler class.

Note
Associating listener for a particular event with an instance of the OnixS::Eurex::Trading::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::Eurex::Trading::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 LogonResponse received or Reject received. 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.

Administrative Events

The table below describes Administrative events exposed by the Handler, as well as depicts correspondence between events (messages received) and the methods to be implemented in your listener class (derived from OnixS::Eurex::Trading::AdminListener):

Event/Message Listener's Method
HeartbeatNotification onHeartbeatNotification
LogonResponse onLogonResponse
ForcedUserLogoutNotification onForcedUserLogoutNotification
UserLoginResponse onUserLoginResponse
UserLogoutResponse onUserLogoutResponse
SubscribeResponse onSubscribeResponse
UnsubscribeResponse onUnsubscribeResponse
RetransmitResponse onRetransmitResponse
RetransmitMEMessageResponse onRetransmitMEMessageResponse
Reject onReject
InquireSessionListResponse onInquireSessionListResponse
InquireEnrichmentRuleIdListResponse onInquireEnrichmentRuleIdListResponse
InquireUserResponse onInquireUserResponse
PingResponse onPingResponse

To register your listener use the OnixS::Eurex::Trading::Handler::registerAdminListener method of Handler.

Strategy Creation Events

The table below describes Strategy Creation events exposed by the Handler, as well as depicts correspondence between events (messages received) and the methods to be implemented in your listener class (derived from OnixS::Eurex::Trading::StrategyCreationListener):

Event/Message Listener's Method
AddComplexInstrumentResponse onAddComplexInstrumentResponse
AddFlexibleInstrumentResponse onAddFlexibleInstrumentResponse
AddScaledSimpleInstrumentResponse onAddScaledSimpleInstrumentResponse

To register your listener use the OnixS::Eurex::Trading::Handler::registerStrategyCreationListener method of Handler.

Order Handling Events

The table below describes Order Handling events exposed by the Handler, as well as depicts correspondence between events (messages received) and the methods to be implemented in your listener class (derived from OnixS::Eurex::Trading::OrderHandlingListener):

Event/Message Listener's Method
NewOrderNRResponse onNewOrderNRResponse
OrderExecResponse onOrderExecResponse
OrderExecNotification onOrderExecNotification
ModifyOrderResponse onModifyOrderResponse
ModifyOrderNRResponse onModifyOrderNRResponse
DeleteOrderResponse onDeleteOrderResponse
DeleteOrderNRResponse onDeleteOrderNRResponse
DeleteOrderBroadcast onDeleteOrderBroadcast
DeleteAllOrderResponse onDeleteAllOrderResponse
DeleteAllOrderNRResponse onDeleteAllOrderNRResponse
DeleteAllOrderBroadcast onDeleteAllOrderBroadcast
DeleteAllOrderQuoteEventBroadcast onDeleteAllOrderQuoteEventBroadcast
OrderExecReportBroadcast onOrderExecReportBroadcast
MassOrderAck onMassOrderAck

To register your listener use the OnixS::Eurex::Trading::Handler::registerOrderHandlingListener method of Handler.

Quote And Cross Request Events

The table below describes Quote And Cross Request events exposed by the Handler, as well as depicts correspondence between events (messages received) and the methods to be implemented in your listener class (derived from OnixS::Eurex::Trading::QuoteAndCrossRequestListener):

Event/Message Listener's Method
RFQResponse onRFQResponse
CrossRequestResponse onCrossRequestResponse

To register your listener use the OnixS::Eurex::Trading::Handler::registerQuoteAndCrossRequestListener method of Handler.

Quote Handling Events

The table below describes Quote Handling events exposed by the Handler, as well as depicts correspondence between events (messages received) and the methods to be implemented in your listener class (derived from OnixS::Eurex::Trading::QuoteHandlingListener):

Event/Message Listener's Method
MassQuoteResponse onMassQuoteResponse
QuoteExecutionReport onQuoteExecutionReport
DeleteAllQuoteResponse onDeleteAllQuoteResponse
DeleteAllQuoteBroadcast onDeleteAllQuoteBroadcast
QuoteActivationResponse onQuoteActivationResponse
QuoteActivationNotification onQuoteActivationNotification
InquireMMParameterResponse onInquireMMParameterResponse
MMParameterDefinitionResponse onMMParameterDefinitionResponse

To register your listener use the OnixS::Eurex::Trading::Handler::registerQuoteHandlingListener method of Handler.

Info Events

The table below describes Info events exposed by the Handler, as well as depicts correspondence between events (messages received) and the methods to be implemented in your listener class (derived from OnixS::Eurex::Trading::InfoListener):

Event/Message Listener's Method
BroadcastErrorNotification onBroadcastErrorNotification
LegalNotificationBroadcast onLegalNotificationBroadcast
NewsBroadcast onNewsBroadcast
PartyActionReport onPartyActionReport
PreTradeRiskLimitResponse onPreTradeRiskLimitResponse
RiskNotificationBroadcast onRiskNotificationBroadcast
ServiceAvailabilityBroadcast onServiceAvailabilityBroadcast
ServiceAvailabilityMarketBroadcast onServiceAvailabilityMarketBroadcast
StatusBroadcast onStatusBroadcast
TMTradingSessionStatusBroadcast onTMTradingSessionStatusBroadcast
TradeBroadcast onTradeBroadcast
TradingSessionStatusBroadcast onTradingSessionStatusBroadcast
InquireMarginBasedRiskLimitResponse onInquireMarginBasedRiskLimitResponse
UpdateRemainingRiskAllowanceBaseResponse onUpdateRemainingRiskAllowanceBaseResponse
PartyEntitlementsUpdateReport onPartyEntitlementsUpdateReport

To register your listener use the OnixS::Eurex::Trading::Handler::registerInfoListener method of Handler.

TES Events

The table below describes TES events exposed by the Handler, as well as depicts correspondence between events (messages received) and the methods to be implemented in your listener class (derived from OnixS::Eurex::Trading::TESListener):

Event/Message Listener's Method
TESApproveBroadcast onTESApproveBroadcast
TESBroadcast onTESBroadcast
TESDeleteBroadcast onTESDeleteBroadcast
TESExecutionBroadcast onTESExecutionBroadcast
TESResponse onTESResponse
TESTradeBroadcast onTESTradeBroadcast
TESTradingSessionStatusBroadcast onTESTradingSessionStatusBroadcast
TESUploadBroadcast onTESUploadBroadcast
TESReversalBroadcast onTESReversalBroadcast

To register your listener use the OnixS::Eurex::Trading::Handler::registerTESListener method of Handler.

SRQS Events

The table below describes SRQS events exposed by the Handler, as well as depicts correspondence between events (messages received) and the methods to be implemented in your listener class (derived from OnixS::Eurex::Trading::SRQSListener):

Event/Message Listener's Method
SRQSCreateDealNotification onSRQSCreateDealNotification
SRQSDealNotification onSRQSDealNotification
SRQSDealResponse onSRQSDealResponse
SRQSInquireSmartRespondentResponse onSRQSInquireSmartRespondentResponse
SRQSNegotiationNotification onSRQSNegotiationNotification
SRQSNegotiationRequesterNotification onSRQSNegotiationRequesterNotification
SRQSNegotiationStatusNotification onSRQSNegotiationStatusNotification
SRQSOpenNegotiationNotification onSRQSOpenNegotiationNotification
SRQSOpenNegotiationRequesterNotification onSRQSOpenNegotiationRequesterNotification
SRQSQuoteNotification onSRQSQuoteNotification
SRQSQuoteResponse onSRQSQuoteResponse
SRQSQuoteSnapshotNotification onSRQSQuoteSnapshotNotification
SRQSResponse onSRQSResponse
SRQSStatusBroadcast onSRQSStatusBroadcast

To register your listener use the OnixS::Eurex::Trading::Handler::registerSRQSListener method of Handler.

CLIP Events

The table below describes CLIP events exposed by the Handler, as well as depicts correspondence between events (messages received) and the methods to be implemented in your listener class (derived from OnixS::Eurex::Trading::CLIPListener):

Event/Message Listener's Method
CLIPDeletionNotification onCLIPDeletionNotification
CLIPExecutionNotification onCLIPExecutionNotification
CLIPResponse onCLIPResponse

To register your listener use the OnixS::Eurex::Trading::Handler::registerCLIPListener method of Handler.

Basket Events

The table below describes Basket events exposed by the Handler, as well as depicts correspondence between events (messages received) and the methods to be implemented in your listener class (derived from OnixS::Eurex::Trading::BasketListener):

Event/Message Listener's Method
BasketApproveBroadcast onBasketApproveBroadcast
BasketBroadcast onBasketBroadcast
BasketDeleteBroadcast onBasketDeleteBroadcast
BasketExecutionBroadcast onBasketExecutionBroadcast
BasketResponse onBasketResponse
BasketRollBroadcast onBasketRollBroadcast

To register your listener use the OnixS::Eurex::Trading::Handler::registerBasketListener method of Handler.