您好, 访客   登录/注册

基于粒子群神经网络的股票价格预测研究

来源:用户上传      作者: 肖根福 刘 欢 乐宋进

  [摘要] 粒子群算法是一种基于群智能的全局寻优方法,方法简单易于实现。本文将粒子群算法用于神经网络的训练,提出了一种股票价格预测的新方法,研究表明预测效果良好。
  [关键词] 粒子群算法 神经网络 股票
  
  一、前言
  股票市场是我国资本市场不可缺少的一部分,在推动经济发展中起到了举足轻重的作用。随着我国经济的快速发展,股票价格的预测研究成了当前的热点之一,但股票价格的形成机制是颇为复杂的,股票价格既受到政治、经济、市场的影响,也受到技术和投资者行为的影响,个别因素的波动都可能会使股票价格剧烈波动,股票价格和各影响因素之间很难直接建立明确的函数关系表达式。神经网络对非线性问题有强大的处理能力,是股票价格预测的有效方法,但神经网络收敛速度慢,易于陷入局部极小点,鲁棒性差。粒子群算法是一种基于群智能的全局寻优方法,方法简单易于实现。粒子群神经网络将粒子群算法引入到神经网络的训练当中,可以有效地提高神经网络的预测能力。
  二、粒子群算法
  粒子群算法初始化为一组随机粒子,然后通过迭代寻找最优解。粒子追随两个最优值来更新自己,一个是粒子迄今为止寻找到的最优值,叫做个体极值(pBest);另外一个是整个粒子群迄今为止寻找到的最优值,叫做全局极值(gBest)。粒子用以下公式更新自己:
   (1)
  (2)
  其中为当代粒子移动速度;是下一代粒子移动速度;是介于[0,1]之间随机数;是学习因子,一般取2;是当代粒子位置;是下一代粒子位置;是个体最优位置,是全局最优位置;为惯性因子。
  惯性因子对优化性能有很大的影响,较大的值有利于跳出局部极小点,而较小的值有利于算法收敛。一般采用以下公式进行更新:
   (3)
  式中为迭代次数。
  三、粒子群神经网络
  多层前馈神经网络由于一般使用BP算法作为学习算法,因此常称之为BP网络,由于BP算法从本质上讲是一种局部寻优算法, BP算法不可避免地存在局部极小,因此需要用一种全局寻优算法来代替BP算法。由于粒子群算法有良好的全局收敛性能,在这里我们采用粒子群算法作为神经网络的学习算法,即用粒子群算法来实现神经网络权值的寻优,称这种网络为粒子群神经网络。
  图1 粒子群神经网络
  四、股票价格预测
  采用三层前馈神经网络,隐层神经元为线性神经元,激活函数为S型函数,网络权值寻优方法为粒子群算法。根据经验选取预测日前四天开盘价、收盘价作为输入量,输出量为第五天的收盘价,网络结构为8-17-1。本文选取“泰豪科技(600590)”从2007年5月10日到9月20日的股票价格数据利用MATLAB软件进行研究。取70组数据作为训练样本,20组数据为测试样本。
  图2 泰豪科技实际值和预测值
  由上图可以看出,股票预测价格与实际价格略有差距但相差不多,并且总的趋势符合实际走势。
  五、结束语
  粒子群算法简单,收敛速度快,鲁棒性强,易于编程实现。粒子群神经网络兼有粒子群算法和神经网络的长处,将粒子群神经网络运用到股票价格预测上,研究结果表明预测效果良好。
  
  参考文献:
  [1]Kennedy J. and Eberhart R .Particle Swarm Optimization . IEEE International Conference on Neural Networks (Perth, Australia), IEEE Service Center, Piscataway, NJ, IV: 1942-1948,1995.
  [2]Shi Y, Eberhart R. A modified particle swarm optimizer[C]. In: IEEE World Congress on Computational Intelligence ,1998:69-73
  [3]闻新周露李翔等:MATLAB神经网络仿真与应用[M].科学出版社,2003.7
  [4]徐钦龙刘国平张键民:基于粒子群算法的温度模型优化[J].南昌大学学报[工科版],2003,(1):68-71


转载注明来源:https://www.xzbu.com/3/view-1494705.htm