一种分析股票趋势的方法技术

技术编号:26260537 阅读:44 留言:0更新日期:2020-11-06 17:56
本发明专利技术公开了一种分析股票趋势的方法,通过所述方法获取股票数据,形成特征数据集;然后初始化股票数据集的速度与位置信息,更新每一个粒子点的局部最优值点、每一个粒子每一维的迭代步数和自适应速度值,更新所有粒子点的速度及位置,从所有粒子历史局部最优值点中找到种群的全局最优值点;最后根据最优特征构建数据矩阵,将数据矩阵进行RF分类,得到分类结果,进行股票预测,预测结果正确率与BPSO—RF算法相比较。本发明专利技术利用优化后的离散二进制粒子群改进随机森林算法,剔除冗余特征,筛选最优特征,输入RF算法进行股票预测,提高预测精度;本发明专利技术方法具有较快的收敛速度,在同样的迭代步骤内能够找到更好的目标函数最优值,减少股票预测时间。

【技术实现步骤摘要】
一种分析股票趋势的方法
本专利技术属于金融与机器学习领域,具体涉及一种基于ADB粒子群优化的随机森林算法分析股票趋势的方法
技术介绍
2019年7月22日,科创板股票正式在上交所交易。由于股票市场行情的不确定,分析股票市场价格非常具有挑战性。一般来说,分析股价趋势有两种方式,一是基本面,主要是考虑到公司年收益率等;二是技术面,主要是基于过去股票数据的数学分析,包括统计计算和机器学习。机器学习最主要的方法是支持向量机、神经网络和随机森林算法。这些方法被广泛应用于金融领域,并取得较好成果。其中,结合二进制粒子群的随机森林算法预测股票趋势的准确率最高,但随着特征种类的增加,二进制粒子群在高维环境下迭代速度慢而且易早熟,导致股票预测精度下降,预测时间增加。为了解决上述问题,我们提出ADB粒子群算法即自适应离散二进制粒子群,引入多点速度向量和自适应的速度计算方法,从而优化随机森林算法来预测股票趋势。推导得到的ADB粒子群可以提高随机森林算法的全局最优值搜索能力和收敛速度,在初期趋势变化不明显的情况下,删除冗余特征,筛选出最优特征并输入RF算法进行分类。ADB粒子群算法,是二进制离散化表示,位置和向量均由0和1值构成,随机的初始化种群位置及速度,得到粒子的局部最优值点和局部最优值加速度,更新每个粒子每一维的迭代步数及自适应速度值,直到找到最优值。随机森林算法,通过自助法(bootstrap)重采样技术,从原始样本集M中有放回地随机重复抽取k个样本生成新的样本集合,根据自助样本集生成k个分类树组成随机森林,新数据的分类结果按分类树投票形成的分数而定。实质上是改进决策树算法,多个决策树进行合并,每棵树的建立取决于单独抽取的一个样品,森林中的每棵树都有相同的分布,分类误差取决于每一棵树的分类能力和它们之间的相关性。针对多种数据源,可以产生高精确度的分类器;可以处理多维输入变量;决定目标对象类别时,评估变量重要性和优先级;针对一般化后的误差,在内部生成无偏差估计;在数据丢失后,仍然可以维持准确度。
技术实现思路
本专利技术运用机器学习算法,结合ADB粒子群算法,提出了一种分析股票趋势的方法。为了解决原有BPSO-RF模型的缺点,通过在离散二进制粒子群中引进多点速度向量和自适应速度值的改进,提高全局最优值搜索能力和复杂优化问题的收敛速度,从而提高随机森林算法的精确度和降低预测时间。本专利技术提出的分析股票趋势的方法,包含以下步骤:S1、获取股票数据,形成特征数据集;S2、初始化股票数据集的速度与位置信息;S3、更新每一个粒子点的局部最优值点、每一个粒子每一维的迭代步数和自适应速度值;S4、更新所有粒子点的速度及位置,从所有粒子历史局部最优值点中找到种群的全局最优值点;S5、若迭代步骤超过迭代步骤的上限或最优特征被找到,转到S6,否则返回S3;S6、根据S5中的最优特征构建数据矩阵;S7、根据S6中的数据矩阵进行RF分类,得到分类结果,进行股票预测,预测结果正确率与BPSO—RF算法相比较。可选地,步骤S1中所述特征为投资者普遍接受的、用于预测股票趋势的技术指标,包含指数平滑移动平均线、移动平均线、平均趋向指数、顺势指标、随机摆动指标、价格变动率、威廉指数、动量指标、相对强弱指标、真实波动幅度均值指标、平衡量指标。可选地,步骤S2中初始化种群速度信息的计算公式为:式中,ω为惯性系数,c1、c2为学习因子,为在第k步时第i个粒子的第d维取值,ξ1和ξ2为(0,1)之间的均匀分布的随机数,为在第k步时第i个粒子的局部最优,为在第k步时第i个粒子的局部最优;初始化种群位置信息的计算公式为:式中,rand(0,1)为(0,1)之间的均匀分布的随机数,为在第k步时第i个粒子的第d维取值。可选地,步骤S3中粒子点的局部最优值点为:式中,为在第k步时第i个粒子的局部最优,ci为学习因子,为[0,1]之间随机数;自适应速度值为:式中,ξid是一个在(0,1)之间的随机数,xid第i个粒子的第d维取值,为xid的取反,stid为第i个粒子的第d维未发生改变的步骤数,fiti为第i个粒子当前的适应度值。可选地,步骤S4中速度更新公式为各个局部最优值加速度与自适应速度值的叠加:与现有技术相比,本专利技术提出的分析股票趋势的方法具有如下优点或有益效果:(1)由于诸多不确定因素,股票市场价格波动频繁,传统的随机森林算法预测股票趋势虽然高于SVM和ANN,但是特征种类庞大,股票趋势会随着种类增加而下降。本专利技术提出利用优化后的离散二进制粒子群改进随机森林算法,剔除冗余特征,筛选最优特征,输入RF算法进行股票预测,提高预测精度;(2)由于公司盈利情况、经济形势、政治因素等特征之间可能存在负面影响,计算复杂,二进制粒子群算法结合随机森林算法预测耗时将增加,而优化后的ADB粒子群算法具有较快的收敛速度,同样的迭代步骤内,找到更好的目标函数最优值,减少股票预测时间。附图说明图1为本专利技术提出的分析股票趋势的方法流程图;图2为本专利技术提出的分析股票趋势的方法具体步骤图;图3为本专利技术实施例中股票的指数平滑移动平均线示意图;图4为本专利技术与BPSO—RF算法预测股票趋势正确率的比较。具体实施方式本专利技术提出的分析股票趋势的方法,核心是采用ADB粒子群算法,更快速度找到最优特征,同时改进随机森林算法,剔除冗余特征,保留最优特征进行股票趋势分析。以下结合附图,通过详细说明较佳的具体实施例,对本专利技术做详细介绍。本专利技术提出的分析股票趋势的方法流程如图1所示,图2为本专利技术提出的分析股票趋势的方法具体步骤图。本专利技术提出的分析股票趋势的方法中,步骤S1要获取股票数据,形成特征数据集,以普遍被投资者接受的、用来判断股票涨跌的技术指标作为特征。本实施例中用到的股票数据集来源于苹果(Apple)、微软(Microsoft)、亚马逊(Amazon)股票信息,将2014年12月1号至2017年12月1号的股票信息数据作为训练数据,2017年12月1号至2018年12月1号的股票信息数据作为测试数据。采取11种被投资者普遍接受预测股票趋势的技术指标包含指数平滑移动平均线(MACD)、移动平均线(MA)、平均趋向指数(ADX)、顺势指标(CCI)、随机摆动指标(KDJ)、价格变动率(ROC)、威廉指数(R%)、动量指标(MTM)、相对强弱指标(RSI)、真实波动幅度均值指标(ATR)、平衡量指标(OBV)。图3为本专利技术实施例中股票的指数平滑移动平均线示意图。步骤S2初始化股票数据集的速度与位置信息,其中速度信息的计算公式为:式中,ω为惯性系数,c1、c2为学习因子,为在第k步时第i个粒子的第d维取值,ξ1和ξ2为(0,1)之间的均匀分布的随机数,为在第k步时第i个粒子的局部最优,为在第k步时第i个粒子的局部最本文档来自技高网
...

【技术保护点】
1.一种分析股票趋势的方法,其特征在于,包含以下步骤:/nS1、获取股票数据,形成特征数据集;/nS2、初始化股票数据集的速度与位置信息;/nS3、更新每一个粒子点的局部最优值点、每一个粒子每一维的迭代步数和自适应速度值;/nS4、更新所有粒子点的速度及位置,从所有粒子历史局部最优值点中找到种群的全局最优值点;/nS5、若迭代步骤超过迭代步骤的上限或最优特征被找到,转到S6,否则返回S3;/nS6、根据S5中的最优特征构建数据矩阵;/nS7、根据S6中的数据矩阵进行RF分类,得到分类结果,进行股票预测,预测结果正确率与BPSO-RF算法相比较。/n

【技术特征摘要】
1.一种分析股票趋势的方法,其特征在于,包含以下步骤:
S1、获取股票数据,形成特征数据集;
S2、初始化股票数据集的速度与位置信息;
S3、更新每一个粒子点的局部最优值点、每一个粒子每一维的迭代步数和自适应速度值;
S4、更新所有粒子点的速度及位置,从所有粒子历史局部最优值点中找到种群的全局最优值点;
S5、若迭代步骤超过迭代步骤的上限或最优特征被找到,转到S6,否则返回S3;
S6、根据S5中的最优特征构建数据矩阵;
S7、根据S6中的数据矩阵进行RF分类,得到分类结果,进行股票预测,预测结果正确率与BPSO-RF算法相比较。


2.如权利要求1所述分析股票趋势的方法,其特征在于,步骤S1中所述特征为投资者普遍接受的、用于预测股票趋势的技术指标,包含指数平滑移动平均线、移动平均线、平均趋向指数、顺势指标、随机摆动指标、价格变动率、威廉指数、动量指标、相对强弱指标、真实波动幅度均值指标、平衡量指标。


3.如权利要求1所述分析股票趋势的方法,其特征在于,步骤S2中初始化种群速度信息的计算公式...

【专利技术属性】
技术研发人员:周珺妮史小宏
申请(专利权)人:上海海事大学
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1