1. 获取某只股票的日线数据
#第1种方法利用tushare获取股票日线数据
pro = ts.pro_api("your tushare token")
df = pro.daily(ts_code='002258.SZ', start_date='20200101', end_date='20200807')#以股票利尔化学002258为例
#第2种方法利用yahoo网站上下载股票日线数据
import pandas_datareader
code = '002258.sz'
stock = pandas_datareader.get_data_yahoo(code, '2020-01-01','2020-08-07')
print (stock)
2. 利用获取的数据绘制K线图
#第1种方法利用tushare获取股票日线数据...
pro = ts.pro_api("your tushare token")#网站https://tushare.pro/注册获取token
df = pro.daily(ts_code='002258.SZ', start_date='20200101', end_date='20200807')
df = df.sort_values( by = 'trade_date')#重新排序
#第1种方法后续绘制K线图
#设置图的位置,开始画K线图
fig = plt.figure()
ax = fig.add_subplot(111)
#调用方法绘制K线图
candlestick2_ochl (ax = ax, opens = df ["open"].values, closes = df ["close"].values, highs = df["high"].values,
lows = df["low"].values, width =0.75, colorup = 'red', colordown = 'green')#注意这里open等的小写
#设置X轴的标签
plt.xticks(range (len (df.index.values)),df.index.values, rotation = 30)
plt.title ("利尔化学")
#设定title的字体
plt.rcParams ['font.sans-serif'] = ['SimHei']
plt.savefig('002258.png',dpi = 500)
plt.show ()
#第2种方法利用yahoo网站上下载股票日线数据
import pandas as pd
import pandas_datareader
code = '002258.sz'
stock = pandas_datareader.get_data_yahoo(code, '2020-01-01','2020-08-07')
print (stock)
stock.to_csv ('002258.csv')
#第2种方法后续绘制K线图
import matplotlib.pyplot as plt
from mpl_finance import candlestick2_ochl
#从文件中获取数据
df = pd.read_csv('002258.csv', encoding ='gbk', index_col = 0)
#设置图的位置
fig = plt.figure()
ax = fig.add_subplot(111)
#调用方法绘制K线图
candlestick2_ochl (ax = ax, opens = df ["Open"].values, closes = df ["Close"].values, highs = df["High"].values,
lows = df["Low"].values, width =0.75, colorup = 'red', colordown = 'green')#注意这里Open等的大写
#设置X轴的标签
plt.xticks(range (len (df.index.values)),df.index.values, rotation = 30)
plt.title ("特发信息")
plt.rcParams ['font.sans-serif'] = ['tfgf']
plt.savefig('0070.png',dpi = 500)
plt.show ()