CT 128 bot — Trading Bot (Freqtrade)
Zweck: Automatisierter Krypto-Trading-Bot mit Freqtrade auf Binance Spot/USDC. Inklusive Live-Dashboard und Web-basierter Container-Steuerung.
Rolle
CT 128 ist der dedizierte Trading-Container. Hier läuft Freqtrade — ein Open-Source-Crypto-Trading-Bot — als Docker-Stack mit drei Services:
- freqtrade: der eigentliche Trading-Bot (Strategie-Execution, Order-Management)
- dashboard: Nginx-Webserver mit Live-Trading-Übersicht
- ctrl: Leichtgewichtiger Docker-Control-Proxy für Web-basierte Container-Steuerung
Basisdaten
- CT-ID: 128
- Hostname:
bot - IP:
192.168.178.97 - OS: Ubuntu 24.04
- Ressourcen: 2 Cores, 2 GB RAM, 20 GB Disk
- Öffentliche URLs:
https://bot.ls-cloud.biz— Trading-Dashboard (via Authelia geschützt)https://ui.bot.ls-cloud.biz— Bot-Steuerungs-UI
Technischer Aufbau
CT 128 (bot) · 192.168.178.97
├── freqtrade (Docker) → localhost:8080 (API)
├── dashboard (nginx) → 0.0.0.0:5001 (Web-Dashboard)
├── ctrl (Python/Docker) → intern:5003 (Steuer-Proxy)
└── Caddy Reverse Proxy (auf Host lscloud)
├── bot.ls-cloud.biz → Authelia → :5001
└── ui.bot.ls-cloud.biz → :5002
- Freqtrade-Image:
freqtradeorg/freqtrade:stable - Dashboard:
nginx:alpinemit statischem HTML (keine externen CDN-Abhängigkeiten) - Ctrl: Alpine-basierter Python-Microservice mit Docker-Socket-Zugriff
Alle Pfade
/opt/freqtrade/ ← Hauptverzeichnis (docker-compose root)
├── config.json ← ⭐ Freqtrade-Konfiguration
├── docker-compose.yml ← Docker Stack Definition
├── nginx.conf ← Dashboard Nginx-Konfiguration
├── dashboard.html ← Dashboard HTML (selbst enthalten)
│
├── user_data/ ← Freqtrade Datenverzeichnis
│ ├── strategies/ ← Trading-Strategien (.py)
│ │ ├── MrXScalper.py ← Aktive Strategie
│ │ ├── MrXStrategy.py ← Frühere Strategie (langsamer)
│ │ ├── MyStrategy.py ← Erste Eigenentwicklung
│ │ └── sample_strategy.py ← Freqtrade-Beispiel
│ ├── logs/
│ │ └── freqtrade.log ← Bot-Logdatei
│ └── tradesv3.sqlite ← Trade-Datenbank
│
└── ctrl/ ← Docker-Control-Microservice
├── Dockerfile
└── ctrl.py
Config-Erklärung (config.json)
Trading-Parameter
| Parameter | Wert | Bedeutung |
|---|---|---|
max_open_trades |
6 |
Maximal 6 gleichzeitige Trades |
stake_amount |
15 |
15 USDC pro Trade |
stake_currency |
USDC |
Basiswährung |
tradable_balance_ratio |
0.95 |
95% des Guthabens nutzbar |
dry_run |
false |
LIVE-Trading (echte Orders!) |
timeframe |
5m |
5-Minuten-Kerzen |
cancel_open_orders_on_exit |
false |
Orders bei Bot-Stopp behalten |
Exchange (Binance)
json5
{
exchange: {
name: "binance",
key: "***", // Binance API-Key
secret: "***", // Binance API-Secret
ccxt_config: { enableRateLimit: true },
pair_whitelist: [".*/USDC"], // Alle USDC-Paare
pair_blacklist: [
"BNB/USDC", "USDT/USDC", // Stablecoins & BNB ausgeschlossen
"FDUSD/USDC", "USDP/USDC",
"TUSD/USDC", "EUR/USDC"
]
}
}
Pair-Filter (Dynamische Paarauswahl)
Jeder Zyklus wählt automatisch die 12 liquidesten USDC-Paare:
- VolumePairList — Top 12 nach Quote-Volume, refresh alle 30 min
- AgeFilter — Nur Coins >60 Tage gelistet
- SpreadFilter — Max 0.35% Spread
- RangeStabilityFilter — Min 3% Bewegung in 7 Tagen
- VolatilityFilter — 2-50% Volatilität (vermeidet tote und zu wilde Märkte)
Pricing
- Nutzt Order Book (Top-Level) für Entry/Exit-Preisermittlung
price_side: "same"→ gleiche Seite wie Orderrichtung
API-Server
| Einstellung | Wert |
|---|---|
| Port | 8080 (intern, nur localhost) |
| Auth | Username/Password + JWT |
| OpenAPI | deaktiviert |
| CORS | * (für Dashboard) |
Telegram-Alerts
Freqtrade hat einen eigenen Telegram-Bot für Trade-Benachrichtigungen (getrennt vom OpenClaw-Bot).
Sonstiges
force_entry_enable: true→ Manuelle Trade-Einstiege per API möglichprocess_throttle_secs: 5→ 5s Verarbeitungsintervallinitial_state: "running"→ Startet automatisch mit Trading
Strategie: MrXScalper
Typ: Long-only Spot-Scalping auf 5m-Kerzen
Signale:
- EMA9/EMA21 — Lokaler Trendfilter
- RSI-Cross-Up — Momentum-Trigger (schneller Einstieg)
- BB-Width — Volatilitätsfilter (keine toten Märkte)
- Volume > 20-MA — Volumen-Confirmation
Risk-Management:
| Parameter | Wert |
|---|---|
| Stoploss | -2.5% (Tight-Stop) |
| Trailing Stop | Ja, ab +1.2% |
| Trailing Offset | 0.5% |
| ROI Stufe 1 | 1.5% sofort |
| ROI Stufe 2 | 0.8% nach 20 min |
| ROI Stufe 3 | 0.3% nach 1 h |
| ROI Stufe 4 | jeder Profit nach 3 h |
Order-Typen: Limit-Orders (Entry + Exit), Market bei Stoploss
Hyperopt-fähig: RSI-Parameter sind optimierbar
Dashboard
Erreichbar unter https://bot.ls-cloud.biz (nach Authelia-Login).
Funktionen:
- Wallet-Übersicht (Gesamtwert, investiert, Profit)
- Offene Trades (Pair, Einstieg, aktueller Kurs, PnL)
- Tages-Chart (Canvas-basiert, keine externen Abhängigkeiten)
- Wichtig: Zeigt Bot-interne Werte, nicht das echte Binance-Wallet!
Architektur:
- Nginx liefert
dashboard.htmlaus /api/→ Proxy zu Freqtrade API (Port 8080) mit Basic Auth/admin/→ Proxy zu ctrl-Service (Container-Steuerung)- Vollständig selbst enthaltenes HTML/CSS/JS (mobil-tauglich)
Betrieb & Wartung
Container-Status
# Auf dem Proxmox-Host pct status 128 pct exec 128 -- docker compose -f /opt/freqtrade/docker-compose.yml ps
Docker-Services steuern
# In CT128 cd /opt/freqtrade # Alle Services neustarten docker compose down && docker compose up -d # Logs einsehen docker compose logs -f freqtrade docker compose logs -f --tail 50 freqtrade # Nur Config neu laden (ohne Neustart) docker compose restart freqtrade
Config ändern
- Config editieren:
nano /opt/freqtrade/config.json - Strategie-Datei editieren:
nano /opt/freqtrade/user_data/strategies/MrXScalper.py - Bei Config-Änderung:
docker compose restart freqtrade - Bei Strategie-Änderung:
docker compose restart freqtrade - Bei docker-compose.yml-Änderung:
docker compose down && docker compose up -d
⚠️ Live-Trading-Hinweise
dry_run: false→ Echte Orders auf Binance!- API-Keys haben Trade-Berechtigung
- Vor Änderungen immer prüfen, ob offene Trades existieren
- Bei Unsicherheit vorher:
docker compose stop freqtrade
Backup
- Gesamtes
/opt/freqtrade/regelmäßig sichern - Wichtigste Dateien:
config.json,user_data/strategies/,tradesv3.sqlite
Verknüpfte Dienste
| Dienst | CT | Zweck |
|---|---|---|
| Authelia | 113 | Schützt bot.ls-cloud.biz |
| Caddy | Host | TLS + Reverse Proxy |
| OpenClaw | 109 | KI-Assistent (verwaltet/analysiert den Bot) |
Troubleshooting
| Problem | Check |
|---|---|
| Bot traded nicht | docker compose logs freqtrade \| grep -i error |
| Dashboard leer | docker compose logs dashboard |
| Keine Internetverbindung | DNS-Check in CT128: cat /etc/resolv.conf (sollte 8.8.8.8 sein) |
| API nicht erreichbar | curl http://localhost:8080/api/v1/ping |
| Config-Fehler | docker compose logs freqtrade \| head -20 |
