Oracoli di prezzo
Come il protocollo trasforma lo stato della posizione LP in valori di collaterale rilevanti per il credito.
Panoramica
Avana valorizza il collaterale LP ricostruendo la posizione e valutando gli asset al suo interno. Per gli LP fungibili, il protocollo deriva il valore da prezzi esterni degli asset e dalla ricostruzione dei saldi del pool. Per la liquidità concentrata, decompone la posizione per liquidità, range, tick corrente, esposizione ai token e fee maturate. Il risultato viene scontato per stimare il valore recuperabile delle garanzie secondo le ipotesi di rischio del mercato. La capacità di prestito riflette quindi sia gli asset sottostanti della posizione sia le condizioni in cui potrebbero essere recuperati durante la liquidazione. La distinzione tra valore della posizione e valore recuperabile è importante perché l'oracolo fornisce input alle decisioni di prestito. ERC-20 LP token, posizione NFT e pools multi-asset condividono un'interfaccia, ma ogni formato ha le proprie verifiche di ricostruzione, convalida e manipolazione prima che il suo valore raggiunga il Borrow Spoke.
LP collateral value depends on:
- I prezzi degli asset sottostanti
- Le riserve del pool o la suddivisione dell'inventario
- Fee accrual
- Per la liquidità concentrata, il tick corrente rispetto al range della posizione
- Se la posizione è in-range o prevalentemente one-sided
Interfaccia oracolo: IOracle
`IOracle` fornisce a Borrow Spokes un'interfaccia comune di valutazione tra LP formati. I suoi valori di ritorno distinguono principale, commissioni maturate e riserve, in modo che il chiamante possa contabilizzare ciascun componente separatamente:
function getValue(uint256 tokenId, address asset)
external view returns (
uint256 fullValue,
uint256 feeValue,
uint256 reserveValue
);L'adattatore dietro questa interfaccia gestisce la ricostruzione e la validazione specifica DEX. Le Borrow Spoke ricevono gli stessi campi di ritorno per ERC-20 token LP, posizioni NFT e pools multi-asset, mentre ogni implementazione applica i controlli richiesti dal suo tipo di collaterale.
Architettura multi-layer
La valorizzazione LP è un processo a stadi piuttosto che una singola lettura di spot price. Il percorso dell'oracolo passa attraverso i seguenti passi:
Prezzare gli asset sottostanti da oracoli esterni robusti
I feed esterni forniscono prezzi di riferimento per i token sottostanti. Questo separa l'input del prezzo dell'asset dal prezzo di trading istantaneo di pool, che può essere influenzato da operazioni di breve durata o manipolazioni.
Derivare il valore LP in modo conservativo
L'oracolo ricostruisce i saldi fungibili LP o decompone le posizioni di liquidità concentrata utilizzando riserve, liquidità, intervallo e commissioni maturate. Questi input determinano gli asset rappresentati dalla posizione.
Haircut per impermanent loss e slippage di liquidazione
Il valore ricostruito viene scontato per le condizioni di mercato stressate, lo slittamento da liquidazione e la via di uscita della posizione. Il valore risultante stima ciò che la liquidazione potrebbe recuperare.
Limitare l'esposizione per famiglia LP e profondità del pool
I controlli di esposizione utilizzano la famiglia LP, il tipo pool e la profondità di liquidità disponibile per limitare quanto indebitamento un mercato può supportare.
Applicare il valore recuperabile al prestito e alla liquidazione
La capacità di prestito e i controlli di liquidazione utilizzano il valore stimato recuperabile tramite la rotta di smobilizzo configurata.
Gestione specifica per DEX
Ogni DEX espone dati di posizione diversi e pool. L'oracolo ricostruisce gli asset sottostanti da quei dati e verifica la valutazione risultante rispetto ai suoi prezzi di riferimento e controlli del rischio.
| DEX / tipo LP | Fonte oracolo | Note |
|---|---|---|
| LP Curve Stable/Stable ERC-20 | Feed esterni di stablecoin + controlli sullo stato del pool + verifica TWAP | I prezzi esterni ancorano gli asset mentre saldi del pool e maturazione delle fee determinano il valore di collaterale scontato. |
| LP Uniswap V2 ERC-20 | Chainlink + ricostruzione delle riserve + verifica TWAP | I token LP standard vengono valorizzati dai saldi sottostanti ricostruiti, con il TWAP usato come cross-check resistente alla manipolazione. |
| LP Uniswap V3 NFT | Chainlink + decomposizione della posizione + controlli tick/TWAP | L'NFT viene decomposto per liquidità, range attivo e prezzo corrente, poi haircut per il valore di liquidazione recuperabile. |
| LP Balancer multi-asset | Chainlink + ricostruzione dell'inventario weighted | I pool multi-token usano prezzi esterni e inventario weighted del pool per stimare un valore di collaterale conservativo. |
| SushiSwap / Aerodrome | Chainlink + ricostruzione delle riserve + verifica TWAP | Le osservazioni derivate dal pool verificano il valore ricostruito e aiutano a resistere ad abusi nella stessa transazione nei mercati a liquidità più bassa. |
| PancakeSwap | Chainlink + verifica TWAP basata su block | I prezzi esterni restano l'ancora mentre le osservazioni basate su block validano lo stato della posizione e le assunzioni di unwind. |
Calcolo TWAP per DEX
I prezzi medi ponderati nel tempo (TWAPs) forniscono dati di verifica insieme ai prezzi degli asset esterni e alla ricostruzione delle posizioni. Confrontare questi input aiuta a identificare distorsioni di prezzo di breve durata o uno stato pool incoerente. I dati TWAP integrano il processo di valutazione piuttosto che fornire da soli il valore del collaterale.
Uniswap V2 e 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
Per le posizioni a liquidità concentrata, i controlli utilizzano l'intervallo di tick, la distribuzione della liquidità e le commissioni maturate per verificare l'esposizione ai token rappresentata da ciascun NFT.
Balancer
Le osservazioni weighted dei token vengono combinate con i pesi del pool per validare le suddivisioni di inventario multi-asset prima che l'oracolo assegni un valore di collaterale conservativo.
Curve
Le osservazioni sulle stablecoin servono principalmente a rilevare feed stale, drift delle riserve e anomalie di breve termine, mentre i prezzi esterni restano l'ancora primaria.
Trader Joe e Aerodrome
Le osservazioni cumulative di prezzo su una finestra di 30-60 minuti aiutano a validare lo stato di pool a liquidità più bassa e a resistere alla manipolazione nella stessa transazione durante i controlli sul collaterale.
Sicurezza e prevenzione della manipolazione
- Soglie di deviazione
Nuovi prestiti o liquidazioni possono essere messi in pausa quando i dati di verifica derivati dal pool si allontanano troppo dai prezzi di riferimento esterni oltre
maxDifference. - maxPoolPriceDifference
Questo mantiene lo stato implicito del pool allineato ai prezzi dei token sottostanti e limita la manipolazione istantanea del pool o l'abuso dell'oracolo nella stessa transazione.
- Cap di open interest
L'esposizione è limitata per famiglia LP, profondità del pool e complessità del collaterale, così i mercati più sottili ricevono limiti di prestito più stretti.
- Haircut di recovery
L'oracolo sconta il valore LP teorico per impermanent loss, slippage di unwind e assunzioni di liquidazione sotto stress prima che venga concessa qualsiasi capacità di prestito.
- Sentinella oracle
Oracle Sentinel monitora la salute dei feed e gli input di verifica e può attivare un comportamento di fallback quando i dati sono stale, compromessi o inconsistenti con i controlli sullo stato della posizione.
Parametri oracolo configurabili
Le impostazioni oracolo specifiche del pool vengono configurate per token tramite setTokenConfig. La tabella seguente elenca i parametri utilizzati per convalidare il feed dei prezzi di un token e l'associato pool:
| Parametro | Descrizione |
|---|---|
| Gettone | Indirizzo del token di collaterale |
| AggregatorV3Interface | Feed Chainlink per il token sottostante |
| maxFeedAge | Età massima accettabile per il feed Chainlink |
| Pool di liquidità | Pool DEX specifico (Uniswap V3, Balancer, Curve, ecc.) |
| twapSeconds | Finestra per il calcolo TWAP |
| Modo | Modalità operativa dell'oracolo (standard/fallback) |
| maxDifference | Deviazione massima consentita tra prezzo DEX e prezzo di verifica |
In pratica, il comportamento dell'oracolo nasce dalla combinazione di pricing esterno degli asset, logica di ricostruzione LP, trattamento del valore recuperabile e impostazioni per token configurate tramitesetTokenConfig.
