kracken-auto-trading-bot

Kraken Telegram Trading Bot

An automated trading bot for Kraken.com with Telegram integration and self-learning machine learning capabilities.

Features

Project Structure

kracken-bot/
├── config/
│   ├── config.yaml
│   └── secrets.yaml.example
├── src/
│   ├── kraken/          # API client, websocket, auth
│   ├── telegram/        # Bot handlers, commands, notifications
│   ├── trading/         # Strategy engine, risk manager, order executor
│   ├── ml/              # Models, features, training, inference
│   ├── data/            # Data fetching, storage, preprocessing
│   ├── backtest/        # Backtesting engine
│   └── utils/           # Config, logging, helpers
├── tests/
├── docker/
├── requirements.txt
└── README.md

Quick Start

  1. Clone the repository
    git clone <repository-url>
    cd kracken-bot
    
  2. Install dependencies
    pip install -r requirements.txt
    
  3. Configure the bot
    • Copy config/secrets.yaml.example to config/secrets.yaml
    • Fill in your Kraken API keys and Telegram bot token
    • Adjust config/config.yaml for your preferences
  4. Run the bot
    python -m src.main
    

Configuration

Kraken API

Get your API keys from Kraken API Settings

Telegram Bot

  1. Talk to @BotFather on Telegram
  2. Create a new bot and get the token
  3. Get your user ID by messaging @userinfobot

Machine Learning

The bot includes self-learning capabilities using:

Risk Management

Development

Running Tests

pytest tests/

Code Style

black src/
flake8 src/

Deployment

Manual Deployment

Ensure Python 3.9+ is installed, then:

pip install -r requirements.txt
python -m src.main

Security Notes

License

MIT License - see LICENSE file for details.

Disclaimer

Trading cryptocurrencies involves significant risk. This bot is for educational purposes only. Past performance does not guarantee future results. Use at your own risk.