Eine Home Assistant Custom Integration zur Verwaltung und Überwachung von Aktienportfolios. Kursdaten werden primär von der ING Wertpapiere API bezogen – zuverlässig, aktuell und ohne API-Key. Optional können Analysten-Kursziele über Financial Modeling Prep (FMP) abgerufen werden.
- 📡 ING Wertpapiere API als primäre Kursquelle (via ISIN, kein Key erforderlich)
- 📊 Yahoo Finance als Alternative – ideal für US-Aktien und ETFs ohne ISIN
- ⚙️ Datenquelle pro Aktie wählbar – ING und Yahoo lassen sich mischen
- 🔄 Automatische Aktualisierung im konfigurierbaren Intervall (Standard: 15 Min.)
- 💼 Mehrere Portfolios gleichzeitig verwaltbar
- ➕ Aktien vollständig über die HA-Benutzeroberfläche hinzufügen, bearbeiten, löschen
- 🔢 Stückzahl als Dezimalzahl – Bruchteile für ETF-Sparpläne möglich (z.B. 2,50 Stück)
- 💾 Persistente Speicherung – Daten bleiben nach HA-Neustart erhalten
- 📈 Gewinn/Verlust in % und € seit Kauf (Echtzeit)
- 📉 Tagesperformance absolut und prozentual
- 🔔 Kurs-Alarme – Limit oben / Limit unten mit Boolean-Sensoren
- 💹 Portfolio-Gesamt-Sensoren – Gesamtinvest, aktueller Wert, Rendite %
- 🎯 Kursziel Hoch / Tief / Mittel der letzten 12 Monate
- 🗳️ Konsens-Rating: Buy / Hold / Sell
- 🔢 Anzahl der Analysten
- 🃏 9 spezialisierte Lovelace-Cards – keine externe Card-Library nötig
- 📉 Jahreschart mit SMA 100/200, Trendlinie und Analysten-Kursziel
- 🌍 4 Sprachen: Deutsch, Englisch, Französisch, Spanisch
| Anforderung | Details |
|---|---|
| Home Assistant | Version 2024.1 oder neuer |
| HACS | Installiert und eingerichtet |
| Internetzugang | Für ING API und optional FMP |
| ING API-Key | Nicht erforderlich |
| FMP API-Key | Optional – kostenlos auf financialmodelingprep.com |
- HACS öffnen → Integrationen → ⋮ → Benutzerdefinierte Repositories
- URL eingeben:
https://github.com/manuematic/my_portfolio - Kategorie: Integration → Hinzufügen
- Integration suchen: Mein Portfolio → Installieren
- Home Assistant neu starten
- Alle
.js-Dateien aus demwww/-Ordner nach/config/www/kopieren - Einstellungen → Dashboards → Ressourcen → + Ressource hinzufügen
- Für jede Datei:
/local/dateiname.js→ Typ: JavaScript-Modul
Tipp bei Updates: Nach dem Ersetzen einer
.js-Datei den Browsercache umgehen, indem die Ressource-URL um eine Versionsnummer ergänzt wird:/local/dateiname.js?v=2
- Einstellungen → Integrationen → + Integration hinzufügen
- Nach „Mein Portfolio" suchen und auswählen
- Portfolio-Namen eingeben (z.B. „Technologie-Depot")
- Aktualisierungsintervall wählen (Standard: 15 Minuten)
- Optional: FMP API-Key für Analysten-Kursziele eintragen
Alle Aktien werden direkt über die HA-Benutzeroberfläche verwaltet:
Einstellungen → Integrationen → Mein Portfolio → Konfigurieren
| Feld | Pflicht | Beschreibung |
|---|---|---|
| Kürzel | ✅ | Börsenkürzel (z.B. AAPL, SAP.DE) |
| Datenquelle | ✅ | ING (empfohlen) oder Yahoo Finance |
| ISIN | ✅ bei ING | z.B. DE0007164600 für SAP |
| WKN | ☐ | z.B. 716460 |
| Bezeichnung | ✅ | Anzeigename (z.B. „SAP SE") |
| Kaufpreis | ✅ | Preis pro Stück in € (z.B. 182.500) |
| Stückzahl | ✅ | Anzahl Stücke, Dezimalzahl möglich (z.B. 2.50) |
| Kaufdatum | ✅ | Datum des Kaufs |
| Limit unten | ☐ | Alarm wenn Kurs diesen Wert unterschreitet |
| Limit oben | ☐ | Alarm wenn Kurs diesen Wert überschreitet |
| Aktie | ISIN (für ING) | Kürzel (für Yahoo) |
|---|---|---|
| SAP SE | DE0007164600 |
SAP.DE |
| BASF | DE000BASF111 |
BAS.DE |
| Apple | US0378331005 |
AAPL |
| Microsoft | US5949181045 |
MSFT |
| Bitcoin | – | BTC-USD |
| iShares DAX ETF | DE0005933931 |
EXS1.DE |
type: custom:my-portfolio-overview-card
title: Mein Portfoliotype: custom:my-portfolio-topflop-cardtype: custom:my-portfolio-total-performance-card
sort: pct # pct | eur | alpha
order: desc # desc | asctype: custom:my-portfolio-daily-topflop-cardtype: custom:my-portfolio-daily-all-card
sort: pct
order: desctype: custom:my-portfolio-watchlist-card
sort: alpha # alpha | pct | kurs
order: ascKreisrunder Statusindikator pro Aktie:
- ⬜ Leerer Ring = innerhalb der Limits (oder kein Limit gesetzt)
- 🟢 Grüner Ring = Limit oben überschritten
- 🔴 Roter Ring = Limit unten unterschritten
type: custom:my-portfolio-alerts-cardZeigt nur Aktien mit aktivem Alarm. Bei keinem Alarm: ✅ Bestätigungsmeldung.
type: custom:my-portfolio-chart-card
title: KursverlaufJahreschart mit auswählbarer Aktie. Optionale Overlays: 100-Tage-Linie · 200-Tage-Linie · Trendlinie · Analysten-Kursziel
type: custom:my-portfolio-analyst-card
sort: upside # upside | pct | alpha
order: descErfordert FMP API-Key in den Integrationseinstellungen.
automation:
alias: "Portfolio Alarm – Limit überschritten"
trigger:
- platform: state
entity_id: sensor.sap_se
attribute: alarmoben
to: true
action:
- service: notify.mobile_app
data:
title: "📈 Kurs-Alarm!"
message: >
{{ state_attr('sensor.sap_se', 'bezeichnung') }} hat das obere Limit
({{ state_attr('sensor.sap_se', 'limitoben') }} €) überschritten.
Aktueller Kurs: {{ states('sensor.sap_se') }} €| Quelle | Verwendung | API-Key | Limit |
|---|---|---|---|
| ING Wertpapiere | Aktuelle Kurse (Default) | Nein | Keine bekannte Begrenzung |
| Yahoo Finance | Kurse US-Aktien / Fallback | Nein | Inoffiziell, kann variieren |
| Financial Modeling Prep | Analysten-Kursziele | Ja (kostenlos) | 250 Req./Tag |
| Attribut | Beschreibung |
|---|---|
kuerzel |
Börsenkürzel |
bezeichnung |
Name der Aktie |
isin |
ISIN |
wkn |
WKN |
preis |
Kaufpreis pro Stück in € |
stueckzahl |
Anzahl Stücke (Dezimal möglich) |
kaufdatum |
Kaufdatum |
datenquelle |
ing oder yahoo_finance |
limitoben / limitunten |
Kurslimits |
alarmoben / alarmunten |
Alarm-Boolean |
gewinn |
Performance seit Kauf in % |
kurs_vortag |
Vortages-Schlusskurs |
tages_aenderung_abs |
Tagesveränderung in € |
tages_aenderung_pct |
Tagesveränderung in % |
kursziel_hoch/tief/mittel |
Analysten-Kursziele (FMP) |
analysten_konsens |
Buy / Hold / Sell |
portfolio_name |
Zugehöriges Portfolio |
MIT License