简体   繁体   中英

Time Series model ends with ValueError

Hi When I'm trying to model ARIMA but I'm ending with the following error:

ValueError: The computed initial MA coefficients are not invertible
You should induce invertibility, choose a different model order, or you can
pass your own start_params.

The following is my fnction

def ARIMA_model(df):

    model=ARIMA(df['Returns'], order=(2,1,2))
    results_AR=model.fit()
    print (results_AR.summary())
    print (results_AR.resid)

But when I change the order = (10,1,2) / order=(2,0,2) it works fine.

Following is my ACF and PACF graphs.

在此输入图像描述

Can someone let me know a possible reason for this

在此输入图像描述

Following is the dickey-Fuller Test result, which shows the dataset is stationary.

Try setting transparams=False when you fit the ARIMA model. model.fit(transparams=False)

By setting this false, it will not try to transform the parameters to ensure stationarity or won't check for invertibility, allowing you to go ahead and fit to potentially non-stationary data. The test you used might be showing stationary, but there still could be issues with your data.

I came across this issue when doing a tutorial on ARIMA modeling in Python, why I had to set this as false, and then discussed issues with the data at the end of the video tutorial series: https://tutorials.datasciencedojo.com/arima-model-time-series-python/

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM