APP下载

基于机器学习的股票投资与预测

2020-10-20陈思文

数码设计 2020年9期
关键词:时间序列机器学习

摘要:目的 随着近年来我国资本市场的发展和证券交易规模的不断扩大,越来越多的资金投资于证券市场,与此同时市场价格的波动也十分剧烈,而波动作为证券市场中最本质的属性和特征,市场的波动对于人们风险收益的分析、股东权益最大化和监管层的有效监管都有着至关重要的作用,因此研究证券市场波动的规律性,分析引起市场波动的成因,是证券市场理论研究和实证分析的重要内容,也可以为投资者、监管者和上市公司等提供有迹可循的依据。方法 首先把股票交易数据进行处理,从中选取多支绩优股拟投资。通过收益率和风险率这两个目标,设定收益率为正等其他约束条件下的双目标优化模型,利用 python 的 pandas 模块对模型进行求解,面向不同类型的投资者,得到模型下投资绩优股的序号和收益率等数据。然后选取原数据中四个属性进行相关系数分析,然后选取收盘价为参考量,最终以选取收益率风险率比值作为股票评价的指数。最后通过历史数据求得股票的平均收益率与风险,然后建立蒙特卡罗预测模型,对未来股票走势进行模拟,利用机器学习对模型进行求解,面向不同类型的投资者,得到该模型下的投股方案等。结果 实验表明,基于机器学习的方法能够很好地通过历史的股票数据,在没有特殊情况出现的情况下,可以预测股票的基本趋势,并根据不同投资人群,提供不同的投资方案。结论 本文提出了一种投资人群的划分,我们针对不同的投资人群,通过对数据的挖掘,定量分析与定性分析,结合不同股票的收益率风险率比值,推荐投股方案和资金搭配方案。实验结果表明,在基本的场景不变的情况下,预测股票的趋势以及给定的投资方案都能完美的契合。

关键词:时间序列 ARIMA;双目标优化模型;蒙特卡洛模拟算法;机器学习

中图分类号:TP391.1 文献标识码:A 文章编号:1672-9129(2020)09-0122-02

引言:随着近年来我国资本市场的发展和证券交易规模的不断扩大,越来越多的资金投资于证券市场,與此同时市场价格的波动也十分剧烈,而波动作为证券市场中最本质的属性和特征,市场的波动对于人们风险收益的分析、股东权益最大化和监管层的有效监管都有着至关重要的作用,因此研究证券市场波动的规律性,分析引起市场波动的成因,是证券市场理论研究和实证分析的重要内容,也可以为投资者、监管者和上市公司等提供有迹可循的依据。

1 数据的分析原理与处理方法

1.1数据分析。利用 python对选取的十支股票进行相关分析,得到的结果利用散点图的方式呈现出来。

由图1 可知,股票与股票之间存在一定的相关性,比如:abc001 股票与abc004、abc007、abc010 股票有比较明显的正相关性。必定存在某种因素指标在影响着股票,下面以 abc001 股票为例来展开探讨。

1.2指标的选取。利用相关系数分析来反映变量之间的相互关系密切的程度。

选取已有数据中的开盘、最高、最低、收盘、成交量为指标,直接计算出各指标数据间的相关系数,并作出相关系数图。

由图2可知,开盘价与最高、最低、收盘价之间强烈正相关,所以接下来以收盘价来讨论。利用python数据可视化来绘制适用于文本数据的 K 线图,利用 K 线图能够全面透彻地观察到市场的真正变化。从 K 线图中,既可看到股价(或大市)的趋势,也同时可以了解到每日市况的波动情形(其中红色代表上涨,绿色代表下跌)。使用股票数据中每日的收盘价,算出 5 日均价和 20 日均价,并将均价的折线图与 K 线图画在一起。

由图 3可知,K 线图与均价的折线图基本吻合,这就说明最开始的讨论流程是正确的,以收盘价衍生出来的收益率和风险率也就符合指标的选取。

2 趋势预测

2.1模型选择。从利用历史的数据,分析当下的指标波动并且预测未来一年的指数波动,而蒙特卡罗模拟法几乎可以用来模拟任何问题,因此通过蒙特卡罗模拟法来建立预测模型,来计算特斯拉公司股票的风险价值,即在市场正常波动的条件下,在一定概率水平α%下,某一金融资产或金融资产组合的VαR是在未来特定一段时间Δt内最大可能损失。

2.2模型建立。首先,利用蒙特卡罗模拟法即运用历史数据对未来进行多次模拟,以求得未来股价结果的概率分布。

可以看出,蒙特卡罗模拟法认为股票的价格波动可以分为两部分,第一部分为drift,即股票会根据收益率波动,第二部分为 shock,即随机波动。如下图:

3 分析结果与结论

3.1投资人群的划分。在实际投资中,考虑到不同投资人群的投资目的,建立三个投资模型来设定投资方案。其一是稳中求胜的投资者,在风险低量化的同时保持收益的最大化。其二是追求高收益的投资者,为了盈利最大化。一般是手上有充足的投资资金来适当规避股市市场高风险的投资者。其三是追求低风险的投资者,为了资金的稳定性。一般是小富即安,追求稳健,手上资金较少操盘或不喜欢高风险投资的投资者。为了使投资方案问题的分析更加简化并同时保证所建立模型的合理性,对模型的建立设定一定的规则:1.收益率和风险率的计算按照经济金融学结合实际股票操作来计算,不加以修改或者干预;2.将投资者的投资资金按照百分比配比分配给各个股票,满仓资金操作。

3.2预测结果。通过历史数据求得股票的平均收益率与风险,便可以通过蒙特卡罗模拟法对股票未来走势进行模拟,利用 python 设计其算法并加以实现,得到以下图(以abc001 股票为例):

由图5可以看出每一次模拟所得到股价走势都是不同的,但是大部分集中在中间。下面加入模拟风险价值和定义置信水平为 99%的预测的股票价值,绘制如下图:

由图6可知一年后 abc001 股票的价格最有可能为 12.19 元,而整个预测时间内的平均股票价格为 12.81 元,相较于初始价值 12.79 元,高出 0.02 元。但风险价值却有 0.6 元。同理,可以利用设计的算法对其他九支股票进行模拟预测,得到结果如下:

3.3推荐方案。由表1可知代码为abc003、abc010的股票,在未来一年内出现小幅下滑,而abc009股票基本维持不变,其他几支股票出现不同幅度的增长。

所以,假设存在三种不同的投资人群,那么在一年内的投资方案如下:

参考文献:

[1]肖华勇,实用数学建模与软件应用[M].西安:西北工业大学出版社,2010

[2]董宁,王宇平.基于新型双目标模型的约束优化进化算法[D].西安电子科技大学数学与统计学院;西安电子科技大学计算机科学学院

[3]简杨君,使用机器学习和深度学习预测股票价格(Python实现),2020.5.31

作者简介:陈思文,1998年生,男,本科生,主要研究方向为数据可视化、数据挖掘与可视分析、人工智能

猜你喜欢

时间序列机器学习
基于词典与机器学习的中文微博情感分析
基于网络搜索数据的平遥旅游客流量预测分析
上证综指收益率的影响因素分析
基于指数平滑的电站设备故障时间序列预测研究
基于时间序列的我国人均GDP分析与预测
前缀字母为特征在维吾尔语文本情感分类中的研究
基于线性散列索引的时间序列查询方法研究
基于支持向量机的金融数据分析研究
机器学习理论在高中自主学习中的应用
基于组合模型的能源需求预测