最先进的Prophet时间序列模型预测石油股票

最先进的Prophet时间序列模型预测石油股票

1.什么是时间序列?

时间序列预测模型是根据先前观察到的值预测未来值的模型。时间序列预测广泛用于非平稳数据。非平稳数据被称为数据,其统计属性(例如平均值和标准差)不随时间变化,而是这些指标随时间变化。
这些非平稳输入数据(用作这些模型的输入)通常被称为时间序列。时间序列的一些示例包括随时间变化的温度值、随时间变化的股票价格、随时间变化的房价等。因此输入是信号(时间序列),由按时间顺序进行的观察定义。
本文使用的模型Prophet是Facebook开发的,传统上,大多数机器学习模型使用一些观察(样本/示例)作为输入特征,但数据中没有时间 维度。

2. 预测模型

Prophet模型是可以捕捉时间序列数据中季节性的模型,能够捕捉每日、每周和每年的季节性以及假期 影响。
该模型的数学方程为:

y(t) = g(t) + s(t) + h(t) + e(t)

在:

  • g(t) 代表趋势。Prophet 使用分段线性模型进行趋势预测。
  • s(t) 表示周期性变化(每周、每月、每年)。
  • h(t) 代表假期的影响(比如:假期影响企业)。
  • e(t) 是误差项。

Prophet 模型拟合过程通常非常快(即使对于数千次观察),并且不需要任何数据预处理。它还处理缺失数据和异常值。

三、环境建设

请看这篇文章:prophet安装详细过程

4. 历史数据的获取

本文来分析原油,数据为2022年一月一号到二月28号:原油数据

导入模块:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

读取数据:

data = pd.read_csv(r"C:\Users\hp\Desktop\spyder\you.csv") 
data.head(5)

最先进的Prophet时间序列模型预测石油股票
打印上述特征(列)的平均值、中位数、最小值、最大值和标准差值等一些统计数据

data.describe()

如下:
最先进的Prophet时间序列模型预测石油股票
可见今年三个月平均价格是:86.895500,最高价格是95.800003

选择一个指标:

#仅选择重要特征,即日期和价格
data = data[["Date","Close"]] # 选择日期和价格
# 重命名特征:模型拟合需要这些名称
data = data.rename(columns = {"Date":"ds","Close":"y"}) #重命名数据集的列
data.head(5)

最先进的Prophet时间序列模型预测石油股票

5.建立预测模型

我们没有将数据分成训练集和测试集,而是使用所有数据来拟合模型,然后让模型预测未来值:

from fbprophet import Prophet
m = Prophet(daily_seasonality = True) # the Prophet 模型
m.fit(data) # 使用所有数据拟合模型

如下:
最先进的Prophet时间序列模型预测石油股票

六、绘制绘制预测未来10天

qq交流群 428335755

为什么只预测10天?因为太远了不靠谱,容易受各种外界影响:

future = m.make_future_dataframe(periods=10) #我们需要指定未来的天数
prediction = m.predict(future)
m.plot(prediction)
plt.title("Prediction of the yuanyou Stock Price using the Prophet")
plt.xlabel("Date")
plt.ylabel("Close Stock Price")
plt.show()

最先进的Prophet时间序列模型预测石油股票

该模型使用所有数据进行训练(黑点)并预测了未来10天。这预测结果似乎有点离大浦,希望不是真的!

7. 绘制趋势、每周、季节性、年度和每日组件

如果您想查看预测组件,即趋势、每周、季节性、每年和每日组件:

m.plot_components(prediction)
plt.show()

它们如下:

最先进的Prophet时间序列模型预测石油股票

最先进的Prophet时间序列模型预测石油股票
最先进的Prophet时间序列模型预测石油股票
还是这样的结果更加合理,因为只预测了10天,所以看一下天和周就行了,从第一张图看出:油在未来几天还在涨价。从第二张图可以看出,在星期五就会降价。

8. 免责声明

虽然本数学模型似乎已经是最先进的股票预测模型,但是我无法保证你使用它能盈利赚钱,本次练习仅为个人练习使用,本博主技术不佳,还请指教。欢迎你与我一起qq群交流:428335755,非学习勿扰。

版权声明:本文为博主川川菜鸟原创文章,版权归属原作者,如果侵权,请联系我们删除!

原文链接:https://blog.csdn.net/weixin_46211269/article/details/123183757

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(1)
乘风的头像乘风管理团队
上一篇 2022年3月2日 下午5:38
下一篇 2022年3月2日 下午5:58

相关推荐