有没有办法使用 Binance API 获得硬币的市值或市值排名?

Posted

技术标签:

【中文标题】有没有办法使用 Binance API 获得硬币的市值或市值排名?【英文标题】:Is there a way to get the market cap or market cap rank of a coin using the Binance API? 【发布时间】:2021-05-13 21:38:27 【问题描述】:

我检查了所有我能想到的函数,但在 Binance C# API 中没有看到任何相关内容: https://github.com/JKorf/Binance.Net

如果可能的话,我只想按照市值排名的顺序列出我在列表视图中显示的代币。

【问题讨论】:

对不起,如果你能拿到所有的硬币,按市场分组有什么问题?注意:我对 Binance API 一无所知。看来,应该由客户端完成。 市场是什么意思?比如USDT等?我只想按市值排名对它们进行排序。 试试coinmarketcap.com/api @Lessmore:我知道这个,但我需要一个免费的 api。 coinmarketcap 有免费计划 【参考方案1】:

没有“合法”的方式来获取这些数据。 我就是这样做的:

https://www.binance.com/exchange-api/v2/public/asset-service/product/get-products

获取此端点。它用于 Binance SPA,在他们的文档中没有提到。 data 是一个包含所有交易币安对的数组。例如:

"s":"BTCUSDT",
"st":"TRADING",
"b":"BTC",
"q":"USDT",
"ba":"฿",
"a":"",
"I":"0.00000100",
"ts":"0.01",
"an":"Bitcoin",
"qn":"TetherUS",
"o":"46915.84",
"h":"47499.43",
"l":"44961.09",
"c":"46791.85",
"v":"91500.82",
"qv":"4248420233.17226301",
"y":0,
"as":91500.81462400,
"pm":"FIAT",
"pn":"FIAT",
"cs":18620881,
"tags":["pow","mining-zone"],
"pom":false,
"pomt":null,
"etf":false

您需要将字段cs 乘以当前资产价格。在这种情况下,它将是字段c

18620881 * 46791.85 = 871,305M

所以这是当前的 BTC 市值

【讨论】:

谢谢,但是你如何将它们分成不同的硬币?我正在寻找新的行或命令,但不确定如何将此字符串转换为正确的数组元素,以便我可以搜索我感兴趣的硬币。 其实我只是注意到这个方法对所有硬币都没有有效的 cs。就像 DOTUSDT cs 返回 null。 对于单独的我采取b 价值 - 这是我的硬币。而q必须是USDT。然后我扫描整个数组以获得这个值。我可以缓存cs,因为它没有太大变化。 是的,我这样做了,但是如果你检查 DOTUSDT,它对于 cs 是空的 "s":"DOTUSDT","st":"TRADING","b":"DOT","q":"USDT","ba":"","qa ":"","i":"0.01000000","ts":"0.0001","an":"Polkadot","qn":"TetherUS","o":"22.9500","h":" 24.7900","l":"22.2269","c":"24.7604","v":"14132164.3200","qv":"329851071.227743","y":0,"as":14132164.32000000,"pm" :"FIAT","pn":"FIAT","cs":null,"tags":["pos","mining-zone"],"pom":false,"pomt":null,"etf" :假,【参考方案2】:

如果您只需要免费的 API 而不一定需要 Binance,您可以使用 CoinGecko 的 API。在此处查看文档:

https://www.coingecko.com/api/documentations/v3

您需要的端点是 /coins/markets。

试试这个https://api.coingecko.com/api/v3/coins/markets?vs_currency=usd&order=market_cap_desc

您可能想知道支持的 vs_currencies 以设置 vs_currency 参数。 https://api.coingecko.com/api/v3/simple/supported_vs_currencies

【讨论】:

以上是关于有没有办法使用 Binance API 获得硬币的市值或市值排名?的主要内容,如果未能解决你的问题,请参考以下文章

如何将美元平价的所有硬币获取到 Binance API?

Binance - 通过 WebSockets 获取所选硬币的当前价格

在 Python 中为 Binance API 输入参数

Binance REST API - 通过查询字符串下达 PHP 订单 (POST)

如何获得新价格?

使用 Python(最好是请求)从 Binance API 获取烛台/Kline 数据以获取 JSON 数据