# Yield Oracle

[Yield Oracle](/how-it-works/yield-oracle.md) program is responsible for reporting yield data used for ranking validators to rebalance delegation.

For doing so, it leverages reference delegators: programs with behavior restricted to delegating to a validator just with the purpose of measuring its yield. They then push this data to the Oracle, and it is used to rebalance delegation shares of the protocol pool attributed to top 5 validators.

<figure><img src="/files/jegADC4WmzJSWkDeLOuF" alt=""><figcaption><p>Pondo Oracle</p></figcaption></figure>

All pondo oracle actions are permissionless making this approach almost entierly decentralised, appart from a necessary approval of reference delegators. It allows to ensure offchain that the delegator meets the requirements to be considered a reference delegator. All parties can verify as they are public that approved reference delegators are indeed valid reference delegators.

Multiple reference delegators for the same validator are supported to prevent DOS attack situations.


---

# 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://docs.pondo.xyz/how-it-works/yield-oracle.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.
