24周年

財(cái)稅實(shí)務(wù) 高薪就業(yè) 學(xué)歷教育
APP下載
APP下載新用戶掃碼下載
立享專屬優(yōu)惠

安卓版本:8.7.30 蘋果版本:8.7.30

開發(fā)者:北京正保會(huì)計(jì)科技有限公司

應(yīng)用涉及權(quán)限:查看權(quán)限>

APP隱私政策:查看政策>

HD版本上線:點(diǎn)擊下載>

投資組合收益優(yōu)化模型的建立及其程序設(shè)計(jì)實(shí)現(xiàn)

來源: 李益華 編輯: 2009/11/08 22:17:29  字體:

   【摘 要】本文以某公司債券投資組合為基礎(chǔ),建立了投資組合收益的最優(yōu)化模型,并設(shè)計(jì)了求解該模型的計(jì)算程序,提高了計(jì)算的效率。

  【關(guān)鍵詞】投資組合收益;最優(yōu)化;信息化實(shí)現(xiàn)

  1 引 言

  投資組合收益優(yōu)化問題研究如何選擇投資對(duì)象,例如如何選擇不同的債券或股票,在滿足某些要求的前提下使得收益最大。因此,其決策變量是對(duì)各種可能的投資對(duì)象的投資組合,其目標(biāo)函數(shù)通常是期望回報(bào)率最大化,而約束條件則包括總投資額、公司政策、法律法規(guī)等約束。

  2 建立某公司投資組合收益的最優(yōu)化模型

  下面通過一個(gè)例子來說明某公司投資組合收益的最優(yōu)化問題及其信息化實(shí)現(xiàn)。

  某公司董事會(huì)決定將2 000萬元用于債券投資。經(jīng)咨詢,現(xiàn)有5種債券是比較好的投資對(duì)象,它們是:黃河汽車、長江汽車、華南電器、西南電器、縝山紙業(yè)。它們的投資回報(bào)率如表1所示。為減少風(fēng)險(xiǎn),董事會(huì)要求,對(duì)汽車業(yè)的投資不得超過1 200萬,對(duì)電器業(yè)的投資不得超過800萬,其中對(duì)長江汽車的投資不得超過對(duì)汽車業(yè)投資的65%,對(duì)紙業(yè)的投資不得低于對(duì)汽車業(yè)投資的20%,該公司應(yīng)如何投資,才能在滿足董事會(huì)要求的前提下使得總回報(bào)額最大?

  根據(jù)題意,本問題的決策變量是對(duì)5種投資對(duì)象的投資額。設(shè)該公司對(duì)5種債券的投資額分別為X1,X2,X3,X4,X5。

  本問題的目標(biāo)是獲得最大的債券回報(bào)額。債券回報(bào)額等于回報(bào)率投資額。由表1可知,5種債券的回報(bào)率分別為0.065,0.092,0.045,0.055,0.042,所以總回報(bào)額應(yīng)等于各種債券回報(bào)額之和,即:

  總回報(bào)額= 0.065X1+0.092X2+0.045X3+0.055X4+0.042X5

  公司的目標(biāo)是使得上述總回報(bào)額最大化,即:

  max 0.065X1+0.092X2+0.045X3+0.055X4+0.042X5

  本問題的約束條件包括:總投資額約束,以及對(duì)汽車業(yè)、電器業(yè)、長江汽車、紙業(yè)的投資限制。因此,本問題的線性規(guī)劃模型如下:

  o.b. max 0.065X1+0.092X2+0.045X3+0.055X4+0.042X5(總投資額最大化)

  s.t. X1+X2+X3+X4+X5=20 000 000(總投資額約束)

  X1+X2≤12 000 000(汽車業(yè)投資約束)

  X3+X4≤8 000 000(電器業(yè)投資約束)

  X2≤0.65(X1+X2)(長江汽車投資約束)

  X5≥0.20(X1+X2)(紙業(yè)投資約束)

  X1、X2、X3、X4、X5≥0(非負(fù)約束)

  用Spreadsheet可描述本問題并建立模型,模型的公式表示見表2,計(jì)算結(jié)果見表3。

  從表3可得該公司的最優(yōu)投資組合的結(jié)果,如表4所示。

  這時(shí),滿足所有的約束條件,且總回報(bào)額最大,達(dá)到1 399 400元。

  3 公司投資組合收益的最優(yōu)化模型的信息化實(shí)現(xiàn)

  上述計(jì)算是比較麻煩的,用戶稍微不小心,就很容易出錯(cuò),為了簡化上述的計(jì)算,避免出錯(cuò),我們編制了一個(gè)VBA程序,大大提高了效率。VBA程序清單如下:

  Sub js()

  Cells(14,5) = "=SUM(B14:B18)"

  Cells(15,5) = "=SUM(B14:B15)"

  Cells(16,5) = "=SUM(B16:B17)"

  Cells(17,5) = "=B15"

  Cells(18,5) = "=B18"

  Cells(14,7) = "=F5"

  Cells(15,7) = "=F6"

  Cells(16,7) = "=F7"

  Cells(17,7) = "=F8*(B14+B15)"

  Cells(18,7) = "=F9*(B14+B15)"

  Cells(20,2) = "=SUMPRODUCT(B5:B9,B14:B18)"

  SolverReset

  Call SolverOk("$B$20",1,0,"$B$14:$B$18")

  Call SolverOptions(AssumeLinear:=True,AssumeNonNeg:=True)

  Call SolverAdd("$E$14",2,"$G$14")

  Call SolverAdd("$E$15:$E$17",1,"$G$15:$G$17")

  Call SolverAdd("$E$18",3,"$G$18")

  SolverSolve (True)

  End Sub

  注意:在調(diào)用上述包含SolverOk()、SolverAdd()等函數(shù)的程序之前,必須先建立一個(gè)對(duì)規(guī)劃求解的引用,保持Visual Basic模塊在激活狀態(tài),點(diǎn)擊工具菜單中的引用,然后瀏覽并找到Solver.xla(這個(gè)工具通常放在\Office\Library目錄下)。

責(zé)任編輯:小奇
回到頂部
折疊
網(wǎng)站地圖

Copyright © 2000 - odtgfuq.cn All Rights Reserved. 北京正保會(huì)計(jì)科技有限公司 版權(quán)所有

京B2-20200959 京ICP備20012371號(hào)-7 出版物經(jīng)營許可證 京公網(wǎng)安備 11010802044457號(hào)