推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

一种基于Python和BP神经网络的股票预测方法*

更新时间:2019-12-24 18:57:18 大小:2M 上传用户:songhuahua查看TA发布的资源 标签:pythonbp神经网络 下载积分:1分 评价赚积分 (如何评价?) 打赏 收藏 评论(0) 举报

资料介绍

股票预测可以辅助投资者进行正确的金融投资,本文使用Python语言开发网页爬虫爬取真实的股票数据,首先通过requests库获取网页数据,使用Beautiful Soup库解析静态html页面,并通过查找标签获取股票数据,然后对数据进行解析,用xlwt库将数据存入excel文件,并对数据归一化处理,最后,在三层BP神经网络中根据批量梯度下降法调整隐含层结点个数,以获取相对更优的连接权值和阈值,从而对股票的涨跌做出预测,为投资者的投资行为提供参考。


部分文件列表

文件名 大小
一种基于Python和BP神经网络的股票预测方法*.pdf 2M

【关注B站账户领20积分】

部分页面预览

(完整内容请下载后查看)
Computer Era No. 6 2018  
· 72 ·  
DOI:10.16644/j.cnki.cn33-1094/tp.2018.06.021  
一种基PythonBP经网络的股票预测方法*  
曾武1,钱文1,王映2,杨文1,柳 2  
(1. 江西农业大学软件学院,江西 南昌 330045;2. 江西农业大学计算机与信息工程学院)  
要:股票预测可以辅助投资者进行正确的金融投资文使Python语言开发网页爬虫爬取真实的股票数据先  
requests库获取网页数据使BeautifulSoup库解析静html页面通过查找标签获取股票数据后对数据进行  
解析xlwt库将数据存excel文件对数据归一化处理BP神经网络中根据批量梯度下降法调整隐含  
层结点个数获取相对更优的连接权值和阈值而对股票的涨跌做出预测投资者的投资行为提供参考。  
关键词:Python;网络爬虫;BP神经网络;股票预测  
中图分类号TP183  
文献标志码A  
文章编号1006-8228(2018)06-72-04  
A stock forecasting method based on Python and BP neural network  
Zeng Wuxu1, Qian Wenbin1, Wang Yinglong2, Yang Wenji1, Liu Jun2  
1. School of Software, Jiangxi Agricultural University, Nanchang, Jiangxi 330045, China;  
2. School of computer and information engineering, Jiangxi Agricultural University)  
AbstractStock predictions can help investors to make the right financial investment. This article uses Python language to develop  
web crawlers to crawl real stock data. The web page data is obtained from the requests library first, the static html page is  
analyzed using the BeautifulSoup library, and the stock data is obtained through searching the tags. Then the data is analyzed, the  
data is stored in excel file by xlwt library, and the data is normalized. Finally, the number of hidden layer nodes is adjusted  
according to the batch gradient descent method in the three-layer BP neural network to obtain relatively better connection weights  
and thresholds, so as to predict the ups and downs of stocks and provide reference for investors' investment behavior.  
Key wordsPythonWeb crawlerBP neural networkstock prediction  
集和小波神经相结合对股票指数进行预测[3]晶华等  
0 引言  
人用支持向量机对上证指数进行预测研究[4]晓青将  
灰度模型应用于股票预测[5]博乾将时间序列应用  
于股票预测[6]理等人结合文本分析对股票指数进  
行预测[7]。影响股票的因素有很多中的规律很难  
被直接观察到文使用 Python 语言写网络爬虫  
爬取真实的股票数据后结合三层 BP 神经网络对  
个股的涨跌情况作预测。  
人工神经网Artificial Neural Network神经  
网络由具有适应性的简单单元组成的广泛并行互  
连的网络的组织能够模拟生物神经系统对真实世  
界物体所作出的交互反应[1]。神经细胞接收信息以及  
处理信息的过程线性加权函数映射模拟,  
网络结构和权值调整用优化学习算法实现。这种人  
工神经网络虽然不能和生物神经网络等价在某些  
方面已经取得了优越的性能[2]。  
1 基Python网络爬虫  
随着经济的发展票市场吸引了众多投资者,  
如何通过已有的数据来预测股价而规避风险得  
更高的收益众多投资者所关注的。Lei Lei将粗糙  
网络爬虫是一种能自动抓取网页并提取网页内  
容的程序搜索引擎的信息获取渠道[8]。它能模仿  
收稿日期2018-03-15  
*基金项目国家自然科学基No.61502213,No.61462038,No.71461013)  
作者简介曾武1997-西新余人科在读要研究方向据挖掘。  
计算机时代 2018 年 第 6期  
· 73 ·  
浏览器访问网络资源自动提取所需要的信息[9-10]  
本文使用 Python 语言在 Python3.6 环境下实现了一个  
本文使用三BP经网络来预测个股的涨跌情况。  
针对特定数据的主题爬虫[11-12]  
1.1 确定目标数据  
爬 取 的 目 标 网 站 为 东 方 财 富 http://www.  
eastmoney.com/站的 robots 协议[13]允许爬虫爬取  
该网站所有链接。目标数据为深股通十大成交榜如  
图 1。 目 标 网 页 URL[14] 为 http://data.eastmoney.com/  
hsgt/top10.html通过该网页查看最新的交易日的数  
可以通过选择日期的方式来查看历史数据。根  
据历史数据可以分析出历史数据的请求 URL 均为”  
+日期字符串+.  
html格式。使chrome览器的开发者工具对目  
标网页进行分析过 Elements 选项卡查看目标数据  
可以发现标数据均在具有属性名为 onmouseover、  
属性值为 this.className='over'的 tr 标签中面中含  
有多个该种标签标数据位于1120标签。  
图2 络爬虫爬取的部分数据  
2.1 三BP经网络的结构  
3输入层I结点含层J结  
出层有 K 个结点给定训练集 D={(Xi,Yi)|i=  
1,2,3,…,N}N 训练样本个数(Xi,Yi)为第个训练样  
Xi={xi|i=0,1,…,I-1}为i训练样本中I输入  
向量Yi={yi|i=0,1,…,K-1}为i训练样本中的维期  
望输出向量wij 表示输入层第 j 个结点和隐含层第个  
结点间的权值vjk 表示隐含层第 j 个结点和输出层第  
个结点间的权值θjθk 分别表示隐含层第个结点和  
输出层第个结点的阈值。  
图1 股通十大成交榜  
1.2 网络爬虫实现  
根 据 URL 格 式
top10+ 日 期 字 符 串 +.html构 造 目 标 URL运 用  
requests 库中的 get 方法向服务器发送 get 请求获取目  
标网页合 re 库和 BeautifulSoup 库解析网页中的数  
[15]出具有属性名为 onmouseover性值为 this.  
className='over'的所tr放在列表中后将  
列表中的一系列数据通Sheetwrite法写入  
excel中进行持久化存储。最excel的部分数  
据如2其中筛选出美的集团的数据。  
图3 BP经网络的结构  
2.2 BP法  
BP 神经网络算法主要分为两个阶段。①正向传  
播阶段息从输入层经隐含层传递到输出层再输  
次计算出各个结点的输出值。②误差反向传播  
阶段差逐层从输出层反向传递至隐含层入层,  
依次计算出各个结点的误差用此误差修正相应的  
权值和阈值差达到最小时BP经网络趋于稳定。  
2 BP经网络  
BPBack Propagation经网络误差向后传  
播神经网络是一种前馈神经网络馈体现为在  
BP经网络中息由输入层至隐含层到输出层向前  
传播差反向传播体现为计算出实际输出和期  
望输出的误差之后差逐层由输出层向隐含层输  
入层传播通过误差调整相应的连接权值及阈值。  
2.2.1 正向传播阶段  
神经网络的输入信息为 I 维向量 Xi={xi|i=0,1,…,  
I-1}入层不作任何处理应输入层结点的输入/  

全部评论(0)

暂无评论

上传资源 上传优质资源有赏金

  • 打赏
  • 30日榜单

推荐下载