在这里插入图片描述

在开始这个话题之前请先记住一句友情提醒:股市有风险,投资需谨慎

我们写这个文章并不是鼓励大家去入市,小编本人也不买股票。我们只是在探索Python在股票分析和预测上面能发挥什么样的作用!

对于和数据打交道的数据科学家来说,预测证券市场走势远比炒股本身来得更有趣。他们这样做的目的很大程度上不是为了获取物质回报,而是挑战自己!那么在这个起起伏伏,众多因素叠加的证券市场是否存在一种模型可以学习既定的模式至少让我们可以比那些商科毕业的操盘手厉害呢。

言归正传,做数据分析的流程都差不多:数据集的获取和加工、模型的选择和调参、算法编写。

图片

说起数据分析自然离不开“三件套”:Numpy Pandas Matplotlib。我们这就开始我们的股票分析操作吧

环境配置:

图片

代码部分:

图片

导入相关的库并设置参数,这里我们选择特斯拉这支股票

加载数据:

图片

我们获取从2001年开始到现在的股票历史数据

数据分析:

图片

从生成的图中我们可以看到:从图一我们可以看到特斯拉股票在2020年以前变化不大,大概在2020年下半年开始突然暴涨。这个让我们很容易联想到新能源有兴趣或者关注的可以查看当年的新闻报道,也是在这一年特斯拉股票暴涨了743%,同时也让CEO马斯克身价飙涨了1000亿美元。图3的价格变动趋势图也证实了这一点。至于交易量和交易量变动表也是同样如此。这几个图在股票交易软件里面应该都能看得到,但是使用Python的好处是你可以把多只股票放在一起比较来看!

长期投资利润:

图片

时间机器产生利润:

图片

我们直接看结果

图片

我们可以看到在不同的年份买入和卖出所获取利润情况(请注意这一假设的前提是我们有一台机器并且使用它 在我们确切知道股票价格什么时候会涨什么时候会跌的情况下 我们投资了所有的买入和卖出所产生的总利润)

图片

基于模型预测的利润:

我们的思路是这样,我们设计一个模型它会比“长期投资的利润和最大程度设置时间机器的利润”给我们带来更好的结果。我们这样做的原因是因为我们希望确定股票最佳的买入和卖出点。我们绝对不是为了打败长期投资者,我们只是想尽可能的控制交易风险。

图片

图片

从这张图我们可以看到股票价格波动最剧烈的范围,这对于那些长期持有的人来说如果股票一直在上涨那自然无所谓,但是对于那些投资短线的人来说意味着这支股票有更大的操作空间,当然风险也更大!

图片

通过调用我们所编写的类,我们可以看到股票实际变动、模型预测、置信区间之间的关系。这个可以方便我们更好的调整我们的模型进行预测。

股票评估预测:

通过上面的分析我们可以看到我们所采用的测试数据的绝对误差还是挺高的,让我们试着调整下参数以获得更好的测试数据结果图片

从结果上看我们可以看到,采用测试数据平均误差是$228.87而采用我们训练的模型所预测的数据平均误差是$52.24这意味着我们的训练的模型所产生的误差已经得到了很大的优化。此外我们也可以看到在预测股票价格上涨上面准确率为47.95%而在预测股票价格下跌上面的准确率为38.27%

在调整了参数得到的预测结果:

图片

图片

可以看到我们的模型预测的结果大部分都越来越准确,我们通过表格来直观的感受下。

预测类型模型一模型二
预测和实际价格差$907.55$179.79
平均错误$17.87 $451.56$108.10 $301.74
上涨概率47.95%45.86%
下跌概率38.27%40.34%
实际值/置信区间80%0.00%2.37%

在我们不断的优化模型参数并经过一定量的训练之后我们的模型在涨跌趋势的预测上准确率可以进一步提升(有兴趣的可以联系小编获取代码研究几支股票试一试)

在实际测试中我们可以发现如果我们使用我们的模型推荐来买入/卖出 我们在去年可以获得大概23%的利润,实际上这个也是我们从长期投资中获得的回报。但是这个模型的意义在于减少持仓时间来最小化风险。而且股票的分析只是其中一块,最终我们要么通过人去实现买卖要么通过算法自动化帮我们去处理繁琐的买卖,而这正是编程所擅长的,至少在时间上有绝对的优势!

诚然我们用Python来对股票进行数据分析,实现预测和评估的目的主要是展示这种应用能力。就像在疫苗研发、芯片研发、机械制造等领域所能做的一样。都是为了更好的完成工作。

Python经验分享

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。在这里插入图片描述

二、Python必备开发工具

在这里插入图片描述

三、Python视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。(文末领读者福利
在这里插入图片描述
在这里插入图片描述

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。(文末领读者福利
在这里插入图片描述

五、Python练习题

检查学习结果。
在这里插入图片描述

六、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。 (文末领取哦
在这里插入图片描述
在这里插入图片描述

这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

👉[CSDN大礼包:《python安装工具&全套学习资料》免费分享]安全链接,放心点击

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐