你是否思考过通过 Python 来揭开数字加密货币那神秘的面纱?实际上,利用 Python 是能够实现对加密货币进行有效分析的。接下来就让我们一起去看看具体的内容。
准备工作
当要在电脑上运行多个 Python 项目时,将不同项目的依赖包分开是很重要的,这样可以避免冲突。就如同我们在装修房子时,需要把不同功能的材料进行分类放置。在准备好环境之后,就能够开展后续的分析工作。之后,我们借助 Quandl 的免费比特币接口来获取比特币价格数据,这是进行分析的基础,就好像是建造大楼的基石一样。
数据保存
下载好比特币价格数据之后,我们利用 pickle 进行序列化操作,把数据保存成文件。这样做的益处在于,每当代码运行时,就无需再次下载相同的数据,能够节省大量的时间和资源。这就好像我们把常用的工具整理好并放置在固定的位置,下次使用时就能迅速找到。在保存好数据之后,后续的分析就能够更高效地开展。
数据验证
我们能够将生成的图表跟公开的比特币价格图表,例如 Coinbase 上的图表进行对比。这是一种快速的完整性核查方式,能够验证所下载的数据是否合理。倘若数据不合理,那么后续的分析就可能会产生偏差。在 2012 年到 2017 年这个时间段,比特币价格不会是零,所以我们可以首先把数据框里所有的零值去除掉,以此来保证数据的质量。
多渠道数据获取
因为存在数据缺失的情况,有可能是因为技术性断电或者数据差错所引起的。我们从三家主要的比特币交易所获取数据,接着计算出平均的比特币价格指数。各个交易所的数据会存在一定的差别,然而综合起来就能得到更为准确的结果。就如同我们综合多位专家的意见,便能够做出更明智的决策。
数据合并与可视化
我们拥有 9 个数据框字典,其中包含山寨币与比特币的历史日平均价格数据。可以通过查看 Ethereum 价格表格的最后几行来判定数据是否可用。接着,再次使用定义好的函数 merge_dfs_on_column,创建合并的数据框,将每种电子货币的美元价格进行整合,并且把比特币价格添加到最后一栏。最后,调用函数 df_scatter,以图表的形式展示所有山寨币的相应价格,使数据更加直观。
相关性分析
2017 年 8 月 22 日的修订说明中提到,在计算相关系数时,应使用每日回报率而非价格绝对值。因为基于非稳态时间序列进行计算会使相关性系数产生偏差,所以我们采用 pct_change()方法,将价格绝对值转化为日回报率。之前的分析表明,在 2016 年,不同数字加密货币的价格波动几乎没有统计上的显著相关性。为了验证电子货币近几个月相关性增强的假设,我们使用 2017 年开始的数据进行了重复测试。
以上是关于用 Python 来分析数字加密货币的大致流程。你是否有意愿亲自运用 Python 去对数字加密货币进行分析?可以在评论区把自己的想法分享出来,要是觉得这篇文章有用的话,可别忘了点赞和分享!