- 在线时间
- 1084 小时
- 最后登录
- 2015-9-10
- 注册时间
- 2014-4-18
- 听众数
- 162
- 收听数
- 1
- 能力
- 10 分
- 体力
- 43980 点
- 威望
- 6 点
- 阅读权限
- 255
- 积分
- 15251
- 相册
- 0
- 日志
- 0
- 记录
- 1
- 帖子
- 3471
- 主题
- 2620
- 精华
- 1
- 分享
- 0
- 好友
- 513
升级   0% TA的每日心情 | 开心 2015-3-12 15:35 |
|---|
签到天数: 207 天 [LV.7]常住居民III
 群组: 第六届国赛赛前冲刺培 群组: 国赛讨论 群组: 2014美赛讨论 群组: 2014研究生数学建模竞 群组: 数学中国试看培训视频 |
金融工具箱提供了以后函数用于求解投资组合分析
- X' A& N- H: g. u
1 S- B$ X$ I+ Z$ L" ~
0 b1 J+ E! T5 f9 f+ o9 ?9 k$ Cfrontcon函数:Mean-variance efficient frontier; g+ H$ ~5 I: O. Z/ V
A* a9 Z6 a( _; U( \- M% x( `$ |- n7 T( A
portopt函数:Portfolios on constrained efficient frontier
& z" N, L' u* R, J' _ w
+ A* n/ Q% n& v3 E9 R0 g, u( z( f. j7 d0 Y+ {
portvrisk函数:Portfolio value at risk (VaR)4 O6 t5 V4 ]* m' T- y& h
- F5 D# _/ X3 b2 a5 R3 d
( k- A9 o b( Y1 N+ t下面给一个小例子说明下,程序运行必须用到附件中的“股票数据.txt”数据
0 \. L8 I2 m0 i6 w0 \& D$ |; w7 l
* O7 v+ n$ }+ s* ^
, W B" U" c9 }- i数据结构如下,每列代表一只股票,每行是一天的股票售价。% o# F, z& [. g- r
6 T! x- A) Q. _. b5 j
1 F8 b7 l0 z) c% ^
均值方程模型,要求先计算出股票的日收益率、日平均收益率和日收益率方差,然后再调用金融工具箱函数
5 R& z$ w) x& f6 K. s3 y/ z& P% by dynamic of Matlab技术论坛) {, B+ d) j* d: W8 t$ W
% see also http://www.matlabsky.com6 B' u$ O" |$ t& v! s( i0 ?" G
% contact me matlabsky@gmail.com u0 ^; y! }1 F- _
% 2010-04-07 10:33:28: o) a; e3 I4 b2 e2 o/ v
%+ I/ b- T# [. [$ Q
7 ~7 r* ~& y0 B3 K) V2 n
9 b- u% X; F, Vclc/ T" h- I7 Z" O' K# m7 d* u
clear; e2 c( R _9 O
& k0 V @ n6 f+ D4 c9 V
. O+ P- y0 {0 K9 nweb http://www.matlabsky.com -browser7 |' a( U: |# h7 d
! G/ S3 \6 n* y9 g( ~
) K: x* \. T8 |$ T' U. t
h=msgbox({'本程序由MATLAB技术论坛编写','','contact me matlabsky@gmail.com','','see also http://www.matlabsky.com'},'版权申明','warn','modal');
' Y8 d. _# E/ a; Yuiwait(h);3 x, M! J& K- n2 y5 f& {5 |
, K3 S8 p' k0 ^% q+ F4 p4 M, g
# M" z1 f1 ?7 y! |data=load('股票数据.txt'); % 数据载入
5 K9 `; H/ X" j1 j1 rr=diff(data)./data(1:end-1, ; % 日收益率! @% v* v- v; Y2 Z9 p' H& h! H/ Z
mr=mean(r); % 平均收益率- ]3 q& n1 |* c6 R+ G+ w2 |
sigma=cov(r); % 资产回报方差
8 p' Y( l* I _7 a5 r( K
* V2 b l1 h5 q/ j/ y" E: [6 c3 M) P, h7 q% b
ExpReturn=mr; % 期望(平均)收益率- m c9 ^ v9 I. j8 O) w
ExpCov=sigma; % 资产回报方差
1 h% L7 U K. ]* bNumPorts=100; % 有限前沿点的个数- k) |& G9 l2 \$ L+ _6 r. U
PortReturn=[]; % 目标收益率,NumPorts和PortReturn只能选一个,另外一个必须置为[]
+ T4 h% T4 I+ ]4 D) Qbound=inputdlg('投资比例,默认[0 1]','参数输入',1,{'[0 1]'});
; w; q- \2 v& C2 U5 t: vbd=str2num(bound{1});
K+ x a1 e H( C0 pAssetBounds=repmat(bd( ,1,4); % 投资边界7 a+ k! B6 Q) g
% D5 Z- j7 k9 p7 W8 k5 ?4 V7 f. M4 _
[PortRisk, PortReturn, PortWts] = frontcon(ExpReturn,ExpCov, NumPorts, PortReturn, AssetBounds);
: n1 A: u2 G+ F1 x) A3 sdata=cell(101,6);+ X! H2 l7 _) A* E) C5 Z H# {
data(1, ={'风险','回报','美元','欧元','日元','英镑'};4 P% B3 E' m: N3 A- _% E
data(2:end, =num2cell([PortRisk, PortReturn, PortWts]);
$ x9 O& L: w/ exlswrite(['股票数据-',bound{1},'.xls'],data)
, K# d" P( c" q' S4 r复制代码
* J6 A: n/ R5 C
c/ a( C) k+ a/ M& g+ N' ?1 H
股票数据.txt
(347 Bytes, 下载次数: 3)
8 s# Y2 [ _$ j0 M5 F- k0 |2 y6 S
; V0 @* R$ t- S5 m8 d
|
zan
|