LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 币圈百科 > [Chainlink] 固体智能合约中的外汇汇率获取

[Chainlink] 固体智能合约中的外汇汇率获取

2021-02-11 wanbizu AI 来源:区块链网络

价格数据是各种金融工具的核心,尤其是在分散式金融(DeFi)应用程序中。 在创建期权,期货和其他复杂衍生产品的DeFi领域中,外汇(FX)汇率特别重要。 除了获取安全的加密货币价格数据外,Chainlink Price Feed还可以用于在智能合约中获取高质量的FX价格数据。

在本技术教程中,我们将逐步介绍如何在Solidity智能合约中使用Chainlink FX价格供稿。 首先,让我们快速回顾一下什么是FX feed,以及可以使用它们创建哪些类型的衍生产品。

什么是外汇Feed?

外汇市场是货币交易的全球市场,每天的交易量接近7万亿美元。 该市场确定每种货币的汇率,并包括以当前或确定价格购买,出售和交换货币的所有方面。 由于外汇市场的高容量和受欢迎程度,许多DeFi应用程序使用Chainlink FX价格馈送来确保以安全,分散的方式将FX数据传递到其衍生产品合约,而不会出现任何单点故障。

Synthetix交易所是DeFi衍生品交易所,它使用Chainlink甲骨文提供的几种汇率汇率报价,以确保即使基础资产价格波动很大,也可以根据其基础资产的实际市场价格进行防篡改和准确的估值。

Synthetix Exchange如何使用Chainlink oracles获取各种外汇货币的实时市场数据。 如何使用Chainlink FX价格供稿

Chainlink Price Feeds使用数百种高质量数据源,并通过Chainlink oracle的分散网络将它们汇总,将价格数据馈送到参考合约中,在该结果中,结果再次汇总到Aggregator Smart Contract中,作为最新的可信赖答案。 通过使用分散的节点网络聚合的大量数据源,Chainlink oracle可以确保价格数据具有最高的质量,并且不易受到攻击或价格oracle攻击。

创建智能合约

要尝试在智能合约中使用Chainlink FX价格供稿,请首先获取testnet ETH作为智能合约中的天然气。 一旦有了一些ETH,开始构建使用Chainlink FX Price Feeds的智能合约的最简单方法就是部署Price Consumer合约。 这是用于启动Chainlink价格Feed请求的基本合同。 首先,我们需要导入AggregatorV3Interface合同接口,该接口允许我们的智能合同引用Kovan测试网上的链上价格供稿。 然后在局部变量中创建它的一个实例。

导入“ https://github.com/smartcontractkit/chainlink/blob/master/evm-contracts/src/v0.6/interfaces/AggregatorV3Interface.sol”; AggregatorV3Interface内部价格Feed;

然后,在Price Feed参考合约的构造函数中,我们可以初始化我们感兴趣的价格Feed的地址。通过浏览文档中的以太坊Price Feeds页面,我们可以找到Chainlink当前提供的所有价格Feed合约地址。 。 导航到页面的Kovan部分,然后选择外汇价格供稿。 在此示例中,我们将选择地址为0x28b0061f44E6A9780224AA61BEc8C3Fcb0d37de9的GBP / USD价格Feed。

priceFeed =聚合器V3接口(0x28b0061f44E6A9780224AA61BEc8C3Fcb0d37de9);

已定义一个名为getLatestPrice的函数,以从上面的构造函数中实例化的Price Feed Aggregator合同中获取最新价格。 为此,定义了一个新函数,该函数从Aggregator协定中调用LatestRoundData函数。 这是返回聚集器合约当前状态的函数,在这种情况下,我们采用当前价格并将其返回到消费函数中。

函数getLatestPrice()公开视图返回(int){(uint80 roundID,int price,uint startingAt,uint timeStamp,uint80 AnswerInRound)= priceFeed.latestRoundData(); 退货价格 }部署和测试智能合约

现在,我们准备部署和测试我们的合同。 在Remix中编译合同,然后在“部署”选项卡上,将环境更改为“ Injected Web3”,并确保下面的钱包地址是您的MetaMask钱包中包含早些时候获得的ETH的钱包地址,按部署按钮,然后按照步骤操作。 最终结果是您将智能合约部署到了Kovan测试网。 您应该通过Remix控制台中的事务输出记录已部署的合同地址。

部署后,我们只需要执行“ getLatestPrice”功能。 结果应该是该函数从GBP / USD Aggregator合约返回最新价格,然后可以在我们的智能合约中将其用于链上。 请注意,我们不需要为该请求发送任何LINK,并且甚至不使用任何ETH,因为该交易是对链式GBP-USD聚合合约中数据的纯读。

GBP / USD价格Feed结果摘要

Chainlink价格摘要提供了一种可靠的方式,可以将高质量的外汇价格数据输入到Solidity智能合约中。 此外,Chainlink的oracle框架提供了灵活性,可以快速轻松地获取有关股票,加密货币,商品和许多其他资产类型的数据。

如果您是开发人员,并且想快速将您的应用程序连接到Chainlink价格参考数据,请访问开发人员文档并加入Discord中的技术讨论。

有关此主题的更多信息

如何获取以太坊,比特币和其他加密货币的当前价格 智能合约开发人员使用Chainlink的最佳方法 测试Chainlink智能合约

网站| 推特| 不和谐| Reddit | YouTube | 电报| 大事记 GitHub | 价格提要| DeFi

>>在链节上查看

加入我们的电报

在推特上关注我们

在Facebook上关注我们

帖子 [Chainlink] Solidity智能合约中的获取外汇汇率首先出现在AZCoin新闻上。

—-

原文链接:https://azcoinnews.com/chainlink-fetch-foreign-exchange-rates-in-solidity-smart-contracts.html

原文作者:Chainlink News

编译者/作者:wanbizu AI

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...