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 fabric实现远程部署
Jan 05 Python
利用Python批量压缩png方法实例(支持过滤个别文件与文件夹)
Jul 30 Python
python队列通信:rabbitMQ的使用(实例讲解)
Dec 22 Python
Python3爬虫学习之将爬取的信息保存到本地的方法详解
Dec 12 Python
Python Numpy库安装与基本操作示例
Jan 08 Python
docker-py 用Python调用Docker接口的方法
Aug 30 Python
6行Python代码实现进度条效果(Progress、tqdm、alive-progress​​​​​​​和PySimpleGUI库)
Jan 06 Python
tensorflow查看ckpt各节点名称实例
Jan 21 Python
浅谈tensorflow之内存暴涨问题
Feb 05 Python
自定义实现 PyQt5 下拉复选框 ComboCheckBox的完整代码
Mar 30 Python
简单介绍一下pyinstaller打包以及安全性的实现
Jun 02 Python
Python数据分析之pandas读取数据
Jun 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
PHP Socket 编程
2010/04/09 PHP
php在服务器执行exec命令失败的解决方法
2012/03/03 PHP
解析PHP正则提取或替换img标记属性
2013/06/26 PHP
Mac OS下配置PHP+MySql环境
2015/02/25 PHP
PHP编程实现脚本异步执行的方法
2017/08/09 PHP
基于Jquery的简单&简陋Tabs插件代码
2010/02/09 Javascript
Javascript事件热键兼容ie|firefox
2010/12/30 Javascript
浅析document.createDocumentFragment()与js效率
2013/07/08 Javascript
javascript 弹出的窗口返回值给父窗口具体实现
2013/11/23 Javascript
jQuery实现瀑布流布局
2014/12/12 Javascript
js鼠标点击图片切换效果实现代码
2015/11/19 Javascript
nodejs加密Crypto的实例代码
2016/07/07 NodeJs
BootStrap便签页的简单应用
2017/01/06 Javascript
jQuery图片轮播功能实例代码
2017/01/29 Javascript
Base64(二进制)图片编码解析及在各种浏览器的兼容性处理
2017/02/09 Javascript
angularjs实现的前端分页控件示例
2017/02/10 Javascript
详解JavaScript中的六种错误类型
2017/09/21 Javascript
使用VueCli3+TypeScript+Vuex一步步构建todoList的方法
2019/07/25 Javascript
[17:36]VG战队纪录片
2014/08/21 DOTA
[57:53]DOTA2上海特级锦标赛主赛事日 - 2 败者组第二轮#3OG VS VP
2016/03/03 DOTA
python抓取京东商城手机列表url实例代码
2013/12/18 Python
浅谈Python数据类型之间的转换
2016/06/08 Python
Python 的类、继承和多态详解
2017/07/16 Python
Python实现简单的HttpServer服务器示例
2017/09/25 Python
Python操作MongoDB数据库的方法示例
2018/01/04 Python
详解python pandas 分组统计的方法
2019/07/30 Python
python爬虫爬取监控教务系统的思路详解
2020/01/08 Python
Python字典深浅拷贝与循环方式方法详解
2020/02/09 Python
matplotlib之属性组合包(cycler)的使用
2021/02/24 Python
倩碧英国官网:Clinique英国
2018/08/10 全球购物
客服文员岗位职责
2013/11/29 职场文书
个人培训自我鉴定
2014/03/28 职场文书
九一八事变演讲稿
2014/09/05 职场文书
服装区域经理岗位职责
2015/04/10 职场文书
90行Python代码开发个人云盘应用
2021/04/20 Python
Java虚拟机内存结构及编码实战分享
2022/04/07 Java/Android