Skip to content
/ helix Public
forked from penberg/helix

Helix, a market data feed handler for C and C++.

License

Notifications You must be signed in to change notification settings

derekxgl/helix

 
 

Repository files navigation

Helix

Build Status

Helix is an ultra low-latency market data feed handler written in C++. It provides an API to trading applications that normalizes market data updates from multiple feeds.

Helix core does not include networking functionality and expects applications to provide raw packet data.

Building

Helix requires libuv 1.0 or later. If you build it from sources, you need to tell pkg-config where to find the configuration files:

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/

To build Helix:

cmake .
make

To install Helix:

make install

Please note that Helix generates a pkg-config file so you can use pkg-config to integrate Helix with your project build system.

Usage

To convert a NASDAQ TotaView-ITCH 5.0 file to CSV:

./helix-trace -i 07302015.NASDAQ_ITCH50 -s AAPL -c nasdaq-binaryfile-itch50 -f csv -o AAPL.csv

Please note that Helix only works with uncompressed files.

Features

Core

  • C++ API
  • C binding
  • Order book view
  • Data normalization
  • Data filtering
  • Order book aggregation
  • Synthetic NBBO
  • Retransmission requests

Protocols

  • NASDAQ
    • NASDAQ TotalView-ITCH 5.0
    • Nordic Equity TotalView-ITCH 1.90.2
    • MoldUDP
    • BinaryFILE
    • SoupFILE

License

Copyright © 2015 Pekka Enberg

Helix is distributed under the 2-clause BSD license. See LICENSE for the full license text.

About

Helix, a market data feed handler for C and C++.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 74.4%
  • C 22.2%
  • CMake 3.4%