获取CoinMarketCap列出货币的价格历史记录

cmctestingthree的Python项目详细描述


CoinMarketCap历史刮刀


内容

以csv格式获取coinmarketcap所列加密货币的CoinMarketCapUSD price history数据。

将此库用作命令行脚本以动态获取历史加密货币数据,或导入库以获取程序的加密货币数据。

安装

下载zip文件或导航到所需的安装目录并运行:

$ git clone https://github.com/Alescontrela/coinmarketcap-history.git

要安装所需的依赖项,请导航到repo并运行:

$ pip install -r requirements.txt

用法

命令行

除此之外,这对美国的税务报告非常有用。如果你想知道交易(或通过采矿获得的硬币)的成本基础,国税局要求你以美元计价。如果是代币交易(如用BTC购买ETH),则需要知道交易时的美元:BTC汇率。

令人惊讶的是,截至2017年10月,在网上任何地方以机器可读格式获取这些数据都不容易。

美国国税局的标准(至少在类似的情况下是w/股票)是使用股票当天的高、低价格的平均值,而不是在交易的确切时刻得到汇率,这通常是不可行的。coinmarketcap没有提供这个数字,但是这个工具计算这个数字并将其包含在输出中。

命令行用法

在终端中,导航到repo目录并运行:

$ python coinmarketcap.py <currency1> <start_date> <end_date>

其中:

  • currency是coinmarketcap上显示的货币/标记的(不区分大小写)名称,用破折号代替空格
  • start_date是以yyyy-mm-dd格式获取数据的范围的开始。例如,2017-10-01(2017年10月10日)
  • end_year是以yyyy-mm-dd格式获取数据的范围的末尾。您可以在将来使用日期来获取最新数据。格式与开始日期相同。

多种加密货币的数据可通过以下方式获得:

$ python coinmarketcap.py <currency_1,currency_2,...,currency_n> <start_date> <end_date>

注意:货币必须用逗号分隔,中间不能有空格。

也可以通过运行以下命令找到上述信息:

$ python coinmarketcap.py -h

通过运行将输出写入文件:

$ coinmarketcap.py <currency> <start_date> <end_date> > <output_filename>

命令行示例

为一种加密货币收集数据:

$ python coinmarketcap.py bitcoin 2017-01-01 2017-12-31

为多种加密货币收集数据:

$ python coinmarketcap.py bitcoin,ripple,ethereum 2017-01-01 2017-12-31

将输出写入文件:

$ python coinmarketcap.py bitcoin 2017-01-01 2017-12-31 > bitcoin_prices.csv

将多个加密货币的输出写入文件:

$ python coinmarketcap.py bitcoin,ripple,ethereum 2017-01-01 2017-12-31 > bitcoin_ripple_ethereum_prices.csv

模块

您还可以将coinmarketcap.py用作其他python模块中的模块,以获取具有加密货币历史记录的pandas数据帧。

首先,您可能需要通过如下命令添加到sys.pathcoinmarketcap_usd_history.py的路径:

sys.path.append(<path_to_coinmarketcap_usd_history.py_parent_folder>)

(或者,只需将coinmarketcap_usd_history.py文件移动到include模块的目录即可。)

其次,导入模块:

import coinmarketcap_usd_history

最后执行此操作以获取数据帧:

df=coinmarketcap_usd_history.main(['bitcoin','2017-01-01','2017-12-31','--dataframe'])

如果您只想将csv输出作为字符串返回到另一个python模块,只需省略'--dataframe'参数。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在收到spring mqtt集成中停止重复订阅保留的消息   java改造安卓在textview中显示数据   读取CSV Java时获取While循环中的最后一行数据   将Java程序转换为小程序的部署   java如何在不向Src添加文件的情况下将文件放入GitLab测试   java包含字节数组列表的方法   java十进制转换错误   eclipse是由java引起的。lang.ClassNotFoundException:org。springframework。js。资源ResourceServlet   继承Java向上与向下   java自动调整标签内容的大小   java从Android中的AlertDialog返回信息   java在声明按钮时仿真程序中出现错误   java编写刷新线程的最佳方法   Java初学者错误   java需要帮助重置JComboBox   java如何用Spring/MultipartFile捕获中断流   java是否可以在JUnit中设置被测试类的方法的返回值?