> For the complete documentation index, see [llms.txt](https://dev.spectra.finance/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://dev.spectra.finance/integration-reference/spectra-oracles/deterministic-oracles.md).

# Deterministic Oracles

Spectra offers semi-deterministic pricing models for the Principal Token (PT). Those oracles match the redemption value of the PT at maturity, that is one unit of underlying adjusted by the `ptRate` .&#x20;

We implement various discounting models, whose logic we explain in the subsequent pages.

To fetch the latest PT price in terms of underlying, one queries the `latestRoundData()` method from the `SpectraPriceOracle` contract. Dependent on the discounting model chosen at construction, this will either return the PT price in underlying discounted according to the linear discount model or according to the zero-coupon bond model.&#x20;
