Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Matlab中计算累积收益_Matlab_Return_Finance - Fatal编程技术网

在Matlab中计算累积收益

在Matlab中计算累积收益,matlab,return,finance,Matlab,Return,Finance,如果我有一个收益向量,有没有办法在Matlab中将其转换为累积收益向量 R中有一个非常有用的函数,名为chart.cum,它返回PerformanceAnalytics包中的函数。Matlab中有类似的函数吗 否则,我想在Matlab中手动完成 例如,具有返回向量: r = [r1 r2 .. rn] 我希望获得累积收益向量,以便: rc = [rc1 rc2 ..rcn] 其中: rc1 = r1 rc2 = (1+r1)*(1+r2)-1 rcn = (1+r1)*(1+r2)*...(

如果我有一个收益向量,有没有办法在Matlab中将其转换为累积收益向量

R中有一个非常有用的函数,名为chart.cum,它返回PerformanceAnalytics包中的函数。Matlab中有类似的函数吗

否则,我想在Matlab中手动完成

例如,具有返回向量:

r = [r1 r2 .. rn]
我希望获得累积收益向量,以便:

rc = [rc1 rc2 ..rcn]
其中:

rc1 = r1
rc2 = (1+r1)*(1+r2)-1
rcn = (1+r1)*(1+r2)*...(1+rn)-1
因为我是Matlab新手,所以我不知道如何在这个向量上构造循环


谢谢,

我不知道是否有本机函数,但我知道我可以编写一个。:)


我现在无法验证这一点,因为这台机器上没有MATLAB,但我认为它是正确的

我不知道是否有本机函数,但我知道我可以编写一个。:)

r = r +1;
rc = cumprod(r);
rc= rc-1;
我现在无法验证这一点,因为这台机器上没有MATLAB,但我认为它是正确的

r = r +1;
rc = cumprod(r);
rc= rc-1;
希望这有帮助


希望这有帮助。

是的,这样更好。…+1在时间表中不起作用。你可以中途到达那里-定义
f_1=@x x+1;rc=varfun(f_1,r)然后,只需尝试
cumprod(rc)
并观察ML时间表的真正失败。在R、Python甚至Excel这样的玩具中,这都是一个瞬间。所以不仅仅是“索引从1开始”让ML不值得…时间表功能很糟糕-如果你想在时间表的一列上做任何事情,你可以将它转换回数组。是的,这更好…+1在时间表中不起作用。你可以中途到达那里-定义
f_1=@x x+1;rc=varfun(f_1,r)然后,只需尝试
cumprod(rc)
并观察ML时间表的真正失败。在R、Python甚至Excel这样的玩具中,这都是一个瞬间。因此,不仅仅是“索引从1开始”让ML不值得……时间表功能很糟糕——如果你想在时间表的一列上做任何事情,你最好将它转换回数组。
function
可能是个问题。
function
可能是个问题。