diff --git a/docs/get-started/price-feeds.mdx b/docs/get-started/price-feeds/price-feeds.mdx similarity index 99% rename from docs/get-started/price-feeds.mdx rename to docs/get-started/price-feeds/price-feeds.mdx index 9eeada53..e1894c9f 100644 --- a/docs/get-started/price-feeds.mdx +++ b/docs/get-started/price-feeds/price-feeds.mdx @@ -12,6 +12,12 @@ import Tabs from "@theme/Tabs"; The following feeds are available on-chain and are compatible with the [Chainlink interface](https://github.com/smartcontractkit/chainlink/blob/develop/contracts/src/v0.6/interfaces/AggregatorV3Interface.sol). +:::tip Detailed preview of price feeds available + +**[See the feeds in our app](https://app.redstone.finance/app/feeds/)** + +::: + diff --git a/docs/get-started/lombard.md b/docs/get-started/price-feeds/types-of-feeds/lombard.md similarity index 90% rename from docs/get-started/lombard.md rename to docs/get-started/price-feeds/types-of-feeds/lombard.md index 7ae0a114..c71555f5 100644 --- a/docs/get-started/lombard.md +++ b/docs/get-started/price-feeds/types-of-feeds/lombard.md @@ -25,7 +25,7 @@ To burn LBTC and unstake BTC, a user initiates the burn by sending LBTC back to ### Overview -RedStone delivers LBTC/BTC fundamental price using both [pull](./models/redstone-pull.mdx) and [push](./models/redstone-push.md) models. The price is calculated as a ratio between BTC controlled by the Lombard protocol and the total supply of LBTC tokens across all supported chains. There are also adjustments for **total_unclaimed_lbtc** (LBTC tokens that are not yet minted but already have correlated BTC tokens deposited to the Lombard protocol) and **total_btc_unstakes_pending** (BTC tokens in the 7-day withdrawal period). +RedStone delivers LBTC/BTC fundamental price using both [pull](./../../models/redstone-pull.mdx) and [push](./../../models/redstone-push.md) models. The price is calculated as a ratio between BTC controlled by the Lombard protocol and the total supply of LBTC tokens across all supported chains. There are also adjustments for **total_unclaimed_lbtc** (LBTC tokens that are not yet minted but already have correlated BTC tokens deposited to the Lombard protocol) and **total_btc_unstakes_pending** (BTC tokens in the 7-day withdrawal period). Currently, the value has an upper cap of 1, meaning a healthy value is 1, indicating the protocol’s stability. A value of 1 also signifies that there are as many or more BTC held by the protocol than there are LBTC tokens in circulation, ensuring full or over-collateralization. For example, if half of the BTC tokens disappear from wallets controlled by Lombard, but the LBTC supply remains the same, the ratio would drop to 0.5. Once Lombard starts generating yield, this cap will be removed, and the value will gradually increase, similar to reward bearing LST tokens like wstETH or pufETH. diff --git a/docs/get-started/price-feeds/types-of-feeds/types-of-feeds.md b/docs/get-started/price-feeds/types-of-feeds/types-of-feeds.md new file mode 100644 index 00000000..870f0cda --- /dev/null +++ b/docs/get-started/price-feeds/types-of-feeds/types-of-feeds.md @@ -0,0 +1,31 @@ +# 🎓 Types of Oracle Feeds at RedStone + +Oracles deliver data feeds directly to dApps or blockchains for the correct execution of transactions in smart contracts. Throughout the past years, the DeFi market has shown various expectations and needs towards the setup of oracle feeds. RedStone is at the forefront of innovation answering the needs of developers in that sector. Therefore, we identify the following types of data feeds: + +1. **Market Feed** + + The regular market price derived from centralized and decentralized exchanges, i.e., ETH / USD. + +2. **Contract Rate Feed** + + Also known as Exchange Rate or Fundamental Feed. A ratio between the underlying asset and its derivative derived from the smart contract of a protocol, i.e., wstETH / stETH rate derived from Lido contract or weETH / eETH derived from Ether.fi contract. + +3. **Real World Feed** + + A feed derived from institutional API or another source providing numerical information, i.e., CESR or SOFR. + +4. **Proof of Reserve Feed** + + Also known as Net Asset Value (NAV) feed. A data feed based on API or another source that informs about the value of assets backing tokens issued against it, i.e., Blackrock BUIDL. Technically a subsection of Real World Feed. + +5. **Protocol Native Oracle** + + The custom implementation of logic supporting a particular oracle, i.e., Bitcoin Staking Oracle. For example: LBTC / BTC price feed, derived based on the number of LBTC minted and the total amount of BTC deposited into Lombard's system on the Bitcoin chain. Detailed description [here](./lombard.md). + +| Feed Type | Denomination | Deviation Comes From | Complexity of Delivery | +| :------------------------- | :------------------------------------------------------- | :----------------------------------------------- | :------------------------------------------------------- | +| **Market Feed** | Mainly USD, can also be another currency i.e., ETH / BTC | Market trading | Relatively simple | +| **Contract Rate Feed** | Underlying asset i.e., ETH for Ethereum LSTs | Specified ratio changes in the smart contract | Requires understanding of edge cases and on-chain source | +| **Real World Feed** | Custom, i.e., for CESR it's a % yield from ETH staking | Custom, i.e., CESR API is updated every 24 hours | Depends on the feed, usually medium difficulty | +| **Proof of Reserve Feed** | Custom, usually USD value | Custom, usually every 24 hours from an API | Depends on the source, usually medium difficulty | +| **Protocol Native Oracle** | Custom, i.e., BTC in the case of Lombard internal Oracle | Custom, i.e., each X minutes for Lombard | Usually work-intensive | diff --git a/docusaurus.config.js b/docusaurus.config.js index c40b3676..c97289a6 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -153,8 +153,12 @@ const config = { { redirects: [ { - to: "/docs/get-started/price-feeds", from: "/docs/smart-contract-devs/price-feeds", + to: "/docs/get-started/price-feeds", + }, + { + from: "/docs/get-started/lombard", + to: "/docs/get-started/price-feeds/types-of-feeds/lombard", }, ], },