Sitemap
Roihatul Mahmudah

Roihatul Mahmudah

Inflation

7 min readJan 5, 2024

--

Time Series Analysis

Press enter or click to view image in full size
Photo by Bastian Riccardi on Unsplash

1. Background

Inflasi adalah kenaikan harga barang dan jasa secara umum dan terus menerus dalam jangka waktu tertentu. Perhitungan inflasi dilakukan oleh Badan Pusat Statistik (BPS) di Indonesia. BPS melakukan survei untuk mengumpulkan data harga dari berbagai macam barang dan jasa yang dianggap mewakili belanja konsumsi masyarakat. Data tersebut kemudian digunakan untuk menghitung tingkat inflasi dengan membandingkan harga-harga saat ini dengan periode sebelumnya.

Akan dilakukan time series analysis untuk melihat pola inflasi dan membangun model untuk memprediksi inflasi. Selain itu, akan dilihat hubungan inflasi dengan faktor lain, sepert BI Rate.

2. Dataset

Data yang digunakan memiliki informasi:

  • Date: data bulanan dari Januari 2009 hingga Oktober 2023.
  • Inflasi: data rate inflasi per bulan dengan value positif.
  • BI Rate: data rate suku bunga BI perbulan dengan value positif.

Selanjutnya, code untuk data exploration, statistical test, dan modelling dapat dilihat di sini.

2. 1. Check the Data Quality

Pada dataset, tidak ditemukan missing value dan duplikasi.

Press enter or click to view image in full size

3. Data Preparation and Exploratory Data Analysis

3. 1. Transformation

Untuk menghasilkan positive forecast, dilakukan transformasi log (np.log ).

3. 2. Plot

3. 2. 1. Time Plot

Berikut merupakan plot untuk Inflasi dan BI Rate:

Press enter or click to view image in full size
Time plot: initial variables

3. 2. 2. Lag Plot

Berikut merupakan lag plot untuk inflasi:

Terdapat hubungan positif kuat yang teridentifikasi pada lag 1, 2 dan 3. Selain itu, terdapat juga hubungan positif lemah yang terindikasi pada lag 4, 5, 6, 7, 8, dan 9.

3. 2. 3. ACF — PACF Plot

Berikut adalah plot ACF dan PACF:

Press enter or click to view image in full size
ACF — PACF plot: initial variables

ACF menurun secara perlahan, menunjukkan terdapat pola atau tren. Nilai autokorelasi positif yang besar, menunjukkan data non-stasioner.

Untuk membuat time series menjadi stasioner, dilakukan diferensiasi ( .diff() ). Berikut merupakan time plot:

Press enter or click to view image in full size
Time plot: first-differenced variables

Berikut merupakan plot ACF dan PACF untuk Inflasi dan BI Rate yang telah di diferensiasi:

Press enter or click to view image in full size
ACF — PACF plot: first-differenced variables

ACF turun ke nol dengan cepat, menunjukkan tren yang stabil dan konsisten dari waktu ke waktu.

3. 2. 4. CCF Plot

Untuk melihat hubungan Inflasi dan BI Rate, dapat dilihat dari plot berikut:

Terdapat hubungan positif yang kuat antara Inflasi dan BI Rate. Berikut merupakan plot CCF:

Press enter or click to view image in full size
CCF plot: first-differenced variables

CCF mencapai puncaknya pada h =-9 dengan hubungan korelasi bersifat negatif. Hal ini menunjukkan bahwa nilai BI Rate di atas rata-rata akan menyebabkan nilai inflasi di bawah rata-rata sekitar 9 bulan kemudian. Dan, nilai BI Rate di bawah rata-rata akan menyebabkan nilai inflasi di atas rata-rata sekitar 9 bulan kemudian.

4. Forecasting Model

4. 1. Naive Method

Pada naive method, forecast pada periode berikutnya sama dengan nilai pada periode sebelumnya. Maka untuk meramalkan set test, digunakan data terakhir di set train. Dalam kasus ini, forecast menggunakan data Inflasi di bulan April 2022.

Press enter or click to view image in full size
Naive Forecast

Pada naive method, diperoleh RMSE sebesar 1.424929.

4. 2. ARIMA

4. 2. 1. Order Selection

Pada order selection dengan p dan q berada dalam rentang 0 hingga 10 dan d yaitu 1, diperoleh order p, d, q terbaik yaitu (9, 1, 8) dengan AIC yaitu -234.968243.

Summary: ARIMA
Press enter or click to view image in full size
Diagnostic residual

Diagnostic residual pada ARIMA model:

  • Stationary
  • Terdistribusi normal
  • Tidak punya dependensi

Berikut plot untuk fitted values dan forecast pada ARIMA:

Press enter or click to view image in full size
Fitted values ARIMA
Press enter or click to view image in full size
Forecast ARIMA

Transformasi log yang diterapkan pada data Inflasi menghasilan Confidence Interval (CI) yang berada pada rentang nilai positif.

Get Roihatul Mahmudah’s stories in your inbox

Join Medium for free to get updates from this writer.

Pada ARIMA, diperoleh RMSE sebesar 1.079900.

4. 2. 2. Cross Validation

Cross validation dilakukan untuk melihat performa (evaluasi) model pada beberapa bagian (variasi) data. Berikut plot untuk forecast pada masing-masing fold:

Press enter or click to view image in full size
Forecast pada masing-masing Fold

Berikut RMSE untuk masing-masing dan keseluruhan fold:

RMSE pada masing-masing Fold
RMSE pada CV

Fold 3 menghasilkan RMSE terkecil dibandingkan fold lainnya. Hal ini dapat dilihat dari plot forecast pada fold 3 yang lebih baik dibandingkan fold lainnya. Sedangkan, RMSE Cross Validation (rata-rata RMSE fold) yang diperoleh masih lebih besar dibandingkan RMSE train-test split.

4. 3. VAR

4. 3. 1. Cointegration

4. 3. 1. 1. Augmented Dickey–Fuller test

Definisi null dan alternative hypothesis (𝐻0 and 𝐻1) pada Augmented Dickey–Fuller test

Berikut hasil adfuller test untuk masing-masing transformasi pada variables:

Initial variables

inflation
birate

Log-transformed variables

log_inflation
log_birate

first-differenced variables

diff_log_inflation
diff_log_birate

Pada initial dan log-transformed, adfuller test menyimpulkan time series yang tidak stasioner. Sedangkan, setelah dilakukan transformasi diferensiasi, adfuller test menyimpulkan time series yang stasioner.

4. 3. 1. 2. Engle-Granger Test

Definisi null dan alternative hypothesis (𝐻0 and 𝐻1) pada Engle-Granger Test

Berikut hasil Engle-Granger test untuk pada first-differenced variables ( diff_log_inflation dan diff_log_birate )

diff_log_inflation
diff_log_birate

Pada Engle-Granger test, diff_log_inflation dan diff_log_birate ter-cointegration dua arah, diff_log_inflation ter-cointegration terhadap diff_log_birate dan begitu juga sebaliknya diff_log_birate ter-cointegration terhadap diff_log_inflation .

4. 3. 2. VAR Model

Dengan menggunakan select_order pada VAR, diperoleh lag order dengan AIC dan BIC terkecil pada lag order 1.

Dengan menggunakan lag order 1, diperoleh summary VAR model sebagai berikut:

Press enter or click to view image in full size
Summary: ARIMA

Berikut plot forecast pada VAR:

Press enter or click to view image in full size
Forecast VAR

Pada VAR, diperoleh RMSE untuk model Inflasi sebesar 1.187439.

4. 4. Evaluation

Perbandingan RMSE untuk semua model yang dibentuk:

  • Naive : 1.424929
  • ARIMA : 1.079900
  • VAR : 1.187439

Berdasarkan RMSE, model terbaik yang memiliki RMSE terkecil yaitu ARIMA Model. ARIMA model memiliki AIC sebesar -234.968 dan BIC sebesar -179.728.

Summary ARIMA

5. Conclusion and Recommendation

5. 1. Conclusions

  1. Untuk menghasilkan positive forecast, dilakukan log transform.
  2. Transformasi diferensiasi untuk membentuk time series yang stationer.
  3. Inflasi dan BI Rate memiliki hubungan positif yang kuat, namun terindikasi cointegration.
  4. Pada ARIMA, RMSE Cross Validation (rata-rata RMSE fold) yang diperoleh masih lebih besar dibandingkan RMSE train-test split.
  5. RMSE Naive yaitu 1.424929, RMSE ARIMA yaitu 1.079900, dan RMSE VAR yaitu 1.187439.
  6. ARIMA model menjadi model terbaik yang memiliki RMSE terkecil dengan AIC sebesar -234.968 dan BIC sebesar -179.728.

5. 2. Recommendation for the context

Inflasi dan BI Rate memiliki hubungan positif yang kuat. Sehingga, untuk menjaga nilai Inflasi yang rendah, maka perlu menetapkan suku bunga BI (BI Rate) yang rendah.

5.3. Recommendation for the next experiments

Kedua variable, Inflasi dan BI Rate, terindikasi cointegration. Pada multivariate time series dapat menghilangkan salah satu variable atau menggunakan model lain yang dapat menangani cointegration, seperti Vector Error Correction Model (VECM).

6. References

  • https://github.com/roihatulmhmdh/inflation-timeseriesanalysis
  • https://www.bps.go.id/id/statistics-table/1/OTE1IzE=/tingkat-inflasi-tahun-ke-tahun-gabungan-90-kota--sup-1--sup---2018-100-.html
  • https://www.bps.go.id/id/statistics-table/2/Mzc5IzI=/bi-rate.html
  • https://www.machinelearningplus.com/time-series/vector-autoregression-examples-python
  • James D. Hamilton. Time Series Analysis
  • George Athanasopoulos and Rob J. Hyndman. Forecasting: Principles and Practice
  • Jonathan Cryer and Kung-sik Chan. Time Series Analysis: With Application in R

--

--