获取指定行业在指定时间段的股票信息相关数据
#加载相关包,定义中文语言
import tushare as ts
import pandas as pd
import numpy as np
from pylab import mpl
mpl.rcParams['font.sans-serif']=['SimHei']
mpl.rcParams['axes.unicode_minus']=False
#主要调用函数
def getIndustryCodeDayInfo(keyIndustry,startT,endT,keyValue=['open','high','close','low','volume','price_change','p_change','ma5','ma10','ma20','v_ma5','v_ma10','v_ma20']):
industryPrice = pd.DataFrame()#最终结果
df1 = ts.get_industry_classified()#获取所有股票行业分类信息
industryList = set(df1['c_name'])
print('行业分类:',list(industryList))
df2 = df1[df1['c_name']==keyIndustry]#提取目标行业的股票名称及代码信息
stock_code = set(df2.code)
print(keyIndustry,'企业数:',len(stock_code))
print(set(df2.name))
for id in stock_code:
df3 = ts.get_hist_data(id,start=startT,end=endT)#提取目标行业的股票代码在指定时间段的每日股票开盘、收盘、最高、最低等信息
if isinstance(df3, pd.DataFrame):#判断类型是否为dataframe
df4 = df3[keyValue]#提取目标行业的股票代码在指定时间段的每日股票的收盘价和5日移动平均
df4['code'] = id #添加股票代码这一列
industryPrice = industryPrice.append(df4)#所有目标行业股票信息按行合并
else:
df0 = df1[df1['code']==id]
print(df0)
pass
return industryPrice
# indList = ['有色金属', '造纸行业', '供水供气', '发电设备', '交通运输', '酒店旅游', '电子器件', '生物制药', '公路桥梁', '次新股', '塑料制品', '玻璃行业', '印刷包装', '农药化肥', '船舶制造', '水泥行业', '钢铁行业', '家电行业', '物资外贸', '开发区', '服装鞋类', '电器行业', '化工行业', '农林牧渔', '飞机制造', '纺织行业', '纺织机械', '陶瓷行业', '商业百货', '煤炭行业', '食品行业', '综合行业', '金融行业', '医疗器械', '仪器仪表', '其它行业', '环保行业', '传媒娱乐', '汽车制造', '房地产', '电子信息', '建筑建材', '化纤行业', '电力行业', '家具行业', '机械行业', '酿酒行业', '摩托车', '石油行业']
keyIndustry = '环保行业'#'酿酒行业'#'房地产'#'金融行业'#
keyValue = ['close','ma5']
startTime = '2010-01-01'
endTime = '2019-05-17'
res = getIndustryCodeDayInfo(keyIndustry,startTime,endTime,keyValue)
res.to_csv(keyIndustry+'#'+startTime+'#'+endTime+'.csv',index=False)#结果数据保存
print(len(set(res.code)))
print(res.head())
结果:
行业分类: ['有色金属', '造纸行业', '供水供气', '发电设备', '交通运输', '酒店旅游', '电子器件', '生物制药', '公路桥梁', '次新股', '塑料制品', '玻璃行业', '印刷包装', '农药化肥', '船舶制造', '水泥行业', '钢铁行业', '家电行业', '物资外贸', '开发区', '服装鞋类', '电器行业', '化工行业', '农林牧渔', '飞机制造', '纺织行业', '纺织机械', '陶瓷行业', '商业百货', '煤炭行业', '食品行业', '综合行业', '金融行业', '医疗器械', '仪器仪表', '其它行业', '环保行业', '传媒娱乐', '汽车制造', '房地产', '电子信息', '建筑建材', '化纤行业', '电力行业', '家具行业', '机械行业', '酿酒行业', '摩托车', '石油行业']
环保行业 企业数: 27
{'万邦达', '创业环保', '启迪桑德', '神雾环保', '中电环保', '中原环保', '龙马环卫', '维尔利', '凯美特气', '长青集团', '云投生态', '清新环境', '博世科', '中材节能', '铁汉生态', '巴安水务', '兴蓉环境', '远达环保', '永清环保', '高能环境', '国祯环保', '碧水源', '天壕环境', '蒙草生态', '东江环保', '首创股份', '迪森股份'}
27
close ma5 code
date
2019-05-16 9.59 9.610 300388
2019-05-15 9.58 9.594 300388
2019-05-14 9.50 9.630 300388
2019-05-13 9.73 9.702 300388
2019-05-10 9.65 9.742 300388