获取CoinMarketCap列出货币的价格历史记录
cmc的Python项目详细描述
CoinMarketCap历史数据检索732F636F696E732E706E67"width="85px" />
获取已上市加密货币的美元价格历史数据。
将此库用作动态获取历史加密货币数据的命令行脚本,或导入cmc
库以获取python程序中的加密货币数据。
内容
安装
使用pip安装coinmarketcap历史记录:
$ pip install cmc
用法
命令行
命令行工具对于美国税务报告等非常有用。如果您希望报告交易(或通过采矿获得的硬币)的成本基础,国税局要求您以美元计价。如果是代币交易(如用BTC购买ETH),则需要知道交易时的美元:BTC汇率。
美国国税局的标准是用当天股票的高、低价格的平均值,而不是在交易的确切时刻得到汇率,这通常是不可行的。CoinMarketCap没有提供这个数字,但这个工具提供了这个数字。
命令行用法
要收集加密货币数据,请打开终端并运行:
$ coinmarketcap <currency1> <start_date> <end_date>
其中:
currency
是coinmarketcap上显示的货币/代币的(不区分大小写)名称,用破折号代替空格(即比特币)。开始日期
是以yyyy-mm-dd
格式(即2017年10月10日的2017-10-01)获取数据的范围的开始。结束年份
是以yyyy-mm-dd格式获取数据的范围的结束。
数据以以下表格格式返回:
<表><广告>多种加密货币的数据可通过以下方式获得:
$ coinmarketcap <currency_1,currency_2,...,currency_n> <start_date> <end_date>
注意:货币必须用逗号分隔,中间不能有空格。
多个加密货币的数据以以下表格格式返回:
<表><广告>也可以通过运行以下命令找到上述信息:
$ coinmarketcap -h
通过运行将输出写入文件:
$ coinmarketcap <currency> <start_date> <end_date> > <output_filename>
为了加快检索速度,可以通过提供--asynchro
标志来异步收集加密货币数据:
$ coinmarketcap <currency> <start_date> <end_date> --asynchro
异步运行coinmarketcap大大减少了获取加密货币数据所需的时间,特别是一次为多个加密货币收集数据时:
注意:异步运行时间可能因CPU体系结构而异。使用64位6核AMD处理器执行基准测试。
命令行示例
为一种加密货币收集数据:
$ coinmarketcap bitcoin 2017-01-01 2017-12-31
为多种加密货币收集数据:
$ coinmarketcap bitcoin,ripple,ethereum 2017-01-01 2017-12-31
异步收集多个加密货币的数据(更快):
$ coinmarketcap bitcoin,ripple,ethereum 2017-01-01 2017-12-31 --asynchro
将输出写入文件:
$ pip install cmc0
将多个加密货币的输出写入文件:
$ pip install cmc1
模块
除了命令行功能之外,coinmarketcap history还提供了cmc
库,允许用户从python程序中获取coinmarketcap数据。历史数据以apandas数据框的形式返回,便于使用。
要开始使用cmc
库,请从程序中导入它:
$ pip install cmc2
可以使用getdatafor()
方法收集加密货币的数据:
getdatafor()
- 参数:
加密货币
:字符串或列表- 要删除的密码。为单个加密货币提供字符串,或为多个加密货币提供字符串列表。
开始日期
:日期时间对象- 要为其提取数据的范围开始处的DateTime对象。必须包含年、月和日的值。
结束日期
:datetime对象- 要为其获取数据的范围的EBD的DateTime对象。必须包含年、月和日的值。
字段
(可选):列表- 数据检索时要获取的列。选项是:
- ['open'、'high'、'low'、'close'、'volume'、'market cap'、'average']
- 如果未指定字段,则返回所有字段。
- 数据检索时要获取的列。选项是:
异步
(可选):布尔型- 如果
true
,则数据是异步收集的。这在一次为多个加密货币收集数据时特别有用,同步收集时可能会很慢。如果未指定异步,则同步收集数据。
- 如果
下载目录
(可选):字符串- 保存数据和从中加载数据的相对路径的字符串。如果未指定"下载目录",则不保存任何数据。
- 返回:
输出
:熊猫数据框- 包含指定加密货币在所需日期范围内的历史价格信息的数据帧。
库示例
为单一加密货币收集数据:
$ pip install cmc3
正在获取多个加密货币的数据:
$ pip install cmc4
要缓存检索到的数据,只需为download\u dir
提供一个字符串。字符串应该是所需下载目录的相对路径。数据以轻量级格式存储。
保存数据并提取缓存数据:
$ pip install cmc5
仅拉动指定列:
$ pip install cmc6
传统型
遗留代码可以从CoinMarketCap History Legacy
存储库中获取,该存储库位于此处
更新
2.0.0-2018年7月6日
- 从版本2开始,coinmarketcap历史现在支持python 3。此外,
cmc
工件允许全局使用coinmarketcap
命令行工具,以及对程序内操作的专用支持。
2.0.2-2019年5月30日
- 从2.0.2版开始,coinmarketcap历史记录现在可以在jupyter笔记本中异步运行,这要归功于处理事件循环方式的改变。