【量化工具箱之AKShare】Python开源财经数据接口库

文章目录

  • 量化的第一步:数据
  • AKShare介绍
  • AKShare安装
  • AKShare使用
  • AKTools安装/使用
  • 结语
  • 量化的第一步:数据

    想要玩量化,第一步要有数据,这个数据可能是历史交易数据、财务数据、宏观数据等等。我们最终要做的,无非就是从数据中分析出有价值的信息,以便用来指导投资策略。

    在获取数据的这条道路上,我走了很多弯路,尝试了各种方法:使用Tushare到放弃、自己写网易股票页面的爬虫,自己写申万行业数据的爬虫、自己写同花顺问财的爬虫、使用聚宽的免费数据API等等,直到最终,我发现了AKShare。

    AKShare介绍

    官网地址:https://www.akshare.xyz/index.html
    Github地址:https://github.com/akfamily/akshare

    具体能获取那些数据我就不说了,放一张目录图,应该是目前市面上能找到免费里最全的。


    其实,最让我佩服的一点,是akshare在Github上的issues能做到24小时内清零,下面是我现在写文章时的截图。可以看到,目前没有一个Open的问题,最新Closed的问题是五小时前,维护的老哥真的很肝。



    我刚在Github上关注了Albert King这位老哥,看简介是为成都的“大法师”,在下十分佩服,做开源库能坚持把issues清零的不多见。。。

    这一点对这种库的质量的确很重要,因为很多问题并不是Bug,而很可能是数据源本身的接口发生了一些变化引起的,只能常维护常更新,希望这位老哥能坚持下去,等我真的学量化赚到钱,我给老哥上贡!

    AKShare安装

    废话不多说,安装!命令如下:

    pip install akshare  --upgrade
    

    --upgrade代表更新到最新版,初次安装不加也可以,估计是这个包更新频率比较高,直接加上比较方便。

    AKShare使用

    使用也很简单,看官方文档就可以了,所以功能都是:找到方法名,传参,获取结果,这种简单的套路。简单试用一下

    import akshare as ak
    
    stock_sse_summary = ak.stock_sse_summary()
    print(stock_sse_summary)
    print(type(stock_sse_summary))
    

    返回结果如下

    可以看到,返回结果的类型是<class 'pandas.core.frame.DataFrame'>,就是pandas的DataFrame,利用pandas就可以做后续处理了。

    需要认清的一点,AKShare的数据其实都是来源于网络,你调取接口所做的,只是去爬取了某个公开页面的数据,AKShare本身并不维护和提供数据服务,至少现在还没有。

    AKTools安装/使用

    官方文档:https://aktools.readthedocs.io/

    最后介绍一下AKTools,这是AKShare最新推出的一个工具,本质上是一个本地的HTTP服务程序,将AKShare的方法转变为了HTTP接口,这样,利用其它语言编写的程序,也可以使用AKShare提供的数据了。

    安装

    pip install aktools
    

    启动

    python -m akstools
    

    结果如下图,就是启动成功了

    接口的访问地址就是:http://127.0.0.1:8080/api/public/接口名,方法的参数,就是url参数,返回的数据格式是JSON。我之前用Node.js写程序,就是用这种方式调用AKShare的数据,很方便。

    结语

    数据是第一步,有了数据,才能有一切。接下来继续吧!

    来源:北马玩数据

    物联沃分享整理
    物联沃-IOTWORD物联网 » 【量化工具箱之AKShare】Python开源财经数据接口库

    发表评论