Back in September of 2019, the Maker Foundation published a blog post introducing the Oracle V2 architecture that would launch alongside Multi-Collateral Dai, and recommending a series of governance proposals.
- Oracle Team Mandate Proposal
- DeFi Public Feed Proposal
- Oracle Incentives Restructuring Proposal
- Responsible Oracle Migration Proposal
As a result of these proposals, MKR Governance gained several new capabilities, among these:
- Launch Oracles for new assets (even if those assets aren’t collateral types in the Maker Protocol)
- Regulate who can access the Oracle prices through a whitelist
- Setting an Oracle Fee, the proceeds of which go to MKR token holders.
The Oracle Team, in accordance with its responsibilities outlined in the Oracle Team Mandate, is proposing the creation of a BTC/USD Oracle. With the DeFi ecosystem’s rapid innovation and expansion into tokenized Bitcoin (WBTC, tBTC, RenBTC) and synthetic Bitcoin derivatives (dYdX, Synthetix), there is significant demand for a BTC/USD Oracle.
Furthermore, should this proposal be accepted, Set Protocol and dYdX will be added to the whitelist as the initial set of customers for the BTCUSD Oracle.
Oracle Type: BTCUSD
Customers: Set Protocol, dYdX
0xbf63446ecF3341e04c6569b226a57860B188edBc (Set Protocol)
Date of Proposed Inclusion: 2020-04-17
Fee: In accordance with the Responsible Oracle Migration Proposal, fees are waived for the first year and determined by MKR Governance after that.
Data Models describe the data sources and transformations for calculating the canonical price of an asset.
Source- The data source for the Oracle Feed
Asset Pair- a price quote of the exchange rate for two different assets traded on the source.
Quorum- The amount of Feeds needed to reach consensus on a price.
Feed Model- Model for how a Feed processes all sourced data into a singular price
Oracle Model- Model for how an Oracle processes all Feed data into a singular price
BTC/USD Data Model
| Source | Asset Pair |Quorum | Feed Model | Oracle Model | | :------------ | :------------ | :---: | :---------: | :----------: | | Bitstamp | BTC/USD | 13 | Median | Median | | Bittrex | BTC/USD | | Coinbase | BTC/USD | | Gemini | BTC/USD | | Kraken | BTC/USD |
Supporting Data Model(s)
The USDT/USD Supporting Data Model has been removed after feedback from community (see thread discussion)
| Source | Asset Pair | Feed Model | | :------------ | :------------ | :----------: | | Binance | BTC/USDT | Median | | BitFinex | BTC/USDT | | Huobi | BTC/USDT | | Kraken | USDT/USD | | OKEx | BTC/USDT |
- Deployed, configured, and verified BTCUSD Medianizer on Ethereum mainnet at address
- Reviewed Set Protocol and dYdX contracts and verified Oracle price access is permissioned
- Created spell to whitelist Set Protocol and dYdX contracts (WIP)
- added support for the BTCUSD Data Model
- added support for the USDT/USD and KRW/USD Supporting Data Models
- updated Feed configuration files with asset pair details
- updated Relayer configuration files with contract details
Removed Upbit as Data Model source
Added Bittrex as Data Model source
Removed KRW/USD Supporting Data Model
Removed Binance and Bitfinex from Data Model source to remove USDT based pairs.
Removed USDT Supporting Data Model