根据股票历史数据中的最低价、最高价、开盘价、收盘价、交易量、交易额、跌涨幅等因素,对下一日股票最高价进行预测。
实验用到的数据长这个样子:
label是标签y,也就是下一日的最高价。列C——I为输入特征。
本实例用前5800个数据做训练数据。
单因素输入特征及RNN、LSTM的介绍请戳上一篇 Tensorflow实例:利用LSTM预测股票每日最高价(一)
导入包及声明常量
import pandas as pd
import numpy as np
import tensorflow as tf
#定义常量
rnn_unit=10 #hidden layer units
input_size=7
output_size=1
lr=0.0006 #学习率
导入数据
f=open('dataset.csv')
df=pd.read_csv(f) #读入股票数据
data=df.iloc[:,2:10].values #取第3-10列
生成训练集、测试集
考虑到真实的训练环境,这里把每批次训练样本数(batch_size)、时间步(time_step)、训练集的数量(train_begin,train_end)设定为参数,使得训练更加机动。
#——————————获取训练集——————————
def get_train_data(batch_size=60,time_step=20,train_begin=