我不认为滚动平均数对你有用,因为它不会向你显示任何趋势。假设你的股票每年上涨10美元,你的滚动平均数会严重低估你明年的股票价值。在
我建议使用线性外推法(例如最后使用的3个单位)import pylab
from numpy import polyfit, poly1d, linspace
import matplotlib.pyplot as plt
data = [[718394219, 2013 , 01],
[763723622, 2014 , 01],
[762225057, 2015 , 01],
[787479774, 2016 , 01],
[845614054, 2017 , 01]]
values = [i[0] for i in data]
years = [i[1] for i in data]
plt.plot(years, values)
for i in range(0, len(data)-3):
# interpolate values
# you can choose for yourself how many point should be taken into account
# as well as the degree of interpolation (the last variable mentioned)
z = polyfit(years[i:i+3],values[i:i+3], 1)
p = poly1d(z)
# extrapolate interpolation by 1
start_year = years[i]
end_year = years[i+3] + 1
# plot values
x = linspace(start_year, end_year, 10)
y = p(x)
plt.plot(x, y)
plt.show()
您可以更改此位以满足您的需要:
^{pr2}$
说得很清楚,我没有统计学的背景,如果“准确度不需要很高”,我就是这样预测的。在