全部版块 我的主页
论坛 金融投资论坛 六区 金融学(理论版)
2148 1
2015-11-14
投资学学到投资组合最优化这里,想用vba做出几组点,用描点的方式画出有效前沿
求坐标点的方式是,给定一个收益率,然后规划求解,得出其在最小方差条件下的投资组合
然后收益率以一个迭代次数递增,我选取的是0.1,然后对应着收益率0---2.4%,依次求出对应的最小方差
收益与方差组成一个点,一共25个点

以下为小弟写的代码

Sub no_short_EF()

Dim MinDeviation As Double, Step As Double
Dim i As Integer, j As Integer
Dim counter As Integer

counter = Range("M3")
Step = Range("M4").Value


For j = 1 To counter
    [J4].Offset(j - 1, 0).Value = Step * (j - 1)
Next

For i = 1 To counter

    SolverReset
    SolverOK SetCell:=Range("M6").Value, _
        MaxMinVal:=2, _
        ByChange:=Range("M10", "M29")
    solveradd CellRef:=Range("M10", "M29"), _
        Relation:=3, _
        FormulaText:=0
    solveradd CellRef:=Range("M30").Value, _
        Relation:=2, _
        FormulaText:=1
    solveradd CellRef:=Range("M7").Value, _
        Relation:=2, _
        FormulaText:=[J4].Offset(i - 1, 0).Value
    SolverSolve UserFinish:=True
    [I4].Offset(i - 1, 0) = Range("M6").Value

Next

End Sub
1.png


但是结果如图所示,坐标点一样,貌似循环里的规划求解都没有执行,小弟初学的vba,实在看不明白,请大家帮帮忙 跪谢

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2015-11-14 20:05:23
自己顶一下,求大神驾到
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群