Wyrocznie cenowe
Jak protokół zamienia stan pozycji LP w wartości zabezpieczenia istotne dla kredytu.
Przegląd
Avana wycenia zabezpieczenie LP, rekonstruując pozycję i wyceniając aktywa w niej. Dla fungible LP protokół wyprowadza wartość z zewnętrznych cen aktywów i rekonstrukcji sald poola. Dla concentrated liquidity rozkłada pozycję według płynności, zakresu, bieżącego ticka, ekspozycji tokenowej i naliczonych opłat. Wynik jest dyskontowany, aby oszacować wartość możliwą do odzyskania zabezpieczenia zgodnie z założeniami ryzyka rynkowego. Zdolność kredytowa odzwierciedla zatem zarówno aktywa bazowe pozycji, jak i warunki, w jakich mogłyby zostać odzyskane w trakcie likwidacji. Rozróżnienie między wartością pozycji a wartością możliwą do odzyskania ma znaczenie, ponieważ oracle dostarcza dane wejściowe do decyzji kredytowych. Tokeny ERC-20, pozycje NFT i aktywa wielotypowe pools korzystają ze wspólnego interfejsu, ale każdy format ma własne procedury odtwarzania, weryfikacji i manipulacji, zanim jego wartość trafi do Borrow Spoke.
LP collateral value depends on:
- Ceny bazowych aktywów
- Rezerwy poola lub podział inventory
- Fee accrual
- Dla concentrated liquidity — bieżący tick względem zakresu pozycji
- Czy pozycja jest in-range, czy głównie jednostronna
Interfejs Oracle: IOracle
`IOracle` zapewnia Borrow Spoke standardowy interfejs wyceny dla LP formatów. Jego wartości zwracane rozróżniają kapitał główny, naliczone opłaty i zarezerwowane bufory, dzięki czemu wywołujący może osobno uwzględnić każdy składnik:
function getValue(uint256 tokenId, address asset)
external view returns (
uint256 fullValue,
uint256 feeValue,
uint256 reserveValue
);Adapter za tym interfejsem obsługuje specyficzną dla DEX rekonstrukcję i walidację. Borrow Spoke otrzymują te same pola zwrotne dla ERC-20 LP tokenów, pozycji NFT i wieloekwiwalentowych pools, podczas gdy każda implementacja stosuje kontrole wymagane przez jej typ zabezpieczenia.
Architektura wielowarstwowa
Wycena LP to proces etapowy, a nie pojedynczy odczyt ceny spot. Ścieżka oracle przechodzi przez następujące kroki:
Wyceniaj bazowe aktywa z zewnętrznych solidnych oracle
Zewnętrzne źródła dostarczają ceny referencyjne dla bazowych tokenów. Odseparowuje to cenę aktywa jako dane wejściowe od bieżącej ceny handlowej pool, która może być wpływana przez krótkotrwałe transakcje lub manipulacje.
Wyprowadzaj wartość LP konserwatywnie
Wyrocznia rekonstruuje wymienne LP salda lub dekomponuje pozycje o skoncentrowanej płynności, używając rezerw, płynności, zakresu i naliczonych opłat. Te dane wejściowe określają aktywa reprezentowane przez pozycję.
Haircut na impermanent loss i slippage likwidacji
Odtworzona wartość jest dyskontowana ze względu na napięte warunki rynkowe, poślizg przy likwidacji oraz drogę wyjścia z pozycji. Wynikowa wartość szacuje, ile można odzyskać przy likwidacji.
Ogranicz ekspozycję według rodziny LP i głębokości poola
Kontrole ekspozycji używają rodziny LP, typu pool oraz dostępnej głębokości płynności, aby ograniczyć, ile pożyczek rynek może obsłużyć.
Zastosuj wartość możliwą do odzyskania do pożyczania i likwidacji
Możliwość pożyczkowa i kontrole likwidacyjne wykorzystują szacunkową wartość możliwą do odzyskania poprzez skonfigurowaną trasę wycofania.
Obsługa właściwa dla DEX-a
Każdy DEX ujawnia różną pozycję i pool dane. Wyrocznia odtwarza podstawowe aktywa na podstawie tych danych i weryfikuje uzyskaną wycenę w stosunku do swoich cen referencyjnych i kontroli ryzyka.
| Typ DEX / LP | Źródło Oracle | Uwagi |
|---|---|---|
| Curve Stable/Stable ERC-20 LPs | Zewnętrzne feedy stablecoinów + kontrole stanu poola + weryfikacja TWAP | Zewnętrzne ceny zakotwiczają aktywa, a salda poola i naliczanie opłat określają zdyskontowaną wartość zabezpieczenia. |
| Uniswap V2 ERC-20 LPs | Chainlink + rekonstrukcja rezerw + weryfikacja TWAP | Standardowe tokeny LP są wyceniane ze zrekonstruowanych sald bazowych, a TWAP służy jako odporny na manipulację cross-check. |
| Uniswap V3 NFT LPs | Chainlink + dekompozycja pozycji + kontrole tick/TWAP | NFT jest rozkładane według płynności, aktywnego zakresu i bieżącej ceny, a potem dostaje haircut do odzyskiwalnej wartości likwidacji. |
| Balancer Multi-Asset LPs | Chainlink + rekonstrukcja ważonego inventory | Poole multi-token używają zewnętrznych cen i ważonego inventory poola, by oszacować konserwatywną wartość zabezpieczenia. |
| SushiSwap / Aerodrome | Chainlink + rekonstrukcja rezerw + weryfikacja TWAP | Obserwacje wyprowadzone z poola weryfikują zrekonstruowaną wartość i pomagają opierać się nadużyciom same-transaction na rynkach o niższej płynności. |
| PancakeSwap | Chainlink + weryfikacja TWAP oparta na blokach | Zewnętrzne ceny pozostają kotwicą, a obserwacje oparte na blokach walidują stan pozycji i założenia unwindu. |
Obliczanie TWAP według DEX-a
Średnie ważone czasem ceny (TWAPs) dostarczają dane weryfikacyjne obok zewnętrznych cen aktywów i rekonstrukcji pozycji. Porównywanie tych danych wejściowych pomaga identyfikować krótkotrwałe zniekształcenia cen lub niespójny stan pool. Dane TWAP uzupełniają proces wyceny, a nie dostarczają samodzielnie wartości zabezpieczenia.
Uniswap V2 i 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
Dla pozycji o skoncentrowanej płynności, kontrole wykorzystują zakres ticków, rozkład płynności i naliczone opłaty do weryfikacji ekspozycji tokena reprezentowanej przez każdą NFT.
Balancer
Ważone obserwacje tokenów są łączone z wagami poola, by zwalidować podziały inventory multi-asset, zanim oracle przypisze konserwatywną wartość zabezpieczenia.
Curve
Obserwacje stablecoinów służą głównie do wykrywania stale feedów, dryfu rezerw i krótkoterminowych anomalii, podczas gdy zewnętrzne ceny pozostają główną kotwicą.
Trader Joe i Aerodrome
Skumulowane obserwacje cen w oknie 30–60 minut pomagają walidować stan pooli o niższej płynności i opierać się manipulacji same-transaction podczas kontroli zabezpieczenia.
Bezpieczeństwo i zapobieganie manipulacji
- Progi odchylenia
Nowe pożyczki lub likwidacje mogą zostać wstrzymane, gdy dane weryfikacyjne wyprowadzone z poola oddalą się zbyt daleko od zewnętrznych cen referencyjnych poza
maxDifference. - maxPoolPriceDifference
To utrzymuje stan implied przez pool w zgodzie z cenami bazowych tokenów i ogranicza natychmiastową manipulację poola lub nadużycie oracle w tej samej transakcji.
- Capy open interest
Ekspozycja jest ograniczana według rodziny LP, głębokości poola i złożoności zabezpieczenia, żeby cieńsze rynki dostawały ciaśniejsze limity pożyczki.
- Potrącenia recovery
Oracle dyskontuje teoretyczną wartość LP o impermanent loss, slippage unwindu i założenia stresowej likwidacji, zanim przyznana zostanie jakakolwiek moc pożyczkowa.
- Strażnik oracle
Oracle Sentinel obserwuje zdrowie feedów i wejścia weryfikacyjne oraz może uruchomić zachowanie fallback, gdy dane są stale, skompromitowane lub niespójne z kontrolami stanu pozycji.
Konfigurowalne parametry Oracle
Ustawienia oracle właściwe dla poola są konfigurowane per token przez setTokenConfig. Poniższa tabela zawiera parametry używane do weryfikacji źródła cen tokena oraz powiązanych pool:
| Parametr | Opis |
|---|---|
| Token aktywa | Adres tokena zabezpieczenia |
| AggregatorV3Interface | Feed Chainlink dla bazowego tokena |
| maxFeedAge | Maksymalny akceptowalny wiek feedu Chainlink |
| Pula płynności | Konkretny pool DEX (Uniswap V3, Balancer, Curve itd.) |
| twapSeconds | Okno obliczania TWAP |
| Tryb | Tryb operacyjny oracle (standard/fallback) |
| maxDifference | Maksymalne dozwolone odchylenie między ceną DEX a ceną weryfikacji |
W praktyce zachowanie oracle wynika z połączenia zewnętrznego pricingu aktywów, logiki rekonstrukcji LP, traktowania wartości odzyskiwalnej oraz ustawień per token skonfigurowanych przezsetTokenConfig.
