stable/README.md

78 lines
2.3 KiB
Markdown
Raw Normal View History

2017-05-17 23:46:08 +00:00
# freqtrade
2017-09-08 15:35:21 +00:00
[![Build Status](https://travis-ci.org/gcarq/freqtrade.svg?branch=develop)](https://travis-ci.org/gcarq/freqtrade)
2017-05-17 23:46:08 +00:00
Simple High frequency trading bot for crypto currencies.
2017-09-11 11:59:38 +00:00
Currently supported exchanges: bittrex
2017-05-12 17:20:02 +00:00
2017-05-17 23:46:08 +00:00
This software is for educational purposes only.
Don't risk money which you are afraid to lose.
The command interface is accessible via Telegram (not required).
Just register a new bot on https://telegram.me/BotFather
and enter the telegram `token` and your `chat_id` in `config.json`
Persistence is achieved through sqlite.
2017-09-08 15:42:23 +00:00
#### Telegram RPC commands:
2017-05-17 23:46:08 +00:00
* /start: Starts the trader
* /stop: Stops the trader
* /status: Lists all open trades
* /profit: Lists cumulative profit from all finished trades
2017-06-08 18:04:07 +00:00
* /forcesell <trade_id>: Instantly sells the given trade (Ignoring `minimum_roi`).
2017-06-08 20:54:03 +00:00
* /performance: Show performance of each finished trade grouped by pair
2017-05-17 23:46:08 +00:00
2017-09-08 15:42:23 +00:00
#### Config
2017-05-20 19:30:42 +00:00
`minimal_roi` is a JSON object where the key is a duration
in minutes and the value is the minimum ROI in percent.
See the example below:
2017-05-12 17:26:40 +00:00
```
2017-05-20 19:30:42 +00:00
"minimal_roi": {
2017-05-17 23:46:08 +00:00
"2880": 0.005, # Sell after 48 hours if there is at least 0.5% profit
"1440": 0.01, # Sell after 24 hours if there is at least 1% profit
"720": 0.02, # Sell after 12 hours if there is at least 2% profit
"360": 0.02, # Sell after 6 hours if there is at least 2% profit
2017-09-01 19:34:56 +00:00
"0": 0.025 # Sell immediately if there is at least 2.5% profit
2017-05-17 23:46:08 +00:00
},
2017-05-12 17:26:40 +00:00
```
2017-09-07 14:38:28 +00:00
`stoploss` is loss in percentage that should trigger a sale.
For example value `-0.10` will cause immediate sell if the
profit dips below -10% for a given trade. This parameter is optional.
2017-05-17 23:46:08 +00:00
`initial_state` is an optional field that defines the initial application state.
Possible values are `running` or `stopped`. (default=`running`)
If the value is `stopped` the bot has to be started with `/start` first.
2017-05-17 23:46:08 +00:00
The other values should be self-explanatory,
if not feel free to raise a github issue.
#### Prerequisites
2017-09-01 19:11:46 +00:00
* python3.6
2017-05-17 23:46:08 +00:00
* sqlite
2017-09-01 18:39:22 +00:00
* [TA-lib](https://github.com/mrjbq7/ta-lib#dependencies) binaries
2017-05-17 23:46:08 +00:00
2017-09-08 15:42:23 +00:00
#### Install
2017-05-17 23:46:08 +00:00
```
$ cd freqtrade/
# copy example config. Dont forget to insert your api keys
$ cp config.json.example config.json
$ python -m venv .env
$ source .env/bin/activate
$ pip install -r requirements.txt
$ ./main.py
```
2017-08-27 15:15:00 +00:00
2017-09-08 15:42:23 +00:00
#### Execute tests
```
$ python -m unittest
```
2017-08-27 15:15:00 +00:00
#### Docker
```
$ cd freqtrade
$ docker build -t freqtrade .
$ docker run --rm -it freqtrade
```