




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于神经网络的股票预测【摘要】:股票分析和预测是一个复杂的研究领域,本论文将股票技术分析理论与人工神经网络相结合,针对股票市场这一非线性系统,运用BP神经网络,研究基于历史数据分析的股票预测模型,同时,对单只股票短期收盘价格的预测进行深入的理论分析和实证研究。本文探讨了BP神经网络的模型与结构、BP算法的学习规则、权值和阈值等,构建了基于BP神经网络的股票短期预测模型,研究了神经网络的模式、泛化能力等问题。并且,利用搭建起的BP神经网络预测模型,采用多输入单输出、单隐含层的系统,用前五天的价格来预测第六天的价格。对于网络的训练,选用学习率可变的动量BP算法,同时,对网络结构进行了隐含层节点的优化,多次尝试,确定最为合理、可行的隐含层节点数,从而有效地解决了神经网络隐含层节点的选取问题。【abstract]Stockanalysisandforecastingisacomplexfieldofstudy.Thepaperwillmakeresearchonstockpredictionmodelbasedontheanalysisofhistoricaldata,usingBPneuralnetworkandtechnicalanalysistheory.Atthesametime,makingin-depththeoreticalanalysisandempiricalstudiesontheshort-termclosingpriceforecastsofsinglestock.Secondly,makingresearchonthemodelandstructureofBPneuralnetwork,learningrules,weightsofBPalgorithmandsoon,buildingastockshort-termforecastingmodelbasedontheBPneuralnetwork,relatedwiththemodelofneuralnetworkandtheabilityofgeneralization.Moreover,usingsystemofmultiple-inputsingle-outputandsinglehiddenlayer,toforecastthesixthdaypricebyBPneuralnetworkforecastingmodelstructured.ThenetworkoftrainingischosenBPalgorithmoftraingdx,whilemakingoptimizationonthenodenumbersofthehiddenlayerbyseveralattempts.Therebyresolveeffectivelytheproblemofit.【关键词】BP神经网络股票预测分析1.引言股票市场是一个不稳定的非线性动态变化的复杂系统,股价的变动受众多因素的影响。影响股价的因素可简单地分为两类,一类是公司基本面的因素,另一类是股票技术面的因素,虽然股票的价值是公司未来现金流的折现,由公司的基本面所决定,但是由于公司基本面的数据更新时间慢,且很多时候并不能客观反映公司的实际状况,采用适当数学模型就能在一定程度上实现对股价的预测。BP神经网络是一种模拟人脑神经网络结构从而具有一定的预测功能的数学模型,由于其具有很强的自学习能力自适应能力以及容错能力等优点,使它成为一种比较适合股票预测的方法。本文就采用此方法对股价趋势进行了分析。MATLAB所搭配的NeuralcNetworkToolbox,将神经网络领域研究的成果完整地覆盖,它以人工神经网络理论为基础,用MATLAB语言构造出典型神经网络的激活函数。另外,根据各种典型的修正网络权值的规则,加上网络的训练过程,用MATLAB编写出网络设计与训练的子程序,网络的设计者则可以根据需要去调用工具箱中有关神经网络的设计训练程序,使自己能够从繁琐的编程中解脱出来,集中精力去思考问题和解决问题,从而提高解题效率。BP神经网络算法、特点2.1BP神经网络算法BP网络的产生归功于BP算法的获得。BP算法属于δ算法,是一种有监督式的学习算法。其主要思想为:对于q个输入学习样本P1,P2……Pq,已知与其对应的输出样本为:T1,T2……Tq。学习的目的是用网络的实际输出A1,A2……Aq与目标矢量T1,T2……Tq之间的误差来修改其权值,使Ai(i=1,2……q)与期望的T尽可能地接近,即使网络输出层的误差平方和达到最小。它是通过连续不断地在相对于误差函数斜率下降的方向上,计算网络权值和偏差的变化而逐渐逼近目标的。每一次权值和偏差的变化都与网络误差的影响成正比,并以反向传播的方式传递到每一层的。BP算法由两部分组成,分别为信息的正向传递与误差的反向传播。在正向传播过程中,输入信息从输入经隐含层逐层计算传向输出层,每一层神经元的状态只影响下一层神经元的状态,如果在输出层没有得到期望的输出,则计算输出层的误差变化值,然后转向反向传播;通过网络将误差信号沿原来的连接通路反传回来,修改各层神经元的权值,直至达到期望目标,误差信号趋向最小。其具体的实现步骤如图所示。据类型和表示该类型所需的数据大小;同时,根据经典的道氏理论,股票价量分析中最重要的指标就是收盘价。本文所建的股票预测模型,就是针对单只股票的走势进行预测,所以,将股票的收盘价作为该预测模型的唯一输出向量,这样,网络输出层的神经元数目即为1。BP网络隐含层节点数的多少和BP网络预测精度之间有很大相关性,节点数太少,神经网络的训练能力就会变弱,无法完成精确预测。节点数太多,神经网络训练时间变长且网络可能出现过度拟合现象。所以选择合适的节点数才能使BP网络的性能得到最大发挥,但目前还没有统一的标准来确定隐含层的节点数,所以本文经过多次试验多次比较最终确定了隐含层节点数为12。传递函数是BP网络的重要组成部分,必须是连续可微的;BP网络通常采用S型的对数或正切函数。本预测模型采集到的原始数据,经过归一化处理后输入、输出向量均在区间[-1,1]范围内,符合S型的对数或正切函数的取值区间。因此,隐含层传递函数选择tansig,输出层传递函数选择purelin,训练函数采用traingdm。训练参数设为:net_1.trainParam.show=50;限时训练迭代过程net_1.trainParam.lr=0.05;学习率net_1.trainParam.mc=0.9;附加动量因子net_1.trainParam.epochs=20000;最大训练次数net_1.trainParam.goal=1e-3;训练要求精度训练过程如图:关于性能函数的设计,本文采用典型的前项反馈网络误差性能函数为均方误差函数mse:股票预测分析4.1中国银行预测分析在MATLABr2014a中用函数xlsread导入已经下载好的中国银行(601988)2013/11/1-2014/5/15的收盘价作为输入样本,进行BP网络训练。网络结构:BP神经网络的仿真结果:图中红色线为预测曲线,蓝色线为实际曲线,可以看出模拟出的曲线大致上与实际曲线相同,但有些地方明显误差偏大,很可能是由于训练样本的数目过少和训练次数不够而导致。此图为实际值与预测值的误差曲线,可以明显看出误差确实比较大,所以此图预测结果不尽人意。误差训练情况:梯度:回归曲线:股票分析:方法一:移动平均线与BP曲线相结合从上图可以看出,五日平均线从上而下穿过下降趋势的十日线,二十日线和六十日线,表明标号1这个点在这个时候支撑线被向下突破,此时为死亡交叉点,表示股价短期将继续下落,十日线向下突破二十日线,说明中期内也将继续下跌,二十日线也向下突破六十日线,长期内也将下降,行情看跌,死亡交叉预示着空头市场来临,而实际曲线也验证了预测结果。标号二为上升中的五日线由下而上穿过上升的十日线,形成黄金交叉,这个时候压力线被向上突破,表示股价短期内将继续上涨,行情看好,而实际曲线也验证了预测,同时十日线向上突破上升趋势的二十日线,说明中期内该股将会呈上升趋势。标号三为下降趋势的五日线向下跌破十日线,说明短期内该股会下降,而旁边下降趋势十日线也向下跌破了二十日线,说明中期内该股呈下降趋势。标号四为上升趋势的五日线向上突破十日线,表明短期内该股会上升,上升趋势的十日线也向上突破二十日线,说明该股中期内也将呈上升趋势,向上趋势的二十日线也向上突破六十日线,形成黄金交叉,表明长期内该股呈上升趋势,结合BP曲线对下一日的预测,可以提高投资决策的准确性。标号五为下降趋势的五日线突破了十日线,表明短期内该股会有下降趋势。标号六为上升趋势的五日线向上突破十日线,说明短期内该股将呈上升趋势。方法二:指数平滑异同平均线(MACD)分析法:MACD称为指数平滑异同平均线,是从双移动平均线发展而来的,由快的移动平均线减去慢的移动平均线,MACD的意义和双移动平均线基本相同,但阅读起来更方便。当MACD从负数转向正数,是买的信号。当MACD从正数转向负数,是卖的信号。当MACD以大角度变化,表示快的移动平均线和慢的移动平均线的差距非常迅速的拉开,代表了一个市场大趋势的转变。MACD线从正数转向负数时,股票即将有下降趋势,是卖出的信号,从负数转向正数的时候,股票有即将有上升的趋势,是买入的信号。综合所述,本次股票预测还算是成功,预测结果往往令人满意。MATLAB程序:clc;clear;closeall;P=xlsread('中国银行2');T=xlsread('中国银行T2');Hn=xlsread('中国银行H2n');K=xlsread('中国银行五日线');L=xlsread('中国银行十日线');M=xlsread('中国银行二十日线');N=xlsread('中国银行六十日线');[Pn,minp,maxp,Tn,mint,maxt]=premnmx(P,T)net_1=newff(minmax(Pn),[12,1],{'tansig','purelin'},'traingdm')%当前输入层权值和阈值inputWeights=net_1.IW{1,1}inputbias=net_1.b{1}%当前网络层权值和阈值layerWeights=net_1.LW{2,1}layerbias=net_1.b{2}%设置训练参数net_1.trainParam.show=50;net_1.trainParam.lr=0.05;net_1.trainParam.mc=0.9;net_1.trainParam.epochs=100000;net_1.trainParam.goal=1e-3;%调用TRAINGDM算法训练BP网络[net_1,tr]=train(net_1,Pn,Tn);%对BP网络进行仿真A=sim(net_1,Hn);%计算仿真误差E=Tn-A;MSE=mse(E);[A1,T1]=postmnmx(A,min(min(P)),max(max(P)),Tn,mint,maxt)x=1:129;x1=1:131plot(x,A1,'r');holdonplot(x,T1,'b');holdonplot(x1,K,'w');holdonplot(x1,L,'y');holdonplot(x1,M,'m');holdonplot(x1,N,'c');title('中国银行2013/11/1-2014/5/15');legend('预测','实际','五日线','十日线','二十日线','六十日线',1);figure(2)plot(x,E,'r')4.2中国汽研预测分析;在MATLABr2014a中用函数xlsread导入已经下载好的中国汽研(601965)2013/4/1-2014/5/12的收盘价作为输入样本,进行BP网络训练。网络结构:BP神经网络的仿真结果:图中红色曲线为预测曲线,蓝色曲线为实际曲线,从图可以看出,BP曲线近似的模拟出真实曲线,较之前中国银行的预测效果要好,主要原因是中国汽研的训练样本数目提升到256组,并且训练了十万次,误差到了0.006。误差训练情况:梯度:回归曲线:股票分析:方法一:移动平均线与BP曲线相结合从标号一可以看出,下降趋势的五日线突破了下降趋势的十日线,说明短期内该股票将下跌,下降趋势的十日线也同样突破下降趋势的二十日线,表明该股中期内也将下降,投资者此时应谨慎。标号一和标号二之间连续出现几个死亡交叉点,并且BP曲线出现波动,此时投资者应该慎重考虑,切勿急功近利。标号二表明上升趋势的五日线向上突破十日线,表明短期内该股将上涨,同时上升趋势的十日线也向上突破上升趋势的二十日线,表明中期内该股也呈上升趋势。标号三可以看出,上升趋势的五日线向上穿过上升趋势的十日线,所以该股短期内将会上升,同样的上升趋势的十日线向上穿过上升趋势的二十日线,说明该股在中期内也将会上升。标号四可以看出,下降趋势的五日线向下穿过下降趋势的十日线,表明短期内该股将会上升,但是标号四与标号五之间连续出现几个死亡交叉点,并且BP曲线出现波动,此时投资者应该慎重考虑,切勿急功近利。标号五为下降趋势的五日线,二十日线,分别向下穿过下降趋势的十日线,六十日线,表明该股短期内,长期内将会下降,实际与预测的结果大致相同。方法二:指数平滑异同平均线(MACD)分析法:MACD称为指数平滑异同平均线,是从双移动平均线发展而来的,由快的移动平均线减去慢的移动平均线,MACD的意义和双移动平均线基本相同,但阅读起来更方便。当MACD从负数转向正数,是买的信号。当MACD从正数转向负数,是卖的信号。当MACD以大角度变化,表示快的移动平均线和慢的移动平均线的差距非常迅速的拉开,代表了一个市场大趋势的转变。MACD线从正数转向负数时,股票即将有下降趋势,是卖出的信号,从负数转向正数的时候,股票有即将有上升的趋势,是买入的信号。综合所述,本次股票预测还算是成功,预测结果往往令人满意。MATLAB程序:clc;clear;closeall;P=xlsread('6');T=xlsread('7');H=xlsread('8');H1=xlsread('H1');K=xlsread('中国汽研五日线');L=xlsread('中国汽研十日线');M=xlsread('中国汽研二十日线');N=xlsread('中国汽研六十日线');[Pn,minp,maxp,Tn,mint,maxt]=premnmx(P,T)net_1=newff(minmax(Pn),[12,1],{'tansig','purelin'},'traingdm')%当前输入层权值和阈值inputWeights=net_1.IW{1,1}inputbias=net_1.b{1}%当前网络层权值和阈值layerWeights=net_1.LW{2,1}layerbias=net_1.b{2}%设置训练参数net_1.trainParam.show=50;net_1.trainParam.lr=0.05;net_1.trainParam.mc=0.9;net_1.trainParam.epochs=100000;net_1.trainParam.goal=1e-3;%调用TRAINGDM算法训练BP网络[net_1,tr]=train(net_1,Pn,Tn);%对BP网络进行仿真A=sim(net_1,H);E=Tn-A;MSE=mse(E);[A1,T1]=postmnmx(A,min(minp),max(maxp),Tn,mint,maxt)x=1:256;plot(x,A1,'r');holdonplot(x,T1,'b')holdonplot(x,K,'w');holdonplot(x,L,'y');holdonplot(x,M,'m');holdonplot(x,N,'c');title('中国汽研2013/4/1-2014/5/12');legend('预测','实际','五日线','十日线','二十日线','六十日线',1)figure(2)plot(x,E,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 购房合同补充协议范本
- 财务管理系统实施合同
- 农业订单合同样本
- 材料供应合同书样本
- 度室内装饰壁画合同:手绘墙画服务协议
- 农业灌溉合同转让协议
- 农业机械租赁合同(范本7)
- 期货市场算法交易策略定制服务考核试卷
- 家禽饲养业产品质量安全追溯体系构建考核试卷
- 工业控制计算机在印刷机械控制中的实践考核试卷
- Unit1 My day 单元作业设计(素材)人教PEP版英语五年级下册
- 赢的思考与态度课件
- 2024年2月国考海关面试题目及参考答案
- TZSA 158-2023 双引擎分布式视频处理器技术规范
- 2型糖尿病科普讲座课件
- 术中物品清点不清时应急预案及流程课件
- 第1课《生存的家园》课件
- 选矿厂三级安全教育课件
- 《座社交恐惧症》课件
- 豆角绿色防控技术方案
- 颅脑创伤后颅内压变化规律分析
评论
0/150
提交评论