Ich habe eine Home-Assistant-Integration veröffentlicht, um Aktien & ETFs per ISIN über die ING API auszulesen.
Features:
Kurs, Änderung (% / absolut), Zeitstempel
keyfigures dynamisch (nur wenn verfügbar)
Scan- Intervall pro ISIN nachträglich änderbar (Options-Flow)
ApexCharts tauglich
HACS ready
Die Integration ist inspiriert von der ING Stocks Integration von RalfEs73. Ich fand es aber umständlich die Sensoren in der Homeassitant configuration.yaml anzulegen, von daher eine eigene Integration. (Options-Flow, stabileres API-Handling, dynamische Sensoren).
Neue Version meiner Home-Assistant-Integration ING Stocks Plus ist online.
Neu u. a.: Instrument-Typ (Auto/ETF/Aktie), bessere Icons, optimierte Optionen.
Bei Rentenfonds/Unternehmensanleihen (z. B. ISIN LU2609723320) ist es leider so, dass diese nicht immer von der ING-Schnittstelle unterstützt werden. In solchen Fällen liefert die API keinen Kurs, obwohl die ISIN korrekt ist.
Das ist leider eine Einschränkung der Datenquelle, nicht der Integration selbst.
ich habe einen Vorschlag (überhaupt so möglich?) zur Intergration. Ist es möglich innerhalb dieser Integration eine Erweiterung einzubringen, die auf Eingabe einer Stückzahl, den Gesamtwert der Position berechnent? Könnte ich wohl auch irgendwie anders lösen (Helfer o.ä.), wäre aber super wenn das innerhalb der Intergration gehen könnte. Z.B.
Ich möchte nicht unbescheiden sein aber ich hätte noch eine Idee. Ich habe versucht mittels eines Helfers die Summe aller “sensor.*positionswert” zusammenzuzählen um den Depotbestand anzuzeigen. Das kann ich zwar in einem Summenhelfer machen, müßte da aber dann immer die aktuellen Postionen nachpflegen, wenn sich was am Depot ändert. Ungünstig.
Perplexity hat mir dazu einen Vorschlag gemacht, der funktioniert aber nicht und ich komme damit nicht weiter. Hättest du dazu eine Idee?
template:
- sensor:
- name: "Gesamter Positionswert"
unique_id: gesamter_positionswert
unit_of_measurement: "" # Passe an, z.B. "kWh" oder leer
state: >
{% set ns = namespace(total=0) %}
{% for state in states.sensor %}
{% if state.attributes.positionswert is number %}
{% set ns.total = ns.total + state.attributes.positionswert %}
{% endif %}
{% endfor %}
{{ ns.total | round(2) }}
state_class: total_increasing # Optional für Statistiken
device_class: energy # Optional, je nach Einheit
icon: mdi:calculator
@Sun_Dancer78 bei mir läuft das grundsätzlich auch sehr gut. Vielen Dank für die Arbeit. Aber egal was ich beim Update-Intervall einstelle, aktualisiert er den Aktienkurs alle paar Sekunden. Ich hab 300 Sekunden eingestellt (also 5 Minuten), aber trotzdem wird der Kurs nach spätestens 30 Sekunden aktualisiert. Was mach ich falsch?
der Timer sollte eigentlich in Minuten sein. Wenn man den Wert ändert, ist der Abfragehäufigkeit unverändert. So ein Intervall alle 10-20 Sekunden ist nicht sinnvoll. Schade
Entweder wartest Du, ob @Sun_Dancer78 den Fix in seine Version übernimmt und eine neue Version veröffentlicht. Oder Du musst die Änderungen selbst in der sensor.py machen (ist eigentlich nur eine kleine Änderung). Bei mir hat die Änderung wie in dem Link angegeben funktioniert.