Skip to content
This repository has been archived by the owner on Mar 12, 2023. It is now read-only.
/ BYTRA Public archive

An automated algorithmic cryptocurrency trader for Bybit.

License

Notifications You must be signed in to change notification settings

ArneWouters/BYTRA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BYTRA

Build Status Codacy Badge GitHub GitHub release (latest by date)

  • An automated algorithmic cryptocurrency trader for Bybit.
  • All BYTRA code is released under MIT license
  • Other code in this repo released under its respective license

Getting Started

Prerequisites

These have to be installed on the current system:

  • zlib1g-dev
  • libssl-dev
  • TA-Lib
  • Boost

Installing zlib1g-dev and libssl-dev:

sudo apt-get install zlib1g-dev libssl-dev

Installing TA-Lib:

wget https://sourceforge.net/projects/ta-lib/files/ta-lib/0.4.0/ta-lib-0.4.0-src.tar.gz && tar -xvzf ta-lib-0.4.0-src.tar.gz > /dev/null
cd ta-lib
./configure --prefix=/usr
make && sudo make install

Installing Boost:

wget https://sourceforge.net/projects/boost/files/boost/1.73.0/boost_1_73_0.tar.gz && tar -xvzf boost_1_73_0.tar.gz > /dev/null
cd boost_1_73_0
./bootstrap.sh --prefix=/usr
./b2 && sudo ./b2 install

Usage

Clone the repository

git clone https://github.com/ArneWouters/BYTRA.git
cd Bytra

Build and run the target

Use the following command to build and run the executable target.

cmake -Hbytra -Bbuild/bytra
cmake --build build/bytra
./build/bytra/Bytra --help

# Example for running EMA strategy on the testnet with debug on.
./build/bytra/Bytra -s ema -d -t

Build and run test suite

Use the following commands from the project's root directory to run the test suite.

cmake -Htest -Bbuild/test
cmake --build build/test
CTEST_OUTPUT_ON_FAILURE=1 cmake --build build/test --target test

# or simply call the executable:
./build/test/BytraTests

Run clang-format

Use the following commands from the project's root directory to check and fix C++ and CMake source style. This requires clang-format, cmake-format and pyyaml to be installed on the current system.

cmake -Htest -Bbuild/test

# view changes
cmake --build build/test --target format

# apply changes
cmake --build build/test --target fix-format

See Format.cmake for details.

Built with

  • CLI11 - Header only single or multi-file C++11 library for simple and advanced CLI parsing.
  • spdlog - Super fast, header only, C++ logging library.
  • toml++ - Header-only TOML parser and serializer for C++17 and later.
  • Boost.Beast - HTTP and WebSocket built on Boost.Asio in C++11.
  • simdjson - Accelerate the parsing of JSON per se using commonly available SIMD instructions
  • cpr - A modern C++ HTTP requests library with a simple but powerful interface. Modeled after the Python Requests module.
  • TA-Lib - Technical analysis library with indicators like ADX, MACD, RSI, Stochastic, TRIX...