2016-09-30 51 views
0

我有一個關於這個算法的問題,我需要回答,因爲我正在審計我的模型,這個不一致是有關的。

我正在做均值 - 方差優化,它們必須總和爲1,並且權重必須在我指定的範圍內。我輸入如下:

Dmat = Sigma 
dvec = rep(0, ncol(Sigma)) 
Amat = rbind(rep(1, ncol(Sigma)), diag(ncol(Sigma)), -diag(ncol(Sigma)),  
    ncol=ncol(Sigma)) 
bvec = c(1, MinWeights, -MaxWeights) 

然後我運行:

Out = solve.QP(Dmat, dvec, t(Amat), bvec, meq=1) 
Weights = Out$solution 
Var = t(Weights) %*% Sigma %*% Weights 
Var == Out$value 

的問題是,我得到FALSE爲最後一個命令。這不是一個四捨五入的問題,它們差不多有20%。

任何人都知道問題是什麼?

+0

1)solve.QP 2)當我回家時我會在矩陣中編輯 – milkmotel

回答

1

我想出了這個問題。

西格瑪應該是2 *西格瑪,這是使用矩陣代數進行投資組合優化的拉格朗日值。