DropCopy



The Drop Copy 4.0 service allows customers to receive real-time copies of CME Globex Execution Report and Acknowledgment messages as they are sent over iLink order entry system sessions. DropCopy is a minimalist macOS app that offers you the possibility to send files and folders to other computers in your LAN via a simple drag and drop. Moreover, the DropCopy utility stays on your desktop, quickly displays the list of available workstations, and takes care of the transfer with minimal user interaction. Dropcopy provides real time access to pricing data from several cryptocurrency exchanges as well as our own quantitative data in a single API. We provide access to real time data from several crypto currency exchanges using websockets. You no longer have to put up with the cumbersome task of connecting to exchanges. Tag Field Type Notes; 9001: CancelOnDisconnect: Boolean: Used in Logon to enable or disable session-level cancel on disconnect.: 9002: MDEntryMakerSide: Char: Used in Market Data - Incremental Refresh MDEntry groups when MDEntryType had the value 2 = Trade to indicate the maker side of a trade.

Drop copy fix

Version 4.7.1

Onix Solutions CME Drop Copy Handler for Java is a Java library that provides an accessto the CME Group Drop Copy services using FIX Protocol.

High-level Java API allows to build applications rapidly to get drop copy data without much involving into raw protocol specifics.

CME Drop Copy Handler implementations features include:

  • CME AutoCert+ Drop Copy 4.0 pre-certified.
  • Easy-to-use API.
  • Low latency, low CPU load.
  • Flexible logging.
Note
It's highly recommended to read the 'Drop Copy Service' to get familiar with core aspects of CME Drop Copy Service.
By reading this Guide, we also recommend to review a source code of the sample project which comes as a part of the library distributive package.
  • JDK 1.8+

All Handler classes are encapsulated into the biz.onixs.cme.dropcopy.handler package.

The typical way of using the Handler is as follows:

  • Set path to license storage using biz.onixs.cme.dropcopy.handler.Handler.setLicenseDirectory static method.
  • Set path to log storage using biz.onixs.cme.dropcopy.handler.Handler.setLogDirectory static method.
  • Creates an instance of biz.onixs.cme.dropcopy.handler.Handler class.
  • Register error listener using biz.onixs.cme.dropcopy.handler.Handler.setErrorListener method.
  • Register warning listener using biz.onixs.cme.dropcopy.handler.Handler.setWarningListener method.
  • Register Handler's events listener using biz.onixs.cme.dropcopy.handler.Handler.setHandlerListener method.
  • Start Handler by invoking biz.onixs.cme.dropcopy.handler.Handler.logon method.
  • Process data of the events for which listeners were previously registered.
  • Stop Handler by invoking biz.onixs.cme.dropcopy.handler.Handler.logout method.
  • Clean-up resources by invoking biz.onixs.cme.dropcopy.handler.Handler.dispose method.

CME Globex implemented secure authentication for iLink and Drop Copy sessions on Convenience Gateway (CGW) and Market Segment Gateway (MSGW). The new logon procedure secures the client system logon with:

Dropcopy App

  • Customer identity verification - a client system logon request will be signed with security credentials issued and validated by CME Group.
  • Message confidentiality and integrity - to credential the logon message, the client system sends a keyed-hash message authentication code (HMAC) generated from a combination of the logon FIX tag values. When CME Globex receives the logon message, it uses the identical inputs to calculate the HMAC value to validate against the logon request. If the values do not match, CME Globex rejects the logon.

Secure keys

Customers must create secure key pairs for iLink and Drop Copy Sessions in the CME Customer Center.

Mac

Implementation details

Secure Logon procedure was implemented inside DropCopy Handler. To provide secure keys to DropCopy Handler please call one of Handler.logon() methods, which accepts accessKeyID and secretKey parameters.

Handler instance allows to connect to single segment only. To connect to multiple segments, there is need to create one handler instance for each segment. Please see miltisegment sample from installation package.

Note
Segment id is specified as session TargetSubID. SenderCompId and SenderSubId will be same for all segments.
The following example demonstrates how to how to connect to multiple segments.DropCopy

If connection to primary host has been dropped, CME allows to connect to backup host:

  • CME Globex initiates failover by electing the ranking inactive designated backup Drop Copy Gateway to assume the primary role.
  • The client application should connect to the newly promoted primary Drop Copy Gateway.
  • If the primary connection fails and the client system connects to the newly promoted primary Drop Copy Gateway, that instance will begin with the next available outbound sequence number to the client (outbound sequence number could be higher due to unprocessed in-flight messages).
  • Once connected to the new instance, sequence numbers on outbound messages from the client system to Drop Copy must begin with the next available sequence number from tag 34-MsgSeqNum of the previously available Drop Copy gateway instance.
  • After failover, Drop Copy may resend previously transmitted messages with tag 97-PossResend=Y on real time messages.
Dropcopy for mac

Drop Copy App

Handler supports connection to backup host via providing new host ip address.The following example demonstrates how to switch to backup host.

Handler supports using the Session Scheduler to connect to CME host automatically. The Scheduler support switching between primary and backup hosts.

Note
It's important to register Handler as InitiatorConnectionListener, to process host switching correctly. If the only primary host is used, this step can be omitted.
The following example demonstrates how to configure the Scheduler to connect to CME hosts.

Controlling Logging in the Handler

By default, Handler logs all important aspects of its activity while processing market data. The SLF4J (Simple Logging Facade for Java) is used by Handler internally. The SLF4J detects and uses the concrete logging implementation configured by user. By default, the Logback logging implementation is recommended.

The Logback (or any other logging implementation) must be configured at the beginning of the application. The examples of Logback configuration can be found in the Handler samples. The details of Logback configuration can be found here.

Drop Copy Meaning

By default logging is configured to log only errors and warnings. This is an example of logback.xml where detailed logging was switched on:
<logger name='biz.onixs.cme.stp.handler.sample' level='DEBUG'/>
<logger name='biz.onixs.cme.stp.handler' level='INFO'/>
<logger name='biz.onixs.cme.stp.handler.Session.Messages' level='INFO'/>

Dropcopy For Windows

© Onix Solutions