Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/primexz/krakendca
DCA tool to buy cryptocurrencies as often as possible on Kraken π
https://github.com/primexz/krakendca
cryptocurrency dca dca-automator dca-bot go golang kraken krakenexchange
Last synced: about 1 month ago
JSON representation
DCA tool to buy cryptocurrencies as often as possible on Kraken π
- Host: GitHub
- URL: https://github.com/primexz/krakendca
- Owner: Primexz
- License: gpl-3.0
- Created: 2024-04-11T17:09:31.000Z (9 months ago)
- Default Branch: master
- Last Pushed: 2024-08-08T05:47:35.000Z (5 months ago)
- Last Synced: 2024-08-08T07:11:26.122Z (5 months ago)
- Topics: cryptocurrency, dca, dca-automator, dca-bot, go, golang, kraken, krakenexchange
- Language: Go
- Homepage:
- Size: 105 KB
- Stars: 2
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# π Kraken-DCA
**Automated dollar cost averaging on the Kraken exchange**
![Buid](https://img.shields.io/github/actions/workflow/status/primexz/krakendca/release.yml)
![License](https://img.shields.io/github/license/primexz/krakendca)## Table of Contents
1. β€ [About the project](#-about-the-project)
- [Orders](#-orders)
2. β€ [Configuration](#-configuration)
3. β€ [Push Notifications](#-push-notifications)
4. β€ [Run with Docker](#-run-with-docker)
- [Docker-CLI](#-docker-cli)
- [Docker-Compose](#-docker-compose)
5. β€ [Run without Docker](#-run-without-docker)## π About the project
Since Kraken has extremely high fees for its crypto savings plan, this tool was developed to invest regularly in cryptocurrencies. Since Kraken offers two platforms: βKrakenβ and βKraken Proβ, we take advantage of the fact that Kraken Pro has very low fees. All you have to do is regularly deposit fiat currencies on Kraken Pro and the bot does everything else for you.
### π° Orders
#### When will orders be placed?
Bitcoin orders are placed as often as possible. To illustrate the behaviour in more detail, let's look at the following example:
You deposit β¬500 per month on Kraken-Pro.
The bot calculates how often you can buy Bitcoin this month, as Kraken has a minimum purchase limit of 0.0001 BTC. Your orders are executed as often as possible throughout the month, thereby achieving dollar-cost averaging.## βοΈ Configuration
This tool is configured via environment variables. Some environment variables are required and some activate additional functionalities.
| Variable | Description | Required | Default |
| --- | --- | --- | --- |
| `KRAKEN_PUBLIC_KEY` | Your Kraken API public key | β | |
| `KRAKEN_PRIVATE_KEY` | Your Kraken API private key | β | |
| `CURRENCY` | Your fiat currency to be used, e.g. USD or EUR | β | `USD` |
| `KRAKEN_ORDER_SIZE` | The order size to be used. This value should only be edited if you know exactly what you are doing. | β | `0.0001` |
| `LIMIT_ORDER_MODE` | If set to true, limit orders are placed. With a normal monthly volume, you only pay 0.25% fees per purchase instead of 0.4%. | β | `false` |
| `CHECK_DELAY` | How often the algorithm should be executed, in seconds. | β | `60` |
| `GOTIFY_URL` | URL to your Gotify server | β | |
| `GOTIFY_APP_TOKEN` | App token for the app on the Gotify server | β | |## π± Push Notifications
The environment variables `GOTIFY_URL` and `GOTIFY_APP_TOKEN` can be used to activate Gotify Push Notifications. As soon as a purchase has been made, you will immediately receive a notification so that you always have a full overview of your purchases.
### π³ Run with Docker
### Docker-CLI
```bash
docker run -d --name kraken_dca \
-e KRAKEN_PUBLIC_KEY=your-public-key \
-e KRAKEN_PRIVATE=your-private-key \
-e CURRENCY=EUR \
ghcr.io/primexz/kraken_dca:latest```
### π Docker-Compose
```bash
vim docker-compose.yml
``````yaml
version: "3.8"
services:
kraken_dca:
image: ghcr.io/primexz/kraken_dca:latest
environment:
- KRAKEN_PUBLIC_KEY=your-public-key
- KRAKEN_PRIVATE_KEY=your-private-key
- CURRENCY=EUR
restart: always
``````bash
docker-compose up -d
```## π» Run without Docker
This tool can be run directly with Go for development.
```bash
KRAKEN_PUBLIC_KEY=your-public-key KRAKEN_PRIVATE_KEY=your-private-key go run .
```