拓端tecdat|Matlab正態分布、歷史模擬法、加權移動平均線 EWMA估計風險價值VaR和回測Backtest標准普爾指數 S&P500時間序列


原文鏈接:http://tecdat.cn/?p=24480 

原文出處:拓端數據部落公眾號

此示例說明如何使用三種方法估計風險價值 (VaR) 並執行 VaR 回測分析。這三種方法是:

  1. 正態分布

  2. 歷史模擬

  3. 指數加權移動平均線 (EWMA)

風險價值是一種量化與投資組合相關的風險水平的統計方法。VaR 衡量指定時間范圍內和給定置信水平的最大損失量。

回測衡量 VaR 計算的准確性。使用 VaR 方法,計算損失預測,然后與第二天結束時的實際損失進行比較。預測損失和實際損失之間的差異程度表明 VaR 模型是低估還是高估了風險。因此,回測回顧數據並有助於評估 VaR 模型。

本示例中使用的三種估計方法在 95% 和 99% 的置信水平下估計 VaR。

加載數據並定義測試窗口

加載數據。本例中使用的數據來自標准普爾指數從 1993 年到 2003 年的時間序列收益率。

tik2rt(sp);

將估計窗口定義為 250 個交易日。測試窗口從 1996 年的第一天開始,一直持續到樣本結束。

  1.  
     
  2.  
    WinSze = 250;

對於 95% 和 99% 的 VaR 置信水平。

p = [0.05 0.01];

這些值意味着分別有至多 5% 和 1% 的概率發生的損失將大於最大閾值(即大於 VaR)。

使用正態分布方法計算 VaR

對於正態分布法,假設投資組合的損益呈正態分布。使用此假設,通過將每個置信水平的z分數乘以收益率的標准差來計算 VaR  。由於 VaR 回溯測試對數據進行追溯,因此“今天”的 VaR 是根據過去N  = 250 天(但不包括“今天”)的收益率值計算得出的 。

  1.  
     
  2.  
    for t = TtWnow
  3.  
    i = t - TsWidoSrt + 1;
  4.  
    Esationdw = t-EtiWinwSze:t-1;
  5.  
    gma = std(Returns(tmWinow));
  6.  
    Noa95(i) = -Zscre(1)*Sima;
  7.  
    Nrml99(i) = -Zsore(2)*Sigma;
  8.  
    end
  9.  
     
  10.  
     
  11.  
    plot(DaeRtuns(TsWidw),[Nrm95 oma99])

正態分布方法也稱為參數 VaR,因為它的估計涉及計算收益率標准差的參數。正態分布方法的優點是簡單。然而,正態分布方法的弱點是假設收益率是正態分布的。正態分布方法的另一個名稱是方差-協方差方法。

使用歷史模擬方法計算 VaR

與正態分布方法不同,歷史模擬 (HS) 是一種非參數方法。它不假設資產收益的特定分布。歷史模擬通過假設過去的損益可以作為下一個收益期的損益分配來預測風險。“今天”的 VaR 計算為“今天” 之前 最后N 次收益率的 第 p個分位數 。

  1.  
     
  2.  
    for t = Tstidow
  3.  
    i = t - Tsidwtt + 1;
  4.  
    Htrl95(i) = -qate(X,pVR(1));
  5.  
    Hii99(i) = -qatie(X,pVaR(2));
  6.  
     
  7.  
     
  8.  
    fiure;
  9.  
    plot(Dtr(Ttow),[Hic95 Hstrl99])

從上圖可以看出,歷史模擬曲線具有分段不變的輪廓。其原因是,在極端事件發生之前,量值在幾天內不會發生變化。因此,歷史模擬方法對波動率的變化反應緩慢。

使用指數加權移動平均法 (EWMA) 計算 VaR

前兩個 VaR 方法假設所有過去的收益率都具有相同的權重。指數加權移動平均 (EWMA) 方法分配不相等的權重,尤其是指數遞減的權重。最近的收益率具有更高的權重,因為它們對“今天”收益率的影響比過去更遠的收益率更大。大小估計窗口上的 EWMA 方差公式 $ W_E $ 是:

$$\hat{\sigma}^2_t=\frac{1}{c}\sum_{i=1}^{W_E}\lambda^{i-1} y^2_{ti}$$

 $c$ 是歸一化常數:

$$c=\sum_{i=1}^{W_E}\lambda^{i-1} = \frac{1-\lambda^{W_E}}{1-\lambda}\quad\rightarrow \frac{1 }{1-\lambda} ~ as ~ W_E\rightarrow\infty$$

為方便起見,我們假設一個無限大的估計窗口來近似方差:

$$\hat{\sigma}^2_t\approx(1-\lambda)(y^2_{t-1}+\sum^{\infty}_{i=2}\lambda^{i-1}y ^2_{ti})=(1-\lambda)y^2_{t-1}+\lambda\hat{\sigma}^2_{t-1}$$

實踐中經常使用的衰減因子的值為0.94。這是本示例中使用的值。

啟動 EWMA 設置標准偏差。

  1.  
    Laa = 0.94;
  2.  
     
  3.  
    for i = 2 : (Tsart-1)
  4.  
    Sm2(i) = (1-Labda) * Rts(i-1)^2 + Lama * m2(i-1);
  5.  
     

在測試窗口中使用 EWMA 來估計 VaR。

  1.  
     
  2.  
    for t = TeWio
  3.  
     
  4.  
    EWMA95 (k) = -Zscre(1)*Sima;
  5.  
    EWMA99(k) = -Zsoe(2)*Siga;
  6.  
    end
  7.  
     
  8.  
    plot(DR,[EWMA95 EWMA99])

在上圖中,EWMA 對大(或小)收益率時期的反應非常迅速。

VaR回測

在本示例的第一部分中,使用三種不同的方法和兩種不同的 VaR 置信水平在測試窗口上估計了 VaR。VaR 回測的目標是評估 VaR 模型的性能。95% 置信度的 VaR 估計值僅在大約 5% 的時間內被違反。VaR 失敗的集群表明缺乏跨時間的獨立性,因為 VaR 模型對不斷變化的市場條件反應緩慢。

VaR 回測分析中常見的第一步是將收益率和 VaR 估計值繪制在一起。在 95% 的置信水平上繪制所有三種方法,並將它們與收益率進行比較。

  1.  
    Rtnet = Rrns(Tstnow);
  2.  
    DesTst = Das(TsWnow);
  3.  
    fige;
  4.  
    plot

為了突出不同的方法如何對不斷變化的市場條件做出不同的反應,您可以放大收益率值發生巨大和突然變化的時間序列。例如,大約在 1998 年 8 月:

  1.  
    Zm = (Da >= da(1998,8,5)) & (D <= da(1998,10,31);
  2.  
     
  3.  
     
  4.  
    br(D,);
  5.  
     
  6.  
    for i = 1 : sze(Vata,2)
  7.  
    sts(D-0.5,VaRData(:,i),VaFt{i});
  8.  
     
  9.  
    plot(D(IN95),-N(nN95)

當收益為負 VaR 時,就會發生 VaR 失敗。仔細觀察 8 月 27 日至 8 月 31 日,會發現收益率顯着下降。從 8 月 27 日起,EWMA 更密切、更准確地跟蹤收益率趨勢。因此,與正態分布方法(7次失敗,藍色)或歷史模擬方法(8次失敗,紅色)相比,EWMA 的 VaR 失敗(2)次失敗,紫色)較少。

除了可視化工具,您還可以使用統計測試進行 VaR 回測。在此示例中,首先比較正態分布方法在 95% 和 99% VaR 水平下的不同測試結果。

  1.  
    bctet(etet,[Nrml95 Noml99]);
  2.  
    summary

摘要報告顯示觀察到的水平與定義的 VaR 水平足夠接近。95% 和 99% VaR 水平至多具有期望失敗,其中 N 是觀察次數。失敗率表明  VaR 水平在范圍內,而  VaR 水平不精確並且低估了風險。運行所有支持的測試 (1-VaR_level) x N

test(vt)

95%的VaR通過了測試,如二項式和失敗比例測試(TL、BIN和POF列)。99%的VaR沒有通過這些相同的測試,如拒絕結果所示。在條件覆蓋率獨立性和間隔時間獨立性(ci和tbfi列)中,兩個置信度都被拒絕。這個結果表明,VaR的違反不是獨立的,可能在短時間內有多次失敗的時期。另外,一次失敗可能會使其他失敗在隨后的日子里更有可能發生。

在兩個 VaR 置信水平下對三種方法的投資組合運行相同的測試。

 rbackest

結果和之前的結果差不多,在95%的水平上,結果基本可以接受。然而,在 99% 水平的結果通常是拒絕。關於獨立性,大多數測試通過了條件覆蓋獨立性測試,連續幾天測試獨立性。請注意,所有測試都失敗了獨立性測試之間的時間間隔,它考慮了所有失敗之間的時間。這個結果表明所有方法都存在獨立性假設的問題。

為了更好地了解這些結果如何在市場條件下發生變化,請查看 2000 年和 2002 年的 95% VaR 置信水平。

n00 = yar(aet) == 2000);

  1.  
    I22 = (ea) == 2002);
  2.  
    v202 = rbks(RtrTt(n202

2000年,這三種方法都通過了所有的測試。但是,2002 年的測試結果大多是所有方法都被拒絕。EWMA 方法似乎在 2002 年表現更好,但所有方法都未能通過獨立性測試。

要更深入地了解獨立性測試,請查看條件覆蓋獨立性和失敗間隔時間獨立性2002 年的測試詳細信息。運行各個測試功能。

cci

在 CCI 測試中,知道在時間t -1沒有失敗的情況下,  在時間t發生失敗 的概率 p 由下式給出01

$$ p_{01} = \frac{N_{01}}{N_{01}+N_{00}}$$

 在時間t發生失敗 的概率 p ,知道在時間t -1發生失敗, 由下式給出11

$$ p_{11} = \frac{N_{11}}{N_{11}+N_{10}}$$

從 測試結果中的N00N10,  N01N11列來看 ,  三種方法的p 值 01都在 5% 左右,而p 值 11 都在 20% 以上。因為有證據表明一個失敗之后出現另一個失敗的頻率遠高於 5%,所以這個 CCI 測試失敗了。

在失敗間隔時間獨立性測試中,查看失敗間隔時間分布的最小值、最大值和四分位數,在TBFMin、  TBFQ1、  TBFQ2、  TBFQ3、 列中 TBFMax

tbfi

對於 95% 的 VaR 水平,您預計失敗之間的平均時間為 20 天,或每 20 天發生一次失敗。但是,對於這三種方法,2002 年的失敗間隔時間的中位數介於 5 到 7.5 之間。該結果表明,在一半的情況下,連續兩次失敗發生在 5 到 7 天內,比期望的 20 天要頻繁得多。因此,會發生更多的測試失敗。對於正態方法,第一個四分位數是 1,這意味着 25% 的失敗發生在連續幾天。

參考

Danielsson, J. 金融風險預測:預測市場風險的理論和實踐。威利財經,2012 年。


最受歡迎的見解

1.R語言基於ARMA-GARCH-VaR模型擬合和預測實證研究

2.R語言時變參數VAR隨機模型

3.R語言估計時變VAR模型時間序列的實證研究

4.R語言基於ARMA-GARCH過程的VAR擬合和預測

5.GARCH(1,1),MA以及歷史模擬法的VaR比較

6.R語言用向量自回歸(VAR)進行經濟數據脈沖響應

7.R語言實現向量自動回歸VAR模型

8.R語言隨機搜索變量選擇SSVS估計貝葉斯向量自回歸(BVAR)模型

9.R語言VAR模型的不同類型的脈沖響應分析


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM