Practical overview
When it fits
Use R2 when you want to run a configurable Bitcoin exchange arbitrage application on your own Node.js-capable system or in Docker, and can manage the required exchange API credentials and trading parameters.
Who it is for
- People who want to configure an automated arbitrage workflow across the Bitcoin exchanges listed by the project.
- Operators who can run a Node.js application or Docker container and supply API credentials for enabled exchanges.
- Users who prefer a command-line operating mode or a browser UI for local use.
Documented uses
- Collect and compare quotes from supported exchanges to identify spreads that meet a configured minimum profit threshold.
- Set exchange credentials, trading-size limits, exposure limits and order-handling rules in a configuration file.
- Send paired buy and sell orders when configured conditions are met, check their fill status and handle an incomplete leg according to configuration.
- Analyze spreads without sending real trades by enabling demo mode.
Requirements & limits
The project is publicly available on GitHub under the MIT license. Running it requires a supported runtime or Docker; placing exchange orders requires configured API credentials.
- The README lists support for cash trading on bitFlyer, Quoine, Coincheck, bitbank.cc and BTCBox; margin support is listed for bitFlyer, Quoine and Coincheck.
- The application defaults to Console mode. Web UI mode must be enabled in configuration and the README specifies the latest Google Chrome.
- The documented workflow can submit real paired orders; demo mode is available for spread analysis without real trades.
- Configuration includes minimum and maximum target-profit controls, BTC size limits, maximum net exposure, quote and position refresh timing, and incomplete-leg handling.
- The project describes a pluggable broker architecture, with bitFlyer BTC-FX/JPY margin trading offered through a separate plugin.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Set up R2 for console or web UI use
Install the application, configure exchange credentials, and choose its documented operating mode.
Before you start
- Node.js 8.5 or newer on an operating system that supports Node.js, or Docker.
- API keys and secrets for the exchanges you intend to enable.
- Google Chrome, using the latest version, if selecting Web UI mode.
Steps
Clone the repository and install dependencies with the command below or
yarn.npm installRename
config_default.jsontoconfig.json, enter the relevant exchange API keys and secrets, and disable exchanges you will not use.For Web UI mode, set
webGateway.enabledto true; otherwise R2 starts in Console mode by default.Start with the command below or
yarn start; for Web UI mode, openhttp://127.0.0.1:8720in Chrome.npm start
Expected outcome
R2 is started in console mode or configured to present its web UI in a local browser.
Guide limitations
- This setup guide does not establish that credentials, exchange connections or trades will work in a particular environment.
- The README also gives a Docker build-and-run path, but does not include exchange-specific trading setup beyond the configuration steps above.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 16 October 2026
- Original website title
- bitrinjani/r2 · Official homepage title · retained in its source language

