Bitcoincharts-promise 是一个用于获取交易所中比特币价格数据的 npm 包。该包基于 Promise,能够轻松地通过异步调用获取实时或历史的比特币价格数据。本文将介绍如何使用 Bitcoincharts-promise 包及其相关内容。
安装 Bitcoincharts-promise 包
在终端中输入以下命令安装 Bitcoincharts-promise 包:
npm install bitcoincharts-promise
使用 Bitcoincharts-promise 包
首先,我们需要请求数据的交易所网站的代码。Bitcoincharts-promise 包支持以下交易所网站的数据请求:
- mtgox
- bitstamp
- btce
- bitfinex
- kraken
- coinbase
接下来,我们可以使用 Bitcoincharts-promise 包获取实时或历史数据。以下是使用 Bitcoincharts-promise 包获取比特币价格数据的示例代码:
-- -------------------- ---- ------- ----- ------------- - --------------------------------- ----- -------- ----- - --- - ----- --- - --- -------------------------- ----- --------- - ----- ------------------------ --------------------- ---- ----- ------ --------------- ----- -------- - --- --------------- - ----- - -- - -- - -- - ---- -- - ---- --- ----- ------ - ----- ------------------------ --------------------- ---------------- ------ -- --- ---- - ------- - ----- ------- - --------------------- - - ------
上述代码会打印 Bitstamp 上最近一个交易日的最新价格和最近 7 天的交易数。
Bitcoincharts-promise 包 API
Bitcoincharts-promise 包提供以下 API 接口:
getLastTradePrice()
获取当前交易所最新的比特币价格。
getTrades(since)
获取从指定日期开始的所有交易数据列表。since 参数应为构造函数“Date”对象的日期。如果未指定“since”参数,则返回指定的交易所上所有可用的交易数据列表。
getOrderbook(depth)
获取当前交易所的买卖报价深度。depth 参数应指定要提取的梯度深度。如果未指定“depth”参数,则返回当前交易所的所有可用买卖报价深度数据。
getTicker()
获取当前交易所的比特币行情/挂单。
getVolume()
获取当前交易所的总交易量数据。
getTradingPairs()
获取支持的比特币交易对列表。
getExchangeRate(currency)
获取指定货币的比特币汇率。
getOhlc(interval, since)
获取从指定日期开始的指定时间段内比特币的 OHLC(开盘价,最高价,最低价,收盘价)数据。interval 参数代表日期之间的持续时间,支持的持续时间为 1 分钟、5 分钟、15 分钟、30 分钟、1 小时、2 小时、4 小时、6 小时、12 小时以及 1 天。since 参数应为构造函数“Date”对象的日期。
Bitcoincharts-promise 包使用指南
在使用 Bitcoincharts-promise 包时,应注意以下事项:
- 请在尝试获取数据之前实例化“BitcoinCharts”对象,并指定购买的交易所。
- 在适当的情况下,使用“getTickers()”方法以获取当前交易所上的比特币行情/挂单。
- 要获取当前交易所上的已成交价格,请使用“getLastTradePrice()”方法。
- 要获取交易量信息,请使用“getVolume()”方法。
结论
Bitcoincharts-promise 包是一个非常有用的 npm 包,可以轻松地通过异步调用获取历史或实时比特币价格数据。本文介绍了如何使用 Bitcoincharts-promise 包及其 API 接口,并提供了示例代码,希望能够对读者有所帮助。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60055fc281e8991b448dd1c8