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脚本
Feb 10 Python
给Python的Django框架下搭建的BLOG添加RSS功能的教程
Apr 08 Python
用Python写一个无界面的2048小游戏
May 24 Python
详解Python编程中对Monkey Patch猴子补丁开发方式的运用
May 27 Python
Python自动化测试ConfigParser模块读写配置文件
Aug 15 Python
python基础教程之匿名函数lambda
Jan 17 Python
Python中的字符串切片(截取字符串)的详解
May 15 Python
python实现各种插值法(数值分析)
Jul 30 Python
PyTorch中Tensor的拼接与拆分的实现
Aug 18 Python
python3实现raspberry pi(树莓派)4驱小车控制程序
Feb 12 Python
浅谈pytorch torch.backends.cudnn设置作用
Feb 20 Python
Python Pandas常用函数方法总结
Jun 15 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
js+php实现静态页面实时调用用户登陆状态的方法
2015/01/04 PHP
php精确的统计在线人数的方法
2015/10/21 PHP
一波PHP中cURL库的常见用法代码示例
2016/05/06 PHP
javascript面向对象之二 命名空间
2011/02/08 Javascript
将nodejs打包工具整合到鼠标右键的方法
2013/05/11 NodeJs
JS字符串处理实例代码
2013/08/05 Javascript
自己用jQuery写了一个图片的马赛克消失效果
2014/05/04 Javascript
JQuery中使用.each()遍历元素学习笔记
2014/11/08 Javascript
浅析四种常见的Javascript声明循环变量的书写方式
2015/10/14 Javascript
JavaScript encodeURI 和encodeURIComponent
2015/12/04 Javascript
AngularJS 使用$sce控制代码安全检查
2016/01/05 Javascript
用JavaScript动态建立或增加CSS样式表的实现方法
2016/05/20 Javascript
微信小程序 122100版本更新问题解决方案
2016/12/22 Javascript
详解Angular5路由传值方式及其相关问题
2018/04/28 Javascript
Vue props用法详解(小结)
2018/07/03 Javascript
JavaScript函数式编程(Functional Programming)箭头函数(Arrow functions)用法分析
2019/05/22 Javascript
Vue 列表上下过渡效果的实例代码
2019/06/25 Javascript
vue2.0项目集成Cesium的实现方法
2019/07/30 Javascript
vue.js循环radio的实例
2019/11/07 Javascript
JavaScript代码异常监控实现过程详解
2020/02/17 Javascript
[03:40]DOTA2英雄梦之声_第01期_炼金术士
2014/06/23 DOTA
[25:59]Newbee vs TNC 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python聚类算法之DBSACN实例分析
2015/11/20 Python
python人民币小写转大写辅助工具
2018/06/20 Python
程序员写Python时的5个坏习惯,你有几条?
2018/11/26 Python
Python编程学习之如何判断3个数的大小
2019/08/07 Python
Python实现Restful API的例子
2019/08/31 Python
Python面向对象封装操作案例详解
2019/12/31 Python
pygame用blit()实现动画效果的示例代码
2020/05/28 Python
雪花秀美国官方网站:韩国著名草本护肤化妆品品牌
2016/10/19 全球购物
汽车装潢店创业计划书范文
2014/02/05 职场文书
国际经济贸易专业自荐信
2014/06/13 职场文书
党的群众路线教育实践活动督导组工作情况汇报
2014/10/28 职场文书
检讨书范文
2015/01/27 职场文书
2015年安全月活动总结
2015/03/26 职场文书
《小蝌蚪找妈妈》教学反思
2016/02/23 职场文书