Interface used to communicate with market gateways or a simulator. [C++20] [Interface]
API for algorithmic and high-frequency trading (HFT).
This project does not contain the closed source implementation of the C++ interfaces.
A SLA is required for production support. More information can be found here.
Feel free to contact us with any questions you may have.
Currently supported traditional exchanges include
Currently supported Cryptocurrency exchanges include
The full list can be found here.
Instructions on how to install, configure and use the gateways can either be found in the samples or by consulting the documentation.
All listed combinations are regularly compiled but only Linux/x86-64 is continuously being tested. If you require a specific combination, please contact us before using.
We plan to drop support for macOS/x86-64.
Optional
It is not very interesting to follow the instructions shown here due to this project only containing interfaces. The actual client implementation is closed source as mentioned elsewhere in this document.
The project is primarily designed to be compatible with the conda package manager.
wget -N https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-Linux-x86_64.sh
bash Mambaforge-Linux-x86_64.sh -b -u -p ~/conda
~/conda/bin/mamba install -y \
'gxx_linux-64>=12'
wget -N https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-Linux-aarch64.sh
bash Mambaforge-Linux-aarch64.sh -b -u -p ~/conda
~/conda/bin/mamba install -y \
'gxx_linux-aarch64>=12'
wget -N https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-MacOSX-x86_64.sh
bash Mambaforge-MacOSX-x86_64.sh -b -u -p ~/conda
~/conda/bin/mamba install -y \
'clang_osx-64>=16'
wget -N https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-MacOSX-arm64.sh
bash Mambaforge-MacOSX-arm64.sh -b -u -p ~/conda
~/conda/bin/mamba install -y \
'clang_osx-arm64>=16'
source ~/conda/bin/activate
mamba install -y \
git \
cmake \
abseil-cpp \
flatbuffers \
fmt \
jinja2 \
clang-format \
catch2
mamba install -y --channel https://roq-trading.com/conda/stable \
roq-oss-magic_enum
git submodule update --init --recursive
mkdir build && cd build
cmake ..
make -j
make test
You can download the closed source client implementation like this
mamba install -y --channel https://roq-trading.com/conda/stable \
roq-client
Samples can be found here.
The project is released under the terms of the MIT license.