跳至主要内容
本页面使用机器翻译自英语,可能包含错误或不清楚的语言。如需最准确的信息,请参阅英文原文。由于更新频繁,部分内容可能与英文原文有出入。请加入我们在 Crowdin 上的努力,帮助我们改进本页面的翻译。 (Crowdin translation page, Contributing guide)

Pyth 网络

概述

Pyth 网络](https://pyth.network/) 是最大的甲骨文第一方网络之一,提供大量连锁店 的实时数据。

该网络由全球[最大的交易所、做市商和金融服务提供商]组成(https://pyth.network/publishers)。 这些数据在链上发布专有数据,供智能合约应用程序汇总和分发。

使用 Pyth 网络

Pyth 引入了创新的低延迟拉动式甲骨文设计,用户可以在需要时拉动链上的价格更新,使链上环境中的每个人都能最高效地访问该数据点。 Pyth 网络每400毫秒更新一次价格,使 Pyth 成为速度最快的链上算子之一。

Kaia 上的开发人员可以无权限地访问股票、ETF、商品、外汇货币对和加密货币的任何 Pyth's price feeds

下面是一个在 Kaia 网络上获取 ETH/USD 最新价格的合约示例。 您必须通过Pyth 的合约地址 获取 Kaia 主网/主网的信息,并通过所需的price feed id获取最新价格。


// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.13;
import "@pythnetwork/pyth-sdk-solidity/IPyth.sol";
import "@pythnetwork/pyth-sdk-solidity/PythStructs.sol";
contract MyFirstPythContract {
IPyth pyth;
constructor(address _pyth) {
pyth = IPyth(_pyth);
}
function fetchPrice(
bytes[] calldata updateData,
bytes32 priceFeed
) public payable returns (int64) {
// Fetch the priceUpdate from hermes.
uint updateFee = pyth.getUpdateFee(updateData);
pyth.updatePriceFeeds{value: updateFee}(updateData);
// Fetch the latest price
PythStructs.Price memory price = pyth.getPrice(priceFeed);
return price.price;
}
}

在这里,你可以从我们的Hermes获取updateData,它监听 Pythnet 和 Wormhole 以获取价格更新;或者你也可以使用pyth-evm-js SDK。 查看 如何获取价格更新 获取最新数据。

软件包 提供了使用 Solidity 从 Pyth 网络甲骨文中获取价格的实用工具。 此外,它还包含Pyth Interface ABI,您可以在库中使用它与 Pyth 合约通信。

我们建议在使用 Pyth 数据时遵循 用户最佳实践

更多信息,请查阅官方 Pyth 文档。 有关与 Pyth 智能合约交互的各种功能的详细信息,请参见API 参考部分

Pyth on Kaia

Pyth Network 智能合约可在以下地址获取:

此外,单击可访问 Pyth 价格-进价 ID

将 Pyth 用作 PUSH Oracle

Pyth Oracle 可用作推送甲骨文,通过运行一个调度程序来更新后台的价格。 它将确保您的 dapp 根据您的配置更新最新价格。 查看开源 price pusher 应用程序,开始使用调度程序。

开发商和社区

Pyth 网络为开发人员提供了更多工具,如 TradingView IntegrationGelato web3 functions 等。

查看以下链接,开始使用 Pyth。

让这个页面变得更好