金融时间序列Matlab

时间:2016-01-19 01:56:43

标签: matlab loops if-statement time-series financial

我有一大堆由dataTS1给出的矩阵,它是一个1069x25828矩阵。我使用工具箱中的fints命令将其存储为时间序列/财务时间序列。

我不确定如何实现一个循环来处理这个问题,但我需要类似if语句的东西,但显然,它并没有让我在Matlab中结合 fints 的不等式。我有以下代码:

 DataperSimple1 = [1; 2; 3; 0; -1; -3; 5; 3];
for n = 1:size(DataperSimple1,1)
    if DataperSimple1(n,1) ~= 0
        if DataperSimple1(n,1) < 0
            DataperSimple1(n+1,1) = -1*DataperSimple1(n+1,1);
        else
            DataperSimple1(n+1,1) = 1*DataperSimple1(n+1,1);
        end
    else
        DataperSimple1(n,1) = 0;
    end
end

我对如何表达最后一个条件有点不确定。如果我写,DataperSimple1(n+1,1) = 0

然后整个矩阵变为零。实际上我只希望下一个时期为0并重新开始。这适用于Matlab中leadts的fints,但它不允许我使用不等号。

本质上我希望Matlab阅读行 n 处的值的符号,如果它不等于0,则转到条件,如果它小于0 ,然后乘以(-1)为(n + 1)行。如果是> 0,然后按原样保留(n + 1)行。

最后,如果 n = 0 ,则只将0应用于 n + 1 行,但现在要将相同的结果应用于 n +2 行,因为它将递归地生成0&#39;的矩阵。

任何建议表示赞赏。感谢

0 个答案:

没有答案