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以并发方式编写高性能端口扫描器的方法
Jun 14 Python
python urllib urlopen()对象方法/代理的补充说明
Jun 29 Python
python分块读取大数据,避免内存不足的方法
Dec 10 Python
python ---lambda匿名函数介绍
Mar 13 Python
java中的控制结构(if,循环)详解
Jun 26 Python
通过PYTHON来实现图像分割详解
Jun 26 Python
python fuzzywuzzy模块模糊字符串匹配详细用法
Aug 29 Python
使用TensorFlow对图像进行随机旋转的实现示例
Jan 20 Python
Keras—embedding嵌入层的用法详解
Jun 10 Python
Python Selenium模块安装使用教程详解
Jul 09 Python
Python自动化办公Excel模块openpyxl原理及用法解析
Nov 05 Python
python爬虫爬取某网站视频的示例代码
Feb 20 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
文件系统基本操作类
2006/11/23 PHP
一个更简单的无限级分类菜单代码
2007/01/16 PHP
php相当简单的分页类
2008/10/02 PHP
PHP微信支付实例解析
2016/07/22 PHP
Swoole4.4协程抢占式调度器详解
2019/05/23 PHP
图像替换新技术 状态域方法
2010/01/28 Javascript
JavaScript 轻松搞定快捷留言功能 只需一行代码
2010/04/01 Javascript
jquery上传插件fineuploader上传文件使用方法(jquery图片上传插件)
2013/12/05 Javascript
javascript中取前n天日期的两种方法分享
2014/01/26 Javascript
jquery实现瀑布流效果分享
2014/03/26 Javascript
js仿支付宝填写支付密码效果实现多方框输入密码
2016/03/09 Javascript
关于cookie的初识和运用(js和jq)
2016/04/07 Javascript
Bootstrap实现提示框和弹出框效果
2017/01/11 Javascript
详解Vuex中mapState的具体用法
2017/09/28 Javascript
jQuery实现弹幕特效
2019/11/29 jQuery
js实现弹幕墙效果
2020/12/10 Javascript
[01:15:15]VG VS EG Supermajor小组赛B组胜者组第一轮 BO3第二场 6.2
2018/06/03 DOTA
Python中for循环控制语句用法实例
2015/06/02 Python
Python 3.6 性能测试框架Locust安装及使用方法(详解)
2017/10/11 Python
Python实现可获取网易页面所有文本信息的网易网络爬虫功能示例
2018/01/15 Python
python实现远程通过网络邮件控制计算机重启或关机
2018/02/22 Python
浅谈python中np.array的shape( ,)与( ,1)的区别
2018/06/04 Python
django认证系统实现自定义权限管理的方法
2018/07/16 Python
python 3.8.3 安装配置图文教程
2020/05/21 Python
用CSS3实现背景渐变的方法
2015/07/14 HTML / CSS
世界上最大的各式箱包网络零售店:eBag
2016/07/21 全球购物
在线购买澳大利亚设计师手拿包和奢华晚装手袋:Olga Berg
2019/03/20 全球购物
杭州时比特电子有限公司SQL
2013/08/22 面试题
《生命的药方》教学反思
2014/04/08 职场文书
公安四风对照检查材料思想汇报
2014/10/11 职场文书
2014年服装销售工作总结
2014/11/27 职场文书
求职导师推荐信范文
2015/03/27 职场文书
四年级数学教学反思
2016/02/16 职场文书
2016年法制宣传月活动总结
2016/04/01 职场文书
python实现局部图像放大
2021/11/17 Python
MySQL数据库之内置函数和自定义函数 function
2022/06/16 MySQL