我试图在长度为'tsteps'的给定时间序列'resid'上拟合ARMA模型,并使用获得的拟合模型'resid_model'来模拟具有相同特征的一定数量的替代时间序列。
这是我到目前为止所尝试的(仅用于一次模拟'sim'):
import numpy as np
import statsmodels.tsa.api as smt
resid_model = smt.ARMA(resid, (2, 1)).fit(maxlag=30, ic='aic', trend='nc',disp=False, transparams=True)
sim = smt.arma_generate_sample(ar=np.append(1.,resid_model.arparams),
ma=np.append(1.,resid_model.maparams), nsample=tsteps, sigma=resid_model.sigma2)
然而,尽管拟合中存在'transparams = True'参数,但我似乎无法确保平稳性。 我获得的取决于我试图适合的ARMA模型的顺序,但通常趋于退化: obtained simulation 'sim'
这是我的原始样本的样子: original time series 'resid'
我做错了什么?
谢谢!