Market Data Replay Server
The Market Data Ticker Plant Server can be configured to archive/record every tic sent
from all available markets. This historical data can be played back to the user at some
convenient time by the Market Data Replay Server.

The current options  available to the Market Data Replay Server are as follows:
  1. Replay tics that spanned a period of time. By default the Market Data Ticker Plant
    Server creates historical archive all tics for future replay of the tics by this server.
  2. Loop replay; using this in combination with any of the other options will cause the
    Market Data Replay Server to repeat the period of time of interest. The number or
    replays for any particular span of time can be from one (1) to forever.
  3. Change the replay rate: The replay server can attempt to broadcast the historical
    data at a rate comparable to what it was while being archived. Or, it can be set to
    broadcast the historical data at an arbitrary number of milliseconds between
    broadcast.
  4. Replay Status in shared memory for other processes to monitor. A screen-shot of a
    monitor program that uses this feature to display the running status of the Market
    Data Replay Server can be seen above. Click on the image to enlarge.

The
configuration file of the Market Data Replay describes all command line and
configuration file parameters available to the replay server. Also running the server at the
command line with the --help option will show all recommended command line options.

Above is a screen shot of a program used to monitor the status of the replay server.
Libraries:
  • The ADAPTIVE
    Communication
    Environment (ACE
    (TM)) a freely
    available, open-
    source object-
    oriented (OO)
    framework that
    implements many
    core patterns for
    concurrent
    communication
    software. ACE
    provides a rich set of
    reusable C++ wrapper
    facades and
    framework
    components that
    perform common
    communication
    software tasks across a
    range of OS platforms.
Libraries:
  • boost C++
    LIBRARIES,  
    emphasize libraries
    that work well with the
    C++ Standard Library.
    Boost libraries are
    intended to be widely
    useful, and usable
    across a broad
    spectrum of
    applications.
  • Boost Integer Library,
    The organization of
    boost integer headers
    and classes is
    designed to take
    advantage of <stdint.
    h> types from the
    1999 C standard
    without resorting to
    undefined behavior
    in terms of the 1998
    C++ standard.
  • Boost.Program
    Options
    program_options
    library allows program
    developers to obtain
    program options, that
    is (name, value) pairs
    from the user, via
    conventional
    methods such as
    command line and
    config file.