OpenViSTAI · Agents · Blockchain · Crypto
Menu
Exchanges & Trading

Roq API

Roq API is a public MIT-licensed C++ interface layer for algorithmic and high-frequency trading systems. It provides a unified client interface for supported traditional and cryptocurrency market gateways, exact event-log replay for simulation and backtesting, and interfaces for FIX bridges, database adapters and monitoring integrations. The repository contains the interfaces; the client implementation is closed sour

Independent OpenViST project profile, based on linked sources.

Roq API — OpenViST project profile in Exchanges & Trading.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use Roq API when a C++ trading system needs a common interface across supported gateways or needs event-driven replay for simulation and backtesting. It is also relevant when FIX, database and monitoring integrations belong in the same trading architecture.

Who it is for

  • C++ developers building algorithmic or high-frequency trading applications.
  • Teams connecting trading systems to supported cryptocurrency or traditional exchanges.
  • Developers implementing event-log replay for simulation and backtesting.
  • Organizations integrating FIX, database or trading-monitoring components.

Documented uses

  • Connect a trading client to supported market gateways through one interface.
  • Replay captured event logs for simulation and backtesting.
  • Bridge trading data or workflows to third-party systems through FIX.
  • Feed captured data into supported database adapters.
  • Expose trading metrics to monitoring tools.
Before you choose

Requirements & limits

The interface repository is public, open source and MIT licensed. The README says it is free to download and try without contacting or registering. The client implementation is closed source and is documented as a separate Conda package.

  • The repository provides interfaces, while the actual client implementation is separate and closed source.
  • Supported gateways include CME and numerous cryptocurrency exchanges, but gateway setup is handled through separate documentation and samples.
  • Linux x86-64 is continuously tested; other listed Linux and macOS combinations are regularly compiled, with the project advising contact for specific requirements.
  • The stack is C++-oriented and includes Conda, CMake, shared memory, asynchronous interfaces and schema-generated strongly typed events.
  • Production support requires an SLA according to the project README.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Set up the Roq API development environment

Initialize the repository, create a Conda environment, activate it and build the interface project.

Before you start

  • A Linux or macOS development system; Linux x86-64 is the only combination continuously tested by the project.
  • The Conda package manager.
  • A clone of the roq-api repository with its submodules available.

Steps

  1. Initialize the repository submodules with the command below.

    Documented command
    git submodule update --init --recursive
  2. Create a development environment with scripts/create_conda_env unstable debug.

  3. Activate it with source opt/conda/bin/activate dev.

  4. Build the project with cmake . && make -j4.

Expected outcome

The open C++ interface project is built in the development environment.

Guide limitations

  • The repository contains interfaces rather than the closed-source client implementation.
  • Building the interface does not by itself configure or connect a market gateway.
  • The README notes that CMakeCache.txt may need to be deleted if an incorrect configuration has been cached.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
2 October 2026
Original website title
roq-trading/roq-api · Official homepage title · retained in its source language