在tushare上提取沪深300指交易数据

import numpy as np
import pandas as pd
import tushare as ts
import MySQLdb as mdb

#获取沪深300指数的股票名单
hs300_data=ts.get_hs300s()
hss=hs300_data[“name”]

#获取上交所SSE,深交所SZSE,港交所HKEX正常上市交易的股票名单
pro=ts.pro_api()
exc=[“SSE”,“SZSE”]
stock_data=[]
for ex in exc:
data=pro.query(‘stock_basic’, exchange=ex,
list_status=‘L’,
fields=‘ts_code,symbol,name,area,industry,list_date’)
stock_data.append(data)

#获取沪深300成分股中正常上市交易的名单
s_name=pd.concat([stock_data[0][[“name”,“ts_code”]],
stock_data[1][[“name”,“ts_code”]]],ignore_index=True)

normal300=[]

num300=len(hss)
numn=len(s_name)

for i in range(num300):
for j in range(numn):
if hss.loc[i]==s_name.loc[j][“name”]:
normal300.append(s_name.loc[i])

#提取沪深300指2010年01月01到2018年01月01的交易数据,存入d_price中
d_price=[]
for i in range(len(normal300)):
df = pro.daily(ts_code=normal300[i][“ts_code”],
start_date=‘20100101’,
end_date=‘20180101’)
d_price.append(df)
PS:本例中总共提取了295个,貌似正常交易的就295个

猜你喜欢

转载自blog.csdn.net/weixin_43055882/article/details/86556232