DeFiner Protocol
HODLerSavingsSwap
v1 Savings
v1 Savings
  • Introduction
  • Protocol Overview
  • Interest Model
  • Risks Control Model
  • Smart Contract Modules
    • Overview
    • SavingAccount
    • Bank
    • Accounts
    • AccountTokenLib
    • Oracle
    • Modifiers
    • Delayed Upgrades
  • DeFiner SDK
  • Security
    • Audits
      • 01 - Taka Security, Aug 2020
      • 02 - Trail of Bits, Sep 2020
      • 03 - Consensys Diligence, Feb 2021
    • Bug Bounty Program
  • Deployed contracts
    • Addresses
  • FAQ
    • Withdrawal Amount Calculations
Powered by GitBook
On this page
  • Basics
  • Third-Party Oracles
  • DEX Oracles
  • DeFiner Oracle
  • Price Feeds Contract Addresses
  1. Smart Contract Modules

Oracle

Price feed oracles on DeFiner

PreviousAccountTokenLibNextModifiers

Last updated 2 years ago

Basics

There are three types of Oracle that DeFiner is currently using to feed the prices for available token assets on DeFiner: Third-party oracles, DEX Oracle, and DeFiner Oracle.

Third-Party Oracles

Third-party Oracles such as Chainlink, OKLink are used on DeFiner across different blockchains. Chainlink Oracle is currently the most adopted and trusted third-party oracle in DeFi. Chainlink feeds the price to some of the most reputable DeFi projects. That’s why DeFiner uses Chainlink Oracle whenever there is availability on different chains. ( Click to find more information about Chainlink Oracle.) For chains where Chainlink is not available, we adopt the most trustworthy oracle of that particular chain. For example, the Chainlink oracle is not available on OKEx Chain and we adopted the official OKLink Oracle as the third-party price feed.

DEX Oracles

DEX Oracle came into the picture when tokens are not supported by Chainlink Oracle but have sufficient liquidity on one particular decentralized exchange.DEX that we adopted is different on different chains. It depends on the overall liquidity and trading volume. Currently, we use Uniswap as our DEX oracle on the Ethereum blockchain and SushiSwap on OKExChain. The community will review the source and DEX Oracle periodically to ensure DeFiner adopts the most trustworthy and deep liquidity oracle.

DeFiner Oracle

DeFiner Oracle is used if there is no trustworthy third-party oracle available and the DEX trading volume and liquidity of that particular token are relatively low. The token price of DeFiner oracle is reviewed periodically to ensure the price is within an acceptable bound of the time-weighted average price of the token/USD pair across major trading venues, including both centralized and decentralized exchanges. DeFiner oracle proxy contract only stores prices that are within an acceptable bound of the Time-Weighted Average Price (TWAP) and are updated only when the TWAP deviates from the acceptable bound. If there is a significant breakthrough of the token price, the price feed would be triggered to ensure the new price is within the new acceptable bound. The DeFiner Oracle also contains logic that upscales the posted prices into the format that DeFiner's Comptroller expects.

Price Feeds Contract Addresses

Price Pair

Price Feed Method

Contract Address

WBTC/ETH

Chainlink Oracle

ETH/USD

Chainlink Oracle

DAI/ETH

Chainlink Oracle

USDC/ETH

Chainlink Oracle

USDT/ETH

Chainlink Oracle

TUSD/ETH

Chainlink Oracle

MKR/ETH

Chainlink Oracle

BAT/ETH

Chainlink Oracle

ZRX/ETH

Chainlink Oracle

REP/ETH

Chainlink Oracle

LINK/ETH

Chainlink Oracle

FIN/ETH

FixedPriceOracleFIN

FIN-LP/ETH

FixedPriceOracleFIN

Price Pair

Price Feed Method

Contract Address

BTCK/OKT

OKLink Oracle

ETHK/OKT

OKLink Oracle

USDT/OKT

OKLink Oracle

OKT/USD

OKLink Oracle

OKB/OKT

OKLink Oracle

CHE

Cherry Swap TokenBalancePair Oracle

TPT

DeFiner Fixed price oracle

FIN/USD

DeFiner Fixed price oracle

FIN-LP/OKT

SushiSwap Oracle

Price Pair
Price Feed Method
Contract Address

DAI/MATIC

Chainlink Oracle

USDC/MATIC

Chainlink Oracle

USDT/MATIC

Chainlink Oracle

WBTC/MATIC

Chainlink Oracle

SUSHI/MATIC

Chainlink Oracle

LINK/MATIC

Chainlink Oracle

CRV/MATIC

Chainlink Oracle

QUICK/MATIC

Chainlink Oracle

ETH/MATIC

Chainlink Oracle

FIN/MATIC

FixedPriceOracleFIN

here
0xdeb288F737066589598e9214E782fa5A8eD689e8
0x0000000000000000000000000000000000000001
0x773616E4d11A78F511299002da57A0a94577F1f4
0x986b5E1e1755e3C2440e960477f25201B0a8bbD4
0xEe9F2375b4bdF6387aa8265dD4FB8F16512A1d46
0x3886BA987236181D98F2401c507Fb8BeA7871dF2
0x24551a8Fb2A7211A25a17B1481f043A8a8adC7f2
0x0d16d4528239e9ee52fa531af613AcdB23D88c94
0x2Da4983a622a8498bb1a21FaE9D8F6C664939962
0xD4CE430C3b67b3E2F7026D86E7128588629e2455
0xDC530D9457755926550b59e8ECcdaE7624181557
0xd7Cd4e27d9333013b0Fe9cE82855f71Ae126C51E
0x444F88FDd587C1Bd6B50bB8924f964DEC590e403
0x7fEe2020a0bC1bDCffe3Cf1D60B076a1a5761358
0x87Eb25bF3F9750e331f6a8CD26C4bcd86F1c255D
0x7300077ee0a463c285e99D88eB9CDF0C6e616b7d
0x0000000000000000000000000000000000000001
0xFd110ED9756135bdaa78a17C0aF453b80E5F40E2
0x1106CaD41FE13BD5CDAbEb6dDbfffB6b647a2Efd
0xeAFcc445B1e635Fb278f30DE996d7e2aE3dBceBa
0x8471CB38E37EdfC711F9979CB835015f44533bce
0xd54fC9d46f6D3e65dD05611af55B3094B7f7f7c3
0x48152e8CeC24122e0d25397dbc162Ab717af2C09
0xD6B80313F1647f7d21a24Ac7a6109169eD0CA918
0x16212965BB17F4071d86C139aFcFab4f5DEb0FdF
0x3e7054619C84Fa4f6Df231A7Cd3e46258b4a074e
0x383e4442D58A2c69D7a3982735ECed1d20EE8042
0xD74C9ea5114Dd311ff3fB6F49B04Dbd2A2488F9E
0xcD14cCa0d42144B762E0932d241cb7c577a92abf
0xfD3ACD8E3B2E9Df9264E574BE31A4E3726fc58eB
0x60a9224c81279B2c6eDe94Bcdc440653D3Af96b7
0x27B938EAB0b3097447D9c87550452da112055441