# ?? TradingBot

**Automated Crypto Trading Bot** con interfaccia Blazor Server per trading algoritmico simulato.

[![.NET 10](https://img.shields.io/badge/.NET-10.0-512BD4)](https://dotnet.microsoft.com/)
[![Blazor](https://img.shields.io/badge/Blazor-Server-512BD4)](https://blazor.net/)
[![Docker](https://img.shields.io/badge/Docker-Ready-2496ED)](https://www.docker.com/)
[![Version](https://img.shields.io/badge/version-1.3.0-blue)](https://gitea.encke-hake.ts.net/Alby96/Encelado/-/packages)

---

## ? Caratteristiche

- **Trading Algoritmico**: Simple Moving Average (SMA) strategy
- **Dashboard Blazor**: Real-time updates ogni 3 secondi
- **15 Criptovalute**: BTC, ETH, BNB, ADA, SOL, XRP, DOT, DOGE, AVAX, MATIC, LINK, LTC, UNI, ATOM, XLM
- **Analisi Tecnica**: SMA, EMA, RSI, MACD, Bollinger Bands
- **Portfolio Management**: Gestione automatizzata posizioni
- **Trade Persistence**: Salvataggio automatico trade e posizioni attive
- **Comprehensive Logs**: Sistema di logging real-time con filtri avanzati
- **Docker Ready**: Container ottimizzato con health checks

---

## ?? Quick Start

### Locale (Development)

```bash
git clone https://gitea.encke-hake.ts.net/Alby96/Encelado
cd Encelado/TradingBot
dotnet run
```

Accedi a: `http://localhost:5243`

### Docker

```bash
docker pull gitea.encke-hake.ts.net/alby96/encelado/tradingbot:latest
docker run -d -p 8888:8080 \
  -v tradingbot-data:/app/data \
  gitea.encke-hake.ts.net/alby96/encelado/tradingbot:latest
```

Accedi a: `http://localhost:8888`

### Unraid

Guida completa: [deployment/UNRAID_INSTALL.md](deployment/UNRAID_INSTALL.md)

```bash
# 1. Login Gitea Registry
docker login gitea.encke-hake.ts.net

# 2. Download template
wget -O /boot/config/plugins/dockerMan/templates-user/TradingBot.xml \
  https://gitea.encke-hake.ts.net/Alby96/Encelado/raw/branch/main/TradingBot/deployment/unraid-template.xml

# 3. Install via Unraid Docker UI
```

---

## ?? Versioning

### Current Version: `1.3.0`

**Latest**: Comprehensive logs page con monitoring real-time

```powershell
# Bug fix (1.3.0 ? 1.3.1)
.\bump-version.ps1 patch -Message "Fix memory leak"

# New feature (1.3.0 ? 1.4.0)
.\bump-version.ps1 minor -Message "Add RSI strategy"

# Breaking change (1.3.0 ? 2.0.0)
.\bump-version.ps1 major -Message "New API"
```

Vedi [CHANGELOG.md](CHANGELOG.md) per release notes complete.

---

## ?? Publishing

### Da Visual Studio

1. **Build** ? **Configuration Manager** ? **Release**
2. **Build** ? **Publish TradingBot** ? Profilo **Docker**
3. Click **Publish**

Il sistema automaticamente:
- ? Build Docker image
- ? Tag: `latest`, `1.3.0`, `1.3.0-20241221`
- ? Push su Gitea Registry

### Deploy su Unraid

```bash
# Docker tab ? TradingBot ? Stop ? Force Update ? Start
```

---

## ?? Documentazione

- **[UNRAID_INSTALL.md](deployment/UNRAID_INSTALL.md)** - Installazione completa su Unraid
- **[CHANGELOG.md](CHANGELOG.md)** - Release notes e versioni
- **[Dockerfile](Dockerfile)** - Docker multi-stage build
- **[docker-compose.yml](deployment/docker-compose.yml)** - Deploy con Compose

---

## ??? Tecnologie

- **.NET 10** | **Blazor Server** | **C# 14**
- **Bootstrap 5.3** | **Docker** | **Gitea Registry**

---

## ?? License

MIT License - Copyright © 2024 Alby96

---

## ?? Autore

**Alberto** (Alby96)
- Gitea: [@Alby96](https://gitea.encke-hake.ts.net/Alby96)
- Repository: [Encelado/TradingBot](https://gitea.encke-hake.ts.net/Alby96/Encelado)

---

**?? Happy Trading!**
