I am looking for a service that is able to provide real-time tick data (time&sales) for the contracts traded in the Italian Stock Market (Borsa Italiana). The service should provide data through an API that I can integrate in my own code.
This is what I have tried so far:
eSignal
Real-time tick data is shown in the software but is not available through the eSignal Formula Script (EFS). EFS only deals with bars. I also used eSignal QLink, that it is claimed to be an enhanced DDE add-on service that makes it quick and simple to download real-time, streaming data into your Excel worksheets (http://www.esignal.com/development-tools/esignal_sdk_tools/qlink.aspx). I combined QLink with my own VBA script to intercept excel cell changes and dump ticks to a database. I found that many close-in-time ticks correctly shown in the eSignal time&sales window are not detected by QLink.
Interactive Brokers
In order to evaluate the goodness of the data received via reqTopMktData()
(https://www.interactivebrokers.com/en/software/api/apiguide/c/reqmktdata.htm) I wrote a simple JAVA class that fires a reqTopMktData()
and handles generated events via callbacks tickPrice()
and tickSize()
. Callbacks simply write received data to file.
I let the class run for a day and then checked harvested ticks against the TWS time & sales window. Surprisingly, I found that many ticks that are properly shown in the time & sales window are missing from the harvested data. It looks like not all the ticks are forwarded to tickPrice()
and tickSize()
.
So basically I am still unable to find a good, reliable, service provider of real-time tick by tick data for the Italian stock market.
PS: I can provide VBA and JAVA classes upon request.