# Oracles

Polynomial perp is a decentralised derivative exchange which uses **Chainlink** [oracle network](https://chain.link/education/blockchain-oracles) & **Pyth** [oracle network](https://pyth.network/price-feeds?asset-type=crypto\&status=online), which is used to provide the up-to-date token price data to smart contracts on Ethereum and Optimism Mainnet.

For more details, check the synthetix doc [here](https://docs.synthetix.io/synthetix-protocol/the-synthetix-protocol/oracles)

### Constituent Contracts

| Contract        | Description                                                                                                                                                                                                                                  |
| --------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `Oracle`        | The oracle is responsible for collecting and updating all token prices known to the Synthetix system. Although it is not a contract, it controls a known Ethereum address from which price updates are sent to the `ExchangeRates` contract. |
| `ExchangeRates` | The Synthetix exchange rates contract which receives token prices from the oracle, and supplies them to all contracts that need it.                                                                                                          |
|                 |                                                                                                                                                                                                                                              |
