# Trading Data Daemon Ein modularer Daemon zum Herunterladen und Speichern von Handelsdaten von verschiedenen Börsen in einer Time-Series-Datenbank. ## Unterstützte Exchanges - **European Investor Exchange (EIX)**: Lädt tägliche Kursblatt-CSVs herunter. - **Lang & Schwarz (LS)**: Fragt die heutigen Trades über deren JSON/CSV-RPC ab. ## Architektur - `src/exchanges/base.py`: Basisklasse für neue Börsen (einfach erweiterbar). - `src/database/questdb_client.py`: Speichert Daten in QuestDB via Influx Line Protocol (ILP). - `daemon.py`: Der Orchestrator, der die Daten abruft und speichert. ## Installation und Setup ### 1. QuestDB (Timeseries DB) starten Am einfachsten via Docker Compose: ```bash docker-compose up -d ``` QuestDB ist dann unter `http://localhost:9000` erreichbar. ### 2. Python Abhängigkeiten installieren ```bash pip install -r requirements.txt ``` ### 3. Systemd Service einrichten Kopiere die Dateien nach `/etc/systemd/system/`: ```bash sudo cp systemd/trading-daemon.service /etc/systemd/system/ sudo cp systemd/trading-daemon.timer /etc/systemd/system/ ``` Pfade in `trading-daemon.service` müssen ggf. angepasst werden (aktuell auf `/Users/melchiorreimers/...` gesetzt). Dienste aktivieren: ```bash sudo systemctl daemon-reload sudo systemctl enable --now trading-daemon.timer ``` ### 4. Manuell testen ```bash python3 daemon.py ``` ## Erweiterung Um eine neue Börse hinzuzufügen, erstelle einfach eine neue Klasse in `src/exchanges/`, die von `BaseExchange` erbt und implementiere `fetch_latest_trades()`. Füge sie dann in `daemon.py` zur Liste hinzu.