Problem with simulating an AR(2) process
조회 수: 6 (최근 30일)
이전 댓글 표시
I'm new in Matlab. I‘m trying to simulate a second-order autoregressive process which is stationary, but end up with an explosive pattern. I don't know why I cannot get it right. The process I simulate is
I made the following programm to simulate it for 200 periods, with initial values
rng(1);
% parameters
rhho2 = [30, 1.2, -0.5];
% preallocation
N = 200 ;
y = zeros(N, 1);
y(1:2, :) = [100; 100];
% innovation
innovation = randn(200, 1);
for t = 3 : N
y(t, :) = rhho2 * [1; y([t-2, t-1], :)]+ innovation(t, 1);
end
The plot for the simulated resut shows an explosve pattern, being contradictary to the expection of a stationary process
% plot
plot(y, "-r")
yline(100)
By using the econometric toolbox, this simulated results is stationary. So what is problem with my simulation program?
rng(1)
model2 = arima("constant", 30, "AR", [1.2, -0.5], "Variance", 1);
Y2 = simulate(model2, 200);
plot(Y2, "-r")
yline(100)
댓글 수: 0
채택된 답변
추가 답변 (1개)
Pavan Guntha
2021년 10월 20일
Hello Ferry,
The reason for mismatch in the outputs is due to the misordering in the following equation:
y(t, :) = rhho2 * [1; y([t-2, t-1], :)]+ innovation(t, 1);
This is supposed to be as follows as per the equation presented in the question:
y(t, :) = rhho2 * [1; y([t-1, t-2], :)]+ innovation(t, 1);
Hope this helps!
참고 항목
카테고리
Help Center 및 File Exchange에서 Conditional Mean Models에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!