Python+Tushare获取当前日期前一个月的指定股票(未复权)涨跌幅走势图

1、Python实现获取当天日期及前一个星期的日期(年月日)

import datetime
today_now = datetime.date.today()
today_lastWeek = today_now - datetime.timedelta(days=7)
​
if today_now.month < today_lastWeek.month:
    today_lastWeek -= datetime.timedelta(days=7)

today_now = str(today_now).replace('-','')
today_lastWeek = str(today_lastWeek).replace('-','')

datetime.datetime.today():用来获取当前日期,例如:2023-04-14

today_now - datetime.timedelta(days=7):用来获取当前日期的前7天

if today_now.month < today_lastWeek.month:用来判断是否是下一个月,因为如果按正常思维获取当前日期减去7的话,会发生一个问题,就是如果是20230501的话,减去7,则是20230493,这里就错误了

today_lastWeek -= datetime.timedelta(days=7):用来解决上面的逻辑问题

replace('-',''):对年月日去除符号'-',最后返回得20230414和20230407

str:int类型的日期转换成字符串类型

2、实现获取指定股票日线行情信息

Code = str(input())
stock_data = pro.daily(ts_code=Code, start_date=today_lastWeek, end_date=today_now)
stock_name = pro.query('stock_basic',ts_code=Code, fields='name')

Code:输入指定的股票代码 输入格式:'600519.SH'

ts_code:股票代码

start_date:开始日期

end_date:结束日期

打印输出stock_data和stock_name,分别如下图

Python+Tushare获取当前日期前一个月的指定股票(未复权)涨跌幅走势图_第1张图片

我这里输出的参数有一些是省略掉的,如果要详细的参数可以看下图

pro.daily():

Python+Tushare获取当前日期前一个月的指定股票(未复权)涨跌幅走势图_第2张图片

pro.query():

Python+Tushare获取当前日期前一个月的指定股票(未复权)涨跌幅走势图_第3张图片

 

3、利用Matplotlib作出股票(未复权)涨跌幅走势图

import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['SimHei']
​
x = stock_data['trade_date']
y1 = stock_data['pct_chg']
plt.figure(figsize=(10,9))
plt.gca().invert_xaxis()
plt.xticks(rotation=75)
plt.xlabel('日期',fontsize=16)
plt.ylabel('涨跌幅(%)',fontsize=16)
plt.plot(x,y1,color='black',linewidth=1,linestyle='--')
plt.title((stock_name['name'])[0] + '  ' + x[len(x)-1][0:4] + '年' + x[len(x)-1][4:6] + '月' + x[len(x)-1][6:8] + '日' + '到' + x[0][0:4] + '年' + x[0][4:6] + '月' + x[0][6:8] + '日' + '  ' + '股票涨跌幅走势图',fontsize=16)
plt.fill_between(x,y1,0,where=(y1 >= 0),color='red',interpolate=True)
plt.fill_between(x,y1,0,where=(y1 < 0),color='green',interpolate=True)
plt.show()

最后运行得到如下图 

Python+Tushare获取当前日期前一个月的指定股票(未复权)涨跌幅走势图_第4张图片 

 

你可能感兴趣的:(金融数据分析,数据分析,量化分析,python,matplotlib,开发语言)