python用線性回歸預(yù)測時間序列股票價格|附代碼數(shù)據(jù)
原文參考:http://tecdat.cn/?p=4516
最近我們被客戶要求撰寫關(guān)于線性回歸預(yù)測股票價格的研究報告,包括一些圖形和統(tǒng)計輸出。
線性回歸在整個財務(wù)中廣泛應(yīng)用于眾多應(yīng)用程序中。在之前的教程中,我們使用普通最小二乘法(OLS)計算了公司的beta與相對索引的比較?,F(xiàn)在,我們將使用線性回歸來估計股票價格
線性回歸是一種用于模擬因變量(y)和自變量(x)之間關(guān)系的方法。通過簡單的線性回歸,只有一個自變量x。可能有許多獨立變量屬于多元線性回歸的范疇。在這種情況下,我們只有一個自變量即日期。對于第一個日期上升到日期向量長度的整數(shù),該日期將由1開始的整數(shù)表示,該日期可以根據(jù)時間序列數(shù)據(jù)而變化。當(dāng)然,我們的因變量將是股票的價格。為了理解線性回歸,您必須了解您可能在學(xué)校早期學(xué)到的相當(dāng)基本的等式。
y = a + bx
Y =預(yù)測值或因變量
b =線的斜率
x =系數(shù)或自變量
a = y截距
從本質(zhì)上講,這將構(gòu)成我們對數(shù)據(jù)的最佳擬合。在OLS過程中通過數(shù)據(jù)集繪制了大量線條。該過程的目標是找到最佳擬合線,最小化平方誤差和(SSE)與股票價格(y)的實際值以及我們在數(shù)據(jù)集中所有點的預(yù)測股票價格。這由下圖表示。對于繪制的每條線,數(shù)據(jù)集中的每個點與模型輸出的相應(yīng)預(yù)測值之間存在差異。將這些差異中的每一個加起來并平方以產(chǎn)生平方和。從列表中,我們采用最小值導(dǎo)致我們的最佳匹配線??紤]下圖:

第一部分:獲取數(shù)據(jù):
from matplotlib import stylefrom sklearn.linear_model import LinearRegressionfrom sklearn.model_selection import train_test_splitimport quandlimport datetime
style.use('ggplot')#日期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))
第二部分:創(chuàng)建一個回歸對象:
?linewidth=3, label = 'Predicted Price') #繪制線性回歸線plt.title('Linear Regression | Time vs. Price')
plt.legend()predicted_price =regressor.predict(date)
輸出:?

點擊標題查閱往期內(nèi)容

R語言用logistic邏輯回歸和AFRIMA、ARIMA時間序列模型預(yù)測世界人口

左右滑動查看更多

01

02

03

04

預(yù)測日期輸入價格:
創(chuàng)建訓(xùn)練/測試集
?xtrain, x , ytrain)#訓(xùn)練plt.title('Linear Regression | Time vs. Price')#測試集圖plt.scatter(xtest, ytest, color='yellow', label= 'Actual Price') #繪制初始數(shù)據(jù)點plt.plot(xtest, regressor.predict(xtest), color='blue', linewidth=3, label = 'Predicted Price') #繪圖plt.show()
輸出:

測試集:

?

點擊文末?“閱讀原文”
獲取全文完整代碼數(shù)據(jù)資料。
本文選自《python用線性回歸預(yù)測時間序列股票價格》。
點擊標題查閱往期內(nèi)容
R語言時間序列:ARIMA / GARCH模型的交易策略在外匯市場預(yù)測應(yīng)用
R語言中的時間序列分析模型:ARIMA-ARCH / GARCH模型分析股票價格
R語言用Garch模型和回歸模型對股票價格分析
R語言對S&P500股票指數(shù)進行ARIMA + GARCH交易策略
R語言ARMA GARCH COPULA模型擬合股票收益率時間序列和模擬可視化
ARMA-GARCH-COPULA模型和金融時間序列案例
時間序列分析:ARIMA GARCH模型分析股票價格數(shù)據(jù)
GJR-GARCH和GARCH波動率預(yù)測普爾指數(shù)時間序列和Mincer Zarnowitz回歸、DM檢驗、JB檢驗
【視頻】時間序列分析:ARIMA-ARCH / GARCH模型分析股票價格
時間序列GARCH模型分析股市波動率
PYTHON用GARCH、離散隨機波動率模型DSV模擬估計股票收益時間序列與蒙特卡洛可視化
極值理論 EVT、POT超閾值、GARCH 模型分析股票指數(shù)VaR、條件CVaR:多元化投資組合預(yù)測風(fēng)險測度分析
Garch波動率預(yù)測的區(qū)制轉(zhuǎn)移交易策略
金融時間序列模型ARIMA 和GARCH 在股票市場預(yù)測應(yīng)用
時間序列分析模型:ARIMA-ARCH / GARCH模型分析股票價格
R語言風(fēng)險價值:ARIMA,GARCH,Delta-normal法滾動估計VaR(Value at Risk)和回測分析股票數(shù)據(jù)
R語言GARCH建模常用軟件包比較、擬合標準普爾SP 500指數(shù)波動率時間序列和預(yù)測可視化
Python金融時間序列模型ARIMA 和GARCH 在股票市場預(yù)測應(yīng)用
MATLAB用GARCH模型對股票市場收益率時間序列波動的擬合與預(yù)測R語言GARCH-DCC模型和DCC(MVT)建模估計
Python 用ARIMA、GARCH模型預(yù)測分析股票市場收益率時間序列
R語言中的時間序列分析模型:ARIMA-ARCH / GARCH模型分析股票價格
R語言ARIMA-GARCH波動率模型預(yù)測股票市場蘋果公司日收益率時間序列
Python使用GARCH,EGARCH,GJR-GARCH模型和蒙特卡洛模擬進行股價預(yù)測
R語言時間序列GARCH模型分析股市波動率
R語言ARMA-EGARCH模型、集成預(yù)測算法對SPX實際波動率進行預(yù)測
matlab實現(xiàn)MCMC的馬爾可夫轉(zhuǎn)換ARMA - GARCH模型估計
Python使用GARCH,EGARCH,GJR-GARCH模型和蒙特卡洛模擬進行股價預(yù)測
使用R語言對S&P500股票指數(shù)進行ARIMA + GARCH交易策略
R語言用多元ARMA,GARCH ,EWMA, ETS,隨機波動率SV模型對金融時間序列數(shù)據(jù)建模
R語言股票市場指數(shù):ARMA-GARCH模型和對數(shù)收益率數(shù)據(jù)探索性分析
R語言多元Copula GARCH 模型時間序列預(yù)測
R語言使用多元AR-GARCH模型衡量市場風(fēng)險
R語言中的時間序列分析模型:ARIMA-ARCH / GARCH模型分析股票價格
R語言用Garch模型和回歸模型對股票價格分析
GARCH(1,1),MA以及歷史模擬法的VaR比較
matlab估計arma garch 條件均值和方差模型R語言POT超閾值模型和極值理論EVT分析