CKW-Strompreise per API in Loxone einbinden — so geht's

Ja, das geht: Der Loxone Miniserver kann über einen Virtuellen HTTP-Eingang eine Preis-API abfragen, den JSON-Wert per Befehlserkennung herausschneiden und daraus eine Analog-Variable machen — auf die du dann Boiler, Wärmepumpe oder Wallbox schaltest. Der einzige echte Knackpunkt ist die Quelle: Du brauchst eine Endpoint-URL, die dir stündliche Preise als JSON liefert, und du musst prüfen, ob dein CKW-Tarif überhaupt dynamisch (stündlich) abgerechnet wird oder nur ein Hoch-/Niedertarif-Modell ist.
1) In Loxone Config einen 'Virtuellen HTTP Eingang' anlegen und dort die Adresse deiner Preisquelle eintragen, Abfragezyklus z. B. alle 300–900 Sekunden (nicht im Sekundentakt — Preise ändern sich stündlich). 2) Darunter einen 'Virtuellen HTTP Eingang Befehl' erzeugen und mit 'Befehlserkennung' (Start-/End-Zeichenkette rund um den Zahlenwert) den Preis aus dem JSON schneiden. 3) Den Eingang als Analog-Wert auf einen Merker/Statusbaustein legen. 4) Auf diesen Wert einen Schwellwert- oder Vergleichs-Baustein setzen, dessen Ausgang deinen Verbraucher freigibt.

Ein API-Preis nützt dir nur, wenn deine Abrechnung ihm folgt. Frag bei CKW konkret nach: Ist mein Produkt stundenabhängig (Spotpreis-gekoppelt) oder ein klassischer Tarif mit festen Zeitfenstern? Und: Gibt es zu meinem Produkt eine offizielle Schnittstelle oder einen Datendownload? Ohne bestätigte Endpoint-URL aus erster Hand solltest du keine Adresse 'raten' — nimm die Angaben deines Versorgers, nicht die aus einem Forum. Wenn dein Tarif nicht stundenvariabel ist, sparst du mit Preis-Automatik nichts; dann ist Eigenverbrauchs-Optimierung der bessere Hebel.

Viele Loxone-Installationen ziehen nicht den Endkundenpreis, sondern den Börsen-/Spotpreis als JSON und rechnen die restlichen Bestandteile im Miniserver dazu. Praktisch heisst das: Börsenpreis (Rappen bzw. Cent pro kWh) plus deine fixen Aufschläge — Netznutzung, Abgaben, Marge — als Konstante addieren. Das ergibt zwar keinen rechtsverbindlichen Abrechnungspreis, aber die richtige *Rangfolge* der Stunden. Und für Schaltentscheidungen zählt genau die: teuerste vs. günstigste Stunde des Tages.

Zwei Fehler kosten regelmässig Nerven: Erstens die Einheit. Börsen-Feeds liefern typischerweise pro MWh, deine Rechnung denkt in kWh — Faktor 1000. Vergisst du ihn, schaltet dein Schwellwert nie oder immer. Zweitens die Zeitzone: Preis-Feeds geben Zeitstempel häufig in UTC aus, dein Miniserver läuft auf Lokalzeit. Im Sommer sind das zwei Stunden Versatz — du heizt dann konsequent im falschen Fenster. Prüf beides einmal am ersten Tag gegen einen manuell abgelesenen Preis, statt es zu unterstellen.

Der HTTP-Eingang holt einen Wert — er kennt keine Vorschau. Für 'schalte in den 3 günstigsten Stunden der Nacht' brauchst du die ganze Tageskurve, und die aus einem JSON-Array im Loxone-Baustein zu sortieren, ist Bastelei. Der saubere Weg: ein kleiner Vorrechner (Raspberry Pi o. ä.) holt die Kurve, bestimmt die günstigen Stunden und schickt dem Miniserver nur noch ein simples Frei/Sperr-Signal per Virtuellem Eingang. Wir setzen dieses Muster — Pi holt und rechnet, Loxone schaltet — bei Kunden ein, weil es genau die Grenze respektiert, die der Miniserver hat.
Ein Klassiker aus der Praxis: Der Wert kommt sauber im Miniserver an (HTTP 200, Variable zeigt den Preis), aber das Gerät reagiert nicht — weil der Ausgang zum Wechselrichter oder zur Wärmepumpe (z. B. per Modbus) nie fertig verdrahtet wurde. Sichtbarer Wert ≠ wirksame Steuerung. Teste deshalb bewusst mit einem künstlich niedrigen Schwellwert und schau am Gerät nach, ob es wirklich anläuft.