Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/jnidzwetzki/crypto-bot

This repository contains a crypto currency trading bot. The bot implements some strategies (donchian, ema, atr) and works on the Bitfinex crypto currency exchange.
https://github.com/jnidzwetzki/crypto-bot

algorithmic-trading algorithmic-trading-engine bitcoin bot crypto crypto-bot currency donchian ema trade trading trading-algorithms trading-systems

Last synced: about 2 months ago
JSON representation

This repository contains a crypto currency trading bot. The bot implements some strategies (donchian, ema, atr) and works on the Bitfinex crypto currency exchange.

Awesome Lists containing this project

README

        

# A crypto currency trading bot


Build Status

Coverity Scan Build Status



Join the chat at https://gitter.im/trading-bot/Lobby

This repository contains a crypto currency trading bot. The bot implements some strategies (donchian, ema, atr) and works on the Bitfinex crypto currency exchange. In addition, the project contains some backtesting tools.

**Warning:** Trading carries significant financial risk; you could lose a lot of money. If you are planning to use this software to trade, you should perform many tests and simulations first. This software is provided 'as is' and released under the _Apache 2.0 license_.

## Installation

Clone the repository and add at least one API key to the `auth.properties` file. The bot is able to trade multiple Bitfinex accounts in parallel.

Configuration example for one account:

```
apiConnections=1
apiKey.0=
apiSecret.0=
```

Configuration example for two accounts:

```
apiConnections=2
apiKey.0=
apiSecret.0=
apiKey.1=
apiSecret.1=
```

After the configuration is done, you can start the `EMABot` or the `DonchianBot`.

# Strategies
The bot contains two major trend following strategies at the moment.

## EMA Bot
The EMA bot uses three simple moving averages with different lengths. A buy is triggered when `ema short > ema middle > ema long` and a sell is triggered when the `ema middle < ema long`. A ATR filter can be applied, buys only executed when the ATR (Average True Range) indicator confirms a trend (`ATR >= 14`).

## Donchian bot
The Donchaian bot calculated the [Donchian channel](https://en.wikipedia.org/wiki/Donchian_channel) for a given time interval. A buy is triggered when the price touches upper channel, a sell is triggered when the lower channel is touched.

# Changelog
You will find the changelog of the project [here](https://github.com/jnidzwetzki/crypto-bot/blob/master/CHANGELOG.md).

## What's next?
* If you like the project, please star it on GitHub!
* If you are interested in the Bitfinex API implementation, see my other project at [https://github.com/jnidzwetzki/bitfinex-v2-wss-api-java](https://github.com/jnidzwetzki/bitfinex-v2-wss-api-java).
* You need a highly available MySQL server for your trading? Have a look at [https://github.com/jnidzwetzki/mysql-ha-cloud](https://github.com/jnidzwetzki/mysql-ha-cloud).
* For more information see [https://github.com/jnidzwetzki](https://github.com/jnidzwetzki).