Files
Eurojackpot-Tipp-Generator/scripts/automation
cbazzaandClaude Sonnet 4.6 4fc488c668 Improve generator quality and fix data gaps (Apr-May 2026)
Data:
- Add 12 missing draws (2026-01-09, 2026-04-03 to 2026-05-15)
- Retrain LSTM and RF models on complete 952-draw dataset
- Run retroactive learning for all 12 skipped draws

Automation:
- Add eurojackpot-zahlen.eu web scraper as fallback when APIs fail
- Fixes recurring gap problem caused by Sazka detail-endpoint change

Generator improvements:
- Add hard structural filters (sum 95-165, min 1 even + 1 odd per tip)
- Add long-term frequency prior as learner dampener (alpha=0.2)
- Fix ENSEMBLE strategy generating duplicate tips (greedy → weighted random)
- Fix non-vectorized frequency calculation (stack().value_counts())
- Fix Division-by-Zero edge case in set_frequency_prior
- Fix potential KeyError on euro_ai_score in structural filter loop

.gitignore:
- Exclude data/backups/, weekly tip CSVs, performance reports

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-19 10:35:57 +02:00
..

Eurojackpot Automation System

Vollautomatisches System für wöchentliche Tipp-Generierung und Learning nach Ziehungen.

📋 Überblick

Das System besteht aus 2 Hauptkomponenten:

  1. Weekly Tip Generator - Generiert automatisch Tipps vor Ziehungen
  2. Auto Update & Learn - Aktualisiert Daten und lernt nach Ziehungen

🚀 Installation

1. Virtuelle Umgebung aktivieren

cd "/Users/sebastianfrohlich/Library/Mobile Documents/com~apple~CloudDocs/Jupyter Notebooks/Eurojackpot"
source venv/bin/activate

2. Scripts ausführbar machen

chmod +x scripts/automation/*.py

🎯 Manuelle Nutzung

Tipps generieren

# Normale Generierung (prüft ob nötig)
python scripts/automation/weekly_tip_generator.py

# Erzwinge Generierung
python scripts/automation/weekly_tip_generator.py --force

# Generiere 20 Tipps statt 10
python scripts/automation/weekly_tip_generator.py --num-tips 20

# Zeige nur Historie
python scripts/automation/weekly_tip_generator.py --history

Nach Ziehung aktualisieren

# Kompletter Workflow: Update + Evaluation + Learning
python scripts/automation/auto_update_and_learn.py

Automatisierung mit Cron

Setup

  1. Öffne Crontab:
crontab -e
  1. Füge folgende Zeilen hinzu:
# Pfad zur virtuellen Umgebung
EUROJACKPOT_PATH="/Users/sebastianfrohlich/Library/Mobile Documents/com~apple~CloudDocs/Jupyter Notebooks/Eurojackpot"

# Montag & Donnerstag 09:00 Uhr: Tipps generieren (vor Ziehung)
0 9 * * 1,4 cd "$EUROJACKPOT_PATH" && source venv/bin/activate && python scripts/automation/weekly_tip_generator.py >> logs/tips_generation.log 2>&1

# Dienstag & Freitag 21:00 Uhr: Update nach Ziehung
0 21 * * 2,5 cd "$EUROJACKPOT_PATH" && source venv/bin/activate && python scripts/automation/auto_update_and_learn.py >> logs/auto_update.log 2>&1
  1. Speichern (ESC, :wq in vim)

Cron Zeitplan

Montag 09:00    → Tipps für Dienstag-Ziehung generieren
Dienstag 20:00  → Ziehung findet statt
Dienstag 21:00  → Auto-Update & Learning

Donnerstag 09:00 → Tipps für Freitag-Ziehung generieren
Freitag 20:00    → Ziehung findet statt
Freitag 21:00    → Auto-Update & Learning

Logs prüfen

# Erstelle Log-Verzeichnis
mkdir -p logs

# Zeige letzte Tipps-Generierung
tail -50 logs/tips_generation.log

# Zeige letzte Updates
tail -50 logs/auto_update.log

📊 Dateien & Verzeichnisse

data/
├── generated_tips/              # Generierte Tipps
│   ├── weekly_tips_*.csv       # Tipp-Dateien
│   └── generation_history.json # Historie
│
├── performance_reports/         # Performance-Reports
│   └── report_*.txt            # Reports nach Ziehungen
│
├── learning_log.json           # Learning-Historie
└── backups/                    # Automatische Backups

logs/
├── tips_generation.log         # Cron Log für Generierung
└── auto_update.log             # Cron Log für Updates

🔍 Features im Detail

Weekly Tip Generator

Intelligente Prüfung:

  • Generiert nur wenn nötig (> 3 Tage seit letzter Generierung)
  • Berücksichtigt Wochentage (Montag/Donnerstag vor Ziehungen)
  • Vermeidet unnötige Generierungen

Historie-Tracking:

  • Speichert alle Generierungen
  • Trackt Confidence & Quality Scores
  • Ermöglicht Performance-Analyse über Zeit

Ausgabe:

📊 GENERIERUNGS-HISTORIE
======================================================================
Nr   Datum                Tips   Confidence   Quality      Datei
----------------------------------------------------------------------
1    2025-01-20 09:00     10     0.5823       0.6734      weekly_tips_20250120_090000.csv
2    2025-01-16 09:00     10     0.5891       0.6812      weekly_tips_20250116_090000.csv

Auto Update & Learn

4-Schritt-Workflow:

  1. Daten aktualisieren

    • Lädt neueste Ziehung von API
    • Erstellt automatisches Backup
    • Validiert Daten
  2. Neue Ziehung prüfen

    • Erkennt automatisch neue Ziehungen
    • Verhindert Doppel-Verarbeitung
    • Extrahiert Ziehungsdaten
  3. Tipps evaluieren

    • Vergleicht letzte Tipps mit Ziehung
    • Zählt Treffer (Main + Euro)
    • Ermittelt beste Strategien
  4. Learning Update

    • Passt ML-Modelle an
    • Aktualisiert Predictions
    • Speichert Performance-Metriken

Evaluation Output:

🎯 EVALUIERE LETZTE TIPPS
======================================================================
   Tip   Strategie       Main   Euro   Gesamt   Bewertung
   ------------------------------------------------------------
   #1    PURE-AI         2      1      3        ✅ Gut
   #2    HYBRID-OPT      3      0      3        ✅ Gut
   #3    PURE-PATTERN    1      1      2        👍 OK
   ...

   🏆 Bester Tipp: #2 (3 Main + 0 Euro)

📈 Performance-Reports

Reports werden automatisch nach jeder Ziehung erstellt:

======================================================================
EUROJACKPOT PERFORMANCE REPORT
======================================================================
Erstellt: 2025-01-17 21:05:23

ZIEHUNG VOM 2025-01-17
----------------------------------------------------------------------
Hauptzahlen: [3, 9, 12, 24, 39]
Eurozahlen:  [5, 10]

EVALUATION DER TIPPS
----------------------------------------------------------------------
Datei: weekly_tips_20250115_090000.csv
Tipps evaluiert: 10
Avg Main Matches: 1.80
Avg Euro Matches: 0.60
Bester Tipp: #5
  - Main Treffer: 3
  - Euro Treffer: 1
======================================================================

🛠️ Troubleshooting

"No module named 'requests'"

cd "/Users/sebastianfrohlich/Library/Mobile Documents/com~apple~CloudDocs/Jupyter Notebooks/Eurojackpot"
source venv/bin/activate
pip install requests beautifulsoup4 pandas numpy scikit-learn

"Permission denied"

chmod +x scripts/automation/*.py

Cron läuft nicht

# Prüfe Cron-Service
launchctl list | grep cron

# Prüfe System-Logs
tail -f /var/log/system.log | grep cron

# Test manuell
cd "/path/to/eurojackpot"
source venv/bin/activate
python scripts/automation/weekly_tip_generator.py

Logs sind leer

Stelle sicher dass das logs-Verzeichnis existiert:

mkdir -p logs

🎯 Best Practices

1. Teste manuell vor Cron

# Test 1: Tipps generieren
python scripts/automation/weekly_tip_generator.py --force

# Test 2: Update & Learn
python scripts/automation/auto_update_and_learn.py

2. Überwache Logs regelmäßig

# Wöchentlich prüfen
tail -100 logs/tips_generation.log
tail -100 logs/auto_update.log

3. Backup-Strategie

Backups werden automatisch erstellt, aber zusätzlich:

# Manuelles Backup
cp AlleEurojackpotzahlen.csv "AlleEurojackpotzahlen_$(date +%Y%m%d).csv"

4. Performance-Analyse

# Zeige Generierungs-Historie
python scripts/automation/weekly_tip_generator.py --history

# Analysiere Reports
cat data/performance_reports/report_*.txt | grep "Avg Main Matches"

📱 Benachrichtigungen (Optional)

Füge Benachrichtigungen zu Cron hinzu:

macOS Notification

# In Cron-Zeile hinzufügen:
&& osascript -e 'display notification "Eurojackpot Tipps generiert" with title "Automation"'

Email (wenn konfiguriert)

# In Cron-Zeile:
&& echo "Tipps generiert" | mail -s "Eurojackpot Update" your@email.com

🔄 Workflow-Diagramm

WOCHE
│
├─ Montag 09:00
│  └─ 🎲 Generiere Tipps für Dienstag
│     └─ weekly_tips_TIMESTAMP.csv
│
├─ Dienstag 20:00
│  └─ 🎰 Ziehung findet statt
│
├─ Dienstag 21:00
│  └─ 🔄 Auto-Update & Learning
│     ├─ Daten aktualisieren
│     ├─ Tipps evaluieren
│     ├─ Learning Update
│     └─ Report erstellen
│
├─ Donnerstag 09:00
│  └─ 🎲 Generiere Tipps für Freitag
│     └─ weekly_tips_TIMESTAMP.csv
│
├─ Freitag 20:00
│  └─ 🎰 Ziehung findet statt
│
└─ Freitag 21:00
   └─ 🔄 Auto-Update & Learning
      ├─ Daten aktualisieren
      ├─ Tipps evaluieren
      ├─ Learning Update
      └─ Report erstellen

💡 Tipps

  1. Erste Woche: Nutze --force um initiale Tipps zu generieren
  2. Strategie-Mix: Das System nutzt automatisch den optimalen Mix
  3. Learning: Nach 4-5 Ziehungen beginnt das System besser zu werden
  4. Reports: Analysiere Reports monatlich für Trend-Analyse
  5. Backup: Die automatischen Backups werden im backups/ Ordner gespeichert

🆘 Support

Bei Problemen:

  1. Prüfe Logs: tail -100 logs/*.log
  2. Teste manuell: python script.py
  3. Prüfe venv: source venv/bin/activate && pip list
  4. Checke Cronjobs: crontab -l

Version: 1.0 Erstellt: 2025-01-25 Kompatibel mit: Ultimate AI-ML Generator V2.1