文章目录

  • 1 简介
  • 2 时间序列的由来
    • 2.1 四种模型的名称:
  • 3 数据预览
  • 4 理论公式
    • 4.1 协方差
    • 4.2 相关系数
    • 4.3 scikit-learn计算相关性
  • 5 金融数据的时序分析
    • 5.1 数据概况
    • 5.2 序列变化情况计算
  • 最后

1 简介

Hi,大家好学长今天向大家介绍一个大数据项目

大数据分析:基于时间序列的股票预测于分析

2 时间序列的由来

提到时间序列分析技术,就不得不说到其中的AR/MA/ARMA/ARIMA分析模型。这四种分析方法的共同特点都是跳出变动成分的分析角度,从时间序列本身出发,力求得出前期数据与后期数据的量化关系,从而建立前期数据为自变量,后期数据为因变量的模型,达到预测的目的。来个通俗的比喻,大前天的你、前天的你、昨天的你造就了今天的你。

2.1 四种模型的名称:

  • AR模型:自回归模型(Auto Regressive model);
  • MA模型:移动平均模型(Moving Average model);
  • ARMA:自回归移动平均模型(Auto Regressive and Moving Average model);
  • ARIMA模型:差分自回归移动平均模型。
  • AR模型:

如果某个时间序列的任意数值可以表示成下面的回归方程,那么该时间序列服从p阶的自回归过程,可以表示为AR§:


AR模型利用前期数值与后期数值的相关关系(自相关),建立包含前期数值和后期数值的回归方程,达到预测的目的,因此成为自回归过程。这里需要解释白噪声,白噪声可以理解成时间序列数值的随机波动,这些随机波动的总和会等于0,例如,某饼干自动化生产线,要求每包饼干为500克,但是生产出来的饼干产品由于随机因素的影响,不可能精确的等于500克,而是会在500克上下波动,这些波动的总和将会等于互相抵消等于0。

3 数据预览

import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline#准备两个数组
list1 = [6,4,8]
list2 = [8,6,10]#分别将list1,list2转为Series数组
list1_series = pd.Series(list1)
print(list1_series)
list2_series = pd.Series(list2)
print(list2_series)#将两个Series转为DataFrame,对应列名分别为A和B
frame = { 'Col A': list1_series, 'Col B': list2_series }
result = pd.DataFrame(frame)result.plot()
plt.show()

4 理论公式

4.1 协方差

首先看下协方差的公式:

4.2 相关系数

计算出Cov后,就可以计算相关系数了,值在-1到1之间,越接近1,说明正相关性越大;越接近-1,则负相关性越大,0为无相关性
公式如下:

4.3 scikit-learn计算相关性

#各特征间关系的矩阵图
sns.pairplot(iris, hue='species', size=3, aspect=1)

Andrews Curves 是一种通过将每个观察映射到函数来可视化多维数据的方法。
使用 Andrews Curves 将每个多变量观测值转换为曲线并表示傅立叶级数的系数,这对于检测时间序列数据中的异常值很有用。

plt.subplots(figsize = (10,8))
pd.plotting.andrews_curves(iris, 'species', colormap='cool')


这里以经典的鸢尾花数据集为例

setosa、versicolor、virginica代表了三个品种的鸢尾花。可以看出各个特征间有交集,也有一定的分别规律。

#最后,通过热图找出数据集中不同特征之间的相关性,高正值或负值表明特征具有高度相关性:fig=plt.gcf()
fig.set_size_inches(10,6)
fig=sns.heatmap(iris.corr(), annot=True, cmap='GnBu', linewidths=1, linecolor='k', \
square=True, mask=False, vmin=-1, vmax=1, \
cbar_kws={"orientation": "vertical"}, cbar=True)

5 金融数据的时序分析

主要介绍:时间序列变化情况计算、时间序列重采样以及窗口函数

5.1 数据概况

import pandas as pdtm = pd.read_csv('/home/kesci/input/gupiao_us9955/Close.csv')
tm.head()

数据中各个指标含义:

  • AAPL.O | Apple Stock
  • MSFT.O | Microsoft Stock
  • INTC.O | Intel Stock
  • AMZN.O | Amazon Stock
  • GS.N | Goldman Sachs Stock
  • SPY | SPDR S&P 500 ETF Trust
  • .SPX | S&P 500 Index
  • .VIX | VIX Volatility Index
  • EUR= | EUR/USD Exchange Rate
  • XAU= | Gold Price
  • GDX | VanEck Vectors Gold Miners ETF
  • GLD | SPDR Gold Trust

8年期间价格(或指标)走势一览图

5.2 序列变化情况计算

  • 计算每一天各项指标的差异值(后一天减去前一天结果)
  • 计算pct_change:增长率也就是 (后一个值-前一个值)/前一个值)
  • 计算平均计算pct_change指标
  • 绘图观察哪个指标平均增长率最高
  • 计算连续时间的增长率(其中需要计算今天价格和昨天价格的差异)

计算每一天各项指标的差异值(后一天减去前一天结果)

计算pct_change:增长率也就是 (后一个值-前一个值)/前一个值)

计算平均计算pct_change指标
绘图观察哪个指标平均增长率最高


除了波动率指数(.VIX指标)增长率最高外,就是亚马逊的股价了!贝佐斯简直就是宇宙最强光头强

计算连续时间的增长率(其中需要计算今天价格和昨天价格的差异)

#第二天数据
tm.shift(1).head()#计算增长率
rets = np.log(tm/tm.shift(1))
print(rets.tail().round(3))#cumsum的小栗子:
print('小栗子的结果:',np.cumsum([1,2,3,4]))#增长率做cumsum需要对log进行还原,用e^x
rets.cumsum().apply(np.exp).plot(figsize=(10,6))


以上是在连续时间内的增长率,也就是说,2010年的1块钱,到2018年已经变为10多块了(以亚马逊为例)

最后

大数据毕业设计 基于时间序列的股票预测与分析系统 - 大数据分析相关推荐

  1. 【毕业设计】时间序列的股票预测与分析系统 - python 大数据

    文章目录 1 简介 2 时间序列的由来 2.1 四种模型的名称: 3 数据预览 4 理论公式 4.1 协方差 4.2 相关系数 4.3 scikit-learn计算相关性 5 金融数据的时序分析 5. ...

  2. 大数据毕业设计 LSTM时间序列预测算法 - 股票预测 天气预测 房价预测

    文章目录 0 简介 1 基于 Keras 用 LSTM 网络做时间序列预测 2 长短记忆网络 3 LSTM 网络结构和原理 3.1 LSTM核心思想 3.2 遗忘门 3.3 输入门 3.4 输出门 4 ...

  3. 毕业设计-基于机器学习的股票预测

    目录 前言 课题背景和意义 实现技术思路 一.传统股票预测模型 二.新型股票预测方法 实现效果图样例 最后 前言

  4. 大数据毕设选题 - 深度学习股票预测系统(python Django)

    文章目录 0 前言 1 课题背景 2 实现效果 3 Django框架 4 数据整理 5 模型准备和训练 6 最后 0 前言

  5. 基于ISM的大数据在建筑领域中的应用障碍分析

    点击上方蓝字关注我们 基于ISM的大数据在建筑领域中的应用障碍分析 纪颖波1, 赵子豪1, 姚福义2 1 北方工业大学土木工程学院,北京 100144 2 重庆大学管理科学与房地产学院,重庆 4000 ...

  6. 手把手教你:基于LSTM的股票预测系统

    系列文章 第七章.手把手教你:基于深度残差网络(ResNet)的水果分类识别系统 第六章.手把手教你:人脸识别的视频打码 第五章.手把手教你:基于深度学习的滚动轴承故障诊断 目录 系列文章 一.项目简 ...

  7. 2023最新大数据毕业设计论文题目(117篇)

    基于公共匿名平台数据的高校大学生心理健康问题识别系统 基于SOA农业大数据管理服务平台 基于对抗性迁移学习的药品不良反应监测研究 面向社交大数据的舆情分析系统 基于公告事件的投资决策分析系统 基于UG ...

  8. 大数据毕业设计 - 选题推荐(一)

    文章目录 1 开题指导 1.1 起因 1.2 如何避坑(重中之重) 1.3 为什么这么说呢? 1.4 难度把控 1.5 题目名称 1.6 最后 选题建议 3 最后 毕设帮助,开题指导,资料分享,疑问解 ...

  9. 基于时间序列的股票趋势预测模型

    基于时间序列的股票趋势预测模型 http://www.2nsoft.cn/2ndn/index.jsp?func=Examples/FinancePre/FinancePre.html 1.示例说明 ...

最新文章

  1. Cannot find module -----Node.js编程的第一个问题
  2. pythonencoding etf-8_etf iopv python 代码30个Python常用小技巧
  3. java数据库编程——Insert and Retrieve Images from MySql Table Using Java
  4. uniapp图标_uniapp扩展自定义uniIcon组件图标
  5. 鼠标移至图片后抖动的JS代码
  6. bash中的算术运算
  7. cad插件_CAD插件自动标注
  8. hp1015驱动64位_惠普1015驱动官方下载|
  9. 内网访问高德地图nginx代理
  10. 圣诞节,教你用Python给微信头像添加一个圣诞帽
  11. 谷歌io大会2019_Google IO 2012的前5个精选
  12. 全球与中国医疗3D打印机市场深度研究分析报告
  13. 《C++ Primer (5th Edition)》笔记-Part IV. Advanced Topics
  14. android led弹幕,LED弹幕手持字幕
  15. 初学Python可能会遇见的小程序
  16. 中小型企业常用的进销存系统有哪些?
  17. PHP获取IP地址的五种方法
  18. 微软苏菲rt能装鸿蒙,微软surfacert平板电脑怎么样 微软surfacert平板电脑性能配置如何...
  19. 计算机老师任课教师寄语,新学期任课教师寄语
  20. Arch Linux下的外接显示器

热门文章

  1. 产品经理的战争:“产品已死 还是产品为王”?
  2. LeetCode T48 Rotate Image
  3. 程序员依然是这个时代,贫寒学子翻身的不二选择...
  4. 计算机审计应用的心得体会,计算机审计中级培训心得体会范文
  5. Java EE现状及其发展趋势
  6. 已知三角形三个顶点求内切圆和外接圆半径 以及面积 C语言模板
  7. java中的applet的问题
  8. [Qt C++] 连连看
  9. 1-1、秋招年3-5月准备期——《Verilog HDL高级数字设计》(第二版)
  10. SpringBoot第二十三篇:安全性之Spring Security