Matlab正態(tài)分布、歷史模擬法、加權(quán)移動平均線 EWMA估計風(fēng)險價值VaR和回測標(biāo)準(zhǔn)普爾指數(shù)
原文鏈接:http://tecdat.cn/?p=24480?
最近我們被客戶要求撰寫關(guān)于風(fēng)險價值的研究報告,包括一些圖形和統(tǒng)計輸出。
此示例說明如何使用三種方法估計風(fēng)險價值 (VaR) 并執(zhí)行 VaR 回測分析。這三種方法是:
正態(tài)分布
歷史模擬
指數(shù)加權(quán)移動平均線 (EWMA)
風(fēng)險價值是一種量化與投資組合相關(guān)的風(fēng)險水平的統(tǒng)計方法。VaR 衡量指定時間范圍內(nèi)和給定置信水平的最大損失量。
回測衡量 VaR 計算的準(zhǔn)確性。使用 VaR 方法,計算損失預(yù)測,然后與第二天結(jié)束時的實際損失進行比較。預(yù)測損失和實際損失之間的差異程度表明 VaR 模型是低估還是高估了風(fēng)險。因此,回測回顧數(shù)據(jù)并有助于評估 VaR 模型。
本示例中使用的三種估計方法在 95% 和 99% 的置信水平下估計 VaR。
加載數(shù)據(jù)并定義測試窗口
加載數(shù)據(jù)。本例中使用的數(shù)據(jù)來自標(biāo)準(zhǔn)普爾指數(shù)從 1993 年到 2003 年的時間序列收益率。
tik2rt(sp);
將估計窗口定義為 250 個交易日。測試窗口從 1996 年的第一天開始,一直持續(xù)到樣本結(jié)束。
WinSze?=?250;
對于 95% 和 99% 的 VaR 置信水平。
p?=?[0.05?0.01];
這些值意味著分別有至多 5% 和 1% 的概率發(fā)生的損失將大于最大閾值(即大于 VaR)。
使用正態(tài)分布方法計算 VaR
對于正態(tài)分布法,假設(shè)投資組合的損益呈正態(tài)分布。使用此假設(shè),通過將每個置信水平的_z_分?jǐn)?shù)乘以收益率的標(biāo)準(zhǔn)差來計算 VaR ?。由于 VaR 回溯測試對數(shù)據(jù)進行追溯,因此“今天”的 VaR 是根據(jù)過去_N_ ?= 250 天(但不包括“今天”)的收益率值計算得出的?。
for?t?=?TtWnow????i?=?t?-?TsWidoSrt?+?1;????Esationdw?=?t-EtiWinwSze:t-1;????gma?=?std(Returns(tmWinow));????Noa95(i)?=?-Zscre(1)*Sima;????Nrml99(i)?=?-Zsore(2)*Sigma;endplot(DaeRtuns(TsWidw),[Nrm95?oma99])
正態(tài)分布方法也稱為參數(shù) VaR,因為它的估計涉及計算收益率標(biāo)準(zhǔn)差的參數(shù)。正態(tài)分布方法的優(yōu)點是簡單。然而,正態(tài)分布方法的弱點是假設(shè)收益率是正態(tài)分布的。正態(tài)分布方法的另一個名稱是方差-協(xié)方差方法。
使用歷史模擬方法計算 VaR
與正態(tài)分布方法不同,歷史模擬 (HS) 是一種非參數(shù)方法。它不假設(shè)資產(chǎn)收益的特定分布。歷史模擬通過假設(shè)過去的損益可以作為下一個收益期的損益分配來預(yù)測風(fēng)險。“今天”的 VaR 計算為“今天”?之前?最后_N 次_收益率的?_第 p_個分位數(shù)?。
for?t?=?Tstidow????i?=?t?-?Tsidwtt?+?1;????Htrl95(i)?=?-qate(X,pVR(1));????Hii99(i)?=?-qatie(X,pVaR(2));fiure;plot(Dtr(Ttow),[Hic95?Hstrl99])
從上圖可以看出,歷史模擬曲線具有分段不變的輪廓。其原因是,在極端事件發(fā)生之前,量值在幾天內(nèi)不會發(fā)生變化。因此,歷史模擬方法對波動率的變化反應(yīng)緩慢。
點擊標(biāo)題查閱往期內(nèi)容
Python蒙特卡羅(Monte Carlo)模擬計算投資組合的風(fēng)險價值(VaR)
左右滑動查看更多
01
02
03
04
使用指數(shù)加權(quán)移動平均法 (EWMA) 計算 VaR
前兩個 VaR 方法假設(shè)所有過去的收益率都具有相同的權(quán)重。指數(shù)加權(quán)移動平均 (EWMA) 方法分配不相等的權(quán)重,尤其是指數(shù)遞減的權(quán)重。最近的收益率具有更高的權(quán)重,因為它們對“今天”收益率的影響比過去更遠的收益率更大。大小估計窗口上的 EWMA 方差公式?
?是:
?是歸一化常數(shù):
為方便起見,我們假設(shè)一個無限大的估計窗口來近似方差:
實踐中經(jīng)常使用的衰減因子的值為0.94。這是本示例中使用的值。
啟動 EWMA 設(shè)置標(biāo)準(zhǔn)偏差。
Laa?=?0.94;for?i?=?2?:?(Tsart-1)????Sm2(i)?=?(1-Labda)?*?Rts(i-1)^2?+?Lama?*?m2(i-1);
在測試窗口中使用 EWMA 來估計 VaR。
for?t?=?TeWio????EWMA95?(k)?=?-Zscre(1)*Sima;????EWMA99(k)?=?-Zsoe(2)*Siga;endplot(DR,[EWMA95?EWMA99])
在上圖中,EWMA 對大(或小)收益率時期的反應(yīng)非常迅速。
VaR回測
在本示例的第一部分中,使用三種不同的方法和兩種不同的 VaR 置信水平在測試窗口上估計了 VaR。VaR 回測的目標(biāo)是評估 VaR 模型的性能。95% 置信度的 VaR 估計值僅在大約 5% 的時間內(nèi)被違反。VaR 失敗的集群表明缺乏跨時間的獨立性,因為 VaR 模型對不斷變化的市場條件反應(yīng)緩慢。
VaR 回測分析中常見的第一步是將收益率和 VaR 估計值繪制在一起。在 95% 的置信水平上繪制所有三種方法,并將它們與收益率進行比較。
Rtnet?=?Rrns(Tstnow);DesTst???=?Das(TsWnow);fige;plot
為了突出不同的方法如何對不斷變化的市場條件做出不同的反應(yīng),您可以放大收益率值發(fā)生巨大和突然變化的時間序列。例如,大約在 1998 年 8 月:
Zm???=?(Da?>=?da(1998,8,5))?&?(D?<=?da(1998,10,31);br(D,);for?i?=?1?:?sze(Vata,2)????sts(D-0.5,VaRData(:,i),VaFt{i});plot(D(IN95),-N(nN95)
當(dāng)收益為負(fù) VaR 時,就會發(fā)生 VaR 失敗。仔細(xì)觀察 8 月 27 日至 8 月 31 日,會發(fā)現(xiàn)收益率顯著下降。從 8 月 27 日起,EWMA 更密切、更準(zhǔn)確地跟蹤收益率趨勢。因此,與正態(tài)分布方法(7次失敗,藍色)或歷史模擬方法(8次失敗,紅色)相比,EWMA 的 VaR 失敗(2)次失敗,紫色)較少。
除了可視化工具,您還可以使用統(tǒng)計測試進行 VaR 回測。在此示例中,首先比較正態(tài)分布方法在 95% 和 99% VaR 水平下的不同測試結(jié)果。
bctet(etet,[Nrml95?Noml99]);summary
摘要報告顯示觀察到的水平與定義的 VaR 水平足夠接近。95% 和 99% VaR 水平至多具有期望失敗,其中?N?是觀察次數(shù)。失敗率表明? VaR 水平在范圍內(nèi),而? VaR 水平不精確并且低估了風(fēng)險。運行所有支持的測試?(1-VaR_level) x?_N_
test(vt)
95%的VaR通過了測試,如二項式和失敗比例測試(TL、BIN和POF列)。99%的VaR沒有通過這些相同的測試,如拒絕結(jié)果所示。在條件覆蓋率獨立性和間隔時間獨立性(ci和tbfi列)中,兩個置信度都被拒絕。這個結(jié)果表明,VaR的違反不是獨立的,可能在短時間內(nèi)有多次失敗的時期。另外,一次失敗可能會使其他失敗在隨后的日子里更有可能發(fā)生。
在兩個 VaR 置信水平下對三種方法的投資組合運行相同的測試。
?rbackest
結(jié)果和之前的結(jié)果差不多,在95%的水平上,結(jié)果基本可以接受。然而,在 99% 水平的結(jié)果通常是拒絕。關(guān)于獨立性,大多數(shù)測試通過了條件覆蓋獨立性測試,連續(xù)幾天測試獨立性。請注意,所有測試都失敗了獨立性測試之間的時間間隔,它考慮了所有失敗之間的時間。這個結(jié)果表明所有方法都存在獨立性假設(shè)的問題。
為了更好地了解這些結(jié)果如何在市場條件下發(fā)生變化,請查看 2000 年和 2002 年的 95% VaR 置信水平。
n00?=?yar(aet)?==?2000);
I22?=?(ea)?==?2002);v202?=?rbks(RtrTt(n202
2000年,這三種方法都通過了所有的測試。但是,2002 年的測試結(jié)果大多是所有方法都被拒絕。EWMA 方法似乎在 2002 年表現(xiàn)更好,但所有方法都未能通過獨立性測試。
要更深入地了解獨立性測試,請查看條件覆蓋獨立性和失敗間隔時間獨立性2002 年的測試詳細(xì)信息。運行各個測試功能。
cci
在 CCI 測試中,知道在時間_t_ -1沒有失敗的情況下,??在時間_t_發(fā)生失敗?的概率?p?由下式給出01
在時間_t_發(fā)生失敗?的概率?p?,知道在時間_t_ -1發(fā)生失敗,?由下式給出11
從?測試結(jié)果中的N00
,?N10
,??N01
,?N11
列來看?,??三種方法的_p_?值?01
都在 5% 左右,而_p_?值?11
?都在 20% 以上。因為有證據(jù)表明一個失敗之后出現(xiàn)另一個失敗的頻率遠高于 5%,所以這個 CCI 測試失敗了。
在失敗間隔時間獨立性測試中,查看失敗間隔時間分布的最小值、最大值和四分位數(shù),在TBFMin
、??TBFQ1
、??TBFQ2
、??TBFQ3
、?列中?TBFMax
。
tbfi
對于 95% 的 VaR 水平,您預(yù)計失敗之間的平均時間為 20 天,或每 20 天發(fā)生一次失敗。但是,對于這三種方法,2002 年的失敗間隔時間的中位數(shù)介于 5 到 7.5 之間。該結(jié)果表明,在一半的情況下,連續(xù)兩次失敗發(fā)生在 5 到 7 天內(nèi),比期望的 20 天要頻繁得多。因此,會發(fā)生更多的測試失敗。對于正態(tài)方法,第一個四分位數(shù)是 1,這意味著 25% 的失敗發(fā)生在連續(xù)幾天。
參考
Danielsson, J.?金融風(fēng)險預(yù)測:預(yù)測市場風(fēng)險的理論和實踐。威利財經(jīng),2012 年。
點擊文末?“閱讀原文”
獲取全文完整代碼數(shù)據(jù)資料。
本文選自《Matlab正態(tài)分布、歷史模擬法、加權(quán)移動平均線 EWMA估計風(fēng)險價值VaR和回測標(biāo)準(zhǔn)普爾指數(shù) S&P500時間序列》。
點擊標(biāo)題查閱往期內(nèi)容
R語言極值理論 EVT、POT超閾值、GARCH 模型分析股票指數(shù)VaR、條件CVaR:多元化投資組合預(yù)測風(fēng)險測度分析
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分析
R語言極值推斷:廣義帕累托分布GPD使用極大似然估計、輪廓似然估計、Delta法
R語言極值理論EVT:基于GPD模型的火災(zāi)損失分布分析
R語言有極值(EVT)依賴結(jié)構(gòu)的馬爾可夫鏈(MC)對洪水極值分析
R語言POT超閾值模型和極值理論EVT分析
R語言混合正態(tài)分布極大似然估計和EM算法
R語言多項式線性模型:最大似然估計二次曲線
R語言Wald檢驗 vs 似然比檢驗
R語言GARCH-DCC模型和DCC(MVT)建模估計
R語言非參數(shù)方法:使用核回歸平滑估計和K-NN(K近鄰算法)分類預(yù)測心臟病數(shù)據(jù)
matlab實現(xiàn)MCMC的馬爾可夫轉(zhuǎn)換ARMA - GARCH模型估計
R語言基于Bootstrap的線性回歸預(yù)測置信區(qū)間估計方法
R語言隨機搜索變量選擇SSVS估計貝葉斯向量自回歸(BVAR)模型
Matlab馬爾可夫鏈蒙特卡羅法(MCMC)估計隨機波動率(SV,Stochastic Volatility) 模型
Matlab馬爾可夫區(qū)制轉(zhuǎn)換動態(tài)回歸模型估計GDP增長率R語言極值推斷:廣義帕累托分布GPD使用極大似然估計、輪廓似然估計、Delta法