Introducing Chainlink’s Meta Oracle Capabilities for DeFi
As improvements in blockchain infrastructure continue to accelerate decentralized finance’s development, and as the number of live DeFi smart contracts increases, we’re now seeing DeFi approach a critical tipping point. Chainlink has already been playing an important role in DeFi’s rapid growth by creating a data-rich environment where smart contract developers can easily and securely build more advanced financial products that rely on market data, e.g. derivatives, money markets, lending, and many more. Successfully providing the largest collection of on-chain market price data available to the DeFi ecosystem is something that’s already substantially accelerated new DeFi product launches and greatly improved the security of existing smart contracts.
Smart contracts are unique because of their security and reliability guarantees for enforcing a contractual outcome, which is achieved through cryptographically provable, decentralized computation from multiple independent nodes. This security model is what underpins Bitcoin, Ethereum, and almost all other main-chain/layer one protocols.
The realization of truly decentralized finance is dependent on additional infrastructure that extends this same security model to the capabilities needed to create more advanced financial products, e.g. derivatives. In order to provide this additional key functionality, Chainlink has been successfully providing a form of decentralized computation (decentralized oracle networks) that securely connects DeFi smart contracts to all critical off-chain data needed to launch, grow and remain secure as their smart contracts control more value.
Chainlink’s Meta Oracle Capabilities
With Chainlink now able to reliably provide smart contracts access to any off-chain data source in a decentralized, secure and reliable manner, we’re thrilled to announce our upcoming meta oracle functionality, which extends Chainlink’s capabilities to aggregating and reacting to any/all on-chain data. This meta oracle functionality allows users to combine any on-chain values with Chainlink’s own high-quality off-chain data sources, while setting key conditions about how a smart contract should receive, react to and rely on this larger combined data set. Our goal with Chainlink’s meta oracle capabilities is to give smart contract developers more choice when deciding which data resources will be used to build and improve their DeFi smart contracts.
Chainlink’s meta oracle functionality allows smart contracts to use Chainlink for creating complex aggregations of various on-chain data, as well as setting additional conditions for interacting with that on-chain data, such as decentralized exchange prices, other on-chain oracle reports, and any other data generated or placed on-chain. While Chainlink already provides highly accurate off-chain data for DeFi, insurance, gaming, and many other industries, we’ve found that some of the data being generated on-chain can be usefully combined with data about what’s going on in the larger off-chain world. We’ve also found that combining this data using Chainlink’s off-chain aggregation or an on-chain meta oracle smart contract capability can sometimes provide useful functionality. By combining Chainlink’s existing off-chain data delivery, network of high-quality nodes, and existing on-chain data sets with any/all other on-chain data, we expect to see an expansion in what smart contract developers can build using various on-chain data sources.
Using Chainlink Meta Oracles to Implement Pricing Bands and Reduce Pricing Inefficiencies
Below is one example architecture for the combination of off-chain price data from large crypto exchanges with on-chain price data from a decentralized exchange (DEX), which successfully achieves a more accurate market price for the DEX’s users.
By allowing users to actively prevent pricing inefficiency/slippage through a common method of traditional financial markets, pricing bands, Chainlink’s meta oracles can provide a way to define just how much price difference between an on-chain liquidity pool’s price and the larger off-chain market’s true price a user would be willing to accept. If the price offered by an on-chain liquidity pool is outside the pricing band, because too much of a price difference exists, then the user can automatically wait for the on-chain market and the off-chain market to come closer together in price, saving the user significant funds and bringing both markets closer together as a result.
Looking at the problem in more technical detail, DEXs process computation completely on-chain, which means all smart contract functions happen on the underlying blockchain. They are primarily designed in two ways: 1) using order books that match buyers and sellers based on user inputs, 2) using non-order book DEXs that use on-chain liquidity pools to pre-fund both sides of user trade requests with supplemental bonding curves that price trades based on a ratio of the price and the cumulative token supply of the two liquidity pools.
On-chain DEXs without order books encounter occasional inefficiencies in their pricing of a trade, possibly due to the size of their markets. The technical reason for these inefficiencies is that DEXs without order books price assets from on-chain data, which means that the last price submitted on-chain for a particular asset is the current price of the asset listed on the DEX. When this process is combined with low trading volumes/low liquidity, prices can become volatile and disconnected from the rest of the market’s true pricing of an asset. If an on-chain liquidity pool executes trades that are not reflecting the true market price, its users become vulnerable to pricing inefficiencies commonly known as “slippage,” wherein they risk significant loss of funds by irrevocably purchasing assets at a price that is above the true market value.
By combining data about the larger off-chain market’s true price and data about on-chain prices (which may be largely efficient, but occasionally experience costly slippage), Chainlink’s meta oracle capabilities can be used to provide users with pricing efficiency guarantees, which in turn, also helps the on-chain liquidity pool using this approach become more efficient in its pricing.
Chainlink Price Reference Data Oracles can easily act as this reliable source of off-chain market price data, which was previously unavailable to on-chain liquidity pools. By allowing on-chain liquidity/trading resources to act only on prices that represent the true value established in the larger market (through the implementation of customizable pricing bands), Chainlink’s meta oracle capability can provide a useful feature for both on-chain liquidity pools and their users.
Let Us Know What You Think
As we finalize Chainlink’s Meta Oracle capabilities, we want to hear from you! The feedback of our users and the DeFi community as a whole is critical for us to make sure we launch the best functionality for your many use cases.
We encourage you to send us your feedback either by emailing us at [email protected] or via our Discord. If you have a direct contact at Chainlink already, don’t hesitate to reach out to them as well. We will also be attending ETHDenver 2020 and welcome everyone to visit our booth and tell us about their specific needs, as well as features they want to see included in the Chainlink Meta Oracle.
If you are a DeFi project and would like to build your own customized oracle reference data network or use an existing one powered by Chainlink, please contact us here. You can easily use many of our already live oracle networks to quickly and securely launch, add more capabilities to, and/or just greatly improve the security of your smart contracts.