全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 MATLAB等数学软件专版
5317 9
2014-05-08
看到别人的程序中,函数f=var+sum(max(0,-R-var))/j/alpha,请问这个函数中的alpha是怎么运算的??是否可以写成:
f=var+alpha*sum(max(0,-R-var))/j       ??

二维码

扫码加我 拉你入群

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

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

全部回复
2014-5-8 12:03:12
用几个数字测试一下就知道了。
具体计算次序见Matlab入门的书籍即可。
二维码

扫码加我 拉你入群

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

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

2014-5-8 13:08:40
Xaero 发表于 2014-5-8 12:03
用几个数字测试一下就知道了。
具体计算次序见Matlab入门的书籍即可。
多谢提醒!
二维码

扫码加我 拉你入群

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

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

2014-5-8 15:05:38
答案是可以

目测很多人都喜欢第一种写法,感觉是因为偷懒吧
没什么区别,不过要看alpha的取值,如果是0……
那就牵涉到极限问题而不是运算顺序问题了
二维码

扫码加我 拉你入群

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

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

2014-5-8 16:07:51
Benlaron 发表于 2014-5-8 15:05
答案是可以

目测很多人都喜欢第一种写法,感觉是因为偷懒吧
我觉得不是啊。
二维码

扫码加我 拉你入群

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

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

2014-5-8 16:48:06
Xaero 发表于 2014-5-8 16:07
我觉得不是啊。
如果两种写法是一个意思,那计算CVaR的公式和理论就不符了,能帮我看下下面的程序错在什么地方吗?
function f=cvar(x)%建立计算cvar的函数
y=[ ];%2只股票收益率矩阵
y=y';
n=size(y);%组合的收益率
j=n(2);
R=x*y;
alpha=0.1;%置信度1-β
percent=100*(0:alpha:1);
t=prctile(R,percent);
var=-t(2);%置信度1-β下的VaR值
f=var+sum(max(0,-R-var))/j/alpha;%目标函数CVaR

在matlab中总是提示:
>> cvar
Error using cvar (line 6)
Not enough input arguments.

第六行错在哪,怎么改?
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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