> For the complete documentation index, see [llms.txt](https://fxprotocol.gitbook.io/fx-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://fxprotocol.gitbook.io/fx-docs/risk-management/oracle/steth.md).

# stETH

The f(x) 2.1 price oracle mechanism for stETH/USD combines multiple data sources, including Chainlink, Uniswap, Curve, and Balancer, to calculate spot prices and anchor prices. It defines Max and Min Price for stETH/USD based on these sources and uses a governance-adjustable threshold (default 1%) to decide whether to rely on the Anchor Price or the Max/Min Price for operations like rebalancing, minting, or redeeming. This ensures accurate and stable pricing while accommodating market fluctuations. Below is the detailed breakdown of the stETH Spot Price Oracle Mechanism:

### ETH/USD Spot oracle:

1. \[[Chainlink ETH/USD Spot](https://data.chain.link/feeds/ethereum/mainnet/eth-usd)]
2. \[[Uniswap V3 USDC/ ETH 0.05% Spot](https://app.uniswap.org/explore/pools/ethereum/0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640)]
3. \[[Uniswap V3 USDC/ ETH 0.3% Spot](https://app.uniswap.org/explore/pools/ethereum/0x8ad599c3a0ff1de082011efddc58f1908eb6e6d8)]

### stETH/ETH Spot oracle:

1. \[[stETH/ETH Curve Spot](https://curve.fi/#/ethereum/pools/factory-v2-303/deposit)]&#x20;
2. \[[stETH/ETH Univ3 Spot](https://app.uniswap.org/explore/pools/ethereum/0x109830a1aaad605bbf02a9dfa7b0b92ec2fb7daa)]&#x20;
3. \[[stETH/ETH Curve2 Spot\]](https://curve.fi/#/ethereum/pools/steth/deposit)

### stETH/USD Anchor Price oracle:

* \[[stETH/ETH Curve EMA](https://curve.fi/#/ethereum/pools/factory-v2-303/deposit) ]\*\[[ETH/USD Chainlink Spot](https://data.chain.link/feeds/ethereum/mainnet/eth-usd)]

### The Algorithm of stETH/USD Max and Min Price:

* **Max**: stETH/USD Price=Max(Anchor Price, \[stETH/ETH Spot Max Price ]\* \[ETH/USD Spot Max Price ])
* **Min**: stETH/USD Price=Min(Anchor Price, \[stETH/ETH Spot Min Price ]\* \[ETH/USD Spot Min Price ])

### Price Checking Mechanism:

* Anchor Price is used, while the price difference between Anchor Price and Max/Min Price exceeds the threshold
* The threshold is a governed parameter, 1% in default

### Conclusion:

* Min stETH/USD Price is used for Open/Close of xPOSITION risk control, Rebalance and Liquidation if the price difference between Anchor Price and Min Price doesn’t exceed the threshold. Anchor Price is used otherwise.&#x20;
* Max stETH/USD Price is used for Redeeming fxUSD if the price difference between Anchor Price and Max Price doesn’t exceed the threshold. Anchor Price is used otherwise.&#x20;
* Max stETH/USD Price is used for Open/Close of sPOSITION risk control, Rebalance and Liquidation if the price difference between Anchor Price and Max Price doesn’t exceed the threshold. Anchor Price is used otherwise.
* Min stETH/USD Price is used for Redeeming sPOSITIONs when the system runs out of leverage long collaterals to meet xPOSITIONs’ closing and risk management options if the price difference between Anchor Price and Min Price doesn’t exceed the threshold. Anchor Price is used otherwise.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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://fxprotocol.gitbook.io/fx-docs/risk-management/oracle/steth.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.
