Capitalisation boursière: $2.1252T -4.32%
Volume(24h): $132.3282B -7.81%
Indice de peur et de cupidité:

16 - Peur extrême

  • Capitalisation boursière: $2.1252T -4.32%
  • Volume(24h): $132.3282B -7.81%
  • Indice de peur et de cupidité:
  • Capitalisation boursière: $2.1252T -4.32%
Cryptos
Les sujets
Cryptospedia
Nouvelles
Cryptosopique
Vidéos
Top Cryptospedia

Choisir la langue

Choisir la langue

Sélectionnez la devise

Cryptos
Les sujets
Cryptospedia
Nouvelles
Cryptosopique
Vidéos

Uniswap Price Oracle : Comment l’utiliser ? (Guide du développeur)

Uniswap price oracles use time-weighted average prices (TWAPs) from cumulative reserve data—developers compute averages over custom windows by subtracting and dividing stored `priceCumulativeLast` values by elapsed time.

Apr 04, 2026 at 04:40 pm

Comprendre les oracles de prix Uniswap

1. Les oracles de prix d'Uniswap s'appuient sur des prix moyens pondérés dans le temps (TWAP) dérivés des réserves historiques du pool plutôt que sur des prix au comptant instantanés.

2. Chaque oracle stocke les valeurs de prix cumulées mises à jour à chaque bloc, permettant aux développeurs de calculer des moyennes sur des fenêtres de temps personnalisées.

3. Le mécanisme de base consiste à lire les variables price0CumulativeLast et price1CumulativeLast du contrat de paire.

4. Ces valeurs représentent la somme du prix * du temps écoulé depuis la dernière mise à jour, mesurée en secondes.

5. Les développeurs doivent appeler observer() ou calculer manuellement les différences entre deux instantanés pour obtenir le prix moyen sur une durée souhaitée.

Configuration d'Oracle Observations

1. Les pools doivent être initialisés avec initialize() avant qu'une fonctionnalité Oracle ne devienne active.

2. La fonction #observe() permet de récupérer plusieurs niveaux de prix à la fois, jusqu'à 512 observations par appel.

3. Les slots d'observation sont des tableaux de taille fixe avec des indices modulo 512 ; chaque emplacement contient des données d'horodatage et de prix.

4. Les développeurs doivent s'assurer que la fenêtre horaire demandée ne dépasse pas l'âge de la plus ancienne observation disponible.

5. Si aucune observation n'existe pour un horodatage demandé, le système revient à moins qu'une logique de repli ne soit implémentée hors chaîne.

Calcul des prix moyens pondérés dans le temps

1. Pour calculer le TWAP, soustrayez le prix cumulé à l'heure de début de celui à l'heure de fin, puis divisez par les secondes écoulées.

2. La formule est la suivante : (P_end - P_start) / (t_end - t_start) , où P désigne le prix cumulé et t désigne l'horodatage du bloc.

3. Pour les paires token0/token1, price0CumulativeLast donne le rapport token1 par token0, tandis que price1CumulativeLast donne le ratio token0 par token1.

4. Une perte de précision peut survenir en raison de l'arithmétique à virgule fixe ; les développeurs doivent utiliser le format Q112.112 pour les calculs intermédiaires.

5. Le calcul hors chaîne nécessite souvent une synchronisation avec les horodatages en chaîne et la validation des numéros de bloc pour empêcher toute manipulation via l'usurpation d'horodatage.

Considérations et limites de sécurité

1. Les oracles sont vulnérables aux attaques de prêt flash s'ils sont utilisés sans fenêtres de temps suffisantes, car les attaquants peuvent manipuler les réserves au sein d'un seul bloc.

2. Les courtes périodes d’observation augmentent la sensibilité aux pics de volatilité et aux anticipations en période de faible liquidité.

3. Les développeurs doivent vérifier que le contrat de paire implémente la version correcte de l'interface Oracle Uniswap V2 ou V3.

4. La protection contre la réentrée est intégrée à la fonction d'observation, mais les wrappers personnalisés peuvent réintroduire des risques s'ils ne sont pas audités de manière approfondie.

5. Il n'existe aucune gestion native des erreurs pour les données obsolètes ; les applications doivent implémenter des délais d'attente et des mécanismes de secours lors de l'observation d'emplacements obsolètes.

Foire aux questions

Q : Les oracles Uniswap peuvent-ils être utilisés directement dans les contrats intelligents Solidity sans appels externes ? R : Oui, mais uniquement pour observer les valeurs cumulées stockées ; Le calcul TWAP réel nécessite le calcul des deltas de temps, ce qui nécessite soit un prétraitement hors chaîne, soit une validation d'horodatage en chaîne.

Q : Que se passe-t-il si je demande une observation plus ancienne que le créneau stocké le plus ancien ? R : La fonction observe() revient avec une erreur TooOld à moins que l'appelant ne fournisse un index valide dans la plage du tampon circulaire.

Q : Est-il sûr d'utiliser les oracles Uniswap V2 pour les protocoles DeFi de grande valeur ? R : Cela dépend de la fenêtre horaire sélectionnée ; les protocoles exigeant une résistance à la manipulation doivent utiliser des fenêtres dépassant 24 heures et se combiner avec d'autres sources de données pour la redondance.

Q : Les oracles Uniswap V3 diffèrent-ils considérablement de la V2 en termes de modèles d'utilisation ? R : Oui, la V3 introduit une tarification basée sur les ticks et une liquidité concentrée, obligeant les développeurs à tenir compte des plages de liquidité actives lors de l'interprétation des données de prix cumulées sur des intervalles de temps non uniformes.

Clause de non-responsabilité:info@kdj.com

Les informations fournies ne constituent pas des conseils commerciaux. kdj.com n’assume aucune responsabilité pour les investissements effectués sur la base des informations fournies dans cet article. Les crypto-monnaies sont très volatiles et il est fortement recommandé d’investir avec prudence après une recherche approfondie!

Si vous pensez que le contenu utilisé sur ce site Web porte atteinte à vos droits d’auteur, veuillez nous contacter immédiatement (info@kdj.com) et nous le supprimerons dans les plus brefs délais.

Connaissances connexes

Comment utiliser la preuve de réserves de Kraken pour vérifier que mes fonds sont garantis ?

Comment utiliser la preuve de réserves de Kraken pour vérifier que mes fonds sont garantis ?

Jun 02,2026 at 08:59am

Bitcoin Réduire de moitié les mécanismes 1. Le protocole de Bitcoin impose une réduction des récompenses de bloc tous les 210 000 blocs, environ tous ...

Comment corriger « échec de la vérification de sécurité » lors du retrait de Bybit après un changement d'appareil ?

Comment corriger « échec de la vérification de sécurité » lors du retrait de Bybit après un changement d'appareil ?

May 28,2026 at 06:59pm

Bitcoin Réduire de moitié les mécanismes 1. Le protocole de Bitcoin applique un calendrier d'émission fixe dans lequel la récompense de bloc est r...

Comment corriger « Impossible de lier la banque – incompatibilité de nom » sur Coinbase ?

Comment corriger « Impossible de lier la banque – incompatibilité de nom » sur Coinbase ?

May 29,2026 at 06:19am

Comprendre l'erreur d'incompatibilité de nom 1. L'erreur se produit lorsque le nom légal enregistré sur un compte Coinbase ne correspond p...

Comment réparer la « maintenance du réseau » provoquant des retards dans les dépôts sur OKX ?

Comment réparer la « maintenance du réseau » provoquant des retards dans les dépôts sur OKX ?

May 31,2026 at 10:00pm

Comprendre l'impact de la maintenance du réseau sur les dépôts OKX 1. Les événements de maintenance du réseau sur OKX ne sont pas des interruption...

Comment utiliser le Bybit Insurance Fund et comment protège-t-il les traders ?

Comment utiliser le Bybit Insurance Fund et comment protège-t-il les traders ?

May 28,2026 at 10:19pm

Architecture du fonds d’assurance 1. Le Bybit Insurance Fund fonctionne comme un pool de réserve spécialement conçu pour couvrir les pertes résultant ...

Comment corriger le « compte restreint au trading P2P » sur Binance après un litige ?

Comment corriger le « compte restreint au trading P2P » sur Binance après un litige ?

Jun 06,2026 at 05:00am

Comprendre les restrictions du trading P2P sur Binance 1. Une restriction de trading P2P est déclenchée lorsque l'une des parties dépose un litige...

Comment utiliser la preuve de réserves de Kraken pour vérifier que mes fonds sont garantis ?

Comment utiliser la preuve de réserves de Kraken pour vérifier que mes fonds sont garantis ?

Jun 02,2026 at 08:59am

Bitcoin Réduire de moitié les mécanismes 1. Le protocole de Bitcoin impose une réduction des récompenses de bloc tous les 210 000 blocs, environ tous ...

Comment corriger « échec de la vérification de sécurité » lors du retrait de Bybit après un changement d'appareil ?

Comment corriger « échec de la vérification de sécurité » lors du retrait de Bybit après un changement d'appareil ?

May 28,2026 at 06:59pm

Bitcoin Réduire de moitié les mécanismes 1. Le protocole de Bitcoin applique un calendrier d'émission fixe dans lequel la récompense de bloc est r...

Comment corriger « Impossible de lier la banque – incompatibilité de nom » sur Coinbase ?

Comment corriger « Impossible de lier la banque – incompatibilité de nom » sur Coinbase ?

May 29,2026 at 06:19am

Comprendre l'erreur d'incompatibilité de nom 1. L'erreur se produit lorsque le nom légal enregistré sur un compte Coinbase ne correspond p...

Comment réparer la « maintenance du réseau » provoquant des retards dans les dépôts sur OKX ?

Comment réparer la « maintenance du réseau » provoquant des retards dans les dépôts sur OKX ?

May 31,2026 at 10:00pm

Comprendre l'impact de la maintenance du réseau sur les dépôts OKX 1. Les événements de maintenance du réseau sur OKX ne sont pas des interruption...

Comment utiliser le Bybit Insurance Fund et comment protège-t-il les traders ?

Comment utiliser le Bybit Insurance Fund et comment protège-t-il les traders ?

May 28,2026 at 10:19pm

Architecture du fonds d’assurance 1. Le Bybit Insurance Fund fonctionne comme un pool de réserve spécialement conçu pour couvrir les pertes résultant ...

Comment corriger le « compte restreint au trading P2P » sur Binance après un litige ?

Comment corriger le « compte restreint au trading P2P » sur Binance après un litige ?

Jun 06,2026 at 05:00am

Comprendre les restrictions du trading P2P sur Binance 1. Une restriction de trading P2P est déclenchée lorsque l'une des parties dépose un litige...

Voir tous les articles

User not found or password invalid

Your input is correct