全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件
1917 0
2014-04-15
悬赏 1 个论坛币 未解决
小弟读本科没学过matlab,这段时间自学了matlab,我现在要算一个时间段内的HURST,现在编程结果如下:
function [ A,C ] = hurst( p )
format long
    ll=length(p); % l????????¨°?????????????????????
    j=1;
   
    for i=5:500;  
      if mod(ll,i)==0;
         n1(j)=i; % n1(j)是子区间里价格的数量
         n2(j)=ll/i; % n2(j)是子区间存在的个数
         j=j+1;
      end
    end
   l=length(n1);
   K=[n1; n2]
   
   for j=1:l;
        for i=1:n2(j);
          bar=mean(p((i-1)*n1(j)+1:i*n1(j)))  ; %?¨???????????????¨???
          x=p((i-1)*n1(j)+1:i*n1(j))-bar;
          y=cumsum(x);  %?¨???????????????????????
          R(i)=max(y)-min(y) ;%?¨????????????R??
          sigma(i)= std(p((i-1)*n1(j)+1:i*n1(j)),1);
          if sigma(i)==0;
             sigma(i)=0.0001;
          end
          RS(i)=R(i)/sigma(i); %?¨??????????????R/S????
          clear x y
        end
        meanRS=mean(RS); %?¨?????TS?¨°??R/S???¨???
        A(j)=log(meanRS);
        B(j,1)=1;
        B(j,2)=log(n1(j));
        C(j)=B(j,2);
    end
   A=A';
   coefficient=inv(B'*B)*B'*A %???????????§???¨?????Husrt
   BB=coefficient(1)+coefficient(2)*C;
   plot(C,BB)
   hold on
   plot(C,A,'o')
end
我这样算出来的结果总是在0.4以下,不管我取的样本是什么样的,我觉得是程序有问题。。各位高手能帮我看看吗
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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