Add setup scripts and documentation for Git workflow
Deploy to Windows VPS / deploy (push) Has been cancelled

This commit is contained in:
2025-12-20 18:12:39 +01:00
parent 16790d1807
commit bb180acf7a
4 changed files with 359 additions and 0 deletions
+3
View File
@@ -18,6 +18,9 @@ __pycache__/
*.egg-info/ *.egg-info/
dist/ dist/
build/ build/
venv/
env/
ENV/
# OS Files # OS Files
.DS_Store .DS_Store
+233
View File
@@ -0,0 +1,233 @@
# 🚀 Setup Guide - Place Order Trading Bot
## ✅ Erstmalige Einrichtung (ABGESCHLOSSEN)
Die folgenden Schritte wurden bereits durchgeführt:
- ✅ Repository geklont von Gitea
- ✅ Git User konfiguriert (cbazza / froehlich.sebastian@gmail.com)
-`telegram_config.json` erstellt
-`trading_bot.db` aus altem Ordner kopiert
- ✅ Virtuelle Python-Umgebung erstellt
---
## 🔄 Täglicher Workflow
### 1. Vor dem Arbeiten - Änderungen vom Server holen
```bash
cd Place-Order-Trading-Bot
git pull
```
### 2. Virtuelle Umgebung aktivieren
```bash
# Windows
.\venv\Scripts\activate
# Sie sehen dann: (venv) vor Ihrer Kommandozeile
```
### 3. Bot starten
```bash
# Jupyter Notebook (wie bisher)
jupyter notebook TradingBot_V1.6_Adaptive_Complete_CORRECTED.ipynb
# ODER: GUI starten
python trading_bot_gui.py
# ODER: Dashboard
streamlit run trading_dashboard.py
```
### 4. Nach dem Arbeiten - Änderungen speichern
```bash
# Status prüfen
git status
# Alle geänderten Dateien hinzufügen
git add .
# ODER: Nur bestimmte Dateien
git add TradingBot_V1.6_Adaptive_Complete_CORRECTED.ipynb
# Commit mit aussagekräftiger Nachricht
git commit -m "Beschreibung der Änderung"
# Zum Server pushen
git push
```
---
## 🌿 Branch-Strategie (Empfohlen für größere Änderungen)
### Neues Feature entwickeln
```bash
# Neuen Feature-Branch erstellen
git checkout -b feature/mein-neues-feature
# ... arbeiten und committen ...
git add .
git commit -m "Feature: Beschreibung"
# Zum Server pushen
git push -u origin feature/mein-neues-feature
```
### Zurück zum Hauptbranch
```bash
# Änderungen committen
git add .
git commit -m "Work in progress"
# Zu main wechseln
git checkout main
# Aktualisieren
git pull
```
### Feature-Branch mergen
```bash
# Auf Gitea einen Pull Request erstellen
# ODER lokal mergen:
git checkout main
git merge feature/mein-neues-feature
git push
```
---
## 📁 Wichtige Dateien (nicht in Git)
Diese Dateien werden von `.gitignore` ignoriert und bleiben lokal:
- `telegram_config.json` - Ihre Telegram Credentials
- `trading_bot.db` - Trading Datenbank
- `venv/` - Python virtuelle Umgebung
- `*.log` - Log-Dateien
- `__pycache__/` - Python Cache
**WICHTIG:** Diese Dateien werden NICHT zum Server gepusht!
---
## 🔧 Nützliche Git-Befehle
### Status prüfen
```bash
git status # Zeigt geänderte Dateien
git log --oneline -5 # Letzte 5 Commits
git diff # Zeigt Änderungen
```
### Änderungen rückgängig machen
```bash
# Vor dem Commit (Working Directory)
git checkout -- datei.py
# Nach dem Commit (letzte Änderung rückgängig)
git revert HEAD
# ACHTUNG: Alle lokalen Änderungen verwerfen!
git reset --hard HEAD
```
### Branches verwalten
```bash
git branch # Alle lokalen Branches
git branch -a # Alle Branches (inkl. remote)
git branch -d feature/alt # Branch löschen (lokal)
```
---
## 🆘 Problemlösung
### "Your branch is behind 'origin/main'"
```bash
git pull
```
### "Changes not staged for commit"
```bash
git add .
git commit -m "Update"
git push
```
### "Conflict" beim Pull
```bash
# Datei öffnen, Konflikte manuell lösen (<<<, ===, >>> entfernen)
git add konflikt-datei.py
git commit -m "Merge conflict resolved"
```
### Versehentlich Datei hinzugefügt (z.B. Credentials)
```bash
# Vor dem Commit
git reset HEAD datei.json
# Nach dem Commit (aber vor dem Push!)
git rm --cached datei.json
git commit --amend
```
---
## 📦 Dependencies installieren
Falls neue Packages benötigt werden:
```bash
# Virtuelle Umgebung aktivieren!
.\venv\Scripts\activate
# Installieren
pip install paketname
# requirements.txt aktualisieren
pip freeze > requirements.txt
# Dann committen
git add requirements.txt
git commit -m "Add new dependency: paketname"
git push
```
---
## 🎯 Best Practices
1. **Häufig committen** - Kleine, logische Commits sind besser als große
2. **Aussagekräftige Commit-Messages** - "Fix bug" ❌ → "Fix position monitor reconnection issue" ✅
3. **Vor dem Pushen pullen** - Vermeidet Konflikte
4. **Branches für große Features** - Hält main stabil
5. **Niemals Secrets committen** - Immer `.gitignore` prüfen
---
## 📞 Schnellreferenz
| Aktion | Befehl |
|--------|--------|
| Repository aktualisieren | `git pull` |
| Status prüfen | `git status` |
| Änderungen speichern | `git add . && git commit -m "Message" && git push` |
| Neuen Branch | `git checkout -b feature/name` |
| Virtuelle Umgebung aktivieren | `.\venv\Scripts\activate` |
| Bot starten (Notebook) | `jupyter notebook` |
| Bot starten (GUI) | `python trading_bot_gui.py` |
---
**Erstellt am:** 2025-12-20
**Repository:** https://gitea.cbazza.synology.me/cbazza/Place-Order-Trading-Bot.git
+71
View File
@@ -0,0 +1,71 @@
@echo off
REM Setup Script für Trading Bot
REM Führt die initiale Einrichtung durch
echo ========================================
echo Trading Bot - Ersteinrichtung
echo ========================================
echo.
REM Prüfe ob venv existiert
if exist "venv\" (
echo [OK] Virtuelle Umgebung existiert bereits
) else (
echo [INFO] Erstelle virtuelle Umgebung...
python -m venv venv
if errorlevel 1 (
echo [FEHLER] Konnte virtuelle Umgebung nicht erstellen!
pause
exit /b 1
)
echo [OK] Virtuelle Umgebung erstellt
)
echo.
echo [INFO] Aktiviere virtuelle Umgebung...
call venv\Scripts\activate.bat
echo.
echo [INFO] Installiere Dependencies...
pip install --upgrade pip
pip install -r requirements.txt
if errorlevel 1 (
echo [FEHLER] Konnte Dependencies nicht installieren!
pause
exit /b 1
)
echo.
echo [OK] Installation abgeschlossen!
echo.
REM Prüfe wichtige Dateien
echo [INFO] Prüfe Konfigurationsdateien...
if exist "telegram_config.json" (
echo [OK] telegram_config.json gefunden
) else (
echo [WARNUNG] telegram_config.json nicht gefunden!
echo Bitte erstellen Sie die Datei aus telegram_config_template.json
)
if exist "trading_bot.db" (
echo [OK] trading_bot.db gefunden
) else (
echo [INFO] trading_bot.db nicht gefunden (wird beim ersten Start erstellt)
)
echo.
echo ========================================
echo Setup abgeschlossen!
echo ========================================
echo.
echo Nächste Schritte:
echo 1. Starten Sie Jupyter Notebook mit: jupyter notebook
echo 2. Oder starten Sie die GUI mit: python trading_bot_gui.py
echo 3. Oder starten Sie das Dashboard mit: streamlit run trading_dashboard.py
echo.
echo Die virtuelle Umgebung ist bereits aktiviert!
echo Sie sehen "(venv)" vor Ihrer Kommandozeile.
echo.
pause
+52
View File
@@ -0,0 +1,52 @@
@echo off
REM Schnellstart-Script für Trading Bot
echo ========================================
echo Trading Bot - Schnellstart
echo ========================================
echo.
REM Aktiviere virtuelle Umgebung
if exist "venv\Scripts\activate.bat" (
call venv\Scripts\activate.bat
echo [OK] Virtuelle Umgebung aktiviert
) else (
echo [WARNUNG] Virtuelle Umgebung nicht gefunden!
echo Bitte führen Sie zuerst setup.bat aus.
pause
exit /b 1
)
echo.
echo Was möchten Sie starten?
echo.
echo [1] Jupyter Notebook (Haupt-Bot)
echo [2] Trading Dashboard (Streamlit)
echo [3] GUI (Tkinter Desktop App)
echo [4] Nur virtuelle Umgebung (Shell)
echo.
set /p choice="Ihre Wahl (1-4): "
if "%choice%"=="1" (
echo.
echo [INFO] Starte Jupyter Notebook...
jupyter notebook TradingBot_V1.6_Adaptive_Complete_CORRECTED.ipynb
) else if "%choice%"=="2" (
echo.
echo [INFO] Starte Trading Dashboard...
streamlit run trading_dashboard.py
) else if "%choice%"=="3" (
echo.
echo [INFO] Starte GUI...
python trading_bot_gui.py
) else if "%choice%"=="4" (
echo.
echo [INFO] Virtuelle Umgebung aktiviert
echo Sie können jetzt Befehle ausführen.
cmd /k
) else (
echo [FEHLER] Ungültige Auswahl!
pause
exit /b 1
)