List all crypto arbitrage opportunities. It is recommended to have a CORS extension in your browser otherwise some endpoints might not work so you will get fewer results.
There are 2 modes.
- Cross Exchange: This is the default mode. It checks for all coins in a predefined list with exchanges and their withdrawal fees. Since withdrawal fees are crucial for profit and and there is no automated way to check withdrawal fees, new coins (and their withdrawal fees) have to be added manually.
- Triangular: This is accessed by adding
?mode=triangular
. It checks for all coins available in an exchange automatically using either fiat currency or popular coins (BTC, ETH) as intermediary.
There are 2 ways to use it.
crypto-arbitrage.js
: Web page to view the results in the browser (button above)app.js
: Node.js project that prints the results to the console and sends Telegram messages
engine.js
and exchanges-and-symbols.js
are used by both crypto-arbitrage.js
(web page) and app.js
(Node.js).
npx http-server . -p 9999
or any other server since using type="module"
in HTML with a file://
URL results in CORS errors.
$ npm install
$ npm run start # or node app.js
It is setup using GitHub Actions in .github/workflows/lint.yml
Node.js project is scheduled to run every 20 minutes to send Telegram messages using GitHub Actions in .github/workflows/schedule.yaml
Feel free to contribute according to the semistandard rules and latest ECMAScript Specification.
You can distribute this software freely under GNU GPL v3.0.