Prijsoracles
Hoe het protocol LP-positiestatus omzet in kredietrelevante onderpandwaarden.
Overzicht
Avana prijst LP-collateral door de positie te reconstrueren en de assets erin te waarderen. Voor fungible LPs haalt het protocol waarde uit externe assetprijzen en reconstructie van poolsaldos. Voor concentrated liquidity ontleedt het de positie naar liquiditeit, range, huidige tick, tokenexposure en opgelopen fees. Het resultaat wordt verdisconteerd om de realiseerbare waarde van het onderpand te schatten onder de risicoveronderstellingen van de markt. De leencapaciteit weerspiegelt daarom zowel de onderliggende activa van de positie als de omstandigheden waaronder deze tijdens liquidatie konden worden teruggewonnen. Het verschil tussen positiewaarde en terugvorderbare waarde is belangrijk omdat de oracle inputs levert voor leenbeslissingen. ERC-20 LP tokens, positie NFTs en multi-asset pools delen een interface, maar elk formaat heeft zijn eigen reconstructie-, validatie- en manipulatiecontroles voordat de waarde de Borrow Spoke bereikt.
LP collateral value depends on:
- De prijzen van de onderliggende assets
- De poolreserves of inventarisverdeling
- Fee accrual
- Voor concentrated liquidity: de huidige tick ten opzichte van de positiesrange
- Of de positie in-range is of grotendeels eenzijdig
Oracle-interface: IOracle
`IOracle` geeft Borrow Spokes een gemeenschappelijk waarderingsinterface over LP formaten. De terugkeerwaarden onderscheiden hoofdsom, opgebouwde kosten en gereserveerde buffers zodat de aanroeper elk component afzonderlijk kan verantwoorden:
function getValue(uint256 tokenId, address asset)
external view returns (
uint256 fullValue,
uint256 feeValue,
uint256 reserveValue
);De adapter achter deze interface behandelt de DEX-specifieke reconstructie en validatie. Borrow Spokes ontvangen dezelfde terugkeer velden voor ERC-20 LP tokens, positie NFTs en multi-asset pools, terwijl elke implementatie de controles toepast die vereist zijn door het type onderpand.
Meerlagenarchitectuur
LP-waardering is een stapsgewijs proces, geen enkele spotprijs-read. Het oracle-pad doorloopt de volgende stappen:
Prijzen van onderliggende assets via externe robuuste oracles
Externe feeds leveren referentieprijzen voor de onderliggende tokens. Dit scheidt de activaprijzing van de pool's directe handelsprijs, die beïnvloed kan worden door kortstondige transacties of manipulatie.
Leid LP-waarde conservatief af
Het orakel reconstrueert verhandelbare LP saldi of decomposeert geconcentreerde liquiditeitsposities met behulp van reserves, liquiditeit, bereik en opgebouwde vergoedingen. Deze inputs bepalen de activa die door de positie worden vertegenwoordigd.
Haircut voor impermanent loss en liquidatieslippage
De gereconstrueerde waarde wordt verdisconteerd voor gespannen marktomstandigheden, liquidatieverlies en het uitstaptraject van de positie. De resulterende waarde schat wat de liquidatie zou kunnen opleveren.
Begrens exposure per LP-familie en pooldiepte
De blootstellingscontroles gebruiken de LP-familie, het pool-type en de beschikbare liquiditeitsdiepte om te beperken hoeveel lenen een markt kan ondersteunen.
Pas herstelbare waarde toe op lenen en liquidatie
De leencapaciteit en liquiditeitscontroles gebruiken de geschatte waarde die kan worden teruggewonnen via de geconfigureerde afwikkelingsroute.
DEX-specifieke afhandeling
Elke DEX onthult verschillende posities en pool gegevens. Het orakel reconstrueert de onderliggende activa uit die gegevens en verifieert de resulterende waardering aan de hand van de referentieprijzen en risicocontroles.
| DEX / LP-type | Oracle-bron | Opmerkingen |
|---|---|---|
| Curve Stabiel/Stabiel ERC-20 LPs | Externe stablecoin-feeds + poolstate-controles + TWAP-verificatie | Externe prijzen verankeren de assets terwijl poolsaldos en fee-accrual de gedisconteerde onderpandwaarde bepalen. |
| Uniswap V2 ERC-20 LPs | Chainlink + reservereconstructie + TWAP-verificatie | Standaard LP-tokens worden gewaardeerd uit gereconstrueerde onderliggende saldi, met TWAP als manipulatiebestendige cross-check. |
| Uniswap V3 NFT LPs | Chainlink + positieontleding + tick/TWAP-controles | De NFT wordt ontleed naar liquiditeit, actieve range en huidige prijs, daarna haircut voor herstelbare liquidatiewaarde. |
| Balancer Multi-activa LPs | Chainlink + gewogen inventarisreconstructie | Multi-token-pools gebruiken externe prijzen en gewogen poolinventaris om conservatieve onderpandwaarde te schatten. |
| SushiSwap / Aerodrome | Chainlink + reservereconstructie + TWAP-verificatie | Pool-afgeleide observations verifiëren gereconstrueerde waarde en helpen same-transaction-abuse in markten met lagere liquiditeit te weerstaan. |
| PancakeSwap | Chainlink + block-based TWAP-verificatie | Externe prijzen blijven de anker terwijl block-based observations positiestatus en unwind-aannames valideren. |
TWAP-berekening per DEX
Tijdgewogen gemiddelde prijzen (TWAPs) leveren verificatiegegevens naast externe activaprijzen en positiereconstructie. Het vergelijken van deze invoer helpt kortdurende prijsverstoringen of inconsistente pool-toestanden te identificeren. TWAP-gegevens vullen het waarderingsproces aan in plaats van zelf de onderpandwaarde te leveren.
Uniswap V2 & 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
Voor geconcentreerde-liquiditeitsposities gebruiken controles tickbereik, liquiditeitsverdeling en opgebouwde vergoedingen om de tokenblootstelling die door elk NFT wordt weergegeven te verifiëren.
Balancer
Gewogen tokenobservations worden gecombineerd met poolweights om multi-asset-inventarisverdelingen te valideren voordat de oracle een conservatieve onderpandwaarde toekent.
Curve
Stablecoin-observations dienen vooral om stale feeds, reservedrift en kortetermijnafomatiteiten te detecteren terwijl externe prijzen de primaire anker blijven.
Trader Joe & Aerodrome
Cumulatieve prijsobservations over een venster van 30–60 minuten helpen poolstate met lagere liquiditeit te valideren en same-transaction-manipulatie tijdens onderpandcontroles te weerstaan.
Veiligheid & manipulatiepreventie
- Afwijkingsdrempels
Nieuwe leningen of liquidaties kunnen worden gepauzeerd wanneer pool-afgeleide verificatiedata te ver van externe referentieprijzen afwijkt voorbij
maxDifference. - maxPoolPriceDifference
Dit houdt pool-implied state uitgelijnd met onderliggende tokenprijzen en beperkt instantane poolmanipulatie of same-transaction oracle-abuse.
- Open rentelimieten
Exposure wordt begrensd per LP-familie, pooldiepte en collateralcomplexiteit zodat dunnere markten strengere leenlimieten krijgen.
- Herstel kapsels
De oracle disconteert theoretische LP-waarde voor impermanent loss, unwind-slippage en gestresste liquidatieaannames voordat enig leenvermogen wordt toegekend.
- Oracle-wachter
Oracle Sentinel bewaakt feedgezondheid en verificatie-inputs en kan fallbackgedrag triggeren wanneer data stale, gecompromitteerd of inconsistent met positiestatuscontroles is.
Configureerbare oracle-parameters
Poolspecifieke oracle-instellingen worden per token geconfigureerd via setTokenConfig. De onderstaande tabel vermeldt de parameters die worden gebruikt om de prijsfeed van een token en de bijbehorende pool te valideren:
| Configuratieparameter | Beschrijving |
|---|---|
| Activum-token | Adres van het collateral-token |
| AggregatorV3Interface | Chainlink-feed voor onderliggend token |
| maxFeedAge | Maximaal acceptabele leeftijd voor Chainlink-feed |
| Liquiditeitspool | Specifieke DEX-pool (Uniswap V3, Balancer, Curve, enz.) |
| twapSeconds | Venster voor TWAP-berekening |
| Modus | Oracle-operationele modus (standard/fallback) |
| maxDifference | Maximaal toegestane afwijking tussen DEX- en verificatieprijs |
In de praktijk komt oracle-gedrag uit de combinatie van externe assetpricing, LP-reconstructielogica, behandeling van herstelbare waarde en de per-token-instellingen geconfigureerd viasetTokenConfig.
