# 摘要
为对股票价格的涨跌幅度进行预测,本文使用了基于长短期记忆网络(LSTM)的方法。根据股票涨跌幅问题, 通过对股票信息作多值量化分类,将股票预测转化成一个多维函数拟合问题。将股票的历史基本交易信息作为特征输入,利用神经网络对其训练,最后对股票的涨跌幅度做分类预测。数据集为代号 510050 的上证股票,实验结果表明该模型在单纯预测涨跌的情况下有比较好的预测效果。
# 一、问题描述
## 1.1绪论
随着我国经济的快速发展,政府、投资机构以及投资者们对股票预测的需求也越来越多。因此, 对股票价格走势的分析成为越来越多研究者关注的课题。但股票价格高度的波动性与不确定性,使其成 为计算机领域和金融领域的一大难题。
由于股票本身的波动性和不确定性,其价格是否可以被预测这一议题一直存在着不少争议。在 1956 年,Fama 提出了“有效市场假说”,指出股票的价格可以立即充分地反映市场上所有的已知信息,以及那些尚未发生但市场预期会发生的事件对股票价格的影响。这一假说为之后的股票预测工作提供了依据。
股票投资通常会选择某一类或某一只股票来作为投资对象,对这一类或一只股票进行预测,既可以将整体的股票交易信息作为训练数据,也可以只选择该类或该只股票的交易信息作为训练数据。模型有决策树、LR、支持向量机等传统机器学习的方法,也有深度学习的方法。一种最常见的股票预测方法是自回归模型,然而此类模型通常用于处理线性的稳定数据,用于处理股价存在着一定的局限性。因此也有人使用非线性模型如支持向量机、马尔可夫模型等,用以处理股票的非线性特征。
考虑到股票数据的时序性,本文选择用对时序序列有较好性能的 LSTM 网络分别对其训练,将训练好的模型用于预测次日收盘价的涨跌幅, 并对结果做对比分析。
## 1.2当前股票预测的方法概述
基于决策树的逐步回归算法。逐步回归算法是目前被广泛应用的一种回归算法。逐步回归算法的基本思想是:逐个引入自变量,每次引入的自变量对因变量 Y 影响最显著。每引入一个新自变量,都要对之前引入到回归方程中的旧自变量进行逐个检验,将当前方程中不显著的自 变量,从对因变量 Y 影响最小的自变量开始,进行逐个剔除,直到不能再引入新的 自变量为止。最终在回归方程中保留的自变量对因变量 Y 都是显著影响的,而不在 回归方程中的自变量对 Y 的作用都是不显著的,这样的回归方程称为最优回归方程。
SVM 方法,参考目前论文中出现频率最高的 SVM、BP 神经网 络和小波神经网络股票预测模型,分别构建了 3 个 6 输 入、1 输出的股票预测模型。输入分别为:某日上证 指数的开盘指数(价)、指数(股价)最高值、指数(股价) 最低值、收盘指数(价)、交易量和交易额;输出为输入次日的收盘指数(价)。
线性回归算法,在 CTR 预估问题的发展初期,使用最多的方法就是逻辑回归(LR),LR 使用了 Sigmoid 变换将函数值映射到 0~1 区间,映射后的函数值就是 CTR 的预估值。LR 属于线性模型,容易并行化,可以轻松处理上亿条数据,但是学习能力十分有限,需要大量的特征工程来增加模型的学习能力。但大量的特征工程耗时耗力同时并不一定会带来效果提升。因此,如何自动发现有效的特征、特征组合,弥补人工经验不足,缩短 LR 特征实验周期,是亟需解决的问题。
深度学习算法。通过多种不同的向量表示学习方法,从不同角度抽取特征,并利用多路循环神经网络对每种特征进行单独处理,充分利用所获取的数据信息,最后再将特征进行拼接,共同对股票价格进行预测。神经网络分为多种,BP 神经网络是一种按照误差逆向传播算法训练的多层前馈神经网络,也是目前应用最广泛的神经网络;卷积神经网络(CNN)则是通过构造卷积层来提取输入特征,再利用前馈连接来完成特征的输出,它是深度学习的代表算法之一;循环神经网络(RNN)适用于输入是序列的数据,它是一种在序列的演进方向进行递归,循环单元按照链式连接的一种神经网络。
## 1.3本文所使用的模型
长短期记忆网络(LSTM)则是对 RNN 的一种改进,它通过引入门机制构建特殊的记忆神经单元,从而解决不能实现信息的长期依赖问题。LSTM 结构如图 1 所示,其包括输入门、输出门、遗忘门等门结构,这些门结构通过以下的递归方程来更新细胞状态,同时激活从输入到输出的映射。
![](https://www.writebug.com/myres/static/uploads/2022/5/10/0ee65bc7852bf52d286b30d3963b748d.writebug)
图 1.3.1 LSTM 单元结构
本文主要针对预测股票涨跌幅度的目标,将其转换为一个多分类任务来进行处理。 影响股票涨跌的因素有很多,与股票本身信息相关的有其基本交易数据如开盘价、收盘价、最高价、最低价、交易量、涨跌幅等,还有交易数据衍生出的一些统计技术指标,如换手率等。 除了交易数据,股市波动还通常和舆论、政策等因素相关。但这些特征信息不能直观、即时的反映到后续的股票价格中去,同时这些信息是否与股票的基本信息耦合也尚未论证。因此本文只对股票的此类基本交易数据作为输入特征。具体细节将在第三部分阐述。
# 二、数据集说明
## 2.1tushare 库和 Talib 库概要
Tushare 是一个免费、开源的 python 财经数据接口包。主要实现对股票等金融数据从数据采集、清洗加工到数据存储的过程,能够为金融分析人员提供快速、整洁、和多样的便于分析的数据,为他们在数据获取方面极大地减轻工作量,使他们更加专注于策略和模型的研究与实现上。考虑到 Python pandas 包在金融量化分析中体现出的优势,Tushare 返回的绝大部分的数据格式都是 pandas DataFrame 类型,非常便于用 pandas/NumPy/Matplotlib进行数据分析和可视化。
TA-Lib 是一个多平台的市场分析工具,被需要对金融市场数据进行技术分析的交易软件开发人员广泛使用。它包含了 200 个指标的计算函数,如 ADX, MACD, RSI,随机指数,布林格带等。TA-Lib 为 C/ C++,Java, Perl, Python 和.NET 提供了开源的 API。TA-Lib 是在 BSD 许可下提供的,允许集成到开发者自己的开源或商业应用程序中。TA-Lib 也可以作为一个易于安装的 Excel 插件免费试用。
## 2.2获取历史行情数据
利用 tushare 包可以获取个股历史交易数据(包括均线数据),可以通过参数设置获取日 k 线、周 k 线、月 k 线,以及 5 分钟、15 分钟、30 分钟和 60 分钟 k 线数据。
参数说明:
- code:股票代码,即 6 位数字代码,或者指数代码(sh=上证指数 sz=深圳成指 hs300=沪深 300 指数 sz50=上证 50 zxb=中小板 cyb=创业板)
- start:开始日期,格式 YYYY-MM-DD
- end:结束日期,格式 YYYY-MM-DD
- ktype:数据类型,D=日 k 线 W=周 M=月 5=5 分钟 15=15 分钟 30=30 分
钟 60=60 分钟,默认为 D
返回值说明
- date:日期
- open:开盘价
- high:最高价
- close:收盘价
- low:最低价
- volume:成交量
- price_change:价格变动
- p_change:涨跌幅
- ma5:5 日均价
- ma10:10 日均价
- ma20:20 日均价
- v_ma5:5 日均量
- v_ma1
没有合适的资源?快使用搜索试试~ 我知道了~
本文使用了基于长短期记忆网络(LSTM)
共31个文件
py:7个
pyc:6个
xml:5个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 14 下载量 137 浏览量
2023-03-06
10:08:43
上传
评论 4
收藏 551KB RAR 举报
温馨提示
为对股票价格的涨跌幅度进行预测,本文使用了基于长短期记忆网络(LSTM)的方法。根据股票涨跌幅问题, 通过对股票信息作多值量化分类,将股票预测转化成一个多维函数拟合问题。将股票的历史基本交易信息作为特征输入,利用神经网络对其训练,最后对股票的涨跌幅度做分类预测。数据集为代号 510050 的上证股票,实验结果表明该模型在单纯预测涨跌的情况下有比较好的预测效果。
资源推荐
资源详情
资源评论
收起资源包目录
为对股票价格的涨跌幅度进行预测,本文使用了基于长短期记忆网络(LSTM)的方法.rar (31个子文件)
为对股票价格的涨跌幅度进行预测,本文使用了基于长短期记忆网络(LSTM)的方法
stockpredict
LICENSE 1KB
数据挖掘比赛个人资料截图.png 134KB
stockPredict
parser_my.py 1KB
getdata.py 607B
evaluate.py 2KB
draw.py 518B
data
510050.csv 23KB
dataset.py 2KB
.idea
stockPredict-master.iml 284B
misc.xml 185B
inspectionProfiles
Project_Default.xml 444B
profiles_settings.xml 174B
modules.xml 290B
encodings.xml 135B
LSTMModel.py 1KB
img
diag.drawio 1KB
Figure_2.png 35KB
Figure_3.png 50KB
Figure_1.png 71KB
model
stock.pkl 57KB
train.csv 22KB
train.py 2KB
__pycache__
dataset.cpython-37.pyc 2KB
dataset.cpython-36.pyc 2KB
parser_my.cpython-37.pyc 896B
LSTMModel.cpython-36.pyc 989B
parser_my.cpython-36.pyc 888B
LSTMModel.cpython-37.pyc 1005B
pred.csv 2KB
README.md 34KB
数据挖掘竞赛成果截图.png 192KB
共 31 条
- 1
甜辣uu
- 粉丝: 8383
- 资源: 1103
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 农村信用社联合社计算机信息系统投产与变更管理办.docx
- 农村信用社联合社计算机信息系统数据管理办法.docx
- 利用SPSS作临床效度分析线上计算网站介绍-医学研究部统计谘.(医学PPT课件).ppt
- 利用Zabbix监控mysqldump定时备份数据库状态.docx
- 利用计算机解决问题的基本过程.doc
- 化工铁路通信工程总结.doc
- 北京大学网络教育软件工程作业.docx
- 医药公司(连锁店)计算机操作规程未新系统的自行按照旧制修改-新系统过制的编号加修模版.doc
- 医药公司(连锁店)计算机系统操作规程模版.doc
- 医药连锁门店计算机系统的操作和管理程序未新系统的自行按照旧制修改-新系统过制的编号加修模版.docx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
前往页