【关于时间序列的ML】项目 2 :使用机器学习预测股票价格

news2025/4/6 5:37:40

  🔎大家好,我是Sonhhxg_柒,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流🔎

📝个人主页-Sonhhxg_柒的博客_CSDN博客 📃

🎁欢迎各位→点赞👍 + 收藏⭐️ + 留言📝​

📣系列专栏 - 机器学习【ML】 自然语言处理【NLP】  深度学习【DL】

​​

 🖍foreword

✔说明⇢本人讲解主要包括Python、机器学习(ML)、深度学习(DL)、自然语言处理(NLP)等内容。

如果你对这个系列感兴趣的话,可以关注订阅哟👋

文章目录

股价预测

数据准备

将机器学习应用于股票价格预测


预测股市是机器学习在金融领域最重要的应用之一。在本文中,我将带您完成一个使用机器学习 Python 预测股票价格的简单数据科学项目。

在本文的最后,您将学习如何通过实现 Python 编程语言使用线性回归模型来预测股票价格。

股价预测

预测股市自成立以来一直是投资者的祸根和目标。每天有数十亿美元在证券交易所交易,每一美元的背后都有一个希望以这种或那种方式获利的投资者。

整个公司每天都根据市场行为涨跌。如果投资者能够准确预测市场走势,他就会提供诱人的财富和影响力承诺。 

今天,很多人都在股票市场上交易赚钱。如果您将您在股票市场的经验和您的机器学习技能用于股票价格预测任务,这对您来说是一个加分项。

让我们看看如何使用机器学习和 Python 编程语言来预测股票价格。我将通过导入此任务所需的所有必要 python 库来开始此任务:

import numpy as np
import pandas as pd
from sklearn import preprocessing
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression

数据准备

在上面的部分中,我通过导入 python 库开始了股票价格预测的任务。现在我将编写一个函数来准备数据集,以便我们可以轻松地将其拟合到线性回归模型中:

def prepare_data(df,forecast_col,forecast_out,test_size):
    label = df[forecast_col].shift(-forecast_out) #creating new column called label with the last 5 rows are nan
    X = np.array(df[[forecast_col]]) #creating the feature array
    X = preprocessing.scale(X) #processing the feature array
    X_lately = X[-forecast_out:] #creating the column i want to use later in the predicting method
    X = X[:-forecast_out] # X that will contain the training and testing
    label.dropna(inplace=True) #dropping na values
    y = np.array(label)  # assigning Y
    X_train, X_test, Y_train, Y_test = train_test_split(X, y, test_size=test_size, random_state=0) #cross validation

    response = [X_train,X_test , Y_train, Y_test , X_lately]
    return response

上面的函数你可以很容易的理解,因为我已经一步步的讲述了每一行的作用。现在接下来要做的是读取数据:

df = pd.read_csv("prices.csv")
df = df[df.symbol == "GOOG"]

现在我们需要准备三个输入变量,就像在上一节创建的函数中已经准备好的一样。我们需要声明一个输入变量,提及我们想要预测的列。我们需要声明的下一个变量是我们想要预测的距离。

我们需要声明的最后一个变量是测试集的大小应该是多少。现在让我们声明所有变量:

forecast_col = 'close'
forecast_out = 5
test_size = 0.2

将机器学习应用于股票价格预测

现在我将拆分数据并拟合到线性回归模型中:

X_train, X_test, Y_train, Y_test , X_lately =prepare_data(df,forecast_col,forecast_out,test_size); #calling the method were the cross validation and data preperation is in
learner = LinearRegression() #initializing linear regression model

learner.fit(X_train,Y_train) #training the linear regression model

现在让我们预测输出并查看股票价格:


score=learner.score(X_test,Y_test)#testing the linear regression model
forecast= learner.predict(X_lately) #set that will contain the forecasted data
response={}#creting json object
response['test_score']=score
response['forecast_set']=forecast

print(response)

{'test_score': 0.9481024935723803, 'forecast_set': array([786.54352516, 788.13020371, 781.84159626, 779.65508615, 769.04187979])}

这就是我们如何使用机器学习预测股票价格。我希望您喜欢这篇关于通过实施线性回归模型使用 Python 和机器学习进行股票价格预测的文章。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/105115.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

5G无线技术基础自学系列 | RF优化流程

素材来源:《5G无线网络规划与优化》 一边学习一边整理内容,并与大家分享,侵权即删,谢谢支持! 附上汇总贴:5G无线技术基础自学系列 | 汇总_COCOgsta的博客-CSDN博客 在介绍完了RF优化的思路和措施之后&…

【Linux 软件包管理器 yum】

While there is life there is hope. 目录 1 什么是软件包 2 关于 rzsz 3 注意事项 4 查看软件包 5 如何安装软件 6 如何卸载软件 总结 1 什么是软件包 在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序. 但是这样太麻烦了, 于是有些人…

[译] 来了解一下 Island Architecture 孤岛架构

建立一个网站有不同的方法,其中之一便是多页应用程序(MPA),它大约在十年前就过时了,现在又重新流行起来。MPA已经被Angular和React以及其他现代框架所普及的单页应用(SPA)方法所取代。 由于应用软件迭代趋势的运作方式,方法/工具…

异步任务如何测试?

总是能收到这样的问题: 异步任务如何测试?异步的接口如何测试?可以通过自动化来保证异步任务是否执行了吗?能否保证执行是否成功? 收到这样的问题,其实大家的问题都是通用的,那么正好整理下我…

毫无基础的人如何入门 Python ?

Python 我也是从零开始自学的,因为工作的原因,我需要 python 做很多数据抓取的工作。我把自己的学习的感想,做了一下总结,阅读到最后,一定会有惊喜。 首选,我不会一下子,给你推荐一堆视频课程&…

从git上新拉下来的vue项目,没有node_modules依赖,npm install报错,node-sass报错

因为没有node_modules依赖,我直接 1.npm install,但是报错: 2.npm install --force报错 3.npm audit fix --force报错 4.npm install --legacy-peer-deps报错 5.npm install --registry https://registry.npm.taobao.org 直接安装淘宝镜像也…

一名智能驾驶产品经理的自我修养

已剪辑自: https://mp.weixin.qq.com/s/fCSO7hmP3FP-Xat-NyFG0A 随着智能驾驶浪潮的兴起,市场上产生了对相关人才的大量需求,也诞生了一些传统汽车行业所没有的新兴岗位。其中,智驾产品经理,作为一个典型的、互联网与汽车行业深度…

应用反演工程对四层减反膜进行分析

有很多的过程可以被称之为反演工程,但在Essential Macleod中,该术语的意思是用来识别理想设计的和实际生产尝试之间的差异。该功能大致可以概括为“出了什么问题”。这一过程类似于优化,在优化过程中,将初始设计进行优化&#xff…

软饭硬吃,因为“测试能力单一”面试多次被拒,给跳槽的各位测试人员提个醒

最近公司有几位同事打算离职出去看看其他机会,几轮面试下来感觉很好,最终却没有收到几家offer。这几位同事都有好几年工作经验,测试经验丰富,也参与过大型项目的测试,在测试用例设计、测试流程把控、测试执行等方面做得…

汇富纳米冲刺创业板:拟募资6.25亿 王跃林堂叔侄控制近50%股权

雷递网 雷建平 12月20日湖北汇富纳米材料股份有限公司(简称:“汇富纳米”)日前递交招股书,准备在深交所创业板上市。汇富纳米计划募资6.25亿元,其中,3.5亿元用于2万吨/年气相法纳米粉体材料项目&#xff0c…

[前端攻坚]:如何优雅的用function实现一个class

使用function来写出一个class的类对于我们来说当然是简单的,但必须注意的是,要做好function实现一个class,那么就要必须实现达到高精准度的模仿,把该实现的细节都实现好,才能更好的对class进行深入的理解 废话少说&…

js逆向-无限debugger的原理与绕过

js逆向-无限debugger的原理与绕过 debugger是JavaScript中定义的一个专门用于断点调试的关键字,只要遇到他,JavaScritp的执行便会在此处中断,进入调试模式。 有了debugger这个关键字,我们就可以非常方便地对JavaScript代码进行调试,比如使用JavaScript Hook时,我们可以…

想用python拿大厂offer?那这个一定是你需要的

想用python拿大厂offer?那这个一定是你需要的 python,是一种解释型(高级)的,面向对象的,带有动态语义的高级程序设计的开源语言。1989年,Guido von Rossum(荷兰人)人称龟…

新华三推出人工智能模型训练平台,让智慧算力触手可及

随着AI技术不断完善升级,产业界的主要需求已经不再是基础算法的打磨,而是如何让AI技术与行业场景、企业需求相契合。不久之前,科技部等六部门联合印发了《关于加快场景创新以人工智能高水平应用促进经济高质量发展的指导意见》,明…

新浪l2接口如何获取某个记录类型对应的记录情况?

新浪l2接口获取某个记录类型对应的记录情况: 用法: get_result_records (recordtype, index, ContextInfo) 释义: 获取某个记录类型对应的某个时刻的记录情况。 *注:模型回测时有效,获取的为回测面板中的记录结果 …

Jmeter结果处理小心得

[内部资源] 想拿年薪30W的软件测试人员,这份资料必须领取~ Python自动化测试全栈性能测试全栈,挑战年薪40W 正文 工作中用jmeter请求一个接口对谈得上会jmeter的人似乎都是可以做出来的,但是实际难点是参数化,结果的断言&#…

谁会嫌钱多啊,最适合Python兼职攻略以及接私活经验!一定要看到最后!

想给大家谈谈一个非常热门的话题,就是如何在学习python的同时去赚钱。在这篇文章中,你会学习到如何通过学习python来赚取副业收入。 相信大家都对钱感兴趣吧,如果你和马云爸爸对钱不敢兴趣的话,那这篇文章就不适合你了。 如果你想…

ArcGIS的城市空间发展模拟预测案例

ArcGIS除了空间分析评价、综合制图等, 它其实还有一个很强大的功能! 这个功能,简直就是科研利器, 就叫它——模拟预测分析吧! 它涉及地质、环保、国土、规划、水利、气象等多方面的分析应用,科学进行城市空间发展变化的模拟预测! 城市空间单元划分与采样 划定分析单元…

汇编数据串操作和修改标志位指令处理机控制指令

目录 不使用数据串操作 数据串指令 数据串操作指令注意: MOVS数据串传送指令 (重点掌握) REP重复指令(补充) LODS取数据串(只有源) STOS存入串(只有目标) CMPS串比较 可以加重…

设计模式之责任链模式

Chain of responsibility 责任链模式的概念、责任链模式的结构、责任链模式的优缺点、责任链模式的使用场景、责任链模式的实现示例、责任链模式的源码分析 1、责任链模式的概念 责任链模式,即把请求从链中的一个对象传到下一个对象,知道请求被响应为止…