Copula估計邊緣分布模擬收益率計算投資組合風險價值VaR與期望損失|附代碼數據

2023-08-18     tecdat拓端

原標題:Copula估計邊緣分布模擬收益率計算投資組合風險價值VaR與期望損失|附代碼數據

全文連結:http://tecdat.cn/?p=24753

最近我們被客戶要求撰寫關於風險價值的研究報告,包括一些圖形和統計輸出。

在這項工作中,我通過創建一個包含四隻基金的模型來探索 copula,這些基金跟蹤股票、債券、美元和商品的市場指數

摘要

然後,我使用該模型生成模擬值,並使用實際收益和模擬收益來測試模型投資組合的性能,以計算風險價值(VaR)與期望損失(ES)。

一、介紹與概述

Copulas 對多元分布中變量之間的相關性進行建模。它們允許將多變量依賴關係與單變量邊緣分布相結合,允許我們對構成多變量數據的每個變量使用許多單變量模型。Copulas 在 2000 年代開始流行。根據 Salmon (2009) 的說法,Li (2000) 最近提出的Copulas應用之一是 2008 年開始的金融危機。我們將使用 copulas 來模擬四個 ETF 基金的行為:IVV,跟蹤標準普爾 500 指數;TLT,跟蹤長期國債;UUP,追蹤外匯指數;以及商品的 DBC

二、理論背景

copula 是一個多變量 CDF,其邊緣分布都是 Uniform (0,1)。假設 Y 有 d 維,並且有一個多元 和邊緣 。很容易證明,每個 都是 Uniform(0,1)。因此, 的 CDF 根據定義是一個 copula。使用 Sklar (1973) 的定理,然後我們可以將我們的隨機變量 Y 分解為一個 copula CY ,它包含關於我們的變量 Y 之間相互依賴的信息,以及單變量邊緣 CDFs FY ,它包含關於每個變量的所有信息單變量邊緣分布。對於 d 維,我們有:

並使每個,我們有:

如果我們對等式(2)進行微分,我們會發現 Y 的密度為:

方程 (3) 中的結果允許我們創建多變量模型,這些模型考慮了變量的相互依賴性(方程的第一部分)和每個變量的分布(方程的第二部分)。我們可以使用 copula 和邊緣部分的參數版本來創建可用於運行測試和執行預測的模型。在接下來的幾節中,我們將使用用於統計計算的 R 語言將高斯和 t-copula 擬合到介紹中描述的 ETF 的對數收益率。有了 copula 和邊緣,我們將使用模型來確定投資的風險價值 (VaR) 和預期損失 (ES)。

點擊標題查閱往期內容

R語言多元Copula GARCH 模型時間序列預測

左右滑動查看更多

01

02

03

04

三、算法實現與開發

像往常一樣,我們從讀取文件開始。圖 1 顯示了價格圖:注意 IVV 和 DBC(股票和商品)之間的關係以及 TLT 和 UUP(元和國債)之間的關係。

# 將 ETF 讀入

read.zoo("F.csv")

# 獲取最近501天

tf[(T-500):T,]

# 繪製價格

pdf("價格.pdf")

在這種情況下,我們計算對數收益率。圖 2 顯示了收益圖。

# 計算對數收益

le <- lag(e,-1

log(ef) - log(lef) ) * 100

然後我們做一個配對圖來確定結果是否相關,例如,正如期望的那樣,IVV 和 DBC 之間存在非常高的相關性。圖 3 顯示了配對圖。然後我們獲得邊距的參數,擬合每個變量的分布。結果見表一

# 擬合分布

fitdr

## 得到結果矩陣

# 將 AIC 函數應用於第一項(值)

# params 列表的第四項 (loglik)

AIC(saply (saply(prms, 4))

# params 列表的第一項(估計)

sapply (sapply(pams,3))

圖 4 顯示了擬合分布與來自變量的真實數據進行比較的圖。現在我們有了邊緣分布,我們需要找到模型的 copula。我們首先使用機率變換並獲得 中的每一個,我們知道它們是 Uniform(0,1)。這是通過以下代碼完成的:

# 現在我們需要均勻分布

IV <- pct(IVV, a)

rt <- cbind(uV uL, UP, DC)

圖 5 顯示了均勻分布之間的相關性。通過均勻分布,我們可以看到哪種類型的參數 copula 最適合。我們將擬合高斯 copula 和 t-copula,記錄它們的 AIC 並查看哪一個提供了最佳擬合。

圖 5:均勻分布之間的相關性

# 擬合高斯 copula

fit.gaussian <- fitCopula (ncp))

# 記錄擬合的AIC

fit.aic = AIC(filik,

############################################### ############

# 現在是 t-copula

fitCopula (tcop, url00))

# 記錄擬合的AIC

AIC(fiik

length(fite)

比較兩種擬合,如表 II 所示,我們發現 t-copula 擬合最好,因此我們將根據 t-copula 的參數創建一個模型。然後,我們使用該模型生成 10,000 個觀察結果,模擬我們模型的可能結果。我們的模擬模型與擬合模型之間的圖形比較可以在圖 6 中看到 - 模擬非常接近擬合模型。

tCopula(parun")

cop.dist <- mvdc(copt,

parast1)

rmvdc(co00)

現在我們有了模擬的觀察結果,我們將使用參數方法計算風險價值 (VaR) 和預期損失 (ES)。我們將假設一個投資組合(任意選擇)在 IVV 中投資 30%,在 TLT 中投資 15%,在 UUP 中投資 35%,在 DBC 中投資 20%。為了計算投資組合 w 的收益率 Rp,我們簡單地使用矩陣代數將我們的模擬收益率 Rs 乘以權重,如 Rp = Rs × w。然後我們將 t 分布擬合到 Rp 並使用它來估計 VaR 和 ES。對於 t 分布,VaR 和 ES 的公式為:

其中:

• S:倉位大小

• F -1 ν:逆 CDF 函數

• fν:密度函數 • µ:平均值

• λ:形狀/尺度參數

• ν:自由度

• α:置信水平

R中公式的應用實現如下。請注意,在代碼中,VaR 和 ES 被四捨五入到最接近的千位。結果在表III中。

# 計算模擬值的 VaR 和 ES

fitdistr(re, "t")

es <- -m+lada*es1*es2

我們的最終任務是計算非參數 ES 和 VaR,由以下公式給出:

其中:

• S:倉位大小

• qˆ(α):樣本收益率的分位數

• Ri:第 i 個樣本收益率

R 實現如下:

# 計算真實值的 VaR 和 ES

ret <- (rf %*% w) / 100

ES <- -S * sum(ret * ir) / sum (iar)

結果示於表III中。

四、計算結果

表 I 顯示了 ETF 邊緣 t 分布的估計參數和 AIC 的結果:

表 I 邊緣分布

兩個 copula 擬合的 AIC 都在表 II 中。

表 II Copula AIC

VaR 和 ES 在表 III 中。

表三 VaR 和 ES

五、總結與結論

這項工作展示了如何估計邊緣和 copula,以及如何應用 copula 來創建一個模型,該模型將考慮變量之間的相互依賴性。它還展示了如何計算風險價值 (VaR) 和期望損失 (ES)。

本文摘選 R語言Copula估計邊緣分布模擬收益率計算投資組合風險價值VaR與期望損失ES ,點擊「閱讀原文」獲取全文完整資料。

點擊標題查閱往期內容

MATLAB用COPULA模型進行蒙特卡洛(MONTE CARLO)模擬和擬合股票收益數據分析

python中的copula:Frank、Clayton和Gumbel copula模型估計與可視化R語言中的copula GARCH模型擬合時間序列並模擬分析

matlab使用Copula仿真優化市場風險數據VaR分析

R語言多元Copula GARCH 模型時間序列預測

R語言Copula函數股市相關性建模:模擬Random Walk(隨機遊走)

R語言實現 Copula 算法建模依賴性案例分析報告

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

R語言基於copula的貝葉斯分層混合模型的診斷準確性研究

R語言COPULA和金融時間序列案例

matlab使用Copula仿真優化市場風險數據VaR分析

matlab使用Copula仿真優化市場風險

R語言多元CopulaGARCH模型時間序列預測

R語言Copula的貝葉斯非參數MCMC估計

R語言COPULAS和金融時間序列R語言乘法GARCH模型對高頻交易數據進行波動性預測

R語言GARCH-DCC模型和DCC(MVT)建模估計

Python使用GARCH,EGARCH,GJR-GARCH模型和蒙特卡洛模擬進行股價預測

R語言時間序列GARCH模型分析股市波動率

R語言ARMA-EGARCH模型、集成預測算法對SPX實際波動率進行預測

matlab實現MCMC的馬爾可夫轉換ARMA - GARCH模型估計

Python使用GARCH,EGARCH,GJR-GARCH模型和蒙特卡洛模擬進行股價預測

使用R語言對S&P500股票指數進行ARIMA + GARCH交易策略

R語言用多元ARMA,GARCH ,EWMA, ETS,隨機波動率SV模型對金融時間序列數據建模

R語言股票市場指數:ARMA-GARCH模型和對數收益率數據探索性分析

R語言多元Copula GARCH 模型時間序列預測

R語言使用多元AR-GARCH模型衡量市場風險

R語言中的時序列分析模型:ARIMA-ARCH / GARCH模型分析股票價格

R語言用Garch模型和回歸模型對股票價格分析

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

matlab估計arma garch 條件均值和方差模型

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

文章來源: https://twgreatdaily.com/zh/4427ef0d04551e063f048754af963bb7.html