CDR #052: Neokingdom DAO | Asset Price Feed

dApp Introduction

dApp name: Neokingdom DAO
dApp website: neokingdom.org
dApp overview: Good day. I am a developer at Neokingdom DAO.
We are building the technical and legal framework to allow companies of all kinds to run as DAOs. You can find more information at our website and on the introductory video of the EVMOS Hackaton we won a few months back Neokingdom DAO | Devpost

One of our use cases is to reward the DAO contributors with tokens at the end of each month. The contributors can decide to keep them as a form of long term investment (to sell later on the market or to gain dividends), or to sell them back to the DAO at the nominal value of 1EUR (we are a European company) in order to pay their bills.

There are no crypto EUR tokens on EVMOS, so we have to use USDC for this type of transaction. For that, it’s legally necessary though that we are able to convert the EUR reward in USDC value, for which we would need an Oracle.

We have build our own custom oracle, which is just a smart contract that we update with a script running on one of our servers, but on the long run it would be necessary that this feed is provided by a trustworthy decentralized entity, such as the DIA app.

For any question, I am happy to answer.

Best,
Nicola

Feed usage

Data type: Price feed
Use case: Reward distribution in USDC (from EUR calculated rewards)

Specifications

Feed specification

Asset pair: EUR/USDC
Sources: All available markets
Methodology: Moving Average
Frequency: -
Window size: -

Oracle specification

Target chain: Evmos
Update mechanism: Time based
Threshold: 60min

Additional information

Thank you for requesting a data feed via DIA CDR. We confirm the CDR specifications were requested correctly. Find the oracle information below:

Oracle

The oracle is deployed and can be accessed here.

You can query for assets by calling the read function getValue() with parameters such as “EUR/USD” or “USDC/USD”. It will return two values:

  1. The price of the asset queried with 8 decimals
  2. The unix timestamp of the last update

You can see Solidity and Vyper code integration examples here or use a dedicated DIA oracles integration library described in detail here.

Funding

Each deployed oracle has a separate gas wallet which is the only entity allowed to update oracle values based on selected parameters. To find out more information on how it works, visit the following link.

Please make sure to top up the gas wallet, as we only put in some gas to deploy and start the oracle.

Gas Wallet address: 0x1899c0ae8a713490db086811d7738e96197dc6e4

Markets

You can view the markets included for each feed by pressing on a link to DIA App in the deployed assets list:

  1. Ethereum-0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48
  2. https://app.diadata.org/price/asset/Fiat/978/?asset=EUR

Note: DIA uses Blockchain-Address querying formatting to ensure asset selection precision (token symbols might duplicate)

You can also query current asset prices and find other market information on the asset by using the DIA API as described here.

Hi Samuel,

your response and execution have both been blazing fast! It has been a pleasure to work with you.

As a follow-up, I want to announce that the oracle has been successfully integrated into NeokingdomDAO. We have made a test on Mainnet where I have offered 1 NEOK token that has been bought for the EUR/USDC exchange price enabled by your Oracle!

This is the transaction EVMOS Transaction Hash (Txhash) Details - Escan

We are super happy to see this working! And we are again very thankful :pray:

1 Like