Aller au contenu principal
logo de Avana

Oracles de prix

Comment le protocole transforme l'état d'une position LP en valeurs de collatéral pertinentes pour le crédit.

Vue d'ensemble

Avana valorise le collatéral LP en reconstruisant la position et en valorisant les actifs qu'elle contient. Pour les LP fongibles, le protocole dérive la valeur à partir des prix externes des actifs et de la reconstruction des soldes du pool. Pour la liquidité concentrée, il décompose la position selon la liquidité, la fourchette, le tick actuel, l'exposition en tokens et les frais accumulés. Le résultat est actualisé pour estimer la valeur recouvrable du collatéral selon les hypothèses de risque du marché. La capacité d'emprunt reflète donc à la fois les actifs sous-jacents de la position et les conditions dans lesquelles ils pourraient être récupérés lors d'une liquidation. La distinction entre la valeur de position et la valeur récupérable est importante car l'oracle fournit des données pour les décisions de prêt. ERC-20 LP jetons, positions NFT, et actifs multiples pools partagent une interface, mais chaque format a ses propres vérifications de reconstruction, de validation et de manipulation avant que sa valeur n'atteigne le Borrow Spoke.

LP collateral value depends on:

  • Les prix des actifs sous-jacents
  • Les réserves du pool ou la répartition d'inventaire
  • Fee accrual
  • Pour la liquidité concentrée, le tick actuel par rapport à la fourchette de la position
  • Si la position est in-range ou surtout unilatérale

Interface oracle : IOracle

`IOracle` fournit à Borrow Spokes une interface d'évaluation commune à travers LP formats. Ses valeurs de retour distinguent le principal, les frais accumulés et les réserves tampon afin que l'appelant puisse comptabiliser chaque composant séparément :

function getValue(uint256 tokenId, address asset)
  external view returns (
    uint256 fullValue,
    uint256 feeValue,
    uint256 reserveValue
  );
fullValueValeur reconstruite de la liquidité principale avant application des ajustements de stress de liquidation ultérieurs.
feeValueValeur des frais accumulés par la position qui peuvent être reconnus avec le principal.
reserveValuePortion réservée retenue pour les buffers de risque d'oracle, de débouclage et du protocole.

L'adaptateur derrière cette interface gère la reconstruction et la validation spécifiques à DEX. Les Borrow Spoke reçoivent les mêmes champs de retour pour les ERC-20 jetons LP, les positions NFT et les pools multi-actifs, tandis que chaque mise en œuvre applique les vérifications requises par son type de garantie.

Architecture multi-couches

La valorisation LP est un processus par étapes plutôt qu'une simple lecture de prix spot. Le chemin d'oracle traverse les étapes suivantes :

1

Valoriser les actifs sous-jacents via des oracles externes robustes

Les flux externes fournissent des prix de référence pour les jetons sous-jacents. Cela sépare l'entrée du prix de l'actif du prix de négociation instantané du pool, qui peut être affecté par des transactions de courte durée ou des manipulations.

2

Dériver la valeur LP de façon prudente

L'oracle reconstruit les soldes fongibles LP ou décompose les positions de liquidité concentrée en utilisant les réserves, la liquidité, la plage et les frais accumulés. Ces entrées déterminent les actifs représentés par la position.

3

Haircut pour perte impermanente et slippage de liquidation

La valeur reconstruite est actualisée pour tenir compte des conditions de marché stressées, du glissement lors de la liquidation et de la voie de sortie de la position. La valeur résultante estime ce que la liquidation pourrait récupérer.

4

Plafonner l'exposition par famille LP et profondeur de pool

Les contrôles d'exposition utilisent la famille LP, le type pool et la profondeur de liquidité disponible pour limiter le montant que le marché peut supporter en emprunt.

5

Appliquer la valeur récupérable aux emprunts et à la liquidation

La capacité d'emprunt et les vérifications de liquidation utilisent la valeur estimée récupérable via la voie de liquidation configurée.

Traitement spécifique au DEX

Chaque DEX expose différentes positions et données pool. L'oracle reconstitue les actifs sous-jacents à partir de ces données et vérifie l'évaluation résultante par rapport à ses prix de référence et ses contrôles de risque.

DEX / type de LPSource d'oracleRemarques
LP Curve Stable/Stable ERC-20Feeds externes de stablecoins + contrôles d'état du pool + vérification TWAPLes prix externes ancrent les actifs, tandis que les soldes du pool et l'accumulation de frais déterminent la valeur de collatéral décotée.
LP Uniswap V2 ERC-20Chainlink + reconstruction des réserves + vérification TWAPLes tokens LP standards sont valorisés à partir des soldes sous-jacents reconstruits, le TWAP servant de contre-vérification résistante à la manipulation.
LP Uniswap V3 NFTChainlink + décomposition de position + contrôles tick/TWAPLe NFT est décomposé selon la liquidité, la fourchette active et le prix actuel, puis haircut pour la valeur de liquidation récupérable.
LP Balancer multi-actifsChainlink + reconstruction d'inventaire pondéréLes pools multi-tokens utilisent les prix externes et l'inventaire pondéré du pool pour estimer une valeur de collatéral prudente.
SushiSwap / AerodromeChainlink + reconstruction des réserves + vérification TWAPLes observations dérivées du pool vérifient la valeur reconstruite et aident à résister aux abus same-transaction sur les marchés à plus faible liquidité.
PancakeSwapChainlink + vérification TWAP basée sur les blocsLes prix externes restent l'ancre, tandis que les observations basées sur les blocs valident l'état de la position et les hypothèses de débouclage.

Calcul TWAP par DEX

Les prix moyens pondérés dans le temps (TWAPs) fournissent des données de vérification en parallèle avec les prix des actifs externes et la reconstruction des positions. Comparer ces entrées aide à identifier les distorsions de prix de courte durée ou l'état pool incohérent. Les données TWAP complètent le processus d'évaluation plutôt que de fournir la valeur du collatéral à elles seules.

Uniswap V2 et SushiSwap

On-chain cumulative price data over a 1-hour window is used to cross-check the reconstructed reserve picture and reduce sensitivity to flash swaps or other short-lived pool distortions.

Uniswap V3

Pour les positions à liquidité concentrée, les vérifications utilisent la plage de ticks, la répartition de la liquidité et les frais accumulés pour vérifier l'exposition aux tokens représentée par chaque NFT.

Balancer

Les observations de tokens pondérés sont combinées aux poids du pool pour valider les répartitions d'inventaire multi-actifs avant que l'oracle n'attribue une valeur de collatéral prudente.

Curve

Les observations de stablecoins servent surtout à détecter les feeds obsolètes, la dérive des réserves et les anomalies de court terme, tandis que les prix externes restent l'ancre principale.

Trader Joe et Aerodrome

Les observations de prix cumulatives sur une fenêtre de 30-60 minutes aident à valider l'état des pools à plus faible liquidité et à résister à la manipulation same-transaction pendant les contrôles de collatéral.

Sécurité & prévention de la manipulation

  • Seuils de déviation

    Les nouveaux prêts ou liquidations peuvent être mis en pause lorsque les données de vérification dérivées du pool s'écartent trop des prix de référence externes au-delà de maxDifference.

  • maxPoolPriceDifference

    Cela garde l'état implicite du pool aligné avec les prix des tokens sous-jacents et limite la manipulation instantanée du pool ou l'abus d'oracle same-transaction.

  • Plafonds d'open interest

    L'exposition est plafonnée par famille LP, profondeur de pool et complexité du collatéral, afin que les marchés plus fins reçoivent des limites d'emprunt plus strictes.

  • Décotes de récupération

    L'oracle décote la valeur LP théorique pour la perte impermanente, le slippage de débouclage et les hypothèses de liquidation sous stress avant d'accorder toute capacité d'emprunt.

  • Sentinelle d'oracle

    Oracle Sentinel surveille la santé des feeds et les entrées de vérification, et peut déclencher un comportement de fallback lorsque les données sont obsolètes, compromises ou inconsistantes avec les contrôles d'état de position.

Paramètres d'oracle configurables

Les paramètres d'oracle spécifiques au pool sont configurés par token via setTokenConfig. Le tableau ci-dessous répertorie les paramètres utilisés pour valider le flux de prix d'un jeton et le pool associé :

ParamètreDescriptif
JetonAdresse du token de collatéral
AggregatorV3InterfaceFeed Chainlink pour le token sous-jacent
maxFeedAgeÂge maximal acceptable pour le feed Chainlink
Pool de liquiditéPool DEX spécifique (Uniswap V3, Balancer, Curve, etc.)
twapSecondsFenêtre pour le calcul TWAP
Mode d'emploiMode opérationnel de l'oracle (standard/fallback)
maxDifferenceDéviation maximale autorisée entre le prix DEX et le prix de vérification

En pratique, le comportement de l'oracle vient de la combinaison du pricing externe des actifs, de la logique de reconstruction LP, du traitement de valeur récupérable, et des paramètres par token configurés viasetTokenConfig.