rdalmeida
  • Member for 7 years, 5 months
  • Last seen more than 5 years ago
What is the fastest tick-to-trade possible time without FPGAs?
7 votes

That will depend on the protocol you are using for market data (UDP, FAST, MDP, ITCH, etc.) and order routing (FIX, OUCH, etc.). For example, the latency to parse a UDP tick and to place a FIX order ...

View answer
How fast is QuickFix ?
4 votes

You should take a look on CoralFIX which is currently the fastest FIX engine in the market. The main problem with most Java FIX engines, commercial and open-source, is that they create a lot of ...

View answer
Logging FIX Messages
Accepted answer
4 votes

The correct way to do file I/O without introducing latency is to do it asynchronously, in other words, the logger thread just passes the message to another thread that is actually doing the disk I/O. ...

View answer
What would be considered a good/competitive throughput for a FIX engine?
4 votes

We believe that the FIX parser (encoder/decoder) is the easiest part of a FIX engine to optimize. The bottleneck is usually the network I/O because you can't do any encoding/decoding before you ...

View answer
What is the current lowest possible latency for TCP communication?
Accepted answer
2 votes

For ultra-low-latency network applications it is mandatory to use a single-threaded, asynchronous, non-blocking network library. You can and should handle multiple TCP connections inside the same ...

View answer
What is an efficient data structure to model order book?
2 votes

If you assume that most updates will happen near the top of the book (a fair assumption) a linked-list ordered by price levels will be very efficient. You can check CoralMD for an example of a very ...

View answer
Should I use QuickFix or a 3rd-party commercial API to connect to the CME
Accepted answer
2 votes

A pre-certified FIX engine won't spare you from doing the certification process yourself. This is a requirement for all serious exchanges. Moreover, CME is a good exchange with tons of features and ...

View answer
Why some exchanges enforce that you send the total quantity (fill qty + open qty) when changing the order size?
Accepted answer
1 votes

Let's say you have an order with 10 shares open. Now you want to cancel it down to 6 shares. If you send just the open quantity you can have the following scenario: Reduce to 6 sent 3 shares got ...

View answer
How good is managed code for algo trading?
1 votes

It is very possible to produce code in Java that: Does not create any garbage so GC never kicks in. It is JIT-friendly so the critical parts will be compiled by the hotspot. If you do that, you can ...

View answer
HFT enhancements for FIX (Simple Binary Encoding) vs proprietary protocols performance and cost
1 votes

FIX has some known deficiencies. Repeating groups is one of them. It can be costly in terms of latency to parse repeating groups inside repeating groups, requiring recursive calls. I prefer protocols ...

View answer
Where can I find a guide to implement the FAST protocol from scratch having already a FIX implementation ready?
1 votes

We have recently implemented a FAST decoder from scratch and let me tell you it is not easy. But if you want to go down that path this is the only reference material I found online: http://jettekfix....

View answer
How does logging effect Quickfix performance?
1 votes

Disk I/O has a big latency cost, so you must use an asynchronous logging framework and the fastest way to pass messages from thread A to thread B is to use the disruptor pattern. For a good event ...

View answer
What is the fastest way to decode the FAST protocol for market data?
0 votes

We have developed a very fast FAST decoder in Java (CoralFIX) that reads the XML templates from the exchanges and spills out Java code to parse the FAST bits. That way you do not need to use recursion ...

View answer
How to filter and normalize market data obtained from distinct sources (FIX 4.4, bloomberg, etc) in an algorithmic trading system?
0 votes

You should check CoralMD which does exactly what you need: It provides a fast market data book implementation that can aggregate quotes from multiple exchanges together, giving you a global view of ...

View answer
Real-time market data from the exchanges: what should we be aware of?
0 votes

I believe the important issue is not how you are going to receive the market data from N different exchanges but how you are going to normalize and generalize them into a single protocol that can be ...

View answer
What is the best data structure/implementation for representing a time series?
0 votes

If your language is Java, CoralStore can persist time series for a fraction of the price of KDB. It provides very fast write access (~ 70 nanos / msg) so you can dump huge amounts of data to disk. ...

View answer