国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Python探索金融數(shù)據(jù)進行時間序列分析和預測

這篇具有很好參考價值的文章主要介紹了Python探索金融數(shù)據(jù)進行時間序列分析和預測。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

大家好,時間序列分析是一種基于歷史數(shù)據(jù)和趨勢分析進行預測的統(tǒng)計技術。它在金融和經(jīng)濟領域非常普遍,因為它可以準確預測趨勢并做出明智的決策。本文將使用Python來探索經(jīng)濟和金融數(shù)據(jù),執(zhí)行統(tǒng)計分析,并創(chuàng)建時間序列預測。

我們將在本教程中使用NumPy、Pandas和Matplotlib等不同的Python庫,此外還將介紹yfinance庫,并使用它來從Yahoo Finance下載金融數(shù)據(jù)。

安裝庫

在開始之前,安裝必要的庫,打開終端并運行以下命令:

pip install pandas numpy matplotlib yfinance

接下來,打開一個新的Jupyter Notebook或選擇的任何Python環(huán)境,開始實現(xiàn)代碼。

數(shù)據(jù)收集

為了演示如何使用Python進行時間序列分析和預測,將使用微軟公司的每日調整收盤價,這些數(shù)據(jù)由Yahoo Finance提供。在下載數(shù)據(jù)之前,導入所需的庫:

import pandas as pd
import numpy as np
import yfinance as yf
import matplotlib.pyplot as plt

# 設置可視化的樣式。
plt.style.use('fivethirtyeight')

接下來,定義微軟公司的代碼、開始和結束日期。

# 定義代碼并下載數(shù)據(jù)。
MSFT = yf.download('MSFT', start='2010-01-01', end='2022-06-30')

yfinance庫提供了一種簡單的方法來下載特定代碼的金融數(shù)據(jù),開始和結束日期表示我們要下載的數(shù)據(jù)時間段,本文為2010年1月至2022年6月。

探索性數(shù)據(jù)分析

現(xiàn)在已經(jīng)下載了數(shù)據(jù),然后探索一下數(shù)據(jù)以更好地了解它的結構和特征,可以使用Pandas來分析數(shù)據(jù)。

# 顯示數(shù)據(jù)的前5行。
print(MSFT.head())

# 顯示數(shù)據(jù)的統(tǒng)計摘要。
print(MSFT.describe())

第一行代碼將數(shù)據(jù)的前5行輸出到控制臺。它給我們一個快速查看數(shù)據(jù)的結構——顯示日期、開盤價、最高價、最低價、收盤價和調整后的收盤價。

第二行代碼提供了數(shù)據(jù)的統(tǒng)計摘要,顯示計數(shù)、平均值、標準差、最小值、最大值和四分位數(shù)值。

接下來,讓我們繪制每日調整后的收盤價,使數(shù)據(jù)可視化。

# 繪制微軟公司的調整后收盤價。
plt.figure(figsize=(12,6))
plt.plot(MSFT['Adj Close'], label='Adjusted Close')
plt.title('Microsoft Adjusted Close Price')
plt.xlabel('Date')
plt.ylabel('Adjusted Close Price ($)')
plt.legend(loc='upper left')
plt.xticks(rotation=45)
plt.show()

Python探索金融數(shù)據(jù)進行時間序列分析和預測,python數(shù)據(jù)分析,python可視化,python,金融,開發(fā)語言

?時間序列分析

接下來需要進行時間序列分析,以深入了解數(shù)據(jù)的時間行為。自相關函數(shù)(ACF)和偏自相關函數(shù)(PACF)用于識別連續(xù)觀測值和預測值之間的關系,可以使用statsmodels庫來計算ACF和PACF。

from statsmodels.graphics.tsaplots import plot_acf, plot_pacf

# 繪制自相關和偏自相關函數(shù)
fig, ax = plt.subplots(2, figsize=(12,6))
plot_acf(MSFT['Adj Close'], lags=20, ax=ax[0])
plot_pacf(MSFT['Adj Close'], lags=20, ax=ax[1])
plt.show()

上面的代碼繪制了微軟公司調整后的收盤價的ACF和PACF,滯后期最長為20。

Python探索金融數(shù)據(jù)進行時間序列分析和預測,python數(shù)據(jù)分析,python可視化,python,金融,開發(fā)語言

?從ACF圖中,我們可以觀察到自相關值在緩慢下降。PACF圖表明只有在滯后1時期,才存在顯著的自相關性,這表明第一個滯后期或時間段與當前觀察值具有最強的相關性。

預測

現(xiàn)在我們已經(jīng)分析了數(shù)據(jù)并了解了其結構和趨勢,讓我們使用Prophet庫進行一些預測。

pip install prophet
from prophet import Prophet

首先,我們將創(chuàng)建一個新的DataFrame,僅捕獲我們分析所需的列。

# 創(chuàng)建一個新的DataFrame
data = MSFT.loc[:, ['Adj Close']]
data.head()

接下來,我們將重命名列以適應Prophet的命名約定。

# 重命名列以適應Prophet的命名約定
data = data.reset_index()
data = data.rename(columns={'Date':'ds', 'Adj Close':'y'})
data.head()

上述代碼將DataFrame中必要的列重命名以適應Prophet的命名約定,ds列表示日期,而y列表示我們要預測的值。

現(xiàn)在,我們將數(shù)據(jù)拆分為訓練集和測試集,并使用Prophet庫進行預測。

train_data = data[data['ds'] < '2021-07-01']
test_data = data[data['ds'] >= '2021-07-01']

# 創(chuàng)建模型并擬合訓練數(shù)據(jù)
model = Prophet()
model.fit(train_data)

# 定義一個與預測范圍一致的新的DataFrame
future = test_data[['ds']]
forecast = model.predict(future)

# 繪制預測圖
model.plot(forecast)
plt.title('Microsoft Adjusted Close Price: Actual vs. Forecast')
plt.xlabel('Date')
plt.ylabel('Adjusted Close Price ($)')
plt.show()

上述代碼創(chuàng)建了一個Prophet模型并擬合訓練數(shù)據(jù),未來的DataFrame用ds列表示我們的預測日期。然后我們進行預測,并將結果保存在forecast DataFrame中,最后使用模型的plot()函數(shù)繪制預測圖。

Python探索金融數(shù)據(jù)進行時間序列分析和預測,python數(shù)據(jù)分析,python可視化,python,金融,開發(fā)語言

?總結

時間序列分析和預測是獲得不同領域數(shù)據(jù)洞察力的重要統(tǒng)計技術。本文從雅虎金融收集數(shù)據(jù),并使用Python進行數(shù)據(jù)分析,包括探索性數(shù)據(jù)分析和預測。

本文演示了各種可視化技術,例如繪制移動平均線、ACF和PACF圖,同時還進行了時間序列預測,這在金融和經(jīng)濟中是做出明智的投資決策所必需的。文章來源地址http://www.zghlxwxcb.cn/news/detail-589620.html

到了這里,關于Python探索金融數(shù)據(jù)進行時間序列分析和預測的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • python使用ARIMA進行時間序列的預測(基礎教程)

    python使用ARIMA進行時間序列的預測(基礎教程)

    時間序列就是以時間為索引的數(shù)據(jù),比如下面這種形式 數(shù)據(jù)鏈接:https://pan.baidu.com/s/1KHmCbk9ygIeRHn97oeZVMg 提取碼:s0k5 python使用ARIMA建模,主要是使用statsmodels庫 首先是建模流程,如果不是太明白不用擔心,下面會詳細的介紹這些過程 首先要注意一點,ARIMA適用于 短期 單變量

    2024年01月17日
    瀏覽(25)
  • 使用 Ploomber、Arima、Python 和 Slurm 進行時間序列預測

    使用 Ploomber、Arima、Python 和 Slurm 進行時間序列預測

    推薦:使用 NSDT場景編輯器助你快速搭建可二次編輯的3D應用場景 筆記本由 8 個任務組成,如下圖所示。它包括建模的大多數(shù)基本步驟 - 獲取數(shù)據(jù)清理、擬合、超參數(shù)調優(yōu)、驗證和可視化。作為捷徑,我拿起筆記本并使用Soorgeon工具自動將筆記本模塊化到Ploomber管道中。這會將

    2024年02月12日
    瀏覽(19)
  • Python用 tslearn 進行時間序列聚類可視化

    Python用 tslearn 進行時間序列聚類可視化

    我們最近在完成一些時間序列聚類任務,偶然發(fā)現(xiàn)了 tslearn 庫。我很想看看啟動和運行 tslearn 已內置的聚類有多簡單,結果發(fā)現(xiàn)非常簡單直接 ( 點擊文末“閱讀原文”獲取完整 代碼數(shù)據(jù) )。 相關視頻 首先,讓我們導入我們需要的庫: netdata_pandas 用于提取一些時間序列數(shù)據(jù)

    2024年02月11日
    瀏覽(22)
  • 時間序列預測模型實戰(zhàn)案例(二)(Holt-Winter)(Python)結合K-折交叉驗證進行時間序列預測實現(xiàn)企業(yè)級預測精度(包括運行代碼以及代碼講解)

    時間序列預測模型實戰(zhàn)案例(二)(Holt-Winter)(Python)結合K-折交叉驗證進行時間序列預測實現(xiàn)企業(yè)級預測精度(包括運行代碼以及代碼講解)

    目錄 引言 數(shù)據(jù)格式 運行代碼? Holt-Winters模型主體 程序入口 參數(shù)講解 開始訓練 預測結果 ? 話不多說上來先上預測精度分析圖,其中MAE的誤差大概在0.11,以下數(shù)據(jù)均是預測未知數(shù)據(jù),而不是訓練數(shù)據(jù)的預測圖。 ? 開始之前我們先來簡單了解一下Holt-Winters模型 Holt-Winters模型,也

    2024年02月05日
    瀏覽(24)
  • 時間序列基礎操作:使用python與eviews對AR與ARMA模型進行定階與預報

    時間序列基礎操作:使用python與eviews對AR與ARMA模型進行定階與預報

    一般處理時間序列的基本過程:(無季節(jié)趨勢) 處理時間序列的簡單過程(無季節(jié)趨勢) 注:上圖中LB檢驗的統(tǒng)計量糾正:n*(n+2),而不是n*(n-2) ?幾種基礎時間序列模型(模型的具體形式補充見文末): 目錄 一、Python處理 1.1.step1:平穩(wěn)性檢驗與白噪音檢驗 1.1.1平穩(wěn)性檢驗:

    2024年02月07日
    瀏覽(19)
  • Time-LLM:為時間序列預測重新編程LLM 探索Time-LLM的架構,并在Python中將其應用于預測項目

    Time-LLM:為時間序列預測重新編程LLM 探索Time-LLM的架構,并在Python中將其應用于預測項目

    參考資料:Time-LLM/ Reprogram an LLM for Time Series Forecasting.md 研究人員嘗試將自然語言處理(NLP)技術應用于時間序列領域并非首次。 例如,Transformer架構在NLP領域是一個重要的里程碑,但其在時間序列預測方面的表現(xiàn)一直平平,直到PatchTST的提出。 正如您所知,大型語言模型(

    2024年04月25日
    瀏覽(30)
  • Python數(shù)據(jù)分析案例11——灰色預測法預測時間序列數(shù)據(jù)

    Python數(shù)據(jù)分析案例11——灰色預測法預測時間序列數(shù)據(jù)

    本次案例來自2022華為杯第E題,第2小問。給定了2012.01-2022.03的土壤濕度的月度數(shù)據(jù),需要預測2022.04-2023.12的土壤濕度的月度數(shù)據(jù)。典型的時間序列預測。 傳統(tǒng)的時間序列預測肯定是ARIMA模型,可以參考我之前的文章。Python統(tǒng)計學10——時間序列分析自回歸模型(ARIMA) 現(xiàn)在流行的

    2024年02月06日
    瀏覽(34)
  • ARIMA模型時間序列數(shù)據(jù)分析(附python代碼)

    ARIMA模型時間序列數(shù)據(jù)分析(附python代碼)

    ARIMA模型建模流程? 1 )平穩(wěn)性檢驗與差分處理 我們選取原始數(shù)據(jù) bus 中的“ prf_get_person_count ”列,并截取前 32 個站點的數(shù)據(jù)進行平穩(wěn)性檢驗,這里采用的是 ADF 檢驗確定數(shù)據(jù)的平穩(wěn)性,導入 statsmodels 包下的 adfuller 函數(shù),該函數(shù)返回 adf 值與概率 p 值。若原始序列不平穩(wěn),就

    2024年02月01日
    瀏覽(23)
  • PYthon 時間序列數(shù)據(jù)重采樣-resample()方法(Pandas篇-23)

    PYthon 時間序列數(shù)據(jù)重采樣-resample()方法(Pandas篇-23)

    PYthon 時間序列數(shù)據(jù)重采樣-resample()方法(Pandas篇-23) ??????? ??博主 侯小啾 感謝您的支持與信賴。?? ??????????????????????????????????????????????????????????????????????????????????????

    2024年01月19日
    瀏覽(18)
  • 異常數(shù)據(jù)檢測 | Python實現(xiàn)k-means時間序列異常數(shù)據(jù)檢測

    異常數(shù)據(jù)檢測 | Python實現(xiàn)k-means時間序列異常數(shù)據(jù)檢測

    文章概述 異常數(shù)據(jù)檢測 | Python實現(xiàn)k-means時間序列異常數(shù)據(jù)檢測 模型描述 k-means是一種廣泛使用的聚類算法。它創(chuàng)建了k個具有相似特性的數(shù)據(jù)組。不屬于這些組的數(shù)據(jù)實例可能會被標記為異常。在我們開始k-means聚類之前,我們使用elbow方法來確定最佳聚類數(shù)量。 源碼分享

    2024年02月08日
    瀏覽(16)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包