Home > Java Help > MMTP implementation in Java

MMTP implementation in Java



Hi



I'm asked to develop an application for a stock exchange company using MMTP (Market Message Transfer Protocol) to retrieve data from the DIFF (Diffusion server) and pass orders to the trading engine.



MMTP is a proprietary protocol which comes with a C API which enables receiving and sending messages (including sample sender and receiver programs). There's also a Java API developed by former engineer in the company.



The problem is that with both C API and Java API, everything works well for the receiver but some received data is unreadable and displays bizarre characters. I tried out different types of encodings but none of them worked



But when I tried a small proprietary turning on Windows for receiving data from the Diffusion servers, it has displayed data correctly. (The diffusion server and my workstation are turning Linux)



He is a sample of the unreadable data (using utf-8 encoding):



SUCCESS : PacOut pipe opened !

Success to send a CONX-REQ to the PacOut !

Connection Request Accepted !

Sending a START-REQ to the PacOut !

Waiting for a START-ACK from the PacOut !

Reading the START-ACK !

START-REQ accepted !

��

��

��

��

��

��

��





Thanx a lot for helping !!!

    
Guest


Please refer to the MMTP protocol specifications provided by Atos EuroNext Inc. Some characters used in the message may not be readable ASCII characters.



So far from what I could see from the feed received, only STX and ETX are not readable.



I suspect that the characters you received are the heartbeat messages (MMTP_PRESC_MSG). Check the specifications to verify that.

Was this answer helpful ? Yes No   
Guest


thanx !!!



it's ok for heartbeat message, I receive them correctly.



I'll check the spec for ASCII incompatibilities

Was this answer helpful ? Yes No   
Guest


Different bourse in the world that adopts the MMTP protocol may have their own set of messages specifically tailored to their needs.



You will have to refer to the specifications provided to you for more information about the message format.



Anyway, if you cannot display the characters properly, it may be ASCII characters which cannot be visualised like alphanumeric characters or punctuations.



Try print out the characters' ASCII codes to find out what are they and match against the message specification to determine what type of message, what character is it and what is the purpose of the character at a particular offset.

Was this answer helpful ? Yes No   
Guest


I finally fount out the cause of the problem



In fact, some of the Business Message fields are binary not ASCII !!!



Thanx tvc3mye for helping !



If you don't mind, I'd like to know if you're still working on MMTP or if you had an experience with it (and eventually with FIX protocol).



thanx again

Was this answer helpful ? Yes No   
Guest


I am writing my own MMTP receiver and decoder from scratch using JAVA, base on the specifications provided by the stock exchange bourse in my country.



The bourse only provided me with a dll and some sample programs written in C. Not helpful to me as my company operates Java applications instead.



I'm not familiar with FIX protocol. As I mentioned, each bourse that implements MMTP may customise the base messages provided by Atos EuroNext Inc to suite their own requirements. Therefore, for this FIX, you should strictly follow the specifications given by the bourse in your country.

However, for reference, you could have a look at the specifications for NYSE, Boston SE and Walsaw SE. They all adopt MMTP protocols developed by Atos EuroNext Inc.

Was this answer helpful ? Yes No   
Guest
Hi,
looking for the same, found any?
Was this answer helpful ? Yes No   
Richard
 
 
Home - About Infoqu - Contact - Privacy Statement - Link to Infoqu - Bookmark Infoqu

Copyright 2007-2010 by Infoqu. All rights reserved