1. 程式人生 > >蒙特卡洛模擬計算風險價值VAR之R語言實現

蒙特卡洛模擬計算風險價值VAR之R語言實現

一、解析VAR當在分析方法中計算風險價值(VAR)時,我們需要假設金融工具的返回遵循一定的概率分佈。最常用的是正態分佈,這也是為什麼我們通常稱它為delta normal方法。要計算VAR,我們需要找到一個閾值(T),來確定顯著性(如95%、99%、99.9%)。使用函式F的標準正態累計分佈:將逆累積分佈函式應用到1-α:雖然我們不知道非正態分佈的累積函式和它的逆的數學公式,但我們可以用計算機來解決這個問題。用R來計算蘋果股票的95%,1天的VaR,使用的是delta normal方法,基於兩年的資料集。據估計,蘋果收益率的平均值和標準差分別為0.13%和1.36%。程式碼如下:Apple <- read.table("Apple.csv", header = T, sep = ";")
r <- log(head(Apple$Price,-1)/tail(Apple$Price,-1))m <- mean(r)s <- sd(r)VaR1 <- -qnorm(0.05, m, s)print(VaR1)[1] 0.02110003閾值T,也就是VAR,可以通過下式求出,注意要取絕對值,因為VAR被解釋為一個正數:VAR(95%,1天)為2.11%,這意味著,蘋果股價在一天內不會下跌超過2.11%的可能性為95%。從相反的角度來說,蘋果的股票在一天損失超過2.11%的概率為5%。下表顯示了蘋果公司歷史VAR值的實際分佈情況:二、歷史模擬法計算風險價值最簡單的方法是歷史模擬法。這裡需要假設金融工具的歷史回報率等於期望回報率。因此,我們需要找到α值部分的閾值。在統計中,這被稱為百分數。例如,如果我們使用95%顯著水平的VAR,那麼它意味著資料集中較低第五百分位數。程式碼如下:VaR2 <- -quantile(r, 0.05)
print(VaR2)5%0.01574694將此應用於Apple股票,我們得到1.57%的較低第五百分位數。風險值是此百分位數的絕對值。因此,我們可以說蘋果股票在一天內損失超過1.57%的可能性為5%,或者股票損失率低於1.57%,可能性為95%。三、蒙特卡洛模擬蒙特卡洛模擬法是計算VAR最複雜的方法,一般在其他方法不能使用的情況下才值得使用,原因有問題的複雜性或難以假設其概率分佈。蒙特卡洛模擬可用於金融及其他學科的許多不同領域。基本方法是建立一個模型並假設外生變數的分佈。接著根據假定的分佈隨機生成模型的輸入資料,然後收集結果並得出結論。當得出模擬輸出的資料後,我們可以按照與歷史模擬法相同的步驟進行操作。使用10000次蒙特卡洛模擬來計算蘋果的風險價值看起來似乎有些矯枉過正,這裡僅作為示範。程式碼如下:sim_norm_return <- rnorm(10000, m, s)
VaR3 <- -quantile(sim_norm_return, 0.05)print(VaR3)5%0.02128257我們得到的風險價值為2.13%,這與deltar normal方法得出的結論2.11%非常接近,這並不是巧合。兩者都遵循收益率符合正態分佈的假設,因此,差異來自於模擬的隨機性,模擬採取的步驟越多,結果越接近deltar normal方法,蒙特卡洛模擬方法的修正是假設分佈基於金融工具的歷史資料的歷史模擬。這裡資料的生成並不是基於數學函式,而是基於歷史資料隨機選擇的,最好是基於獨立同分布方法。對蘋果股票使用10000次模擬,為了隨機選擇過去的值,我們給它們分配了數字。接著是模擬1-251的隨機整數(歷史資料的數量),然後使用函式來查詢關聯的收益率。程式碼如下:sim_return <- r[ceiling(runif(10000)*251)]VaR4 <- -quantile(sim_return, 0.05)print(VaR4)5%0.01578806這裡得出的VAR是1.58%,與歷史模擬法得出結果十分接近,意料之中。如今,風險價值是很多金融領域風險的衡量標準。然而,總的來說,由於它不符合次相加性的標準,它仍然不符合相關風險度量的標準。換句話說,這可能會阻礙某些情況下的多樣化。但是,如果我們假設收益率為一個橢圓分佈函式,則VAR被證明是一個連貫的風險度量。這基本意味著正態分佈很適合估計VAR。唯一的問題是,與高斯曲線相比,現實中的股票回報率相當的尖峰(厚尾)。換句話說,現實生活中的股票傾向於表現出比正態分佈所解釋的更為極端的損失和收益。因此,前沿的風險分析通過假設更復雜的分佈來處理厚尾股票收益,異方差和其他現實收益率的不完整性。預期缺口的使用也包含在已開發的風險分析中,它是一個連貫的風險度量,不論我們假設的分佈如何。預期缺口集中在分佈的尾部,測量出超出風險價值的分佈的預期值。換句話來說,在一個顯著水平上的預期缺口是最差α個百分比的期望值。即:這裡的VaRγ是收益率分佈的風險價值。有時,預期缺口被稱為條件風險價值(CVAR)。但這兩個術語並不是指同一件事情;如果風險分析中用到了連續分佈函式的話,兩者可為同義詞。這些R語言都可以處理。更多內容參考(Acerbi, C.; Tasche, D. ,2002)。