最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

R語言馬科維茨Markowitz均值-方差(風(fēng)險(xiǎn)投資模型)分析最優(yōu)投資組合數(shù)據(jù)預(yù)期收益率可視

2023-07-07 23:15 作者:拓端tecdat  | 我要投稿

全文鏈接:https://tecdat.cn/?p=33146

原文出處:拓端數(shù)據(jù)部落公眾號

證券及其它風(fēng)險(xiǎn)資產(chǎn)的投資首先需要解決的是兩個(gè)核心問題:即預(yù)期收益與風(fēng)險(xiǎn)。 那么如何測定組合投資的風(fēng)險(xiǎn)與收益和如何平衡這兩項(xiàng)指標(biāo)進(jìn)行資產(chǎn)分配是市場投資者迫切需要解決的問題。正是在這樣的背景下,在50年代和60年代初,馬科維茨理論應(yīng)運(yùn)而生。

該理論依據(jù)以下幾個(gè)假設(shè):

  1. 投資者在考慮每一次投資選擇時(shí),其依據(jù)是某一持倉時(shí)間內(nèi)的證券收益的概率分布。

  2. 投資者是根據(jù)證券的期望收益率估測證券組合的風(fēng)險(xiǎn)。

  3. 投資者的決定僅僅是依據(jù)證券的風(fēng)險(xiǎn)和收益。

  4. 在一定的風(fēng)險(xiǎn)水平上,投資者期望收益最大;相對應(yīng)的是在一定的收益水平上,投資者希望風(fēng)險(xiǎn)最小。

根據(jù)以上假設(shè),馬科維茨確立了證券組合預(yù)期收益、風(fēng)險(xiǎn)的計(jì)算方法和有效邊界理論,建立了資產(chǎn)優(yōu)化配置的均值-方差模型(允許放空):

若不允許放空,則為:

隨著計(jì)算機(jī)技術(shù)的發(fā)展,利用現(xiàn)代統(tǒng)計(jì)學(xué)和編程語言進(jìn)行數(shù)據(jù)分析和投資組合優(yōu)化變得越來越普遍和容易。R語言作為一種功能強(qiáng)大的數(shù)據(jù)分析工具,提供了豐富的包和函數(shù)來支持馬科維茨均值-方差模型的實(shí)施和可視化。

本論文旨在幫助客戶使用R語言實(shí)現(xiàn)馬科維茨均值-方差模型,并通過可視化方式展示最優(yōu)投資組合的預(yù)期收益率隨時(shí)間變化的趨勢。

4個(gè)類別的股票收益率數(shù)據(jù):




類別1和類別2

讀取數(shù)據(jù)、進(jìn)行投資組合分析,并繪制預(yù)期收益率隨時(shí)間變化的圖表。

X0 = read.csv("sample1.csv")

讀取名為"sample1.csv"的CSV文件,并將其存儲(chǔ)在X0變量中。該文件包含了用于投資組合分析的數(shù)據(jù)。

nrow(X0)

計(jì)算X0數(shù)據(jù)集的行數(shù),即樣本數(shù)量。

library(fPortfolio) library(tseries)

提供了進(jìn)行投資組合分析和時(shí)間序列分析所需的函數(shù)和工具。

col = sample(2:ncol(X0), 5)

從X0數(shù)據(jù)集中隨機(jī)選擇5個(gè)列,將其索引存儲(chǔ)在變量col中。這些列將用于構(gòu)建投資組合。

X = timeSeries(X0[, col])

創(chuàng)建一個(gè)時(shí)間序列對象X,其中包含X0數(shù)據(jù)集的選定列。X將用于進(jìn)行投資組合分析。

Spec

MV Efficient Portfolio模型是指均值-方差效率組合模型(Mean-Variance Efficient Portfolio Model)。

該模型是由美國經(jīng)濟(jì)學(xué)家馬科維茨(Harry Markowitz)于1952年提出的,在投資組合理論中被廣泛應(yīng)用。

該模型的核心思想是通過最大化預(yù)期回報(bào)與最小化投資風(fēng)險(xiǎn)之間的權(quán)衡,構(gòu)建出在給定風(fēng)險(xiǎn)水平下收益最高的投資組合。

具體而言,該模型通過計(jì)算不同資產(chǎn)在組合中的權(quán)重,以及資產(chǎn)之間的相關(guān)性,進(jìn)而確定最優(yōu)投資組合。其中,均值是表示收益的期望值,方差則是衡量投資組合的風(fēng)險(xiǎn)。

在MV Efficient Portfolio模型中,投資者可以根據(jù)自身的風(fēng)險(xiǎn)承受能力和預(yù)期收益,選擇最優(yōu)的投資組合。通過將不同資產(chǎn)在投資組合中的權(quán)重調(diào)整,可以實(shí)現(xiàn)在給定風(fēng)險(xiǎn)范圍內(nèi)最大化投資回報(bào)。

然而,MV Efficient Portfolio模型也存在一些局限性,例如,它基于歷史數(shù)據(jù)來計(jì)算預(yù)期回報(bào)和風(fēng)險(xiǎn),并假設(shè)投資者的決策行為是理性的。同時(shí),它也沒有考慮到市場非理性行為和不確定性的因素。

盡管如此,MV Efficient Portfolio模型仍然是投資組合構(gòu)建和管理中的重要工具,為投資者提供了一種系統(tǒng)化的方法來優(yōu)化投資組合,平衡風(fēng)險(xiǎn)和回報(bào)。

創(chuàng)建了一個(gè)對象Spec,并通過平均值設(shè)置了目標(biāo)收益率。Spec包含了投資組合分析的規(guī)格和參數(shù)。通過mean(colMeans(X))計(jì)算出選定列的平均收益率,并將其設(shè)為目標(biāo)收益率。

Constraints = "Long Only"Constraints

定義了一個(gè)約束條件"Long Only",表示投資組合只能持有多頭頭寸(不能賣空)。

X = na.omit(X)

刪除X中包含缺失值的行。

eo = efficientPortfolio(X, Spec, Constraints)eo

用X、Spec和Constraints作為參數(shù),來執(zhí)行投資組合優(yōu)化分析,并將結(jié)果存儲(chǔ)在eo變量中。

jo = getTrgtetrn(eo)fo = gergRsk(eo)qo = geeihts(eo)qo

分別將eo對象的目標(biāo)收益率、目標(biāo)風(fēng)險(xiǎn)和資產(chǎn)權(quán)重存儲(chǔ)在jo、fo和qo變量中。

ex = t(too) * qoex

計(jì)算投資組合預(yù)期收益率ex,通過矩陣乘法將too轉(zhuǎn)置后與權(quán)重qo相乘。

exr = apply(ex, 2, sum)exr

對ex的每一列求和,得到預(yù)期收益率的向量exr。

以上包含了讀取數(shù)據(jù)、投資組合分析的過程。

對第二個(gè)類數(shù)據(jù)集進(jìn)行分析:

讀取名為"sample2.csv"的CSV文件,并將其存儲(chǔ)在變量X0中。然后,計(jì)算X0數(shù)據(jù)集的行數(shù),并加載了兩個(gè)R包:fPortfolio和tseries。最后,根據(jù)隨機(jī)選擇的列索引,創(chuàng)建一個(gè)時(shí)間序列對象X,其中包含了X0數(shù)據(jù)集的選定列。

X0 = read.csv("sample2.csv")

讀取名為"sample2.csv"的CSV文件,并將其存儲(chǔ)在X0變量中。該文件包含了用于后續(xù)操作的數(shù)據(jù)。

nrow(X0)

計(jì)算X0數(shù)據(jù)集的行數(shù),即樣本數(shù)量。

library(fPofoio) library(tsrie)

加載了兩個(gè)R包。它們提供了進(jìn)行投資組合分析和時(shí)間序列分析所需的函數(shù)和工具。

col = sample(2:ncol(X0), 5)

從X0數(shù)據(jù)集中隨機(jī)選擇5個(gè)列,將這些列的索引存儲(chǔ)在變量col中。這些列將用于構(gòu)建時(shí)間序列對象X。

X = timeSeries(X0[, col])

創(chuàng)建一個(gè)時(shí)間序列對象X,其中包含了X0數(shù)據(jù)集的選定列。X將用于后續(xù)操作。

這段代碼包含了一個(gè)循環(huán),每次循環(huán)都會(huì)進(jìn)行投資組合分析并繪制預(yù)期收益率隨時(shí)間變化的折線圖。下面是對應(yīng)代碼的解釋:

Spec = potolSpec()

創(chuàng)建一個(gè)對象Spec,表示投資組合的規(guī)格和參數(shù)。

setTargetReturn(Spec) = mean(colMeans(X))

設(shè)置Spec對象的目標(biāo)收益率為選定列的平均收益率。

Spec

輸出Spec對象,顯示投資組合的規(guī)格和參數(shù)。

Constants = "Long Only"

定義一個(gè)約束條件"Long Only",表示投資組合只能持有多頭頭寸(不能賣空)。

Constraints

輸出約束條件,顯示約束條件的內(nèi)容。

X = na.omit(X)

刪除X中包含缺失值的行。

eo = efficientPortfolio(X, Spec, Constraints); eo

執(zhí)行投資組合優(yōu)化分析,并將結(jié)果存儲(chǔ)在eo變量中。

jo = getTargetReturn(eo)

獲取eo對象的目標(biāo)收益率,并將其存儲(chǔ)在jo變量中。

fo = gtTrgeRsk(eo)

獲取eo對象的目標(biāo)風(fēng)險(xiǎn),并將其存儲(chǔ)在fo變量中。

qo = geWigts(eo); qo

獲取eo對象的資產(chǎn)權(quán)重,并將其存儲(chǔ)在qo變量中。

選擇X的最后30行(即最近30個(gè)時(shí)間點(diǎn))作為變量too存儲(chǔ)。

ex = t(too) * qo; ex

將too轉(zhuǎn)置后與權(quán)重qo相乘,得到投資組合預(yù)期收益率ex。

對ex的每一列求和,得到預(yù)期收益率的向量exr。

pt = 1:30

?創(chuàng)建一個(gè)長度為30的向量pt,用于表示橫軸上的日期。

lines(exr, lty = 1, col = 2, lwd = 1)

使用lines函數(shù)繪制exr的折線圖,并指定線型、顏色和線寬。

整個(gè)代碼段是一個(gè)循環(huán),會(huì)重復(fù)執(zhí)行下面的代碼塊100次:

col = sample(1:ncol(X0), 5)X = timeSeries(X0[,col])# 中間省略部分相同的代碼...

在每次循環(huán)中,隨機(jī)選擇5個(gè)列,創(chuàng)建時(shí)間序列對象X,進(jìn)行投資組合分析,并繪制預(yù)期收益率隨時(shí)間變化的折線圖。

把兩個(gè)類別的投資組合預(yù)期收益率進(jìn)行對比

類別1和3

setTargetReturlMeans(X)) ?Spec

eo=efficientPo

X0=read.csv("sample3.csv")setTargetReturn(SSpec

eo=efficientPo

把兩個(gè)類別的投資組合預(yù)期收益率進(jìn)行對比

plot(pt,exr ,xlab="date",ylab="expected return of P2 and P3",pch=16,type="l" ) lines(exr,lty=1, lwd=1,col=2)

類別2和3

類別2:

setTargetReturn(Spec)=mean(colMeans(X)) ?Spec

MV Efficient Portfolio模型

類別3:

把兩個(gè)類別的投資組合預(yù)期收益率進(jìn)行對比

類別1和4

eo=efficientPortf

類別1:?

類別2:

把兩個(gè)類別的投資組合預(yù)期收益率進(jìn)行對比


?最受歡迎的見解

1.R語言對S&P500股票指數(shù)進(jìn)行ARIMA + GARCH交易策略

2.R語言改進(jìn)的股票配對交易策略分析SPY—TLT組合和中國股市投資組合

3.R語言時(shí)間序列:ARIMA GARCH模型的交易策略在外匯市場預(yù)測應(yīng)用

4.TMA三均線期指高頻交易策略的R語言實(shí)現(xiàn)

5.r語言多均線量化策略回測比較

6.用R語言實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)預(yù)測股票實(shí)例

7.r語言預(yù)測波動(dòng)率的實(shí)現(xiàn):ARCH模型與HAR-RV模型

8.R語言如何做馬爾科夫轉(zhuǎn)換模型markov switching model

9.matlab使用Copula仿真優(yōu)化市場風(fēng)險(xiǎn)


R語言馬科維茨Markowitz均值-方差(風(fēng)險(xiǎn)投資模型)分析最優(yōu)投資組合數(shù)據(jù)預(yù)期收益率可視的評論 (共 條)

使用qq登录你需要登录后才可以评论。
丰原市| 松原市| 玉环县| 威海市| 霸州市| 山东省| 嘉兴市| 马尔康县| 博湖县| 车致| 长宁区| 海南省| 留坝县| 周至县| 红河县| 秦皇岛市| 乌苏市| 米脂县| 边坝县| 云南省| 盐津县| 惠东县| 大田县| 偃师市| 平潭县| 新干县| 湖南省| 阿拉善左旗| 临颍县| 手游| 襄樊市| 乐亭县| 南江县| 灵璧县| 鄂尔多斯市| 菏泽市| 永靖县| 龙南县| 柏乡县| 诏安县| 张家口市|