【问题标题】:Minimum variance portfolio under participation constraint in R cranR cran中参与约束下的最小方差投资组合
【发布时间】:2016-03-09 22:50:05
【问题描述】:

我想找到 3 种风险资产的最小方差投资组合,其中所有资产的权重之和 = 2,资产 1 的权重设置为 +1(即问题是通过仅调整来最小化投资组合 vol资产资产 2 和 3 的权重不超过 1 且 >=0。我发现下面的代码 sn-p 可以最大限度地降低 3 资产组合的风险,但我不确定如何合并重量限制。欢迎任何帮助/建议。

 covmat <- matrix(c(3.235343e-02, -3.378191e-03, -1.544574e-05,
                  -3.378191e-03,  8.769166e-03,  1.951734e-06,
                  -1.544574e-05,  1.951734e-06,  2.186799e-06),3,3)

    mat <- rbind(cbind(2*covmat,rep(1, 3)), c(rep(1, 3), 0))
    vec <-  c(rep(0, 3),1)
    smat <-  solve(mat)%*%vec
    smat[1:3,1]

谢谢,

【问题讨论】:

    标签: r optimization finance portfolio


    【解决方案1】:

    R 有一个 QP(二次规划)求解器,专为这些类型的问题而设计:

    library(quadprog)
    covmat <- matrix(c(3.235343e-02, -3.378191e-03, -1.544574e-05,
                       -3.378191e-03,  8.769166e-03,  1.951734e-06,
                       -1.544574e-05,  1.951734e-06,  2.186799e-06),3,3)
    # linear constraint matrix
    A <- rbind(c(1,1,1),diag(3))
    # rhs
    b <- c(2,1,0,0)
    # solve QP model
    solve.QP(covmat,dvec=rep(0,3),Amat=t(A),bvec=b,meq=2)$solution
    

    输出:

    [1] 1.0000000 0.3835757 0.6164243
    

    【讨论】:

    • 非常感谢欧文,这正是我所追求的。我将更详细地了解 QP。我非常感谢您为此花费的时间。
    • 以上是针对最小方差问题。即所有回报在 dvec 中被假定为零。现在我还想解决具有相同权重约束的平均方差问题(即资产 a = 1 和资产 b & c 除了权重 >=0 和权重 a+b+c 相等之外,在没有其他约束的情况下保持波动2) 但资产 a、b 和 c 的收益分别为 (0, 0.1,0.03) 。我只是用 dvec=c(0,0.1,0.03) 更改 dvec =rep(0,3) 吗?
    猜你喜欢
    • 1970-01-01
    • 2017-12-04
    • 2021-01-11
    • 2016-08-18
    • 2011-11-16
    • 2014-07-28
    • 1970-01-01
    • 2023-01-13
    • 1970-01-01
    相关资源
    最近更新 更多