R語言對(duì)股票風(fēng)險(xiǎn)“潰瘍指數(shù)”( Ulcer Index)曲面圖可視化
原文鏈接:http://tecdat.cn/?p=18240
原文出處:拓端數(shù)據(jù)部落公眾號(hào)
?
目標(biāo)函數(shù)的平滑度對(duì)于優(yōu)化的成功至關(guān)重要。
可視化目標(biāo)函數(shù)是一種檢查平滑度的簡(jiǎn)便方法。
例如,讓我們檢查“潰瘍指數(shù)”(??Ulcer Index)??,這是一種風(fēng)險(xiǎn)度量,類似于“標(biāo)準(zhǔn)偏差”。
潰瘍指數(shù)嘗試通過衡量?jī)r(jià)格回撤來衡量持有交易或投資的壓力。潰瘍指數(shù)基于下降波動(dòng)性有害、上升撥動(dòng)性有利的概念。
不像金融行業(yè)通常用來衡量股票風(fēng)險(xiǎn)的標(biāo)準(zhǔn)差那樣使用同樣的權(quán)重來衡量上行波動(dòng)和下行波動(dòng),潰瘍指數(shù)使用了更加明智的方法。它聲明投資者們往往只在乎股票的下行風(fēng)險(xiǎn),并不在乎上行風(fēng)險(xiǎn)(因?yàn)樵谕顿Y者做多的情況下,上行風(fēng)險(xiǎn)是有利的,相當(dāng)于盈利)。
如果?Ulcer指數(shù)?是平滑函數(shù),則可以使用例如非線性求解器輕松地將其用于優(yōu)化。
#*****************************************************************
# 模擬數(shù)據(jù)
#*****************************************************************
load.packages('quantmod')
s = c(120,135,10) # 現(xiàn)貨價(jià)格
r = c(0.15, 0.21,0.3) # 預(yù)期回報(bào)
sig ?= c(0.12,0.36,0.17) # 預(yù)期標(biāo)準(zhǔn)差矩陣
r12 = 0.33 # 第一和第二資產(chǎn)之間的相關(guān)性
r13 = 0.3 # ?第一和第三資產(chǎn)之間的相關(guān)性
r23 = 0.79 #第二和第三資產(chǎn)之間的相關(guān)性
# 構(gòu)造相關(guān)矩陣
r = matrix(1,nr=3,nc=3)
r[upper.tri(rho)] = c(r12,r13,r23)
# 確保相關(guān)矩陣為正定義矩陣
rho = as.matrix(nearPD(rho, T)$mat)
#*****************************************************************
# 查看模擬價(jià)格
#*****************************************************************
plota.matplot(scale.one(xts.prices),main='Asset Perfromance')

?
#*****************************************************************
# 計(jì)算潰瘍指數(shù)
#*****************************************************************
apply(cho,1, function(x) {
if(sum(x) > 1) NA
else
last(ulcer(x[1]*prices[,1] + x[2]*prices[,2] + 1-sum(x)*prices[,3])
}
)
#*****************************************************************
#可視化曲面 - 靜態(tài) 3D 繪圖
#*****************************************************************
persp(tem, tem, z,col='green',xlab='x',ylab='y'

?
上面的代碼創(chuàng)建了一個(gè)很難研究的靜態(tài)曲面圖。
要?jiǎng)?chuàng)建可以用鼠標(biāo)旋轉(zhuǎn)的交互式3D圖,使用:
#*****************************************************************
# 可視化曲面 - 交互式 3D 繪圖,使用鼠標(biāo)旋轉(zhuǎn)
#*****************************************************************
persp3d(temp, temp, z,col='green',xlab='x',ylab='y')
?潰瘍指數(shù)?曲面光滑,是優(yōu)化合適的選擇。

最受歡迎的見解
1.用機(jī)器學(xué)習(xí)識(shí)別不斷變化的股市狀況—隱馬爾科夫模型(HMM)的應(yīng)用
2.R語言GARCH-DCC模型和DCC(MVT)建模估計(jì)
3.R語言實(shí)現(xiàn) Copula 算法建模依賴性案例分析報(bào)告
4.R語言COPULAS和金融時(shí)間序列數(shù)據(jù)VaR分析
5.R語言多元COPULA GARCH 模型時(shí)間序列預(yù)測(cè)
6.用R語言實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)股票實(shí)例
7.r語言預(yù)測(cè)波動(dòng)率的實(shí)現(xiàn):ARCH模型與HAR-RV模型
8.R語言如何做馬爾科夫轉(zhuǎn)換模型markov switching model
9.matlab使用Copula仿真優(yōu)化市場(chǎng)風(fēng)險(xiǎn)