python用线性回归预测股票价格的实现代码


Posted in Python onSeptember 04, 2019

线性回归在整个财务中广泛应用于众多应用程序中。在之前的教程中,我们使用普通最小二乘法(OLS)计算了公司的beta与相对索引的比较。现在,我们将使用线性回归来估计股票价格。

线性回归是一种用于模拟因变量(y)和自变量(x)之间关系的方法。通过简单的线性回归,只有一个自变量x。可能有许多独立变量属于多元线性回归的范畴。在这种情况下,我们只有一个自变量即日期。对于第一个日期上升到日期向量长度的整数,该日期将由1开始的整数表示,该日期可以根据时间序列数据而变化。当然,我们的因变量将是股票的价格。为了理解线性回归,您必须了解您可能在学校早期学到的相当基本的等式。

y = a + bx

  • Y =预测值或因变量
  • b =线的斜率
  • x =系数或自变量
  • a = y截距

从本质上讲,这将构成我们对数据的最佳拟合。在OLS过程中通过数据集绘制了大量线条。该过程的目标是找到最佳拟合线,最小化平方误差和(SSE)与股票价格(y)的实际值以及我们在数据集中所有点的预测股票价格。这由下图表示。对于绘制的每条线,数据集中的每个点与模型输出的相应预测值之间存在差异。将这些差异中的每一个加起来并平方以产生平方和。从列表中,我们采用最小值导致我们的最佳匹配线。考虑下图:

python用线性回归预测股票价格的实现代码

第一部分:获取数据:

from matplotlib import style
 
from sklearn.linear_model import LinearRegression
 
from sklearn.model_selection import train_test_split
 
import quandl
 
import datetime
 
style.use('ggplot')
 
#Dates
 
start_date = datetime.date(2017,1,3)
 
t_date=start_date, end_date=end_date, collapse="daily")
 
df = df.reset_index()
 
prices = np.reshape(prices, (len(prices), 1))

第二部分:创建一个回归对象:

', linewidth=3, label = 'Predicted Price') #plotting the line made by linear regression
 
plt.title('Linear Regression | Time vs. Price')
 
plt.legend()
 
predicted_price =regressor.predict(date)

输出:

python用线性回归预测股票价格的实现代码

预测日期输入价格:

创建训练/测试集

et
 
xtrain, x , ytrain)
 
#Train
 
plt.title('Linear Regression | Time vs. Price')
 
#Test Set Graph
 
plt.scatter(xtest, ytest, color='yellow', label= 'Actual Price') #plotting the initial datapoints
 
plt.plot(xtest, regressor.predict(xtest), color='blue', linewidth=3, label = 'Predicted Price') #plotting
 
plt.show()

输出:

python用线性回归预测股票价格的实现代码

测试集:

python用线性回归预测股票价格的实现代码

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python连接mysql数据库示例(做增删改操作)
Dec 31 Python
python中Flask框架简单入门实例
Mar 21 Python
浅谈Python的文件类型
May 30 Python
python 基础教程之Map使用方法
Jan 17 Python
python模拟登录并且保持cookie的方法详解
Apr 04 Python
python使用代理ip访问网站的实例
May 07 Python
Django-Rest-Framework 权限管理源码浅析(小结)
Nov 12 Python
Python使用post及get方式提交数据的实例
Jan 24 Python
Python 3.8中实现functools.cached_property功能
May 29 Python
解析python实现Lasso回归
Sep 11 Python
Pyecharts地图显示不完成问题解决方案
May 11 Python
sqlalchemy实现时间列自动更新教程
Sep 02 Python
python多线程扫描端口(线程池)
Sep 04 #Python
Python数据分析模块pandas用法详解
Sep 04 #Python
Python实现TCP探测目标服务路由轨迹的原理与方法详解
Sep 04 #Python
基于python全局设置id 自动化测试元素定位过程解析
Sep 04 #Python
Django框架 querySet功能解析
Sep 04 #Python
Django框架 查询Extra功能实现解析
Sep 04 #Python
Django框架 Pagination分页实现代码实例
Sep 04 #Python
You might like
一个基于PDO的数据库操作类
2011/03/24 PHP
鸡肋的PHP单例模式应用详解
2013/06/03 PHP
ThinkPHP中I(),U(),$this->post()等函数用法
2014/11/22 PHP
php二维数组合并及去重复的方法
2015/03/04 PHP
浅谈ThinkPHP5.0版本和ThinkPHP3.2版本的区别
2017/06/17 PHP
Laravel5.5 实现后台管理登录的方法(自定义用户表登录)
2019/09/30 PHP
Package.js  现代化的JavaScript项目make工具
2012/05/23 Javascript
jquery获取焦点和失去焦点事件代码
2013/04/21 Javascript
多种方法实现360浏览器下禁止自动填写用户名密码
2014/06/16 Javascript
AngularJS基础知识笔记之过滤器
2015/05/10 Javascript
JavaScript+html5 canvas制作的百花齐放效果完整实例
2016/01/26 Javascript
很棒的js选项卡切换效果
2016/07/15 Javascript
实现React单页应用的方法详解
2016/08/02 Javascript
详解让sublime text3支持Vue语法高亮显示的示例
2017/09/29 Javascript
vue计算属性及使用详解
2018/04/02 Javascript
angular第三方包开发整理(小结)
2018/04/19 Javascript
Javascript实现秒表倒计时功能
2018/11/17 Javascript
javascrit中undefined和null的区别详解
2019/04/07 Javascript
微信小程序中如何计算距离某个节日还有多少天
2019/07/15 Javascript
微信小程序 拍照或从相册选取图片上传代码实例
2019/08/28 Javascript
layui实现tab的添加拒绝重复的方法
2019/09/04 Javascript
vue等两个接口都返回结果再执行下一步的实例
2020/09/08 Javascript
Python获取电脑硬件信息及状态的实现方法
2014/08/29 Python
python在指定目录下查找gif文件的方法
2015/05/04 Python
详解Python发送邮件实例
2016/01/10 Python
Python复数属性和方法运算操作示例
2017/07/21 Python
python中报错"json.decoder.JSONDecodeError: Expecting value:"的解决
2019/04/29 Python
使用Python 自动生成 Word 文档的教程
2020/02/13 Python
python GUI库图形界面开发之PyQt5控件数据拖曳Drag与Drop详细使用方法与实例
2020/02/27 Python
python 制作python包,封装成可用模块教程
2020/07/13 Python
历史学专业毕业生求职信
2013/09/27 职场文书
消防安全汇报材料
2014/02/08 职场文书
三年级学生期末评语
2014/12/26 职场文书
个人委托函范文
2015/01/29 职场文书
公司出差管理制度范本
2015/08/05 职场文书
《群青的幻想曲》京力秋树角色PV公开
2022/04/08 日漫