OnixS Euronext CCG Binary Trading Handler for C++  1.16.0.0
Public Member Functions | Static Public Member Functions
Handler Class Reference

Provites a trading interface to the NYSE Euronext Common Customer Gateway (CCG). More...

List of all members.

Public Member Functions

 Handler (const char *licenseDirectory=".", LogLevel::Enum logLevel=LogLevel::Debug, LogSettings::Enum logSettings=LogSettings::Default, const char *logDir="logs", const char *logFileNamePrefix="EuronextCcgHandlerCpp")
 Constructor.
 Handler (const HandlerSettings &settings)
 Constructor.
 ~Handler ()
 Destructor (no virtual behaviour)
UInt32 uniqueId () const
 Unique identifier of this handler.
void connect (const char *hostName, UInt16 port, const char *senderSubId, const char *senderCompId, SequenceNumber lastSequenceNumber=-1, UInt16 heartbeatInterval=30, bool cancelOnDisconnect=false)
 Establishes the connection.
void disconnect ()
 Force session disconnect.
HandlerState::Enum state () const
 Get connection state.
void localNetworkInterface (const char *value)
 Set network interface.
const char * localNetworkInterface () const
 Get network interface.
void throttleLimit (UInt32 itemsPerSecond)
 Set throttle limit.
UInt32 throttleLimit () const
 Get throttle limit.
SequenceNumber lastSendSequenceNumber () const
 Get last sent message sequence number.
SequenceNumber lastReceiveSequenceNumber () const
 Get last received message sequence number.
SequenceNumber send (const RequestWrapper &request)
 Send universal request.
SequenceNumber send (const Logon &request)
 Send logon (delegate to connect method).
SequenceNumber send (const Logout &request)
 Send logout (delegate to disconnect method).
SequenceNumber send (const NewOrderSingle &request)
 Post new order.
SequenceNumber send (const NewOrderList &request)
 Post new mass order.
SequenceNumber send (const NewOrderCross &request)
 Post new cross order.
SequenceNumber send (const OrderCancelRequest &request)
 Delete order.
SequenceNumber send (const OrderMassCancelRequest &request)
 Delete list of orders.
SequenceNumber send (const QuoteRequest &request)
 Post quote.
SequenceNumber send (const MassQuote &request)
 Post mass quote.
SequenceNumber send (const OrderRevisionRequest &request)
 Modification of order.
SequenceNumber send (const OrderRevisionList &request)
 Modification of orders.
SequenceNumber send (const OrderCancelList &request)
 Cancel previously submitted orders.
SequenceNumber send (const OrderMassStatusRequest &request)
 Request status of order.
SequenceNumber send (const SecurityDefinitionRequest &request)
 Define new strategy market.
SequenceNumber send (const StockOrderRoutingRequest &request)
 Route stock order.
SequenceNumber send (const MMConfigurationStatusRequest &request)
 Configure Market Maker configuration.
SequenceNumber send (const SetMMProtection &request)
 Set Market Maker protection.
SequenceNumber send (const AdjustMMPosition &request)
 Adjust Market Maker position.
SequenceNumber send (const GetMMProtectionStatus &request)
 Get Market Maker protection status.
void registerListener (IHandlerStateListener &listener)
 Register handler state listener.
void unregisterListener (IHandlerStateListener &listener)
 Unregister handler state listener.
void registerListener (ISessionListener &listener)
 Register session listener.
void unregisterListener (ISessionListener &listener)
 Unregister session listener.
void registerListener (IExchangeListener &listener)
 Register Exchange listener.
void unregisterListener (IExchangeListener &listener)
 Unregister Exchange listener.
void registerListener (IMarketMakersListener &listener)
 Register Market Makers listener.
void unregisterListener (IMarketMakersListener &listener)
 Unregister Market Makers listener.
void registerListener (ILogListener &listener)
 Register log messages listener.
void unregisterListener (ILogListener &listener)
 Unregister log messages listener.
void unregisterAllListeners ()
 Unregister all listeners.
const char * licenseExpirationDate () const
 Get the license expiration date.

Static Public Member Functions

static const char * version ()
 Version of handler.

Detailed Description

Provites a trading interface to the NYSE Euronext Common Customer Gateway (CCG).


Constructor & Destructor Documentation

Handler ( const char *  licenseDirectory = ".",
LogLevel::Enum  logLevel = LogLevel::Debug,
LogSettings::Enum  logSettings = LogSettings::Default,
const char *  logDir = "logs",
const char *  logFileNamePrefix = "EuronextCcgHandlerCpp" 
)

Constructor.

Parameters:
licenseDirectoryPath to directory with handler license
logLevelLevel of log detail
logSettingsConfiguration of log output
logDirPath to directory where Handler stores log files
logFileNamePrefixPrefix for the log file
Exceptions:
ArgumentExceptionIf logLevel or logSettings not valid
OperationExceptionLicense expired.
OperationExceptionLicense not available.
OperationExceptionUnknown license status.
OperationExceptionNo license information available.
Handler ( const HandlerSettings settings)

Constructor.

Parameters:
settingsHandler's configuration settings.
Exceptions:
ArgumentExceptionIf logLevel or logSettings not valid
OperationExceptionLicense expired.
OperationExceptionLicense not available.
OperationExceptionUnknown license status.
OperationExceptionNo license information available.

Member Function Documentation

void connect ( const char *  hostName,
UInt16  port,
const char *  senderSubId,
const char *  senderCompId,
SequenceNumber  lastSequenceNumber = -1,
UInt16  heartbeatInterval = 30,
bool  cancelOnDisconnect = false 
)

Establishes the connection.

Note:
Blocks until the logon reply is received.
Should be called only when Handler is disconnected.
Parameters:
hostNameHostname to connect to.
portPort number to connect to.
senderSubIdIndicates the name of the member institution and describes a legal entity.
senderCompIdThe unique identifier of a Trading Session provided by Exchange to a certain member.
lastSequenceNumberIndicates the sequence number of the message that was last processed by the server. See "Logon (A) session message" for details.
heartbeatIntervalSpecifies the heartbeat interval in seconds (min value - 0, max - 65536).
cancelOnDisconnectIf this param is set then it will mean that a mass cancellation of non-GTC orders, will be triggered on any type of logoff (ie logoff request, disconnection on failure, forced disconnection).
Exceptions:
std::exceptionCannot set the local network interface.
std::exceptionCannot connect to hostname on port.
std::exceptionCannot configure size of receive buffer for the socket.
std::exceptionCannot configure size of send buffer for the socket.
OperationExceptionInvalid agrument is given.
LogonRejectedExceptionAfter sending Logon (A) Logon Reject (L) received.
void disconnect ( )

Force session disconnect.

Note:
Blocks until the Session Logout procedure is finished.
const char* licenseExpirationDate ( ) const

Get the license expiration date.

Returns:
License expiration date.
void localNetworkInterface ( const char *  value)

Set network interface.

Parameters:
valueSpecifies the local network interface from which you intend to send and receive data.
Exceptions:
NullArgumentExceptionInvalid agrument is given.
const char* localNetworkInterface ( ) const

Get network interface.

Returns:
Network interface for TCP connection.
void registerListener ( IHandlerStateListener listener)

Register handler state listener.

Note:
Blocks until the complete listener registration.
Parameters:
listenerSee IHandlerStateListener for details.
void registerListener ( ISessionListener listener)

Register session listener.

Note:
Blocks until the complete listener registration.
Parameters:
listenerSee ISessionListener for details.
void registerListener ( IExchangeListener listener)

Register Exchange listener.

Note:
Blocks until the complete listener registration.
Parameters:
listenerSee IExchangeListener for details.
void registerListener ( IMarketMakersListener listener)

Register Market Makers listener.

Note:
Blocks until the complete listener registration.
Parameters:
listenerSee IMarketMakersListener for details.
void registerListener ( ILogListener listener)

Register log messages listener.

Note:
Blocks until the complete listener registration.
Parameters:
listenerSee ILogListener for details.
SequenceNumber send ( const NewOrderCross request)

Post new cross order.

Parameters:
requestSee NewOrderCross for details.
Exceptions:
OperationExceptionNetwork send data error.
SequenceNumber send ( const GetMMProtectionStatus request)

Get Market Maker protection status.

Parameters:
requestSee GetMMProtectionStatus for details.
Exceptions:
OperationExceptionNetwork send data error.
SequenceNumber send ( const AdjustMMPosition request)

Adjust Market Maker position.

Parameters:
requestSee AdjustMMPosition for details.
Exceptions:
OperationExceptionNetwork send data error.
SequenceNumber send ( const SetMMProtection request)

Set Market Maker protection.

Parameters:
requestSee SetMMProtection for details.
Exceptions:
OperationExceptionNetwork send data error.
SequenceNumber send ( const NewOrderList request)

Post new mass order.

Parameters:
requestSee NewOrderList for details.
Exceptions:
OperationExceptionNetwork send data error.
SequenceNumber send ( const StockOrderRoutingRequest request)

Route stock order.

Parameters:
requestSee StockOrderRoutingRequest for details.
Exceptions:
OperationExceptionNetwork send data error.
SequenceNumber send ( const SecurityDefinitionRequest request)

Define new strategy market.

Parameters:
requestSee SecurityDefinitionRequest for details.
Exceptions:
OperationExceptionNetwork send data error.
SequenceNumber send ( const OrderMassStatusRequest request)

Request status of order.

Parameters:
requestSee OrderMassStatusRequest for details.
Exceptions:
OperationExceptionNetwork send data error.
SequenceNumber send ( const OrderCancelRequest request)

Delete order.

Parameters:
requestSee OrderCancelRequest for details.
Exceptions:
OperationExceptionNetwork send data error.
SequenceNumber send ( const OrderRevisionList request)

Modification of orders.

Parameters:
requestSee OrderRevisionRequest for details.
Exceptions:
OperationExceptionNetwork send data error.
SequenceNumber send ( const QuoteRequest request)

Post quote.

Parameters:
requestSee QuoteRequest for details.
Exceptions:
OperationExceptionNetwork send data error.
SequenceNumber send ( const MassQuote request)

Post mass quote.

Parameters:
requestSee MassQuote for details.
Exceptions:
OperationExceptionNetwork send data error.
SequenceNumber send ( const OrderRevisionRequest request)

Modification of order.

Parameters:
requestSee OrderRevisionRequest for details.
Exceptions:
OperationExceptionNetwork send data error.
SequenceNumber send ( const OrderMassCancelRequest request)

Delete list of orders.

Parameters:
requestSee OrderMassCancelRequest for details.
Exceptions:
OperationExceptionNetwork send data error.
SequenceNumber send ( const RequestWrapper request)

Send universal request.

Parameters:
requestSee RequestWrapper for details.
SequenceNumber send ( const OrderCancelList request)

Cancel previously submitted orders.

Parameters:
requestSee OrderCancelList for details.
Exceptions:
OperationExceptionNetwork send data error.
SequenceNumber send ( const Logon request)

Send logon (delegate to connect method).

Parameters:
requestSee Logon for details.
Exceptions:
OperationExceptionInvalid agrument is given.
std::exceptionCannot set the local network interface.
std::exceptionCannot connect to hostname on port.
std::exceptionCannot configure size of receive buffer for the socket.
std::exceptionCannot configure size of send buffer for the socket.
SequenceNumber send ( const NewOrderSingle request)

Post new order.

Parameters:
requestSee NewOrderSingle for details.
Exceptions:
OperationExceptionNetwork send data error.
SequenceNumber send ( const Logout request)

Send logout (delegate to disconnect method).

Parameters:
requestSee Logout for details.
SequenceNumber send ( const MMConfigurationStatusRequest request)

Configure Market Maker configuration.

Parameters:
requestSee StockOrderRoutingRequest for details.
Exceptions:
OperationExceptionNetwork send data error.
HandlerState::Enum state ( ) const

Get connection state.

Returns:
Handler state.
void throttleLimit ( UInt32  itemsPerSecond)

Set throttle limit.

Parameters:
itemsPerSecondMaximum number of outgoing orders (0 - no throttle limit)
void unregisterAllListeners ( )

Unregister all listeners.

Note:
Blocks until the complete listeners unregistration.
void unregisterListener ( ILogListener listener)

Unregister log messages listener.

Note:
Blocks until the complete listener unregistration.
Parameters:
listenerSee ILogListener for details.
void unregisterListener ( IExchangeListener listener)

Unregister Exchange listener.

Note:
Blocks until the complete listener unregistration.
Parameters:
listenerSee IExchangeListener for details.
void unregisterListener ( IMarketMakersListener listener)

Unregister Market Makers listener.

Note:
Blocks until the complete listener unregistration.
Parameters:
listenerSee IMarketMakersListener for details.
void unregisterListener ( ISessionListener listener)

Unregister session listener.

Note:
Blocks until the complete listener unregistration.
Parameters:
listenerSee ISessionListener for details.
void unregisterListener ( IHandlerStateListener listener)

Unregister handler state listener.

Note:
Blocks until the complete listener unregistration.
Parameters:
listenerSee IHandlerStateListener for details.