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进程类subprocess的一些操作方法例子
Nov 22 Python
Python使用multiprocessing创建进程的方法
Jun 04 Python
在Django的模型和公用函数中使用惰性翻译对象
Jul 27 Python
Python排序搜索基本算法之堆排序实例详解
Dec 08 Python
python语音识别实践之百度语音API
Aug 30 Python
Python3.5局部变量与全局变量作用域实例分析
Apr 30 Python
pyinstaller参数介绍以及总结详解
Jul 12 Python
Django 在iframe里跳转顶层url的例子
Aug 21 Python
python双向链表原理与实现方法详解
Dec 03 Python
python基于socket函数实现端口扫描
May 28 Python
聊聊python中的异常嵌套
Sep 01 Python
Python爬虫之Selenium实现窗口截图
Dec 04 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
超神学院:鹤熙已踏入神圣领域,实力不比凯莎弱
2020/03/02 国漫
用PHP的ob_start();控制您的浏览器cache!
2006/11/25 PHP
php is_file 判断给定文件名是否为一个正常的文件
2010/05/10 PHP
php发送与接收流文件的方法
2015/02/11 PHP
JS日历 推荐
2006/12/03 Javascript
JMenuTab简单使用说明
2008/03/13 Javascript
javascript SocialHistory 检查访问者是否访问过某站点
2008/08/02 Javascript
js form action动态修改方法
2008/11/04 Javascript
js GridView 实现自动计算操作代码
2009/03/25 Javascript
JS 有趣的eval优化输入验证实例代码
2013/09/22 Javascript
一个很有趣3D球状标签云兼容IE8
2014/08/22 Javascript
JavaScript实现动画打开半透明提示层的方法
2015/04/21 Javascript
javascript实现判断鼠标的状态
2015/07/10 Javascript
jQuery实现点击行选中或取消CheckBox的方法
2016/08/01 Javascript
Javascript中关于Array.filter()的妙用详解
2016/12/04 Javascript
jQuery 添加样式属性的优先级别方法(推荐)
2017/06/08 jQuery
JS实现的按钮点击颜色切换功能示例
2017/10/19 Javascript
原来JS还可以这样拆箱转换详解
2019/02/01 Javascript
js实现圆形显示鼠标单击位置
2020/02/11 Javascript
JS实现网页时钟特效
2020/03/25 Javascript
[01:03:41]DOTA2-DPC中国联赛 正赛 Dynasty vs XG BO3 第三场 2月2日
2021/03/11 DOTA
Python 常用的安装Module方式汇总
2017/05/06 Python
python中tkinter的应用:修改字体的实例讲解
2019/07/17 Python
pytorch 模型的train模式与eval模式实例
2020/02/20 Python
浅析Python 责任链设计模式
2020/09/11 Python
python对 MySQL 数据库进行增删改查的脚本
2020/10/22 Python
美国著名手表网站:Timepiece
2017/11/15 全球购物
欧洲有机婴儿食品最大的市场:Organic Baby Food(供美国和加拿大)
2018/03/28 全球购物
Goodee官方商店:迷你投影仪
2021/03/15 全球购物
专科毕业生自我鉴定
2013/12/01 职场文书
人力资源主管职责范本
2014/03/05 职场文书
承诺书格式范文
2014/06/03 职场文书
人代会简报
2015/07/21 职场文书
教学工作总结范文5篇
2019/08/19 职场文书
javascript遍历对象的五种方式实例代码
2021/10/24 Javascript
【海涛七七解说】DCG第二周:DK VS 天禄
2022/04/01 DOTA