Skip to main content

DIA Price Oracles

Ecosystem Price Oracles, powered by DIA

Introduction to DIA

DIA is a cross-chain oracle provider that sources granular market data from diverse exchanges, including CEXs, DEXs, and NFT marketplaces. Its data sourcing is thorough, enabling unparalleled transparency and customizability for resilient price feeds for 20,000+ assets. Its versatile data processing and delivery ensures adaptability and reliability for any decentralized application.

Usage of DIA Oracles on Telos

dApps building on Telos EVM can utilize DIA oracles to obtain up-to-date asset price information. These deployed oracles are suitable for use in production environments. They come with a list of supported assets and settings. However, if dApps require a custom oracle with a different set of assets and configurations, they should contact DIA on Telegram.

Deployed contracts

Access the oracles in the smart contracts below:

Included price feeds + data sources

The Telos oracle includes the following price feeds:

Asset TickerAsset BlockchainAsset AddressAsset Markets Overview
USDTEthereum0xdAC17F958D2ee523a2206206994597C13D831ec7USDT Asset Information
USDCEthereum0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48USDC Asset Information
ETHEthereum0x0000000000000000000000000000000000000000ETH Asset Information
BTCBitcoin0x0000000000000000000000000000000000000000BTC Asset Information
TLOSTelos0x0000000000000000000000000000000000000000TLOS Asset Information
MATICPolygon0x0000000000000000000000000000000000001010MATIC Asset Information
BNBBinance Smart Chain0x0000000000000000000000000000000000000000BNB Asset Information
AVAXAvalanche0x0000000000000000000000000000000000000000AVAX Asset Information
FTMFantom0x0000000000000000000000000000000000000000FTM Asset Information

Learn more about DIA’s data sourcing and data computation architecture.

Oracle configuration settings

Oracle specifications:

Methodology: VWAPIR

The final price point for each asset is calculated by computing the assets' trade information across multiple DEXs and CEXs. This is done using a Volume Weighted Average Price with Interquartile Range (VWAPIR) methodology. Learn more about VWAPIR.

Update frequency: 0.2% deviation threshold, and 24 hour heartbeat.

The oracle operates a trade collection window of 2 minutes, distinct from the heartbeat mechanism. This period is used to aggregate trades for calculating the price point. Specifically, it gathers trade data within 120-second intervals and then evaluates if a 0.2% price deviation has occurred, triggering an update if such deviation is detected.

How to access DIA oracles?

Here is an example of how to access a price value on DIA oracles:

  1. Access your custom oracle smart contract on Telos.
  2. Call getValue(pair_name) with pair_name being the full pair name such as BTC/USD. You can use the "Read" section on the explorer to execute this call.
  3. The response of the call contains two values:
    1. The current asset price in USD with a fix-comma notation of 8 decimals.
    2. The UNIX timestamp of the last oracle update.

You can find DIA's oracle integration samples in Solidity and Vyper languages by visiting:

Access the Oracle | DIA Documentation

Support

For assistance, connect with the DIA team directly on Discord or Telegram. Developers seeking other specialized, production-grade oracle with tailored price feeds and configurations can initiate the request here: Request a Custom Oracle | DIA Documentation