获取股票信息
我们采用 tushare 包获取股票信息
导入我们所需要的几个包
import numpy as np
import pandas as pd
import tushare as ts
要使用 tushare 获取股票信息,我们首先要拥一个 tushare.pro 的账号,在个人页面的获取接口号才能正常使用这个包
tushare官网传送门:https://tushare.pro/
设定接口信息
token = '*******'
pro = ts.pro_api(token)
获取我们需要的信息
可以用 daily 函数获取 一只股票的开盘价,闭盘价,最高以及最低价,交易量等日数据
以获取 保利 的股票信息为例
bl = pro.daily(ts_code='600048.SH',start_date='20200101',end_date='20201231')
print(bl)
我们可以得到一张 DateFrame 形式的股票信息表
对股票信息进行初步处理
我们得到的信息中,trade_date 列 并不是datetime 类型,而是字符串类型,我们需要将其转变为字符串类型,并使其变为我们的 index
print(bl.trade_date)# 查看trade_date 列信息
bl.index = pd.to_datetime(bl.trade_date)
print(bl.index)
# trade_date 这一列已经没用了,drop掉
bl.drop(axis=1,columns='trade_date',inplace=True)
print(bl) # 查看处理后的 bl
实际上,我们做简要分析时并不需要那么多的信息,我们把关键信息提取出来 即 开盘价,闭盘价,最高价, 最低价, 交易量
重新赋值给一个新的 dataframe, 并且把这些指标的首字母全部统一大写
dfa = pd.DataFrame(
{
'Open':bl.open,
'Close':bl.close,
'High':bl.high,
'Low':bl.low,
'Vol':bl.col
}
print(dfa)
daily 获取的股票数据日期是逆序的,我们把它变为正序
dfa.sort_index(inplace=True,ascending=True)
print(dfa)
至此,股票数据初步处理完毕
封装股票数据获取接口
如果每一次获取数据都手动处理的话会很繁琐,可以把它封装成函数
def pro_daily_stock(code,start,end):
df = pro.daily(ts_code=code,start_date=start,end_date=end)
df.index = pd.to_datetime(df.trade_date)
df.drop(axis=1,columns='trade_date',inplace=True)
df.sort_index(ascending=True,inplace=True)
dfa = pd.DataFrame(
{
'High':df.high,
'Low':df.low,
'Open':df.open,
'Close':df.close,
'Vol':df.col
}
)
return dfa
这样,每次调用函数都能返回被处理好的股票信息
效果如下: