当前位置:   article > 正文

Python量化交易11——使用AKShare获取公司财务数据

akshare

AKshare库是一个很好用的金融数据获取的API,股票的数据很全面,还有很多别的数据:

 链接:AKShare 股票数据 — AKShare 1.10.85 文档

 他们获取来源都是东方财富网或者巨潮网等,都会写上的。

本次教大家怎么用AKshare获取资产负债表和利润表的数据:
 


代码实现

导入包:

  1. import akshare as ak
  2. import pandas as pd
  3. import numpy as np
  4. import matplotlib.pyplot as plt
  5. import seaborn as sns
  6. plt.rcParams ['font.sans-serif'] ='SimHei' #显示中文
  7. plt.rcParams ['axes.unicode_minus']=False

查看有哪些行业的数据:
 

 ak.stock_board_industry_name_em().板块名称.unique()

 这只是一个小样例,实际上AKshare有太多的接口了,数据很丰富,官网文档都说的很清楚的:

 想要什么数据都可以去官网找接口。我下面展示一些我自己用过的接口

例如获取水泥建材板块当天股票数据

  1. stock_board_industry_cons_em_df = ak.stock_board_industry_cons_em(symbol="水泥建材")
  2. stock_board_industry_cons_em_df

 


利润表资产负债表获取

我时间定在2022年底,然后只选了三个股票

  1. stock_lrb_em_df = ak.stock_lrb_em(date="20221231")
  2. lrb=stock_lrb_em_df[stock_lrb_em_df['股票代码'].isin(['601668','601186','601800'])].drop('序号',axis=1).set_index('股票代码')

获取资产负债表:

  1. stock_zcfz_em_df = ak.stock_zcfz_em(date="20221231")
  2. zcfz=stock_zcfz_em_df[stock_zcfz_em_df['股票代码'].isin(['601668','601186','601800'])].drop('序号',axis=1).set_index('股票代码')

合并,展示:

  1. financial_data=pd.concat([lrb,zcfz],axis=1)#.to_excel('财务数据.xlsx')
  2. financial_data

 然后得到的数据可以计算你要的各种指标:
 

  1. # Calculate financial ratio
  2. financial_data['营业利润率'] = (financial_data['营业总收入'] - financial_data['营业总支出-营业支出']) / financial_data['营业总收入']
  3. financial_data['资本收益率'] = financial_data['净利润'] / financial_data['股东权益合计']
  4. # Select the relevant columns
  5. financial_ratios = financial_data.reset_index()[['股票代码', '股票简称','营业利润率', '资本收益率']]
  6. financial_ratios

 简单画个图:
 

  1. colors = ['b', 'g', 'r', 'c', 'm']
  2. financial_ratios.set_index('股票简称').plot(kind='bar', figsize=(5, 5))
  3. plt.title('公司的财务指标')
  4. plt.tight_layout()
  5. plt.savefig('1.png',dpi=128)
  6. plt.show()

 


这是一个很简单的样例,批量获取你想要的资产负债表和利润表数据。然后计算一下画个图。

当然AKshare还有超级多的数据,我也没用过多少,需要自己去官网研究,要什么数据去找接口。这个库使用起来找数据会带给很多经济会计金融专业的学生便利吧。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/620619
推荐阅读
相关标签
  

闽ICP备14008679号