# Spectra Oracles

Spectra oracles facilitate the integration of Spectra's assets across all DeFi. In particular, they are designed to provide robust price feeds - robust to price manipulation - for integrations in lending markets.&#x20;

In this page, we describe the available oracles for Spectra's Principal Tokens (PT), Yield Tokens (YT) and LP Tokens (LP).

Spectra offers two types of oracles:

1. [Deterministic Oracles](/integration-reference/spectra-oracles/deterministic-oracles.md): offer a price reference of the PT against the underlying, evolving according to a pricing model based on an expected implied APY set at deployment. They are designed such that the reported price matches the par value of the PT at maturity.&#x20;
2. [Time-Weighted Average Price (TWAP) Oracles](/integration-reference/spectra-oracles/twap-oracles.md): based on an exponential moving average (EMA) of the prices given by the AMM, those oracles provide a price reference for the PT/YT/LP both in IBT and underlying asset.&#x20;
3. Hybrid Oracles that combine the best of TWAP Oracles and Deterministic Oracles: accurately represent the market by using the TWAP oracles and lower bounding it with a deterministic oracle to offer more robustness against price manipulation.&#x20;

For fetching the latest price, Spectra oracles follow[ Chainlink's standard](https://tfsaggregator.github.io/docs/v3/). That is, one can get the latest data point by calling

```solidity
    function latestRoundData()
        external
        view
        returns (
         uint80 roundId,
         int256 answer,
         uint256 startedAt,
         uint256 updatedAt,
         uint80 answeredInRound
         )
```

The oracles being fully on-chain, one can ignore `roundId`, `startedAt`, `updatedAt`, `answeredInRound` return arguments.&#x20;


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://dev.spectra.finance/integration-reference/spectra-oracles.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
