Règlement et échéance
Les options sur Hypercall sont de style européen et réglées en espèces. À l'échéance, les positions sont automatiquement réglées sur la base du prix de référence de l'actif sous-jacent, la valeur de règlement étant créditée ou débitée sur votre compte.
Heure d'échéance
Sur le réseau principal, les contrats SpaceX (SPCX) expirent à 16h00 ET à leur date d'échéance.
Le testnet expire actuellement à 08h00 UTC à la date d'échéance.
À l'échéance :
- Les nouveaux ordres sont rejetés
- Les ordres ouverts sont annulés
- Les positions entrent dans le processus de règlement
Cycle de vie des instruments
Les instruments passent par trois états :
| État | Description | Négociation |
|---|---|---|
| Active | Négociation normale | Activée |
| Expired Pending Price | En attente du prix de règlement de l'oracle | Désactivée |
| Settled | Règlement terminé, positions clôturées | N/A |
Transitions d'état
- Active → Expired Pending Price : l'heure d'échéance du contrat est atteinte
- Expired Pending Price → Settled : le prix de règlement est disponible et toutes les positions sont réglées
Une fois qu'un instrument entre dans l'état Expired Pending Price, tous les ordres ouverts sont annulés et les nouveaux ordres sont rejetés avec le message "Instrument has expired".
Prix de règlement
Le prix de règlement est un TWAP de 30 minutes (Time-Weighted Average Price, prix moyen pondéré dans le temps) du prix d'indice de l'oracle Hyperliquid pour l'actif sous-jacent.
| Paramètre | Valeur |
|---|---|
| Source de prix | Oracle Hyperliquid (prix d'indice) |
| Fenêtre TWAP | 30 minutes |
| Fin de fenêtre | Heure d'échéance du contrat |
L'oracle commence l'échantillonnage 30 minutes avant l'échéance et calcule le TWAP à l'heure d'échéance.
Le règlement nécessite le TWAP finalisé. Si ce prix finalisé n'est pas disponible au moment de l'échéance, l'instrument reste dans l'état Expired Pending Price et de nouvelles tentatives sont effectuées automatiquement. La négociation est déjà désactivée dans cet état, mais les crédits et débits en espèces ne sont comptabilisés qu'après que le prix finalisé de l'oracle existe.
Calcul de la valeur de règlement
Le règlement est calculé comme la valeur intrinsèque de l'option à l'échéance :
Options d'achat (calls) :
Options de vente (puts) :
Où :
- = Prix de règlement (TWAP de 30 min)
- = Prix d'exercice
- = Taille de la position (signée : positive pour une position longue, négative pour une position courte)
Exemples
Call long (ITM) :
- Position : Long 2 BTC-100000-C
- Prix de règlement : 105 000 $
- Valeur intrinsèque : max(0, 105000 - 100000) = 5 000 $
- Valeur de règlement : 5 000 ** (crédités)
Call short (ITM) :
- Position : Short 2 BTC-100000-C
- Prix de règlement : 105 000 $
- Valeur de règlement : 5 000 ** (débités)
Put long (OTM) :
- Position : Long 1 BTC-100000-P
- Prix de règlement : 105 000 $
- Valeur intrinsèque : max(0, 100000 - 105000) = 0 $
- Valeur de règlement : 0 $ (expire sans valeur)
Processus de règlement
Lorsque le règlement a lieu :
- Prix récupéré : l'oracle renvoie le TWAP de 30 minutes
- Valeur calculée : la valeur intrinsèque est calculée pour chaque position
- Espèces mises à jour : la valeur de règlement est ajoutée au solde du compte (positions longues ITM) ou soustraite de celui-ci (positions courtes ITM)
- Position supprimée : la position est clôturée et retirée du portefeuille
- Événement émis : un message
PositionExpiredest envoyé via WebSocket
Le règlement est traité de manière atomique par position avec des garanties d'idempotence. Les rejeux ou les redémarrages ne peuvent pas provoquer un double règlement.
Événements WebSocket
PositionExpired
Envoyé lorsqu'une position est réglée :
{
"type": "PositionExpired",
"wallet_address": "0x...",
"symbol": "BTC-20250131-100000-C",
"position_size": 2.0,
"settlement_price": 5000.0,
"settlement_value": 10000.0,
"timestamp": 1738310400000
}
| Champ | Description |
|---|---|
position_size | Taille de position signée (positive = long, négative = short) |
settlement_price | Valeur intrinsèque par contrat |
settlement_value | Montant total du règlement en espèces |
MarketExpired
Envoyé lorsqu'un instrument passe à l'état Expired Pending Price :
{
"type": "MarketUpdate",
"symbol": "BTC-20250131-100000-C",
"status": "MARKET_EXPIRED",
"timestamp": 1738310400000
}
Points de terminaison API
Obtenir le statut de l'instrument
GET /instruments/{symbol}
Renvoie le statut actuel de l'instrument (ACTIVE, EXPIRED_PENDING_PRICE ou SETTLED).
Obtenir l'historique des règlements
GET /settlement/history?wallet=0x...
Renvoie les enregistrements de règlement de votre compte.
Réponse :
{
"success": true,
"data": [
{
"symbol": "BTC-20250131-100000-C",
"position_size": 2.0,
"settlement_price": 5000.0,
"settlement_value": 10000.0,
"settled_at": 1738310400000
}
]
}
Gestion des défaillances
Oracle indisponible
Si l'oracle ne peut pas fournir un prix de règlement à l'échéance :
- L'instrument reste dans l'état
Expired Pending Price - Le système réessaie toutes les 30 secondes
- Les alertes de production se déclenchent si l'attente du prix finalisé se prolonge
La négociation est bloquée immédiatement à l'échéance, quelle que soit la disponibilité de l'oracle.
Prix finalisé retardé
Si le TWAP finalisé est retardé :
- Le règlement est retardé
- Le système attend le prix de règlement finalisé de l'oracle
- Les utilisateurs peuvent voir l'instrument rester dans l'état
Expired Pending Price - Le règlement en espèces apparaît une fois que le mécanisme de nouvelle tentative applique le prix finalisé
Redémarrage du système
L'état du règlement est persisté dans la base de données. Si le système redémarre :
- Les instruments expirés sont identifiés depuis la base de données au démarrage
- Le règlement se poursuit automatiquement
- Les garanties d'idempotence empêchent tout double règlement
Paramètres
| Paramètre | Valeur | Description |
|---|---|---|
| Intervalle de vérification des échéances | 60 secondes | Fréquence à laquelle le système vérifie les échéances |
| Fenêtre TWAP | 30 minutes | Fenêtre de moyennage du prix de règlement |
| Intervalle de nouvelle tentative de règlement | 30 secondes | Fréquence des tentatives lorsque le prix est indisponible |
| Seuil d'alerte de prix finalisé | 30 minutes | Avertissement si un instrument expiré attend toujours le prix finalisé |
| Seuil d'alerte de paiement en attente | 1 heure | Alerte critique si des lignes de paiement de règlement restent non appliquées |
Bonnes pratiques
- Surveillez les échéances : suivez les dates d'échéance de vos positions via le point de terminaison du portefeuille
- Anticipez : clôturez vos positions avant l'échéance si vous souhaitez éviter le règlement
- Vérifiez les prix de règlement : vérifiez que le prix de l'oracle correspond à vos attentes
- Abonnez-vous au WebSocket : recevez les événements
PositionExpireden temps réel pour une notification immédiate - Maintenez une marge de sécurité : assurez-vous de disposer d'une marge suffisante pour les règlements potentiels de positions courtes ITM
Règlement on-chain
Sur le réseau principal, les prix de règlement sont publiés on-chain après leur calcul :
- L'oracle calcule le TWAP de règlement et publie le prix d'échéance final.
- Le contrat Exchange peut vérifier le prix de règlement publié on-chain.
- Les flux d'oracle en direct ne sont pas diffusés on-chain. Les prix de règlement finaux constituent la référence on-chain pour l'échéance.
Voir aussi :
- Liquidation : ce qui se passe si la marge est insuffisante
- Marge de portefeuille : comment les positions affectent la marge
- Marge standard : calcul de la marge par position