资源简介
tvp-var模型,matlab代码。直接改数据就可以使用,nakajima的原包。内附pdf教程。
代码片段和文件信息
%%--------------------------------------------------------%%
%% TVP-VAR package for estimation %%
%% This code is modified from Primiceri (2005)and Nakajima (2011)
%% Function files for MCMC estimation of Time-Varying Parameter VAR model
%% with stochastic volatility
%% setvar.m sets variables or options
%% ssmooth.m implements simulation smoother
%% svsamp.m implements multi-move sampler for SV model
%% ftsvar.m computes time-series variance
%% fAt.m fXt.m fXh.m finvm.m functions for some matrices
%% fGeweke.m computes Geweke statistics for convergence
%% impulse.m computes time-varying impulse response
%%--------------------------------------------------------%%
clear all;
close all;
tau = 40;
y=xlsread(‘awm.xlsx‘);% load data
my = y(tau+1:end:);
asvar = {‘p‘; ‘x‘; ‘i‘}; % variable names
nlag = 2; % # of lags
setvar(‘data‘ my asvar nlag); % set data
setvar(‘fastimp‘ 1);
global m_my m_nl m_ns m_nk m_fli m_flSb m_nimp m_flfi ...
m_iseed m_dvb0 m_dVb0 m_dva0 m_dVa0 m_dvh0 m_dVh0 m_k
tic;
if isempty(m_fli) == 1
m_fli = 1;
end
if isempty(m_flSb) == 1
m_flSb = 0;
end
if isempty(m_nimp) == 1
m_nimp = 12 + 1;
end
if isempty(m_flfi) == 1
m_flfi = 1;
end
if isempty(m_iseed) == 1
m_iseed = 1;
end
rand(‘state‘ m_iseed);
randn(‘state‘ m_iseed);
%%--- set variables ---%%
ns = m_ns; % # of time periods
nk = m_nk; % # of series
nl = m_nl; % # of lags
nb = nk * (nk*nl + m_fli); % # of coefficients in beta
na = nk * (nk-1) / 2; % # of parameters in a
if m_fli == 1
vym = zeros(1 nk);
else
vym = mean(m_my);
end
m_my = m_my - ones(ns 1) * vym;
myh = zeros(ns nk);
mya = zeros(ns nk);
amX = zeros(nk nb ns);
amXh = zeros(nk na ns);
amG2 = zeros(nk nk ns);
mai = zeros(ns na);
for i = nl+1 : ns
amX(: : i) = fXt(m_my(i-nl:i-1 :) m_fli);
end
mb = zeros(ns nb);
ma = zeros(ns na);
mh = zeros(ns nk);
mSigb = eye(nb) * 0.01;
mSiga = eye(na) * 0.01;
mSigh = eye(nk) * 0.01;
vidb = 1 : nb;
if m_fli == 1
vidi = (0 : nk-1) * (nk*nl+1) + 1;
vidb(vidi) = [];
end
[v1 v2] = find(triu(reshape(1:nk^2 nk nk)‘ 1));
vida = (v1-1)*nk + v2;
%%--- prior ---%%
[BetaVBOLSsigma_u] = prior_ols(y(1:tau:)nlag);
%Find lower triangular matrix At
C0=chol(sigma_u);
C0=C0./repmat(diag(C0)1nk);
C0=inv(C0)‘;
C0=reshape(C0nk*nk1);
va0 = zeros(na 1);
for i=1:na
va0(i1)=C0(vida(i));
end
sigma_OLS=diag(sigma_u);
if isempty(m_dvb0) == 1
if m_flSb == 1
m_dvb0 = 25; % Sigma ~ IW(vb0 I*Vb0)
m_dVb0 = 1e-4;
else
m_dvb0 = 40; % sigb_i^2 ~ IG(va0/2 Va0/2)
m_dVb0 = 2*1e-4;
end
elseif m_flSb == 0
m_dvb0 = m_dvb0*2;
m_dVb0 = m_dVb0*2;
end
if isempty(m_dva0) == 1
m_dva0 = 8; % siga_i^2 ~ IG(va0/2 Va0/2)
m_dVa0 = 2*1e-4;
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-11-17 15:43 TVPVAR-master\
文件 1027 2019-11-17 15:43 TVPVAR-master\DataDesc
文件 8522 2019-11-17 15:43 TVPVAR-master\Estinamtion result.m
文件 11442 2019-11-17 15:43 TVPVAR-master\Forecast TVPVAR.m
文件 16637 2019-11-17 15:43 TVPVAR-master\awm.xlsx
文件 657 2019-11-17 15:43 TVPVAR-master\fAt.m
文件 768 2019-11-17 15:43 TVPVAR-master\fGeweke.m
文件 534 2019-11-17 15:43 TVPVAR-master\fXh.m
文件 559 2019-11-17 15:43 TVPVAR-master\fXt.m
文件 544 2019-11-17 15:43 TVPVAR-master\finvm.m
文件 872 2019-11-17 15:43 TVPVAR-master\ftsvar.m
文件 1255 2019-11-17 15:43 TVPVAR-master\impulse.m
文件 357 2019-11-17 15:43 TVPVAR-master\mlag2.m
文件 304 2019-11-17 15:43 TVPVAR-master\prior_ols.m
文件 2390 2019-11-17 15:43 TVPVAR-master\setvar.m
文件 2871 2019-11-17 15:43 TVPVAR-master\ssmooth.m
文件 5542 2019-11-17 15:43 TVPVAR-master\svsamp.m
文件 507 2019-11-17 15:43 TVPVAR-master\wish.m
- 上一篇:柴油机SIMUli
nk模型.rar - 下一篇:LMI工具箱介绍——俞立.ppt
相关资源
- LMI工具箱介绍——俞立.ppt
- 序列卷积和运算及其可视化呈现
- 反距离加权函数-MATLAB版
- 实验三信号卷积的MATLAB实现.pdf
- 基于matlab的潮流计算PQ分解法4节点
- 惯导六位置法标定解算Matlab程序
- LBF模型matlab代码
- Matlab追赶法求解系数矩阵为三对角矩
- 一维均值聚类matlab程序
- 批量tif转img的matlab代码
- 随机森林分类matlab代码
- MQAM41664256调制解调MATLAB代码
- 马尔科夫链代码,关于matlab隐马尔科
- matlab实现神经网络的数字识别,有训
- 光伏matlab模型
-
工程用光伏电池 matlab simuli
nk 仿真模 - 元胞自动机人员疏散.zip
- 起风了matlab音乐程序
- Leslie模型matlab
- 生成GPS信号
- 遗传算法经典MATLAB代码
-
电动汽车控制策略simuli
nk模型 - puma机器人运动学matlab仿真.zip
-
基于matlab/simuli
nk的光伏电池仿真模 -
继电保护的simuli
nk搭建模型及保护的 - matlab画电磁场图,matlab小程序从仿真
- 模型预测控制MPC模型预测电流控制,
- 基于LSSVM的分类器,用于iris的三种分
- 电力电子课程设计,三相整流matlab仿
- lqr轨迹跟踪的matlab编程
评论
共有 条评论