利用python获取tushare 财经数据

博主tushare ID:348937

tushare是一个免费的、开源的python财经数据接口包。主要实现对股票等金融数据从数据采集清洗加工数据存储的过程,能够为金融分析人员提供快速、整洁、和多样的便于分析的数据,为他们在数据获取方面极大地减轻工作量,使他们更加专注于策略和模型的研究与实现上。考虑到Python pandas包在金融量化分析中体现出的优势,Tushare返回的绝大部分的数据格式都是pandas DataFrame类型,非常便于用pandas/NumPy/Matplotlib进行数据分析和可视化。当然也可以使用tushare的数据存储功能将数据存储到excel

目前老版tushare不再维护,如果想要获取更多、更详细的数据,可以注册成为tushare社区用户,获取属于自己的接口TOKEN

tushare的安装:

在命令提示符下输入:

pip install tushare

安装成功后,在python IDLE上输入如下代码,如下所示即表示安装成功:

>>> import tushare as ts
>>> 

数据获取

下面演示如何通过tushare调取数据,我们这里对tushare pro进行演示。

我们获取股票基础数据,包括股票代码、名称、上市日期等,如下所示:

初始化pro接口:

>>> pro = ts.pro_api()

查询当前正常交易上市的股票信息:

>>> data = pro.stock_basic(exchange='', list_status='L', fields='ts_code,symbol,name,area,industry,list_date')
>>> data.head()
     ts_code  symbol  name area industry list_date
0  000001.SZ  000001  平安银行   深圳       银行  19910403
1  000002.SZ  000002   万科A   深圳     全国地产  19910129
2  000004.SZ  000004  国华网安   深圳      互联网  19910114
3  000005.SZ  000005  世纪星源   深圳     环境保护  19901210
4  000006.SZ  000006  深振业A   深圳     区域地产  19920427

我们还可以获取股票日线行情数据,如下所示:

获取平安银行2020年12月至2021年1月的前复权数据:

>>> df = ts.pro_bar(ts_code='000001.SZ', adj='qfq', start_date='20201201', end_date='20210131')
>>> df.head()
     ts_code trade_date   open   high  ...  change  pct_chg         vol       amount
0  000001.SZ   20210129  22.81  23.54  ...    0.28   1.2275  1240258.41  2864101.419
1  000001.SZ   20210128  22.78  23.18  ...   -0.27  -1.1698   857476.96  1948881.146
2  000001.SZ   20210127  22.31  23.47  ...    0.71   3.1739  1294152.72  2976800.955
3  000001.SZ   20210126  22.30  23.32  ...   -0.12  -0.5336  1126720.55  2558575.511
4  000001.SZ   20210125  21.72  22.60  ...    0.46   2.0881  1028365.27  2269032.820

[5 rows x 11 columns]

我们可以获取平安银行均线数据:

>>> df = ts.pro_bar(ts_code='000001.SZ', start_date='20201201', end_date='20210131', ma=[5, 10])
>>> df.head()
     ts_code trade_date   open   high  ...     ma5       ma_v_5    ma10      ma_v_10
0  000001.SZ   20210129  22.81  23.54  ...  22.768  1109394.782  22.561  1209637.021
1  000001.SZ   20210128  22.78  23.18  ...  22.556  1046229.984  22.352  1333680.078
2  000001.SZ   20210127  22.31  23.47  ...  22.440  1063690.312  22.088  1360947.944
3  000001.SZ   20210126  22.30  23.32  ...  22.318  1061018.400  21.850  1336444.645
4  000001.SZ   20210125  21.72  22.60  ...  22.312  1084091.958  21.713  1352589.140

[5 rows x 15 columns]

如果想要将数据保存到本地excel格式,可输入如下代码:

>>> df.to_excel('C:\\Users\\Louis Zhang\\Desktop\\平安银行均线数据.xlsx')

数据如下图所示:

利用python获取tushare 财经数据_第1张图片

当然有些数据需要一定的积分才能够调取,所以为了获取足够的积分,调取更多数据,大家可以积极注册称为tushare社区用户,多多参与社区活动,获取更多平台的权益。

tushare pro的网址:https://tushare.pro/

你可能感兴趣的:(tushare)