在MATLAB下實現股票組合的有效前沿的計算
10 人贊了文章
在資產組合中,核心思想是分散投資配置,防範個別風險,從而實現不把所有雞蛋都放在一個籃子里。由此產生了很多種組合,也引出了如何計算最有配置的問題。按照馬科維茨的理論,資產配置就是將資產在不同投資品之間進行分配,以求達到方差和期望收益的最佳組合。而是否最優並不是由客觀決定的,取決於投資者對於風險的偏好以及資產的有效配置等問題。

其中輸入變數的解釋為:
ExpReturn
資產組合中每項資產的期望回報
ExpCovariance
單項資產的協方差矩陣
NumPorts
資產有效前沿的點的個數(可自定義)
PortReturn
資產有效前沿上的資產組合的回報(可選)
AssetBounds
單項資產的權重約束(資產的投資百分比)
Groups
分組條件
GroupBounds
組約束條件
varargin
自選參數
對於輸出變數
PortRisk
資產組合的標準差
PortReturn
資產組合收益
PortWts
資產組合的權重
NumPorts是指在我們計算出的結果中有多少的個樣本其直接決定了輸出參數的維度。
PortReturn、AssetBounds、Groups、GroupBounds、varargin等在投資組合中會用到,本文章討論對於股票組合的有效前沿的計算,所以就不做詳細介紹。
我們以隨機給定五支股票的收益率,來利用MATLAB計算其有效前沿。
資產
A
B
C
D
E
收益率
0.40533
0.49012
0.507552
0.620121
0.438577
並計算其協方差矩陣
協方差
A
B
C
D
E
A
0.000603
0.000565
0.000644
0.000589
0.000512
B
0.000565
0.000596
0.000656
0.000612
0.000537
C
0.000644
0.000656
0.000839
0.00071
0.000648
D
0.000589
0.000612
0.00071
0.000716
0.000643
E
0.000512
0.000537
0.000648
0.000643
0.000712
然後在MATLAB中輸入上述數據

下為源代碼
ExpReturn =[0.40533 0.49012 0.507552 0.620121 0.438577];
ExpCovariance=[0.000603 0.000565 0.000644 0.000589 0.0005120.000565 0.000596 0.000656 0.000612 0.0005370.000644 0.000656 0.000839 0.00071 0.0006480.000589 0.000612 0.00071 0.000716 0.0006430.000512 0.000537 0.000648 0.000643 0.000712];NumPorts=50;[PortRisk,PortReturn,PortWts] = frontcon(ExpReturn,ExpCovariance,NumPorts);plot(PortRisk,PortReturn,r+-);畫出所求有效前沿圖

推薦閱讀:
※山田的金融日記(2)-兩種推導BS-equation的方式
※用金融工程治療癌症
※利用馬科維茨投資組合理論構建自己的投資組合
※Excel VBA 期權定價
※金融工程/金融數學項目分析
TAG:金融工程學 |
