Since draws are i.i.d., only expected value (jackpot-sharing avoidance)
is actually improvable, not hit probability. Replaces the ad-hoc "lucky
numbers" list with empirically-documented picks, adds general arithmetic-
progression detection (not just +1 consecutive pairs), and scores extreme
odd/even splits and sums higher since humans favor "balanced-looking"
combinations despite every combination being equally likely.
Raises popularity's weight in the quality score from 20% to 50%, since
AI/pattern/recency signals carry no real predictive value and recency
("overdue" numbers) risks converging with other systematic players'
picks, undermining the EV goal. Superzahl selection now uses an EV
heuristic instead of chasing historical draw frequency, which is pure
noise for an independently drawn digit.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Lotto 6aus49 Analyse & Generator
Automatisiertes System zur Analyse von Lotto 6aus49-Daten und Generierung von KI-gestützten Tipps mit Telegram-Benachrichtigungen.
🎲 Features
- 🧠 AI/ML-basierte Tipp-Generierung: Random Forest, Gradient Boosting & Neural Networks
- 🎨 Pattern-Analyse: Historische Verteilungsmuster (NNMMHH, etc.)
- ⚡ Hybrid-Optimization: Multi-objektive Optimierung mit 4 Strategien
- 📚 Real-Time Learning: Kontinuierliche Anpassung der Modelle
- 🤖 Automatisierung: Wöchentliche Tipp-Generierung via Cron
- 📲 Telegram-Benachrichtigungen: Automatische Tipps direkt aufs Smartphone
- 🔄 Data-Updates: 3 verschiedene Methoden (API, Web-Scraping, Manuelle Eingabe)
📁 Verzeichnisstruktur
Lotto/
├── README.md # Diese Datei
├── config/ # Konfigurationsdateien
│ ├── notifications.json # Telegram/Email Config
│ └── notifications.json.example # Beispiel-Konfiguration
├── data/ # Generierte Daten
│ └── generated_tips/ # Hier landen die generierten Tipps
├── scripts/
│ ├── generators/ # Tipp-Generatoren
│ │ └── ultimate_ai_ml_hybrid_generator.py
│ ├── automation/ # Automatisierungs-Scripts
│ │ └── weekly_tip_generator.py
│ ├── analysis/ # Analyse-Scripts
│ └── utils/ # Hilfsfunktionen
│ ├── notifier.py # Benachrichtigungs-System
│ ├── update_from_api.py # API-basiertes Update
│ ├── update_from_web.py # Web-Scraping Update
│ └── simple_update.py # Manuelle Eingabe
├── results/ # Auswertungen & Grafiken
├── logs/ # Log-Dateien
└── setup_cron.sh # Cron-Job Einrichtung
🚀 Quick Start
1. Installation
# Python-Abhängigkeiten installieren
pip install pandas numpy scikit-learn requests
# Optional: Deep Learning
pip install tensorflow
2. Telegram-Bot einrichten
- Erstelle einen Bot mit @BotFather
- Kopiere den Bot-Token
- Hole deine Chat-ID (z.B. mit @userinfobot)
- Konfiguriere
config/notifications.json:
{
"telegram": {
"enabled": true,
"bot_token": "YOUR_BOT_TOKEN",
"chat_id": "YOUR_CHAT_ID"
}
}
3. Manuell Tipps generieren
cd scripts/automation
python weekly_tip_generator.py --force --num-tips 10
4. Telegram-Bot einrichten (optional)
Richte einen eigenen Lotto-Bot für Benachrichtigungen ein:
# Anleitung lesen
cat TELEGRAM_BOT_SETUP.md
# Bot-Token in config/notifications.json eintragen
# Siehe detaillierte Anleitung in TELEGRAM_BOT_SETUP.md
Kurzanleitung:
- Erstelle Bot mit @BotFather auf Telegram
- Trage Bot-Token in
config/notifications.jsonein - Setze
"enabled": true
5. Automatisierung einrichten
# Cron-Job erstellen (Dienstag & Freitag um 9 Uhr)
./setup_cron.sh
📊 Verwendung
Tipps manuell generieren
# Standard: 10 Tipps
python scripts/automation/weekly_tip_generator.py --force
# Anzahl Tipps anpassen
python scripts/automation/weekly_tip_generator.py --force --num-tips 20
# Nur Historie anzeigen
python scripts/automation/weekly_tip_generator.py --history
Generator direkt aufrufen
cd scripts/generators
python ultimate_ai_ml_hybrid_generator.py
Test-Benachrichtigung senden
python scripts/utils/notifier.py --test
🧠 Generator-Strategien
Der Ultimate AI/ML Hybrid Generator verwendet 4 verschiedene Strategien:
- PURE-AI (30%): Basierend ausschließlich auf Machine Learning Predictions
- PURE-PATTERN (25%): Historische Pattern-Analyse (NNMMHH-Kombinationen)
- HYBRID-OPT (30%): Multi-objektive Optimierung (AI + Pattern + Diversity)
- ENSEMBLE (15%): Best-of-all kombiniert alle Ansätze
Ausgabe-Beispiel:
Nr 6 Numbers SZ Strategy AI-Score Pattern-W Confidence Quality
----------------------------------------------------------------------------------------
1 7-14-21-28-35-42 3 PURE-AI 0.7234 0.3456 0.7123 ⭐ 0.756
2 2-11-19-27-36-45 7 HYBRID-OPT 0.6891 0.4123 0.6987 🌟 0.689
3 5-12-23-31-38-47 6 PURE-PATTERN 0.5234 0.5678 0.6234 🌟 0.621
...
📈 Performance Tracking
Alle Generierungen werden in data/generated_tips/generation_history.json getrackt:
{
"generations": [
{
"timestamp": "2024-11-27T09:00:00",
"num_tips": 10,
"file": "weekly_lotto_tips_20241127_090000.csv",
"avg_confidence": 0.6834,
"avg_quality": 0.6521
}
]
}
🤖 Automatisierung
Cron-Job Zeitplan
Der setup_cron.sh Script richtet folgende Zeitpunkte ein:
- Dienstag 09:00: Tipps für Mittwoch-Ziehung
- Freitag 09:00: Tipps für Samstag-Ziehung
Cron-Job manuell einrichten
crontab -e
Füge hinzu:
# Lotto 6aus49 - Dienstag & Freitag 09:00
0 9 * * 2,5 cd /path/to/Lotto && python3 scripts/automation/weekly_tip_generator.py >> logs/weekly_tips.log 2>&1
📲 Telegram-Benachrichtigungen
Bei erfolgreicher Generierung erhältst du automatisch:
- ⭐ Bester Tipp (höchste Confidence)
- 📊 Statistiken (Ø Confidence & Quality)
- 🏆 Top 3 Tipps nach Confidence sortiert
Beispiel-Nachricht:
🎲 LOTTO 6AUS49 - NEUE TIPPS GENERIERT
========================================
📅 Generiert: 2024-11-27 09:00
📊 Anzahl Tipps: 10
⭐ BESTER TIPP:
🎯 Zahlen: 07 - 14 - 21 - 28 - 35 - 42
🌟 Superzahl: 3
📈 Confidence: 0.7234
🎨 Strategie: PURE-AI
🍀 Viel Glück!
🔧 Konfiguration
notifications.json
{
"telegram": {
"enabled": true,
"bot_token": "YOUR_BOT_TOKEN",
"chat_id": "YOUR_CHAT_ID"
},
"email": {
"enabled": false,
"smtp_server": "smtp.gmail.com",
"smtp_port": 587,
"smtp_user": "",
"smtp_password": "",
"from_email": "",
"to_email": ""
}
}
🎰 Lotto 6aus49 Regeln
- 6 Zahlen aus 50 (1-49)
- 1 Superzahl aus 10 (0-9)
- Ziehungen: Mittwoch und Samstag
- Quoten: www.lotto.de
📝 Datenformat
CSV-Datei AlleLottozahlen.csv:
datum;Z1;Z2;Z3;Z4;Z5;Z6;SZ
2024-11-23;7;14;21;28;35;42;3
2024-11-20;2;11;19;27;36;45;7
...
🔄 Daten Aktualisieren
Das System bietet 3 verschiedene Methoden zum Aktualisieren der Lottozahlen:
Methode 1: API-Update (Empfohlen)
Automatisches Laden von öffentlichen Lotto-APIs:
cd scripts/utils
python update_from_api.py
Vorteile:
- ✅ Automatisch
- ✅ Schnell
- ✅ Keine manuelle Eingabe
Hinweis: Funktioniert nur wenn APIs verfügbar sind.
Methode 2: Web-Scraping
Scrapt aktuelle Ziehungen direkt von lotto.de:
cd scripts/utils
python update_from_web.py
Optionen:
# Mehr Seiten laden (mehr historische Daten)
python update_from_web.py --pages 10
# Spezifische Datei
python update_from_web.py /pfad/zur/datei.csv 5
Vorteile:
- ✅ Offizielle Quelle (lotto.de)
- ✅ Zuverlässig
- ✅ Viele historische Daten
Nachteile:
- ⚠️ Kann bei Struktur-Änderungen der Website fehlschlagen
Methode 3: Manuelle Eingabe (Fallback)
Für den Fall dass API und Web-Scraping nicht funktionieren:
cd scripts/utils
python simple_update.py
Zwei Modi:
-
Einzelne Ziehung eingeben:
Format: YYYY-MM-DD Z1 Z2 Z3 Z4 Z5 Z6 SZ Beispiel: 2024-11-27 7 14 21 28 35 42 3 -
CSV-Import:
datum;Z1;Z2;Z3;Z4;Z5;Z6;SZ 2024-11-27;7;14;21;28;35;42;3 2024-11-23;2;11;19;27;36;45;7
Vorteile:
- ✅ Funktioniert immer
- ✅ Volle Kontrolle
- ✅ CSV-Batch-Import möglich
Automatisches Backup
Alle Update-Methoden erstellen automatisch ein Backup vor der Änderung:
- Gespeichert in:
Lotto/data/backups/ - Format:
AlleLottozahlen.csv.backup_YYYYMMDD_HHMMSS
Update-Workflow Empfehlung
-
Versuche zuerst API:
python scripts/utils/update_from_api.py -
Fallback auf Web-Scraping:
python scripts/utils/update_from_web.py -
Letzter Fallback - Manuelle Eingabe:
python scripts/utils/simple_update.py
Nach dem Update
Nach dem erfolgreichen Update der Daten:
# Neue Tipps generieren (mit automatischem Retraining)
python scripts/automation/weekly_tip_generator.py --force
# Oder direkt den Generator aufrufen
python scripts/generators/ultimate_ai_ml_hybrid_generator.py
🤖 Automatisches ML-Retraining
Das System verwendet intelligentes Retraining:
- ✅ Automatische Erkennung: Prüft ob CSV neuer als ML-Cache
- ✅ Smart Caching: Nutzt Cache wenn Daten unverändert
- ✅ Auto-Retrain: Trainiert neu wenn neue Daten verfügbar
So funktioniert es:
- Nach
update_from_api.pywird CSV aktualisiert - Beim nächsten Generator-Start: CSV-Timestamp > Cache-Timestamp
- ✅ Automatisches Retraining mit neuen Daten
- Neue ML-Modelle berücksichtigen aktuelle Ziehungen
Manuelles Retraining erzwingen:
# Cache löschen für komplettes Retraining
rm -rf ultimate_ml_models/
python scripts/generators/ultimate_ai_ml_hybrid_generator.py
🛠️ Entwicklung
Neue Strategie hinzufügen
- Öffne
scripts/generators/ultimate_ai_ml_hybrid_generator.py - Füge neue Strategie in
strategy_weightshinzu - Implementiere
_generate_<strategy>_tip()Methode - Update
_generate_tips_by_strategy()
Logging aktivieren
import logging
logging.basicConfig(
filename='logs/generator.log',
level=logging.INFO,
format='%(asctime)s - %(levelname)s - %(message)s'
)
⚠️ Hinweise
- Keine Gewinngarantie: Dies ist ein statistisches Analyse-Tool
- Historische Daten: Vergangene Ziehungen garantieren keine zukünftigen Ergebnisse
- Verantwortungsvoll spielen: Lotto ist Glücksspiel
- Bot-Token: Niemals öffentlich teilen!
📜 Lizenz
Dieses Projekt ist für private Zwecke. Keine kommerzielle Nutzung.
🙋 Support
Bei Fragen oder Problemen:
- Check die Logs:
logs/weekly_tips.log - Test-Benachrichtigung:
python scripts/utils/notifier.py --test - Historie prüfen:
python scripts/automation/weekly_tip_generator.py --history
🍀 Viel Glück bei der nächsten Ziehung! 🍀