程式

如何使用 R 執行具有使用者定義的預期收益和變異數的投資組合優化?

  • October 29, 2015

我在 R 中找到了一些用於 Markowitz 均值變異數投資組合優化的函式,例如portfolio.optimtseries包中。

但是,如果我想使用自己計算的預期均值/回報和變異數,我無法弄清楚如何使用此函式。

關於如何使用此功能或任何其他功能實現這一目標的任何想法?

並且是否portfolio.optim簡單地將預期收益計算為收益序列的平均值,將預期波動率/風險計算為收益序列的標準差?我在文件中找不到它的詳細實現。

您可以使用該軟體包quadprog並自己定義所有內容。

程式碼可能如下所示:

library(quadprog)
Sigma = cov(data)
mu = mean(data)
Amat_in # define constraints here
bvec_in # define rhs of constraints here
solve.QP( Dmat = 2*Sigma, dvec = mu, meq=0,Amat=Amat_in,bvec=bvec_in)

編輯:是的,閱讀我們看到的文件

portfolio.optim(x, pm = mean(x), riskless = FALSE,
shorts = FALSE, rf = 0.0, reslow = NULL, reshigh = NULL,
covmat = cov(x), ...)

covmat可以設置參數。似乎單一資產的預期回報不能像pm預期的投資組合回報一樣設定。文件說這solve.QP是使用的。

剛剛想到如果我提供我的預期返迴向量而不是整個返回序列矩陣portfolio.optim,並且還使用參數 covmat=.. 提供我自己的共變異數矩陣,那麼這可能會起作用。

引用自:https://quant.stackexchange.com/questions/21464