首先计算均线
stock_data['Ma5'] = stock_data.close.rolling(window=5).mean() # 求5日均线
以stock_data.close为数据,滚动窗口为5,mean()的作用是求平均数,最终算得5日均线。
然后再把5日均线画上去,代码如下:
ax.plot(
np.arange(0, len(stock_data.index)-begin), # [x]的数据范围
stock_data['Ma5'][begin:], # [y]的数据范围
'black', # 均线颜色
label='M5', # 均线标签
lw=2.5) # 均线宽度
完整代码如下:
# 1、仅制作单股票的日K图,添加网格
# 2、添加网格
# 3、优化x轴和y轴
# 4、给x轴的刻度加上日期标签
# 5、添加均线
import pandas
import numpy as np
import matplotlib.pyplot as plt
import mpl_finance as mpf
dir_name = 'D:\\gupiao\\'
def paint_dayk(code):
# 1、获取数据
stock_data = pandas.read_csv(dir_name + code + '.txt') # 读取数据
begin = len(stock_data) - 120 # 取最近120天的数据
if begin < 0