股市预测python代码<循环神经网络>

数据集:(百度网盘)
链接:https://pan.baidu.com/s/1ozBoPhO7LU06z9mNlufbmg
提取码:59vk

#基于。csv数据没建立rnn模型,预测
# 1.数据预处理,将序列数据转化为可用于rnn输入的数据
# 2.对新数据进行预测(预测数据集),可视化结果
# 3.存储预测结果(csv文件),并观察局部预测结果(局限性)
#模型结构:单纯rnn,输出有五个神经元,每次使用前8个数据预测第9个数据import pandas as pd
import numpy as np
data = pd.read_csv('D:\\pydata\\zgpa_train.csv')data.head()
price = data.loc[:,'close']
price.head()#归一化处理
price_norm = price/max(price)
print(price_norm)#可视化
from matplotlib import pyplot as plt
fig1=plt.figure(figsize=(8,5))#建立图形
plt.plot(price)#画图
#加标注
plt.title('close price')
plt.xlabel('time')
plt.ylabel('price')
plt.show()#xy的赋值#define X and y
#define method to extract X and y#提取数据序列
def extract_data(data,time_step):X=[]y=[]#0,1,2,3...9:10个样本;time_step=8;0,1,2..7;12,3,...9for i in range(len(data)-time_step):X.append([a for a in data[i:i+time_step]])#X数组是训练集y.append(data[i+time_step])#y是预测集X = np.array(X)#转换为一个数组X = X.reshape(X.shape[0],X.shape[1],1)return X,ytime_step = 8
X,y = extract_data(price_norm,time_step)
print("Xshape:")
print(X.shape)
print(y)from keras.models import Sequential
from keras.layers import Dense,SimpleRNN
model = Sequential()#单层有五个神经元units,input_shape(样本数,序列长度,序列维度):数据是一维的,activation:激活函数
model.add(SimpleRNN(units = 5, input_shape=(time_step,1),activation='relu'))
#输出数值:索引神经元为1;线性(回归预测常用)
#输出y的一层
model.add(Dense(units=1,activation='linear'))#configure the model
#(优化器,损失函数)
#平方差mean_squared_errar
model.compile(optimizer='adam',loss='mean_squared_error')
model.summary()#模型训练
#打印X,y的维度
#print(X.shape(X),len(y))
#训练样本,每次30个样本,共训练200次
y=np.array(y);
model.fit(X,y,batch_size=30,epochs=200)#预测结果可视化
y_train_predict = model.predict(X)*max(price)
#y_train = [i*max(price) for i in y]#把归一化之后的数值转换过来
y_train = y*max(price)
print(y_train_predict,y_train)fig2=plt.figure(figsize=(8,5))#建立图形
plt.plot(y_train,label='real price')#画图
plt.plot(y_train_predict,label='predict price')#画图
#加标注
plt.title('close price')
plt.xlabel('time')
plt.ylabel('price')
plt.legend()
plt.show()#predictdata_test = pd.read_csv('D:\\pydata\\zgpa_test.csv')
data_test.head()
price_test = data_test.loc[:,'close']
price_test.head()
price_test_norm = price_test/max(price)#归一化
X_test_norm,y_test_norm = extract_data(price_test_norm,time_step)
print(X_test_norm.shape,len(y_test_norm))y_test_predict = model.predict(X_test_norm)*max(price)
y_test_norm=np.array(y_test_norm);
y_test = y_test_norm*max(price)fig3=plt.figure(figsize=(8,5))#建立图形
plt.plot(y_test,label='real price test')#画图
plt.plot(y_test_predict,label='predict price test')#画图
#加标注
plt.title('close price')
plt.xlabel('time')
plt.ylabel('price')
plt.legend()
plt.show()for i in range(0,len(y_test_predict)):totforenum=abs(y_test_predict[i]-y_test[i]);totnum=y_test[i];
totnum/=len(y_test_predict);
totforenum/=len(y_test_predict);
print("平均误差率:",end="");
print(totforenum/totnum*100,end="");
print("%");#存储数据
result_y_test = np.array(y_test).reshape(-1,1)
result_y_test_predict = y_test_predict
print(result_y_test.shape,result_y_test_predict.shape)
result = np.concatenate((result_y_test,result_y_test_predict),axis = 1)
print(result.shape)
result = pd.DataFrame(result,columns=['real_price_test','predict_price_test'])
result.to_csv('zapa_predict_test.csv')


多跑几次的预测结果不一样,神经网络好奇妙嗷

股市预测python代码<循环神经网络>相关推荐

  1. 独家 | 数据科学家的必备读物:从零开始用 Python 构建循环神经网络(附代码)...

    作者:Faizan Shaikh 翻译:李文婧 校对:张一豪 本文约4300字,建议阅读10+分钟. 本文带你快速浏览典型NN模型核心部分,并教你构建RNN解决相关问题. 引言 人类不会每听到一个句子 ...

  2. 如何用Python和循环神经网络预测严重交通拥堵?

    作者 | 王树义 来源 | 玉树芝兰(nkwangshuyi) 本文为你介绍,如何从 Waze 交通事件开放数据中,利用序列模型找到规律,进行分类预测.以便相关部门可以未雨绸缪,提前有效干预可能发生的 ...

  3. 如何用 Python 和循环神经网络预测严重交通拥堵?

    本文为你介绍,如何从 Waze 交通事件开放数据中,利用序列模型找到规律,进行分类预测.以便相关部门可以未雨绸缪,提前有效干预可能发生的严重拥堵. 寻找 之前在<文科生如何理解循环神经网络(RN ...

  4. Python TensorFlow循环神经网络RNN-LSTM神经网络预测股票市场价格时间序列和MSE评估准确性...

    全文链接:http://tecdat.cn/?p=26562 该项目包括: 自 2000 年 1 月以来的股票价格数据.我们使用的是 Microsoft 股票. 将时间序列数据转换为分类问题. 使用 ...

  5. 理解神经网络,从简单的例子开始(1)7行python代码构建神经网络

    理解神经网络,从简单的例子开始(1)7行python代码构建神经网络 前言 本文分为两个部分,第一个部分是一个简单的实例:9行Python代码搭建神经网络,这篇文章原文为:原文链接, 其中中文翻译版来 ...

  6. 9行Python代码搭建神经网络

    9行Python代码搭建神经网络 Kaiser谈笑风生 4月前发表至趣味项目,5995次访问 原文:How to build a simple neural network in 9 lines of ...

  7. bp神经网络预测python代码_机器学习之多层神经网络(附Python代码和数据)

    1 引言 多层神经网络,Multiple-layers Perceptron (MLP),又被称为多层感知机,是机器学习中深度学习的典型算法.关于多层神经网络的算法原理,我们在Stata和R实现的文章 ...

  8. python神经网络代码_11行Python代码建立神经网络

    Python部落(python.freelycode.com)组织翻译,禁止转载,欢迎转发. 用11行Python代码写出一个神经网络 通过构造一个裸骨神经网络来解释反向传播的内部工作原理. 概览:对 ...

  9. Python代码循环执行exe文件,并传入命令参数实现批量处理数据。

    python调用exe程序 传入命令参数,并实现循环批处理文件 1.问题背景 2.面临的问题 3.代码实现(案例) 4.总结 1.问题背景 参加MARS数据医疗赛道进行计算机视觉的比赛,比赛内容为赛题 ...

  10. 9行Python代码搭建神经网络来掌握一些基本概念

    这里的"用Python"指的就是不用那些现成的神经网络库比如Keras.Tensorflow等,否则连9行都不用了. 本文我会解释这个神经网络是怎样炼成的,所以你也可以搭建你自己的 ...

最新文章

  1. 基于数据融合的城市点云自动标注
  2. 2560x1600分辨率高吗_手机屏幕分辨率真的越高越好?它的好处和坏处你知道吗?...
  3. 排球积分程序(三)——模型类的设计
  4. 需要天天读月月读年年读的书
  5. 简单实用的铁道部12306.cn网站自动化登录
  6. 不错的流量卡官网html源码
  7. ArchLinux安装Gnome桌面
  8. SCPPO(九):性能优化之停工装置按照开工装置更新价格
  9. torchvision中Transform的normalize参数含义, 自己计算mean和std,可视化后的情况,其他必要的数据增强方式
  10. Android 4.0.4模拟器安装完全教程(图文)
  11. 在电脑上怎么做报表新手_初学者在电脑上如何制作电子表格
  12. linux c硬盘序列号,linux下获得硬盘序列号的c源代码
  13. Unity3D 游戏贴图(法线贴图,漫反射贴图,高光贴图)
  14. 【课程学习】(中国大学MOOC)武汉理工大学高级人工智能原理与技术课后习题笔记(1-5章)
  15. 设置RecyclerView某Item背景色
  16. 为什么我不建议编程初学者使用Vim,一张图告诉你
  17. 主流图数据库对比,Neo4j、ArangoDB、OrientDB、JanusGraph、HugeGraph
  18. web前端零基础系统学习路线,每个阶段都需要学什么?
  19. 【信息系统项目管理师】第七章 项目成本管理(考点汇总篇)
  20. 企业选择服务器托管好吗

热门文章

  1. Sap S/4 Hana 和Sap ERP有什么不同
  2. [RK3288][Android6.0] 调试笔记 --- 开机提示mmc rescan错误
  3. Google测试之道读后感
  4. Java工具集-农历日期工具类
  5. 201671030113 词频统计软件项目报告
  6. python中的round
  7. uniapp安卓app里拦截webview下载apk,显示下载进度
  8. Nmap支持的TCP / IP 系统指纹识别方法
  9. 数据库完整性实验报告
  10. 【机器学习】注意力机制