python tushare股票数据的获取跟本地储存

#前言
一直想将tushare的股票数据下载并储存到本地硬盘作为日后的量化分析,苦于自己菜鸟一个,经过在各大论坛学习,勉强写出了该功能(在这里特别感谢知乎"刀客特鹿"老师分享代码的启蒙),希望能起到抛砖引玉的作用得到各位大佬的建议跟改进,可以的话麻烦点个赞,你的鼓励是我写文章分享的动力,废话不多说了,放上代码了。

import tushare as ts
import pandas as pd
import time
import os

os.chdir('D:/all_trading_data/')  #保存的绝对路径
pro = ts.pro_api('要到tushare官网注册个账户然后将token复制到这里,可以的话请帮个忙用文章末我分享的链接注册,谢谢')

pd.set_option('expand_frame_repr', False)#True就是可以换行显示。设置成False的时候不允许换行
pd.set_option('display.max_columns', None)# 显示所有列
#pd.set_option('display.max_rows', None)# 显示所有行
pd.set_option('colheader_justify', 'centre')# 显示居中

#df_daily = pro.daily()  获取所有股票日行情信息
#df_basic = pro.stock_basic()  获取所有股票基本信息

def get_all_stockdata(st_date, ed_date):
    trade_d = pro.trade_cal(exchange='SSE', is_open='1', start_date=st_date, end_date=ed_date, fields='cal_date')

    for date in trade_d['cal_date'].values:
        # 先获得所有股票的行情数据
        df_daily = pro.daily(trade_date=date)

        # 再获取所有股票的基本信息
        df_basic = pro.stock_basic()

        #行情数据跟基本信息数据合并生成一个csv数据文件
        #on='ts_code'以ts_code为索引,合并数据,how='outer',取并集
        df_all = pd.merge(left=df_basic, right=df_daily, on='ts_code', how='outer')
        #删除symbol列数据,跟ts_code数据重复
        df_all = df_all.drop('symbol', axis=1)
        #强制转换成str字符串格式
        df_all['ts_code'] = df_all['ts_code'].astype(str)

        # 保存数据,不保存索引,如果index=True,则保存索引会多出一列
        df_all.to_csv(str(date) + '_ts.csv', index=False, encoding='gbk')
        print(df_all)
        print('%s is downloaded.' % (str(date)))
    return df_all
if __name__=="__main__":
	get_all_stockdata('20200101', '20200315')

在这里插入图片描述
在这里插入图片描述
tushare注册链接: link.

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wilburzzz

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值