最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Python使用GARCH,EGARCH,GJR-GARCH模型和蒙特卡洛模擬進行股價預測|附代碼數(shù)據(jù)

2022-12-02 18:34 作者:拓端tecdat  | 我要投稿

全文下載鏈接:http://tecdat.cn/?p=20678

在本文中,預測股價已經(jīng)受到了投資者,政府,企業(yè)和學者廣泛的關(guān)注。然而,數(shù)據(jù)的非線性和非平穩(wěn)性使得開發(fā)預測模型成為一項復雜而具有挑戰(zhàn)性的任務

在本文中,我將解釋如何將?GARCH,EGARCH和?GJR-GARCH?模型與Monte-Carlo?模擬結(jié)合使用,?以建立有效的預測模型。金融時間序列的峰度,波動率和杠桿效應特征證明了GARCH的合理性。時間序列的非線性特征用于檢查布朗運動并研究時間演化模式。非線性預測和信號分析方法因其在特征提取和分類中的魯棒性而在股票市場上越來越受歡迎。

動力學系統(tǒng)可以用一組時變(連續(xù)或離散)變量來描述,這些變量構(gòu)成信號分析非線性方法的基礎。如果時間的當前值和狀態(tài)變量可以準確地描述下一時刻的系統(tǒng)狀態(tài),則可以說這樣的系統(tǒng)是確定性的。另一方面,如果時間和狀態(tài)變量的當前值僅描述狀態(tài)變量的值隨時間變化的概率,則將動力學系統(tǒng)視為隨機系統(tǒng)。

因此,在使用GARCH?建模方法之前?,我將采用?分形維數(shù)(FD)?,重定?范圍?和?遞歸量化分析(RQA)的?數(shù)據(jù)建模?技術(shù)?來總結(jié)數(shù)據(jù)的非線性動力學行為并完成研究目標。

方法

Hurst**系數(shù)??(H)??是長期依賴的特征參數(shù),與?FD?(FD + H = 2)有關(guān)。?R / S分析是數(shù)據(jù)建模的核心工具。經(jīng)驗研究表明,?與同類中的其他方法相比,??R / S_帶來了更好的結(jié)果,例如自相關(guān),光譜分解的分析。它是度量時間序列差異的度量,該時間序列的定義是給定持續(xù)時間_(T)_的均值范圍? ,除以該持續(xù)時間的標準偏差?[?R / S = k * T(H)?];?_??是一個取決于時間序列的常數(shù)。H度量時間序列的長期記憶,將其表征為均值回復,趨勢或隨機游走。

H <0.5表示均值回復

H> 0.5表示趨勢序列,并且

H = 0.5表示隨機游走。

我將展示如何使用?GARCH?模型進行風險評估。

GARCH?模型的一個關(guān)鍵限制?是對其參數(shù)施加非負約束,以確保條件方差的正性。這樣的約束會給估計GARCH?模型帶來困難?。

因此,提出了?非對稱GARCH?模型,即俗稱的?GJR-GARCH?模型,以解決對稱GARCH?模型的局限性?。更重要的是,指數(shù)?GARCH?或?EGARCH?模型相對于傳統(tǒng)的GARCH?模型具有潛在的改進 。

數(shù)據(jù)挖掘

查看數(shù)據(jù)。



在過去的幾十年中,原油價格呈現(xiàn)出較大的波動,尤其是在2008年左右。可以看出,隨著多次上升和下降,價格保持在相對較低的水平。從自相關(guān)圖可以看出原始數(shù)據(jù)中明顯的自相關(guān)。QQ和PP圖的形狀表明該過程接近正態(tài),但是_重尾分布_。

簡單收益率的常用形式為:r(t)= {p(t)— p(t-1)} / p(t-1),對數(shù)收益率= ln(pt / p(t-1),pt每日原油價格,r(t)是每日收益。

對數(shù)收益率在這里被視為本文的每日收益率。原始價格和對數(shù)收益率的直觀顯示清楚地證明了以幾乎恒定的均值,使用對數(shù)收益率是合理的。

收益率序列圖顯示了高和低變化周期。在圖中可以看到一個隨機且集中在零附近的過程。大幅度波動的正收益和負收益都增加了風險投資和管理的難度。每日收益率的平均值基本上在零水平水平附近,并且具有明顯的波動性聚類,表明存在異方差性。ACF很小,但是高度相關(guān)。QQ和PP圖的形狀沒有明顯變化。

sns.distplot(df.returns,?color=’blue’)?#密度圖#?匯總統(tǒng)計數(shù)據(jù)print(df.returns.describe())

收益率的偏度(-0.119)和向右偏離表明,收益率正比負收益率高,峰度(7.042)反映了油價波動大。

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

R語言ARMA-GARCH-COPULA模型和金融時間序列案例

左右滑動查看更多

01

02

03

04

標準正態(tài)分布的偏度和峰度分別為0和3。

Jarque-Bera檢驗的值表明,傳統(tǒng)的正態(tài)分布假設不適用于原油收益的真實分布。

ADF?=?ADF(df.returns)print(ADF.summary().as_text()) kpss?=?KPSS(df.returns)print(kpss.summary().as_text())

進行了VR檢驗,以測試對數(shù)收益率序列是否是純粹的隨機游走,以及是否具有一定的可預測性。我在這里比較了1個月和12個月的對數(shù)收益率,并且拒絕了該系列為純隨機游走的空值。用負檢驗統(tǒng)計量VA(-11.07)拒絕零表示在時間序列中存在序列相關(guān)性。用ADF,KPSS,DFGLS,PP和ZA統(tǒng)計量對單位根和平穩(wěn)性進行的檢驗均顯示出顯著性,表明使用?GARCH型模型來擬合收益序列是合適的。

非線性動力學

使用_Hurst_對平穩(wěn)性的研究?。

#?計算最近價格的Hurst系數(shù)tau?=?[sqrt(std(subtract(closes_recent[lag:],?closes_recent[:-lag])))?for?lag?in?lags]m?=?polyfit(log(lags),?log(tau),?1)hurst?=?m[0]*2

H(0.531)表示具有長期依賴性的隨機運動時間序列。證明了?本研究中GARCH模型的合理性?。

computation?=?RQAComputation.create(settings,verbose=True)result?=?computation.run()result.min_diagonal_line_length?=?2

此處,低?R?表示較低的周期性和隨機行為。此外,較低的?DET?值表示不確定性。這證明了使用GARCH?方法的合理性?。

GARCH模型

在估算GARCH類型的模型之前,將收益率乘以100。由于波動率截距與模型中其他參數(shù)非常接近,因此這有助于優(yōu)化程序進行轉(zhuǎn)換。

X?=?100*?df.returns

讓我們擬合一個?ARCH?模型并繪制平方殘差以檢查自相關(guān)性。

def?getbest(TS):best_aic?=?np.inf for?i?in?pq_rng: for?d?in?d_rng: for?j?in?pq_rng: try:tmp_mdl?=?smt.ARIMA(TS,?order=(i,d,j)).fit(#aic:?22462.01?|?order:?(2,?0,?2)gam?=?arch_model(Model.resid,?p=2,?o=0,?q=2,?dist=’StudentsT’)gres?=?gam.fit(update_freq=5,?disp=’off’) print(gres.summary()) tsplot(gres.resid**2,?lags=30)

我們可以看到平方殘差具有自相關(guān)的依據(jù)。讓我們擬合一個GARCH模型并查看其性能。我將按照以下步驟進行操作:

  • 通過ARIMA(p,d,q)??模型的組合進行迭代??,?以擬合最優(yōu)時間序列。

  • 根據(jù)?具有最低AIC的ARIMA模型選擇?GARCH模型 。

  • 將?GARCH(p,q)??模型擬合到時間序列。

  • 檢查模型殘差和平方殘差進行自相關(guān)

因此,我們在這里發(fā)現(xiàn),最好的模型是?ARIMA(2,0,2)??,F(xiàn)在,我們對殘差進行繪圖,以確定它們是否具有條件異方差。

?arch_model(X,?p=2,?q=2,?o=1,power=2.0,?vol=’Garch’,?dist=’StudentsT’)

am?=?arch_model(X,?p=2,?q=2,?o=1,power=2.0,?vol=’Garch’,?dist=’StudentsT’)

所有3個GARCH?模型的輸出?都以表格格式顯示。Ω??(ω)?是白噪聲,alpha和beta是模型的參數(shù)。此外,??α[1] +β[1] <1?表示穩(wěn)定的模型。?EGARCH?似乎是最好的三個這模型。

最好在訓練/測試中拆分數(shù)據(jù)并獲得MSE / MAE / RMSE結(jié)果以比較最佳模型擬合。

通過將殘差除以條件波動率來計算標準化殘差。

std_resid?=??resid?/??conditional_volatilityunit_var_resid?=??resid?/??resid.std()

標準化殘差和條件波動圖顯示了一些誤差,但幅度不大。

sns.kdeplot(squared_resid,?shade=True) sns.kdeplot(std_resid,?shade=True) sns.kdeplot(unit_var_resid,?shade=True)

還標繪了標準化殘差以及非標準化的殘差。殘差的平方在中心更加尖峰,表明分布的尾部比標準殘差的尾部更重。讓我們檢查一下ACF圖。

plot_acf(std_resid)

看起來有些尖峰超出了陰影的置信區(qū)。讓我們查看殘差平方。

殘差平方顯示數(shù)據(jù)點在藍色陰影的置信度區(qū)域(95%)內(nèi),表示模型擬合較好。

res?=?am.fit()fig?=?res.hedgehog_plot(type=’mean’)

圖顯示了整個2019年的預測。橙色線表示在不同時間區(qū)間的預測。

基于模擬的預測

這里使用基于仿真的方法從EGARCH?模擬中獲得預測波動率的置信區(qū)間?。要從EGARCH?模型獲得波動預測,該?模型是從擬合模型的最后一次觀察中模擬得出的。重復此過程很多次,以獲得波動率預測。預測點是通過對模擬求平均值來計算的,分別使用模擬分布的2.5%和97.5%的分位數(shù)來計算95%的置信區(qū)間??紤]平均收益率(mu)為0.0292,年波動率(vol)為(26.48)* sqrt 252 = 37.37%。

#定義變量T?=?252?#交易天數(shù)mu?=?0.0622?#收益vol?=?0.3737?#波動率daily_returns=np.random.normal((1+mu)**(1/T),vol/sqrt(T),T)#生成圖-價格序列和每日收益的直方圖plt.plot(price_list) plt.hist(daily_returns-1,?100)

在最上方的圖上,根據(jù)遵循正態(tài)分布的隨機每日收益,顯示了一個交易年度(252天)內(nèi)潛在價格序列演變的模擬。第二個圖是一年中這些隨機每日收益的直方圖。但是,可以通過運行成千上萬的模擬來獲得洞察,每次模擬都基于相同的特征(價格交易量)產(chǎn)生一系列不同的潛在價格演變。

#設置一個空列表來保存我們每個模擬價格序列的最終值result?=?[]S?=?df.Price[-1]?#起始股票價格(即最后可用的實際股票價格)T?=?252?#交易天數(shù)mu?=?0.0622?#收益率vol?=?0.3737?#波動率#選擇要模擬的運行次數(shù)-我選擇了10,000for?i?in?range(10000):#使用隨機正態(tài)分布創(chuàng)建每日收益表daily_returns=?np.random.normal((1+mu)**(1/T),vol/sqrt(T),T)#設定起始價格,并創(chuàng)建由上述隨機每日收益生成的價格序列#將每次模擬運行的結(jié)束值添加到我們在開始時創(chuàng)建的空列表中result.append(price_list[-1])

由于這些是對每日收益的隨機模擬,因此此處的結(jié)果會略有不同。由于每個模擬中包含的路徑,平均值趨向于“ mu”使用的平均收益。下面的直方圖顯示了價格分布的兩個分位數(shù),以了解高收益率或低收益率的可能性。

很顯然,原油價格有5%的機會最終跌破29.72元,有5%的機會高于101.75美元。

概括

在原油價格高波動的背景下,我研究并提出了混合時變長記憶?GARCH?和基于模擬的預測模型,該模型考慮了諸如非對稱性和異方差,時變風險,長記憶和重尾分布等波動事實。經(jīng)驗證據(jù)表明,具有布朗運動的原油數(shù)據(jù)往往在其時間動態(tài)方面顯示出一定程度的可預測性。這項研究考慮了2000年至2019年的數(shù)據(jù),當時股市經(jīng)歷了幾次金融危機和危機后階段。使用此時期的數(shù)據(jù)訓練的模型有望具有出色的預測能力。

當處理長時間波動的原油價格的時間序列數(shù)據(jù)時,GARCH?(2,2)模型估計了方差的持久性?。??進行了蒙特卡洛分析,以檢查結(jié)果的穩(wěn)健性。蒙特卡洛?模擬的輸出?表明,即使在控制了無關(guān)因素之后,結(jié)果仍然是可靠的。因此,這些發(fā)現(xiàn)提供了出色的混合?EGARCH?和?蒙特卡洛?模擬的的預測模型,其中考慮了波動性特征,如波動性聚類和不對稱性,時變風險和重尾分布,來衡量原油價格。

本文摘選?《?Python使用GARCH,EGARCH,GJR-GARCH模型和蒙特卡洛模擬進行股價預測?》?,點擊“閱讀原文”獲取全文完整資料。

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

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


Python使用GARCH,EGARCH,GJR-GARCH模型和蒙特卡洛模擬進行股價預測|附代碼數(shù)據(jù)的評論 (共 條)

分享到微博請遵守國家法律
井陉县| 疏勒县| 垫江县| 清水县| 河北区| 昌图县| 江永县| 汉寿县| 西乌珠穆沁旗| 阳山县| 彰武县| 贵溪市| 东丰县| 静乐县| 宁海县| 靖安县| 许昌市| 石门县| 阳春市| 遂宁市| 武隆县| 乌苏市| 哈巴河县| 屯留县| 临猗县| 泰来县| 沽源县| 通榆县| 平顺县| 东港市| 康保县| 保德县| 兴和县| 图木舒克市| 常山县| 湘西| 红河县| 竹溪县| 界首市| 香港| 康保县|