作者hn14946207 (EGG)
看板MCU_Talk
标题[课业] 求助 matlab 高手
时间Sat Jan 2 01:12:19 2010
我输入资料之後,跑程式如下
load c:\as.txt
for i=1:8
sa=as(i:7+i,:);
ma=mean(sa);
v=cov(sa);
[risk,ror,wts]=frontier(as,ma,100);
[risky,rory,wtsy]=portalloc(risk,ror,wts,0.03,0.03,3);
s=(rory-0.03)/risky
end;
但程式埶行後,出现
??? Input argument "NumPortfolios" is undefined.
Error in ==> frontier at 62
if NumPortfolios < 2
不知道为什麽会这样,正常跑出来会有值,但没有跑出来@@
点了matlab 的解释出现如下:
%Number of points on each frontier must be at least 2
if NumPortfolios < 2
error('finance:frontier:tooFewPortfoliosOnCurve',...
['At least two portfolios per frontier must be calculated.
\n',...
'Please specify NPORTS as 2 or greater.'])
end 2010-01-02 00:45:17 补充
这个程式主要是利用国家的产业数值当data去跑,
算的东西是财务上找最适解,及最适效率前缘线!
我使用的软体是 MATLAB 2008b
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.229.223.142
1F:推 XJY13:你的回圈 i=1:7 怪怪的看改成i=1:1:7 sa那边阵列改一下 01/02 22:25
2F:推 flyflute:frontier(as,ma,100),不是as,正确为sa应变数 01/04 18:34