Settlement & Verfall
Optionen auf Hypercall sind europäische Optionen mit Cash-Settlement. Bei Verfall werden Positionen automatisch auf Basis des Referenzpreises des Basiswerts abgerechnet, wobei der Settlement-Wert Ihrem Konto gutgeschrieben oder belastet wird.
Verfallszeitpunkt
Auf dem Mainnet verfallen SpaceX-Kontrakte (SPCX) um 16:00 Uhr ET an ihrem Verfallsdatum.
Das Testnet verfällt derzeit um 08:00 UTC am Verfallsdatum.
Bei Verfall:
- Neue Orders werden abgelehnt
- Offene Orders werden storniert
- Positionen treten in den Settlement-Prozess ein
Lebenszyklus eines Instruments
Instrumente durchlaufen drei Zustände:
| Zustand | Beschreibung | Handel |
|---|---|---|
| Active | Normaler Handel | Aktiviert |
| Expired Pending Price | Warten auf Settlement-Preis vom Oracle | Deaktiviert |
| Settled | Settlement abgeschlossen, Positionen geschlossen | N/A |
Zustandsübergänge
- Active → Expired Pending Price: Verfallszeitpunkt des Kontrakts erreicht
- Expired Pending Price → Settled: Settlement-Preis verfügbar und alle Positionen abgerechnet
Sobald ein Instrument in den Zustand Expired Pending Price übergeht, werden alle offenen Orders storniert und neue Orders mit "Instrument has expired" abgelehnt.
Settlement-Preis
Der Settlement-Preis ist ein 30-Minuten-TWAP (Time-Weighted Average Price) des Hyperliquid-Oracle-Indexpreises für den Basiswert.
| Parameter | Wert |
|---|---|
| Preisquelle | Hyperliquid Oracle (Indexpreis) |
| TWAP-Fenster | 30 Minuten |
| Fensterende | Verfallszeitpunkt des Kontrakts |
Das Oracle beginnt 30 Minuten vor Verfall mit der Erfassung und berechnet den TWAP zum Verfallszeitpunkt.
Für das Settlement ist der finalisierte TWAP erforderlich. Wenn dieser finalisierte Preis zum Verfallszeitpunkt nicht verfügbar ist, verbleibt das Instrument im Zustand Expired Pending Price und der Vorgang wird automatisch wiederholt. Der Handel ist in diesem Zustand bereits deaktiviert, jedoch werden Gutschriften und Belastungen erst gebucht, sobald der finalisierte Oracle-Preis vorliegt.
Berechnung des Settlement-Werts
Das Settlement wird als innerer Wert der Option bei Verfall berechnet:
Call-Optionen:
Put-Optionen:
Dabei gilt:
- = Settlement-Preis (30-Min-TWAP)
- = Ausübungspreis
- = Positionsgröße (vorzeichenbehaftet: positiv für Long, negativ für Short)
Beispiele
Long Call (ITM):
- Position: Long 2 BTC-100000-C
- Settlement-Preis: 105.000 $
- Innerer Wert: max(0, 105000 - 100000) = 5.000 $
- Settlement-Wert: 5.000 ** (gutgeschrieben)
Short Call (ITM):
- Position: Short 2 BTC-100000-C
- Settlement-Preis: 105.000 $
- Settlement-Wert: 5.000 ** (belastet)
Long Put (OTM):
- Position: Long 1 BTC-100000-P
- Settlement-Preis: 105.000 $
- Innerer Wert: max(0, 100000 - 105000) = 0 $
- Settlement-Wert: 0 $ (verfällt wertlos)
Settlement-Prozess
Wenn das Settlement erfolgt:
- Preis abgerufen: Das Oracle liefert den 30-Minuten-TWAP
- Wert berechnet: Der innere Wert wird für jede Position berechnet
- Cash aktualisiert: Der Settlement-Wert wird dem Kontosaldo hinzugefügt (Long ITM) oder davon abgezogen (Short ITM)
- Position entfernt: Die Position wird geschlossen und aus dem Portfolio entfernt
- Event ausgelöst: Die
PositionExpired-Nachricht wird via WebSocket gesendet
Das Settlement wird pro Position atomar mit Idempotenz-Garantien verarbeitet. Wiederholungen oder Neustarts können kein doppeltes Settlement verursachen.
WebSocket-Events
PositionExpired
Wird gesendet, wenn eine Position abgerechnet wird:
{
"type": "PositionExpired",
"wallet_address": "0x...",
"symbol": "BTC-20250131-100000-C",
"position_size": 2.0,
"settlement_price": 5000.0,
"settlement_value": 10000.0,
"timestamp": 1738310400000
}
| Feld | Beschreibung |
|---|---|
position_size | Vorzeichenbehaftete Positionsgröße (positiv = Long, negativ = Short) |
settlement_price | Innerer Wert pro Kontrakt |
settlement_value | Gesamter Cash-Settlement-Betrag |
MarketExpired
Wird gesendet, wenn ein Instrument in den Zustand Expired Pending Price übergeht:
{
"type": "MarketUpdate",
"symbol": "BTC-20250131-100000-C",
"status": "MARKET_EXPIRED",
"timestamp": 1738310400000
}
API-Endpunkte
Instrument-Status abrufen
GET /instruments/{symbol}
Gibt den aktuellen Status des Instruments zurück (ACTIVE, EXPIRED_PENDING_PRICE oder SETTLED).
Settlement-Historie abrufen
GET /settlement/history?wallet=0x...
Gibt die Settlement-Aufzeichnungen für Ihr Konto zurück.
Antwort:
{
"success": true,
"data": [
{
"symbol": "BTC-20250131-100000-C",
"position_size": 2.0,
"settlement_price": 5000.0,
"settlement_value": 10000.0,
"settled_at": 1738310400000
}
]
}
Fehlerbehandlung
Oracle nicht verfügbar
Wenn das Oracle bei Verfall keinen Settlement-Preis liefern kann:
- Das Instrument verbleibt im Zustand
Expired Pending Price - Das System versucht es alle 30 Sekunden erneut
- Produktions-Alerting wird ausgelöst, wenn das Warten auf den finalisierten Preis anhält
Der Handel wird bei Verfall sofort blockiert, unabhängig von der Verfügbarkeit des Oracles.
Verzögerter finalisierter Preis
Wenn der finalisierte TWAP verzögert ist:
- Das Settlement verzögert sich
- Das System wartet auf den finalisierten Oracle-Settlement-Preis
- Nutzer sehen möglicherweise, dass das Instrument im Zustand
Expired Pending Priceverbleibt - Das Cash-Settlement erscheint, nachdem der Wiederholungspfad den finalisierten Preis angewendet hat
Systemneustart
Der Settlement-Zustand wird in der Datenbank persistiert. Bei einem Systemneustart:
- Verfallene Instrumente werden beim Start aus der DB identifiziert
- Das Settlement wird automatisch fortgesetzt
- Idempotenz-Garantien verhindern doppeltes Settlement
Parameter
| Parameter | Wert | Beschreibung |
|---|---|---|
| Verfall-Prüfintervall | 60 Sekunden | Wie oft das System auf Verfälle prüft |
| TWAP-Fenster | 30 Minuten | Mittelungsfenster für den Settlement-Preis |
| Settlement-Wiederholungsintervall | 30 Sekunden | Wiederholungsfrequenz bei nicht verfügbarem Preis |
| Alarmschwelle für finalisierten Preis | 30 Minuten | Warnung, wenn ein verfallenes Instrument noch auf den finalisierten Preis wartet |
| Alarmschwelle für ausstehende Auszahlungen | 1 Stunde | Kritischer Alarm, wenn Settlement-Auszahlungseinträge nicht angewendet bleiben |
Best Practices
- Verfälle überwachen: Verfolgen Sie die Verfallsdaten Ihrer Positionen über den Portfolio-Endpunkt
- Vorausplanen: Schließen Sie Positionen vor dem Verfall, wenn Sie das Settlement vermeiden möchten
- Settlement-Preise prüfen: Überprüfen Sie, ob der Oracle-Preis Ihren Erwartungen entspricht
- WebSocket abonnieren: Erhalten Sie
PositionExpired-Events in Echtzeit für sofortige Benachrichtigungen - Margin-Puffer vorhalten: Stellen Sie ausreichende Margin für potenzielle Settlements von Short-Positionen im Geld (ITM) sicher
On-Chain-Settlement
Auf dem Mainnet werden Settlement-Preise nach der Berechnung on-chain veröffentlicht:
- Das Oracle berechnet den Settlement-TWAP und veröffentlicht den finalen Verfallspreis.
- Der Exchange-Contract kann den veröffentlichten Settlement-Preis on-chain verifizieren.
- Live-Oracle-Feeds werden nicht on-chain gestreamt. Finale Settlement-Preise sind die On-Chain-Referenz für den Verfall.
Siehe auch:
- Liquidation: Was passiert, wenn die Margin unzureichend ist
- Portfolio-Margin: Wie Positionen die Margin beeinflussen
- Standard-Margin: Margin-Berechnung pro Position