Python:股票信息提取与文件构建(基于Tushare)

import pandas as pd
import tushare as ts#包含所用的数据接口
#股票的代码和名称信息
ts_stock=["600519.SH","600597.SH","300750.SZ","000538.SZ","600085.SH","300059.SZ","601788.SH","000725.SZ","601328.SH","601988.SH","600511.SH","300027.SZ",
          "000895.SZ","000716.SZ","300146.SZ","002216.SZ","600028.SH","603711.SH","600887.SH","603605.SH"]#股票代号列表
ch_stock=["日期","贵州茅台","光明乳业","宁德时代","云南白药","同仁堂","东方财富","光大证券","京东方A","交通银行","中国银行",
          "国药股份","华谊兄弟","双汇发展","黑芝麻","汤臣倍健","三全食品","中国石化","香飘飘","伊利股份","珀莱雅"]#股票中文名称,注意的是这里把日期加入是因为日期也是一列

#获取所有股票信息并从中挑选20只股票,将股票信息导出为CSV文件,使用Pro版的Tushare作为数据接口
pro= ts.pro_api(" ")#接入API,在这输入你个人的提取码,在Tushare官网上可以注册账户,在个人账户里面可以复制token码
#以下代码我暂时注释掉,想运行的自己调整
#data = pro.query('stock_basic', exchange='', list_status='L', fields='ts_code,symbol,name,area,industry,list_date')#获取股票信息
#outputpath='C:/Users/asus/Desktop/all_stock_data.csv'#自己调整路径
#data.to_csv('current_all_stock.csv')

#构建空DataFrame,这是大大减少代码量,方便合并20只股票数据的关键所在
stock= pd.DataFrame()
#获取20只股票6个月的数据,选取2019年的数据
for i in range(20):
#下面的一行是核心代码,实现单个股票信息的处理,为提高效率只提取日期和收盘价这两个研究要用的信息,后面的函数用于正常排序(可有可无)
    df=pro.daily(ts_code=ts_stock[i], start_date='20190101', end_date='20190631',fields='trade_date,close').sort_index(axis = 0,ascending=True)
    if i==0:     #设置日期,将日期作为第一列,后续的全部是收盘价,可以进行循环处理
        stock[0]=df.trade_date
    stock[i+1]=df.close#将单只股票的收盘价记录下来
stock.columns=ch_stock#设置列名,便于后续相关性分析和可视化处理
stock.ffill(axis=0, inplace=True)#填充缺失数据,主要用于填补停牌导致空白的收盘价
print(stock)#打印结果查看
#珀莱雅的导出结果,只是为了显示个例股票的结果
df.to_csv('珀莱雅.csv')
#下面导出所研究的20只股票的数据,这个是所要的数据
stock.to_csv('stock.csv')



   




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值