在我的 PHP 代码(或 Javascript)中,我想从 Uniswap 读取 erc20(以太坊)代币价格 - 它在那里进行交易。我找不到任何 API 调用来返回价格。
我正在寻找该代币的价格: 原始代币:0x1381F369D9D5df87a1A04Ed856C9dbc90f5DB2fA
我该怎么做?
您可以使用 GraphQL 在 The Graph 上查询 Uniswap 数据。
一种方法是直接查询
token
:
{
token(id: "0x1381f369d9d5df87a1a04ed856c9dbc90f5db2fa") {
derivedETH
}
}
...其中
derivedETH
是 ETH 价格。
另一种方法是查询对(按对
id
,或者在本例中使用标记id
):
{
pairs(where: { token0: "0x1381f369d9d5df87a1a04ed856c9dbc90f5db2fa" token1: "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" }) {
token0Price
token1Price
}
}
...其中
token0Price
和 token1Price
是代币相对于彼此的价格 (VRGN\WETH)。
或者,为了简单起见,您可以直接进行请求,如下所示:
curl -X POST -H "Content-Type: application/json" -d '{"query": "{ token(id: \"0x1381f369d9d5df87a1a04ed856c9dbc90f5db2fa\") { derivedETH } }"}' https://api.thegraph.com/subgraphs/name/uniswap/uniswap-v2
...获得:
{"data":{"token":{"derivedETH":"0.0004465905539042863338157407540331524"}}}
您可以尝试 Bitquery 的 GraphQL API。
Bitquery 提供 Uniswap 交易的交易、价格、资金池、交易者和其他详细信息。此外,它还提供美元价格和美元交易量。
您可以通过Bitquery获取完整的历史和实时数据。
这里有例子
Uniswap 上的代币对 - https://ide.bitquery.io/Pairs-of-a-token-on-Uniswap-v1-V2-v3
OHLC / Uniswap 上货币对的价格代码 - https://ide.bitquery.io/OHLC--Price-ticker-on-Uniswap
在 Uniswap 上买入/卖出代币交易 - https://ide.bitquery.io/BuySell-of-a-token-on-Uniswap
在此处查看更多 dex 交易示例 - https://docs.bitquery.io/docs/category/dex-trades/
Bitquery 索引了 Uniswap v1、v2 和 v3 的所有版本,并将发布所有未来的 Uniswap 版本。
披露 - 我为 Bitquery 工作