Free, open source crypto trading bot
Go to file
gcarq 3473fd3c90 major refactoring to allow proper testing
This commit includes:
* Reducing complexity of modules
* Remove unneeded wrapper classes
* Implement init() for each module which
  initializes everything based on the config
* Implement some basic tests
2017-09-08 15:51:00 +02:00
rpc major refactoring to allow proper testing 2017-09-08 15:51:00 +02:00
test major refactoring to allow proper testing 2017-09-08 15:51:00 +02:00
.gitignore add README; minor refactoring 2017-05-18 02:13:02 +02:00
.pylintrc add pylint rule file that allows to use logger in lowercase 2017-08-27 15:37:11 +03:00
analyze.py Merge branch 'master' into parabolic-sar 2017-09-04 12:07:13 +03:00
config.json.example minor changes 2017-05-21 16:52:36 +02:00
Dockerfile install TA-lib in Dockerfile 2017-09-03 17:35:58 +03:00
exchange.py major refactoring to allow proper testing 2017-09-08 15:51:00 +02:00
LICENSE Initial commit 2017-05-18 02:13:02 +02:00
main.py major refactoring to allow proper testing 2017-09-08 15:51:00 +02:00
misc.py major refactoring to allow proper testing 2017-09-08 15:51:00 +02:00
persistence.py major refactoring to allow proper testing 2017-09-08 15:51:00 +02:00
README.md add TA-lib dependency 2017-09-02 11:37:12 +03:00
requirements.txt let TA-lib calculate macd, macdsignal and macdhistogram. remove the now unnecessary StockStats library 2017-09-02 11:56:56 +03:00

freqtrade

Simple High frequency trading bot for crypto currencies. Currently supported exchanges: bittrex, poloniex (partly implemented)

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.

Telegram RPC commands:
  • /start: Starts the trader
  • /stop: Stops the trader
  • /status: Lists all open trades
  • /profit: Lists cumulative profit from all finished trades
  • /forcesell <trade_id>: Instantly sells the given trade (Ignoring minimum_roi).
  • /performance: Show performance of each finished trade grouped by pair
Config

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:

"minimal_roi": {
    "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
    "0":    0.025  # Sell immediately if there is at least 2.5% profit
},

The other values should be self-explanatory, if not feel free to raise a github issue.

Prerequisites
  • python3.6
  • sqlite
  • TA-lib binaries
Install
$ 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

Docker

$ cd freqtrade
$ docker build -t freqtrade .
$ docker run --rm -it freqtrade