Skip to content
Alle Leitfäden zu Optionen und Futures
DeFi-Preisreferenzen8 Min. Lesezeit

Wie DeFi-Preis-Orakel Preise aggregieren und veröffentlichen

Erfahren Sie, wie Preisbeobachtungen aggregiert werden, wann Heartbeat und Abweichung Updates auslösen und was Frischeprüfungen sowie L2-Sequencer-Prüfungen leisten.

In diesem LeitfadenEin Oracle veröffentlicht einen Referenzwert, keinen ausführbaren Marktpreis

Kurze Zusammenfassung

Ein Preis-Orakel bringt einen externen Referenzwert in einen Smart Contract. Bei einem verbreiteten Push-Feed werden mehrere Offchain-Beobachtungen zu einem signierten Bericht zusammengeführt, Onchain veröffentlicht und vom Protokoll ausgelesen. Abweichungsschwelle und Heartbeat beeinflussen den Veröffentlichungszeitpunkt; der Verbraucher muss außerdem Dezimalstellen, Quotierung, `updatedAt` und auf manchen L2-Netzen den Sequencer-Status prüfen. Diese Kontrollen mindern einzelne Risiken, garantieren aber weder einen wahren noch für jeden Zweck frischen Preis oder eine sichere Transaktion.

Ein Oracle veröffentlicht einen Referenzwert, keinen ausführbaren Marktpreis

Ein Oracle verbindet Informationen außerhalb einer Blockchain mit Code, der Onchain ausgeführt wird. Ein Kreditprotokoll kann einen Feed zur Bewertung von Sicherheiten lesen; ein Derivatevertrag kann einen Referenzwert für Abrechnung oder Risikogrenzen verwenden. Der Vertrag kann den veröffentlichten Zustand lesen, aber nicht selbst alle externen Orderbücher prüfen und den fairen Marktpreis bestimmen.

„Preis“ kann ein Asset-zu-Notierungswährung-Paar, ein protokollspezifischer Rücknahmesatz oder eine andere Größe sein. Er entspricht nicht automatisch dem Preis, zu dem sich eine große Position verkaufen lässt. Der Leitfaden zu DEX-Swap-Preiseffekt und Slippage und Mark Price gegenüber letztem Handel behandeln andere Preisunterschiede. Hier geht es um gängige EVM-Push-Feeds, nicht um eine Regel für ganz DeFi.

Wie Beobachtungen zu einem Onchain-Wert werden

Bei Chainlinks Offchain-Reporting tauschen Oracle-Knoten Beobachtungen Offchain aus und stimmen einem Bericht zu. Ein Quorum signiert ihn; ein Übermittler reicht ihn als Transaktion ein; der Aggregator prüft die Signaturen und stellt Antwort, Rundenkennung und Zeitstempel bereit. Die Offchain-Reporting-Dokumentation beschreibt den Median der Beobachtungen als veröffentlichten Wert.

Der Verbraucher wiederholt normalerweise nicht die ganze Aggregation, sondern ruft latestRoundData() über die Feed-Proxy-Adresse auf. Hinter der Proxy-Adresse kann sich der Aggregator ändern. Prüfen Sie den passenden Netzwerk- und Feed-Eintrag im EVM-Leitfaden und in der API-Referenz. Viele Knoten bedeuten nicht automatisch unabhängige Datenquellen; mehrere Betreiber können dieselben Börsen oder Anbieter nutzen.

Textfreie Szene: Marktbeobachtungen laufen über mehrere Knoten zu einem Preis-Feed und danach durch ein Prüf-Gate zu einem Sicherheiten-Tresor.
Beobachtungen werden gebündelt und an den Verbraucher übermittelt; Aktualität und Sequencer-Status sind getrennte Prüfungen.

Heartbeat und Abweichung steuern Veröffentlichungs-Auslöser

Viele Push-Feeds kombinieren eine Abweichungsschwelle mit einem Heartbeat. Eine definierte prozentuale Bewegung seit dem letzten veröffentlichten Wert kann einen neuen Bericht auslösen; der Heartbeat kann nach einer Zeitspanne auch ohne große Bewegung ein Update anfordern. Die aktuelle Data-Feeds-Übersicht und die Adressliste führen Parameter nach Asset, Netzwerk und Feed auf.

Das sind feed-spezifische Auslöser, keine allgemeine Zusage, alle N Sekunden zu aktualisieren. Kleine Kursbewegungen können die Abweichungsschwelle verfehlen; ein angefordertes Update muss außerdem beobachtet, übermittelt und in einen Block aufgenommen werden. Ein Heartbeat garantiert deshalb weder einen exakten Ankunftszeitpunkt noch, dass ein Preis nie veraltet. Das Protokoll braucht eine eigene, zum Anwendungsfall passende Altersgrenze.

Antwort, Dezimalstellen und Notierungswährung richtig lesen

latestRoundData() liefert Rundenkennung, answer, startedAt, updatedAt und answeredInRound; die API-Referenz kennzeichnet das letzte Feld als veraltet. answer ist eine Festkommazahl als Ganzzahl. Lesen Sie decimals() und die Beschreibung des konkreten Feeds. Liefert ein hypothetischer BTC/USD-Feed 6,725,000,000,000 mit 8 Feed-Dezimalstellen, entspricht das 67.250 US-Dollar je BTC.

Feed-Dezimalstellen und Token-Dezimalstellen sind verschieden. Eine ERC-20-Menge kann 18 Stellen haben, die Preisantwort aber 8. Beide Werte müssen vor einer Multiplikation anhand ihrer eigenen Einheiten skaliert werden. BTC/USD bedeutet Dollar je Bitcoin; USD/BTC ist die inverse Einheit. Für abgeleitete Paare müssen beide Feeds korrekt skaliert und in der passenden Reihenfolge dividiert werden; das Denominationsbeispiel zeigt BTC/EUR aus BTC/USD und EUR/USD.

Eine Aktualitätsprüfung ist eine Anwendungsregel

updatedAt bezeichnet die Aktualisierung der letzten Runde. Der Verbraucher kann den Wert mit dem Zeitstempel des aktuellen Blocks vergleichen und Antworten oberhalb seines maximalen Alters ablehnen. Je nach Feed und Protokoll lassen sich auch ein nicht-null Aktualisierungszeitpunkt, eine positive Antwort für einen positiv bepreisten Vermögenswert und plausible Grenzen prüfen. Zu enge Grenzen können legitime Marktbewegungen abweisen.

Angenommen, ein hypothetischer Kreditmarkt nimmt vier Einheiten Sicherheiten mit einem Faktor von 75 Prozent an. Die letzte Feed-Antwort lautet 200,000,000,000 bei 8 Dezimalstellen, also 2.000 Dollar je Token. Die Kreditgrenze beträgt 4 × $2.000 × 75 % = $6.000. Fällt der Markt auf 1.820 Dollar, sind das 9 Prozent. Bei angenommenen 10 Prozent Abweichung und 60 Minuten Heartbeat muss noch kein Update ausgelöst worden sein; mit dem niedrigeren Kurs ergibt sich eine Grenze von 5.460 Dollar.

Lehnt die Anwendung Kurse ab, die älter als fünf Minuten sind, und ist die Runde zwanzig Minuten alt, kann sie neue Kredite sperren, statt den Wert von 2.000 Dollar zu verwenden. Die Prüfung aktualisiert den Feed nicht, sondern ändert erlaubte Aktionen. Kreditaufnahme, Auszahlung, Liquidation und Rückzahlung können unterschiedliche Regeln haben, da ein kompletter Stopp ebenfalls schaden kann. Werte und Auslöser sind illustrative Annahmen, keine aktuellen Feed-Parameter oder Empfehlungen.

L2-Sequencer-Prüfungen behandeln ein anderes Ausfallrisiko

Auf vielen L2-Netzen reichen Nutzer Transaktionen über einen Sequencer ein. Bei Ausfall oder Wiederanlauf können Transaktionen verzögert werden oder später unter anderen Marktbedingungen ausgeführt werden. Ein aktuell wirkender L2-Preis zeigt nicht, dass der Ausführungspfad verfügbar war oder alle Nutzer gleich handeln konnten.

Chainlink dokumentiert einen separaten L2-Sequencer-Uptime-Feed: answer == 0 bedeutet aktiv, answer == 1 bedeutet ausgefallen. startedAt speichert den Zeitpunkt des Statuswechsels. Das Beispiel prüft den Status und wartet nach Wiederherstellung eine vom Verbraucher festgelegte Schonfrist ab, bevor es den Preis liest. Prüfen Sie Adresse und Netzverhalten im Leitfaden zum L2-Sequencer-Uptime-Feed. Die Schonfrist garantiert weder frische Marktdaten noch, dass wartende Transaktionen abgeschlossen sind.

Diese Kontrollen garantieren keinen richtigen oder fairen Ausgang

Quorum, Median, Abweichung, Heartbeat, Altersgrenze und Sequencer-Status beantworten jeweils nur eine begrenzte Frage. Sie garantieren weder Marktliquidität noch die korrekte Asset-Identität, unabhängige Datenanbieter oder einen ausführbaren Preis für eine bestimmte Handelsgröße. Auch ein frischer Zeitstempel kann einen falschen Wert begleiten; ein alter Wert kann in ruhigen Märkten noch nahe am Markt liegen.

Kein Auslöser verhindert Preislücken, Netzwerküberlastung oder Fehler bei Skalierung, Paarwahl, Aktualitätsprüfung und Liquidation. Die Hinweise zur Auswahl hochwertiger Data Feeds empfehlen, Liquidität und Datenabhängigkeiten zu bewerten und veraltete, verspätete, fehlende oder unerwartete Werte zu behandeln. Smart-Contract-, Governance-, Bridge-, Sicherheiten- und Liquidationsrisiken bleiben bestehen. Ein Stablecoin-Oracle-Kurs garantiert keine Rücknahme zum Nennwert; dazu mehr im Depeg-Leitfaden.

Vor der Nutzung den gesamten Preispfad verfolgen

Bestimmen Sie Netzwerk, Feed-Proxy, Asset-Paar, Notierungswährung, Antwort-Dezimalstellen und Vertragsadresse. Vergleichen Sie die Feed-Beschreibung mit dem beabsichtigten Vermögenswert und übernehmen Sie keine Adresse eines anderen Netzwerks. Prüfen Sie Quellenmodell und Aktualisierungsverlauf, wenn der Anwendungsfall dies verlangt. Aggregatoren können sich laut Chainlink je Netzwerk unterscheiden; deshalb sind Quellcode und Konfiguration wichtig.

Verfolgen Sie danach, wie der Vertrag die Antwort nutzt: Einheitenumrechnung, updatedAt, maximales Alter und Verhalten bei ungültigen Werten. Auf L2 gehören Uptime-Feed, Wiederherstellungszeit, Schonfrist und verzögerte Transaktionen dazu. Prüfen Sie im konkreten Vertrag sowohl veraltete Preise als auch Ausfall und Wiederanlauf. Zur Einordnung weiterer Preisfelder hilft Mark Price gegenüber letztem Handel.

Häufige Fragen

Q1Bedeutet ein Heartbeat, dass der Preis nie älter als dieses Intervall ist?

Nein. Er ist ein zeitbasierter Update-Auslöser, keine Garantie für Veröffentlichung und Blockaufnahme zu einem exakten Zeitpunkt oder für die Übereinstimmung mit einem Live-Markt. Prüfen Sie updatedAt und definieren Sie eine passende Aktualitätsregel.

Q2Kann ein Median-Oracle-Feed falsch sein?

Ja. Der Median kann manche Ausreißer begrenzen, aber keine gemeinsamen Quellenprobleme, dünnen Märkte, falschen Paare oder Fehler im Verbraucher-Code korrigieren.

Q3Ist ein L2-Uptime-Feed dasselbe wie eine Prüfung veralteter Preise?

Nein. Der Uptime-Feed meldet Sequencer-Status und Statuszeit; die Aktualitätsprüfung vergleicht updatedAt des Preises mit der aktuellen Zeit. Eine Anwendung kann beides und eine Wiederherstellungsfrist benötigen.

Quellen und weiterführende Lektüre

Problem melden

Wir bereiten eine E-Mail mit dem Link zu diesem Artikel vor. Mark erhält den Hinweis erst nach dem Senden

Schnelltest

Fertig gelesen? Prüfe dich mit 3 Fragen

Frage 1 / 3

Frage 01

Ein BTC/USD-Feed liefert `6,725,000,000,000` mit 8 Dezimalstellen. Wie lautet der skalierte Preis?

Wähle eine Antwort, um die Erklärung zu sehen

Optionsglossar