拓端tecdat|R語言多變量廣義正交GARCH(GO-GARCH)模型對股市高維波動率時間序列擬合
原文鏈接:http://tecdat.cn/?p=25687
原文出處:拓端數(shù)據(jù)部落公眾號
在多變量波動率預(yù)測中,我們有時會看到對少數(shù)主成分驅(qū)動的協(xié)方差矩陣建模,而不是完整的股票。使用這種因子波動率模型的優(yōu)勢是很多的。
首先,你不需要對每個股票單獨建模,你可以處理流動性相當(dāng)弱的股票。第二,因子波動率模型在計算成本低。第三,與指數(shù)加權(quán)模型相比,持久性參數(shù)(通常表示為

)不必在所有股票上都是一樣的。你可以為每個因子指定一個不同的過程,這樣協(xié)方差矩陣過程就會有更豐富的動態(tài)變化。?
但這里沒有免費的午餐,代價是信息的損失。它是將協(xié)方差矩陣中的信息濃縮為少數(shù)幾個因子的代價。這意味著因子波動率模型最適合于實際顯示因子結(jié)構(gòu)的數(shù)據(jù)。因子波動率模型并不是具有弱的截面依賴性的數(shù)據(jù)的最佳選擇。在因子化的過程中會丟失太多的信息。
?
這篇文章,我們讓主成分遵循 GARCH 過程。代數(shù)相當(dāng)簡單。
(1)?

(2)?


?是一個對角矩陣,維數(shù)為選定的因子數(shù)。將此矩陣設(shè)置為對角線意味著主成分之間的協(xié)方差為零(所有非對角線元素都為零)。因此它們是正交的。當(dāng)然,通過構(gòu)造,主成分只是無條件正交的,但我們添加了約束\假設(shè)它們在每個時間點也是正交的。這確保?

?是一個有效的協(xié)方差矩陣。

的對角線?填充了因子的方差。這里我們使用閾值-GARCH 模型。
讓我們實踐。我們使用股票數(shù)據(jù)。前兩個追蹤短期和長期的債券收益,后兩個追蹤股票指數(shù)。每日收益矩陣?ret。
下面的代碼分為兩部分。首先,我們基于單個因子的閾值 GARCH 模型構(gòu)建了我們自己的雙因子正交 GARCH 模型。有幾種不同的方法來估計參數(shù)(非線性最小二乘法、最大似然法和矩量法)。
#--------------
# 第一部分,自己的雙因子正交 GARCH 模型
#--------------------
library(rugarch) # 單變量GARCH模型
# 我使用1000個觀察的初始窗口,每增加一個時間點就重新估計模型的參數(shù)
wd <- 1000 #初始窗口
k <- 2 #因素的數(shù)量
Uvofit <- matrix # 用一個矩陣來保存三種資產(chǎn)的波動率
for(i in wd:T){
pc1 <- promp # 主成分分解
for (j in 1:k){ # 對于每個因素,這里有相同的Garch過程(但可以是不同的)。
gjel = ugarchfit
}
# 不使用內(nèi)置的 prcomp 函數(shù)獲得 w。
w <- matrix(eivales, nrow = l, ncol = k, byrow = F) * (eigos)
# 存儲每個時間點上的協(xié)方差矩陣。
for(i in 1:TT){
# 這是Gamma D_t gamma'。
otch[i,,] <- w %*% as.matrix) %*% t(w)
}
# 第二部分。使用廣義正交GARCH(GO-GARCH)模型
#--------------
garchestby = "mm"
summary
# 讓我們從這個模型中獲得協(xié)方差
mH <- array
for(i in 1:TT){
yH[i,,] <- faf@H[[i]] 。
}
# 繪制這兩張圖。因為我們用1000作為初始窗口,所以只畫最近的觀察值
# 改變k來表示最近的觀測值。
k <- TT - wd
teme <- tail(time,k) # 定義時間
# 用來繪制相關(guān)圖的函數(shù)
plot(teime
abline
lines(tetime
# 讓我們來看看所產(chǎn)生的相關(guān)關(guān)系。


?
我們看到的是對應(yīng)于 6 個相關(guān)序列(SPY 與 TLT、SPY 與 QQQ 等)。我們自己的估計模型和使用包構(gòu)建的模型之間幾乎沒有區(qū)別。但我們自己的只使用了 2 個因子,一個差分 GARCH 模型,估計的是窗口而不是整個樣本,以及不同的估計方法。我懷疑真實的相關(guān)性是否像底部面板中估計的那樣穩(wěn)定。
* 我們在這里混合了代數(shù)、概率和幾何的術(shù)語。正交是一個來自幾何學(xué)的術(shù)語,它是指兩個向量之間的角度。如果它們是垂直的,就被稱為正交。?代數(shù)上,如果它們的內(nèi)積會發(fā)生這種情況?

?為零。在概率上,回到協(xié)方差矩陣,COV(x,y)=E(XY)-E(X)E(Y),但因為因子的平均值為零。COV(x,y)=E(XY)。所以E(XY)=0意味著因子是正交的。本質(zhì)上,正交性意味著線性獨立。?
?

最受歡迎的見解
1.R語言對S&P500股票指數(shù)進行ARIMA + GARCH交易策略
2.R語言改進的股票配對交易策略分析SPY—TLT組合和中國股市投資組合
3.R語言時間序列:ARIMA GARCH模型的交易策略在外匯市場預(yù)測應(yīng)用
4.TMA三均線期指高頻交易策略的R語言實現(xiàn)
5.r語言多均線量化策略回測比較
6.用R語言實現(xiàn)神經(jīng)網(wǎng)絡(luò)預(yù)測股票實例
7.r語言預(yù)測波動率的實現(xiàn):ARCH模型與HAR-RV模型
8.R語言如何做馬爾科夫轉(zhuǎn)換模型markov switching model
9.matlab使用Copula仿真優(yōu)化市場風(fēng)險