楼主: 静候轮回
7306 9

[有偿编程] 双变量GARCH-Beek模型程序——悬赏30个论坛币 [推广有奖]

  • 0关注
  • 1粉丝

硕士生

32%

还不是VIP/贵宾

-

威望
0
论坛币
10 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
394 点
帖子
53
精华
0
在线时间
196 小时
注册时间
2009-10-28
最后登录
2013-4-13

30论坛币
本人正在做毕业论文,需要用到双变量GARCH-Beek模型,悬赏30个论坛币,十万火急啊,谢谢!

最佳答案

tulipsliu 查看完整内容

??? Undefined command/function 'full_bekk_mvgarch'.  这一句的意思是: 没有定义的命令/函数 full_bekk_mvgarch。 也就是说,你下载了ucsd_garch toolbox ,也设置路径了,setpath。 呵呵,我不知道你怎么设置的。其他朋友问过我这个问题多次,都是错误地设置路径。 就拿这次这个问题来说,文件夹的主文件夹就是 ucsd_garch,其下有很多子文件夹。 我建议你再次设置路径,再来运行程序: 一、 file 二、set pa ...
关键词:GARCH ARCH RCH Bee ARC 论坛 程序 模型 变量 悬赏

本帖被以下文库推荐

沙发
tulipsliu 在职认证  发表于 2011-3-18 20:35:25 |只看作者 |坛友微信交流群
??? Undefined command/function 'full_bekk_mvgarch'. 
这一句的意思是: 没有定义的命令/函数  full_bekk_mvgarch。
也就是说,你下载了ucsd_garch toolbox ,也设置路径了,setpath。
呵呵,我不知道你怎么设置的。其他朋友问过我这个问题多次,都是错误地设置路径。

就拿这次这个问题来说,文件夹的主文件夹就是 ucsd_garch,其下有很多子文件夹。
我建议你再次设置路径,再来运行程序:
一、 file  
二、set paht
三、add folders with subfolders  ( 在set path 弹出的对话框里的第二个选项,别选第一个,那只将一个文件夹设置到路径,选第二个,会将选中文件夹下的所有文件夹都添加进系统路径)
四,找到 ucsd_garch 文件夹,点 确认。
五,save。

已经说得很细致了。
劳动经济学

使用道具

藤椅
cop207 发表于 2011-3-23 09:21:53 |只看作者 |坛友微信交流群
网上有这个程序

使用道具

板凳
yucongy 发表于 2011-4-24 16:58:37 |只看作者 |坛友微信交流群
用s+finmetric做
有现成的函数

使用道具

报纸
liuzhanlzlz 发表于 2011-4-26 16:29:01 |只看作者 |坛友微信交流群
function [parameters, loglikelihood, Ht, likelihoods, stdresid, stderrors, A, B, scores]  = full_bekk_mvgarch(data,p,q, BEKKoptions)
% PURPOSE:
%      To Estimate a full BEKK multivariate GARCH model.  ****SEE WARNING AT END OF HELP FILE****
%
%
% USAGE:
%      [parameters, loglikelihood, Ht, likelihoods, stdresid, stderrors, A, B, scores]  = full_bekk_mvgarch(data,p,q,options);
%
%
% INPUTS:
%      data          - A t by k matrix of zero mean residuals
%      p             - The lag length of the innovation process
%      q             - The lag length of the AR process
%      options       - (optional) Options for the optimization(fminunc)
%
% OUTPUTS:
%      parameters    - A (k*(k+1))/2+p*k^2+q*k^2 vector of estimated parameteters. F
%                         or any k^2 set of Innovation or AR parameters X,
%                         reshape(X,k,k) will give the correct matrix
%                         To recover C, use ivech(parmaeters(1:(k*(k+1))/2)
%      loglikelihood - The loglikelihood of the function at the optimum
%      Ht            - A k x k x t 3 dimension matrix of conditional covariances
%      likelihoods   - A t by 1 vector of individual likelihoods
%      stdresid      - A t by k matrix of multivariate standardized residuals
%      stderrors     - A numParams^2 square matrix of robust Standad Errors(A^(-1)*B*A^(-1)*t^(-1))
%      A             - The estimated inverse of the non-robust Standard errors
%      B             - The estimated covariance of teh scores
%      scores        - A t by numParams matrix of individual scores
%
%
% COMMENTS:
%    You should multiply the data by a constant so that the min std(data) is at least 10.  This will help estimation
%
%      ***************************************************************************************
%      *  THIS FUNCTION INVOLVES ESTIMATING MANY PARAMETERS.  THE EXACT NUMBER OF PARAMETERS
%      *  NEEDING TO BE ESTIMATED IS (k*(k+1))/2+pk^2+qk^2.  FOR A 5 VARIATE (1,1) MODEL THIS
%      *  65 PARAMETERS.  ESTIMATION CAN TAKE A VERY LONG TIME.  A 10 ASSET MODEL TOOK 12
%      *  HOURS ON A PIII-700.
%      ***************************************************************************************
%
%
% Author: Kevin Sheppard
% kevin.sheppard@economics.ox.ac.uk
% Revision: 2    Date: 12/31/2001




% need to try and get some smart startgin values
if size(data,2) > size(data,1)
    data=data';
end

[t k]=size(data);
k2=k*(k+1)/2;

scalaropt=optimset('fminunc');
scalaropt=optimset(scalaropt,'TolFun',1e-1,'Display','iter','Diagnostics','on','DiffMaxChange',1e-2);
startingparameters=scalar_bekk_mvgarch(data,p,q,scalaropt);
CChol=startingparameters(1:(k*(k+1))/2);
%C=ivech(startingparameters(1:(k*(k+1))/2))*ivech(startingparameters(1:(k*(k+1))/2))';
newA=[];
newB=[];
for i=1:p
    newA=[newA diag(ones(k,1))*startingparameters(((k*(k+1))/2)+i)]; %#ok<AGROW>
end
for i=1:q
    newB=[newB diag(ones(k,1))*startingparameters(((k*(k+1))/2)+i+p)]; %#ok<AGROW>
end
newA=reshape(newA,k*k*p,1);
newB=reshape(newB,k*k*q,1);
startingparameters=[CChol;newA;newB];

if nargin<=3 || isempty(BEKKoptions)
    options=optimset('fminunc');
    options.Display='iter';
    options.Diagnostics='on';
    options.TolX=1e-4;
    options.TolFun=1e-4;
    options.MaxFunEvals=5000*length(startingparameters);
    options.MaxIter=5000*length(startingparameters);   
else
    options=BEKKoptions;
end
parameters=fminunc('full_bekk_mvgarch_likelihood',startingparameters,options,data,p,q,k,k2,t);


[loglikelihood,likelihoods,Ht]=full_bekk_mvgarch_likelihood(parameters,data,p,q,k,k2,t);
loglikelihood=-loglikelihood;
likelihoods=-likelihoods;

% Standardized residuals
stdresid=zeros(size(data));
for i=1:t
    stdresid(i,:)=data(i,:)*Ht(:,:,i)^(-0.5);
end


%Std Errors
if nargout>=6
    A=hessian_2sided('full_bekk_mvgarch_likelihood',parameters,data,p,q,k,k2,t);
   
    h=max(abs(parameters/2),1e-2)*eps^(1/3);
    hplus=parameters+h;
    hminus=parameters-h;
    likelihoodsplus=zeros(t,length(parameters));
    likelihoodsminus=zeros(t,length(parameters));
    for i=1:length(parameters)
        hparameters=parameters;
        hparameters(i)=hplus(i);
        [HOLDER, indivlike] = full_bekk_mvgarch_likelihood(hparameters,data,p,q,k,k2,t);
        likelihoodsplus(:,i)=indivlike;
    end
    for i=1:length(parameters)
        hparameters=parameters;
        hparameters(i)=hminus(i);
        [HOLDER, indivlike] = full_bekk_mvgarch_likelihood(hparameters,data,p,q,k,k2,t);
        likelihoodsminus(:,i)=indivlike;
    end
    scores=(likelihoodsplus-likelihoodsminus)./(2*repmat(h',t,1));
    B=cov(scores);
    A=A/t;
    stderrors=A^(-1)*B*A^(-1)*t^(-1);
end

使用道具

地板
kobebryant.wei 发表于 2011-6-30 21:58:47 |只看作者 |坛友微信交流群
4# liuzhanlzlz 请问 有没有运行出来   ?我有这个程序  但是运行不出来 ,请问能覅偶具体的举个例子,带入下数据  ,谢谢

使用道具

7
tulipsliu 在职认证  发表于 2011-7-2 13:08:16 |只看作者 |坛友微信交流群
  1. load yourdataset;
  2. % 设置M*2 的数据
  3. data=dataset(:,1:2);
  4. % 设置p,q
  5. K=2;
  6. L=3;
  7. p=ones(K);
  8. q=ones(L);
  9. %  BEEKoption 用系统默认的优化设置,可以不填写
  10. [parameters, loglikelihood, Ht, likelihoods, stdresid, stderrors, A, B, scores]  = full_bekk_mvgarch(data,p,q);
  11. %______end of file _____
复制代码
注意,只有楼上的 full_bekk_mvgarch 无法运行的,得下载 ucsd_garch 工具箱,这个在 google 里输入 ucsd_garch 就可以找到,对于这个多元garch 的估计,还包括似然函数等m文件。
你得下载下来
比如: full_bekk_mvgach_likelihood 等。所以必须下载那个工具箱后,才可以正常运行。
劳动经济学

使用道具

8
kobebryant.wei 发表于 2011-7-3 22:34:31 |只看作者 |坛友微信交流群
6# tulipsliu 我有下载 ucsd garch 包  setpath后 然后复制程序进去  p  q改成1然后居然出现的是??? Undefined command/function 'full_bekk_mvgarch'.   我matlab不是很懂  所以  现在 处于崩溃的边缘~~~往大师说详细些 啊   我搞毕业论文

使用道具

9
liangfeng62 发表于 2012-2-25 19:11:07 |只看作者 |坛友微信交流群
能用eviews作吗

使用道具

10
swiss08 发表于 2014-2-14 22:59:01 |只看作者 |坛友微信交流群
同问 能用eviews做吗

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-6-15 08:54