0

我正在构建一个使用 Binance API 的机器人,并且我想在他们的应用程序中获取每个交易对的美元价值(查看屏幕截图),有没有办法使用他们的 API 来实现这一点?或者唯一的方法是以编程方式将每一对转换为美元值,因为大约有 1542 个交易对。

在此处输入图像描述

4

1 回答 1

1

Binance API 有一个符号价格代码端点,当它收到一对时返回一个价格,例如 DOGE 和 USD 将是“DOGEUSD”,并会返回类似{'symbol': 'ETHBTC', 'price': '0.06045300'}

Idk 任何关于 JS 等的东西,但在 python 中,我可以通过使用Python Binance 库中的get_symbol_ticker 模块来获取符号的价格,如下所示:

from binance.client import Client
client = Client(api_key, api_secret, tld='us')
client.get_symbol_ticker(symbol="DOGEUSD")

假设这个节点包的工作方式相同,那么你可以尝试这样的事情(复制粘贴,我也从未接触过 JS):

const Binance = require('node-binance-api');
const binance = new Binance().options({
  APIKEY: '<key>',
  APISECRET: '<secret>'
});

binance.prices('BNBBTC', (error, ticker) => {
  console.info("Price of BNB: ", ticker.BNBBTC);
});

https://www.npmjs.com/package/node-binance-api

无论如何,一旦你得到价格,这只是一个数学问题。

ethbtc = client.get_symbol_ticker(symbol="ETHBTC") # response `{'symbol': 'ETHBTC', 'price': '0.06045300'}`
btcusd = client.get_symbol_ticker(symbol="BTCUSD") # response {'symbol': 'BTCUSD', 'price': '32620.8700'}
float(btcusd["price"]) * float(ethbtc["price"]) # returns 1968.48369144

float(BTCUSD["price"])每个 BTC获取{'symbol': 'BTCUSD', 'price': '32581.0800'}并返回美元,即32581.08

获取 BTCUSD 和 ETHBTC 的当前价格可以让我们找出每 1xETH 每 BTC 的美元,或者购买足够的 BTC 以换取单个 ETH 的成本,按目前的汇率大约是1 ETH == 0.060433 BTC == $1968.48

编辑 1:获取产品 API

如此处所示,您可以使用 get-products API 调用获取所有产品及其 OHLCV 值列表。例子:

var url = "https://www.binance.us/exchange-api/v1/public/asset-service/product/get-products";

var xhr = new XMLHttpRequest();
xhr.open("GET", url);

xhr.onreadystatechange = function () {
   if (xhr.readyState === 4) {
      console.log(xhr.status);
      console.log(xhr.responseText);
   }};

xhr.send();
于 2021-07-15T04:45:00.527 回答