python3 tushare 獲取指定行業在指定時間段的股票信息相關數據

 

獲取指定行業在指定時間段的股票信息相關數據

#加載相關包,定義中文語言
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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章