1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > 用tushare数据自定义期货大宗商品指数(1)

用tushare数据自定义期货大宗商品指数(1)

时间:2020-05-26 18:11:32

相关推荐

用tushare数据自定义期货大宗商品指数(1)

备注: tushare ID–435904

感谢tushare提供的积分权限,本篇博文分享一下我在筛选大宗商品的关联股票分析时所用的代码,欢迎大家交流互相学习!

后面会继续分享我的实现自定义大宗商品指数的代码!!!

获取股票基础信息

def get_code():df=api.stock_basic(exchange='', list_status='L', fields='ts_code,symbol,name,area,industry,list_date')codes=df.ts_code.tolist()return codes,df

获取上市公司主营业务构成数据

def get_data(period):data_mainbz = pd.DataFrame()codes,df=get_code()for code in codes:df_mainbz = api.fina_mainbz(ts_code=code,period=period,type='P')data_mainbz=data_mainbz.append(df_mainbz)data_mainbz = pd.merge(df[['ts_code', 'name']], data_mainbz)return data_mainbz

利用关键字筛选期货商品关联上市公司信息

def ser_key(data_mainbz,path,com,details,name):file_com=data_mainbz.loc[data_mainbz['bz_item'].str.contains(com)]com_details=file_com.loc[file_com['bz_item'].str.contains(details)]mkdir(path+name+'\\')com_details.to_csv(path+name+'\\'+name+'.csv',index=False,encoding='utf-8-sig')return com_details

筛选关联股票

if __name__=="__main__":import pandas as pdimport tushare as tsimport osapi = ts.pro_api(token)data_mainbz=get_data('2031')path = r'C:\\Users\\关联股票\\'cu=ser_key(data_mainbz,path,'铜',r'^((?!铜版纸).)*$','沪铜')

由此可以通过筛选的字段得到每个商品的关联股票的基础信息,筛选字段参考新浪财经APP,缺点在于结果有很大的主观性,毕竟不能仔细研究4000+上市公司的详细主营业务构成!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。