使用tushare获取A股数据

Tushare是一个大数据开放社区,免费提供各类数据 , 助力行业和量化研究。

Tushare拥有丰富的数据内容,如股票、基金、期货、数字货币等行情数据,公司财务、基金经理等基本面数据;同时获取简单,SDK开发包支持语言,同时提供HTTP Restful接口,最大程度方便不同人群的使用;并提供多种数据储存方式,如Oracle、MySQL,MongoDB、HDF5、CSV等,为数据获取提供了性能保证。#ID:480106

下面,就分享一下通过python获取A股数据的方法:


1.首先调用tushare包

import tushare as ts
pro = ts.pro_api('自己的接口')

2.在tushare获取股票基本信息并添加到result,包括ts_code symbol name area industry market list_date,result为前期整理好的股票代码csv文件。

df_basic = pro.stock_basic(exchange='', list_status='L')
result = pd.merge(left=result, right=df_basic, on='ts_code', how='outer')

使用tushare获取A股数据_第1张图片

 3.结合tushare获取市值、财务数据

ts_df = result.ts_code.drop_duplicates()
ts_st_date = st_date.replace('-', '')
ts_ed_date = ed_date.replace('-', '')
trade_d = pro.trade_cal(exchange='SSE', is_open='1', start_date=ts_st_date, end_date=ts_ed_date, fields='cal_date') #标记开市交易日期
df_new = pd.DataFrame()
for date in trade_d['cal_date'].values:
    df_daily_basic = pro.daily_basic(ts_code='', trade_date=date, fields='ts_code,'
                                     ' dv_ratio, dv_ttm, total_share, float_share,'
                                     ' free_share, total_mv, circ_mv ')
    new = pd.DataFrame(ts_df)
    new['date'] = date
    new['date'] = pd.to_datetime(new['date'])
    new = pd.merge(left=new, right=df_daily_basic, on='ts_code', how='outer')

    df_new = pd.concat([df_new, new])
    print(date + '基础数据:success') #判断是否成功

result = pd.merge(result, df_new, on=['ts_code', 'date'], how='outer')

4.将数据存为csv文件 

result.to_csv(r"存储路径",index=True,header=True)

你可能感兴趣的:(python,tushare)