stdsquare²
🎓 Kelas
stdsquare / materi / slides / pertemuan-09
Tema
Japan
Arcade
Dark Retro
Font
‹ Daftar slide Pertemuan 9: Time Series & Forecasting Bisnis

Time Series & Forecasting Bisnis

Menganalisis pola waktu & meramalkan penjualan untuk keputusan operasional

Data Science Pertemuan 9 · Minggu 10 CPMK 1, 2, 3, 4

Agenda Pertemuan

Teori (70 menit)
  • Komponen time series: trend, seasonal, noise
  • Dekomposisi deret waktu
  • Moving average & exponential smoothing
  • Konsep ARIMA: AR, I, MA
Praktik & Kasus (80 menit)
  • Membaca & memplot data time series
  • Menghitung SMA, WMA, SES secara manual
  • Forecasting penjualan: studi kasus ritel Indonesia
  • Diskusi & interpretasi error metrik (MAE, MAPE)

Tujuan Pembelajaran

01

Mengidentifikasi dan memisahkan komponen trend, seasonal, dan noise dalam data time series bisnis.

02

Menghitung moving average dan exponential smoothing untuk menghaluskan fluktuasi data penjualan.

03

Memahami prinsip ARIMA dan menggunakannya untuk membuat forecast penjualan jangka pendek.

04

Mengevaluasi akurasi forecast menggunakan metrik MAE dan MAPE untuk mendukung keputusan operasional.

Topik 1

Komponen Time Series

Trend · Seasonal · Cyclical · Noise

Apa Itu Time Series?

Data time series adalah urutan pengamatan yang direkam pada interval waktu teratur — harian, mingguan, bulanan, atau tahunan.

Contoh bisnis Indonesia:
  • Penjualan harian Indomaret per gerai
  • Jumlah transaksi BRImo per jam
  • Permintaan ojek online Gojek per kota per hari
  • Harga saham BBCA di BEI setiap sesi
KomponenDeskripsiContoh
Trend (T)Arah jangka panjangPenjualan e-commerce naik tiap tahun
Seasonal (S)Pola berulang periodikLonjakan Harbolnas setiap Nov–Des
Cyclical (C)Fluktuasi siklus ekonomiResesi → pemulihan (multi-tahun)
Noise (ε)Variasi acak tak terpolaPemadaman listrik, promo mendadak

Dekomposisi: Additive vs Multiplicative

Model Additive
Y = T + S + C + ε

Digunakan saat amplitudo seasonal relatif konstan meskipun trend naik.

Contoh: Jumlah pelanggan baru per bulan dengan musiman yang stabil.

Model Multiplicative
Y = T × S × C × ε

Digunakan saat amplitudo seasonal bertumbuh proporsional dengan trend.

Contoh: Penjualan e-commerce — lonjakan Harbolnas makin besar tiap tahun seiring tumbuhnya platform.

Tip praktis: Plot data Anda terlebih dahulu. Jika "benjolan" seasonal terlihat makin besar seiring waktu → pilih multiplicative. Jika tingginya tetap → pilih additive.

Membaca Komponen dalam Plot

050100150Data Aktual (garis penuh) vs Trend (garis putus)Selisih = Komponen Seasonal + NoiseJanMarMeiJulSepNovSeasonal peak

Ilustrasi skematis — data penjualan bulanan dengan trend naik & pola musiman berkala

Topik 2

Moving Average & Exponential Smoothing

Metode klasik yang tetap relevan di dunia bisnis

Moving Average (MA)

Simple Moving Average (SMA) merata-ratakan sejumlah periode terakhir untuk menghaluskan fluktuasi.

SMAt = (Yt + Yt-1 + … + Yt-n+1) / n
Contoh SMA-3 penjualan (unit):
Jan=100, Feb=120, Mar=110
SMA Apr = (100+120+110)/3 = 110

Weighted MA (WMA) memberi bobot lebih besar pada data terbaru:
WMA = (3×Yt + 2×Yt-1 + 1×Yt-2) / 6

Jenis MAKelebihanKelemahan
Simple (SMA)Mudah dihitungLambat merespons perubahan
Weighted (WMA)Lebih responsifPemilihan bobot subjektif
Centered MABaik untuk dekomposisiTidak bisa prediksi hari terakhir
Kapan pakai SMA? Data stasioner tanpa trend kuat, kebutuhan forecast mingguan/bulanan yang sederhana, dan saat manajemen membutuhkan penjelasan yang mudah.

Coba Sendiri: Bandingkan Forecast SMA vs WMA

Ubah jumlah periode n dan bobot WMA, amati bagaimana kurva SMA dan WMA merespons perubahan data secara berbeda.

Exponential Smoothing

Simple Exponential Smoothing (SES) memberi bobot menurun eksponensial pada data historis — data terbaru paling berpengaruh.

Ft+1 = α · Yt + (1 − α) · Ft

Di mana α (alpha) = smoothing parameter, 0 < α < 1

Arti α:
α tinggi (0.7–0.9) → bereaksi cepat, cocok saat data berfluktuasi.
α rendah (0.1–0.3) → bereaksi lambat, cocok saat data stabil.

Varian Exponential Smoothing:

MetodeUntuk DataParameter
SES (Holt's 1-param)Tanpa trend/seasonalα
Double ES (Holt's)Ada trend, tanpa seasonalα, β
Triple ES (Holt-Winters)Ada trend & seasonalα, β, γ
Holt-Winters banyak dipakai di sistem manajemen inventori retail modern karena mampu menangkap musiman sekaligus.

Mengukur Akurasi Forecast

Error metrik mengukur seberapa jauh forecast dari aktual. Pilih metrik yang sesuai konteks bisnis Anda.

MetrikFormulaInterpretasi
MAEmean(|Aktual − Forecast|)Rata-rata error absolut dalam satuan yang sama
MAPEmean(|error| / Aktual) × 100%Error dalam persen — mudah dikomunikasikan ke manajemen
RMSE√mean(error²)Memberi penalti lebih besar pada error besar
Panduan MAPE
  • MAPE < 10% → Forecast sangat baik
  • MAPE 10–20% → Forecast baik
  • MAPE 20–50% → Forecast wajar
  • MAPE > 50% → Perlu perbaikan model
Catatan: MAPE tidak stabil saat aktual mendekati nol — hindari untuk produk baru atau penjualan sporadis.

Coba Sendiri: SES & Bandingkan Error MAE/MAPE/RMSE

Geser parameter alpha exponential smoothing dan amati bagaimana forecast serta metrik error MAE, MAPE, RMSE berubah.

Topik 3

ARIMA & Aplikasi Forecasting

Dari model statistik ke keputusan operasional nyata

ARIMA: AutoRegressive Integrated Moving Average

AR — AutoRegressive (p)

Nilai saat ini diprediksi dari nilai p periode sebelumnya.

Yt = c + φ₁Yt-1 + … + φpYt-p + εt

Analogi: penjualan hari ini dipengaruhi penjualan 1–3 hari lalu.

I — Integrated (d)

Mendiferensikan data sebanyak d kali hingga stasioner.

ΔYt = Yt − Yt-1

d=1 artinya kita analisis perubahan penjualan, bukan levelnya.

MA — Moving Average (q)

Error prediksi q periode lalu masuk sebagai prediktor.

Yt = c + εt + θ₁εt-1 + … + θqεt-q

Mengoreksi model berdasarkan "kejutan" masa lalu.

Model ditulis sebagai ARIMA(p, d, q) — misalnya ARIMA(1,1,1): AR orde 1, diferensing 1 kali, MA orde 1. Untuk data musiman digunakan SARIMA(p,d,q)(P,D,Q)m.

Coba Sendiri: Bangun Forecast ARIMA/SARIMA

Ubah parameter p, d, q dan amati bagaimana bentuk forecast ARIMA menyesuaikan pola data historis.

Prasyarat ARIMA: Stasioneritas

Data time series harus stasioner sebelum dapat dimodelkan dengan ARIMA: mean, variansi, dan autokorelasi harus konstan sepanjang waktu.

CiriStasionerTidak Stasioner
MeanKonstanBerubah (ada trend)
VariansiKonstanMembesar/mengecil
ACFTurun cepat ke nolTurun lambat/lambat
Uji Augmented Dickey-Fuller (ADF)
  • H₀: Data memiliki unit root (tidak stasioner)
  • H₁: Data stasioner
  • p-value < 0.05 → Tolak H₀ → data stasioner ✓
  • p-value ≥ 0.05 → Diferensing, lalu uji ulang
Kebanyakan data penjualan bisnis tidak stasioner karena ada trend pertumbuhan. Diferensing (d=1) biasanya cukup untuk membuatnya stasioner.

Studi Kasus: Forecast Permintaan Ritel Online

Konteks: Platform e-commerce Indonesia (~Tokopedia/Shopee) perlu memprediksi volume order mingguan untuk perencanaan kapasitas gudang dan driver kurir.

MingguOrder (rb)SMA-3SES α=0.4
W1520520
W2490508
W3560523529
W4610553563
W5580583570
W6 (Forecast)597574
Perhitungan SMA-3 untuk W6

SMA-3 = (W3 + W4 + W5) / 3
= (560 + 610 + 580) / 3
= 583 ≈ 597 (lihat tabel, W4-W6)

Keputusan operasional: Dengan forecast ~580–597 ribu order, manajer logistik memesan kapasitas gudang dan mengalokasikan ~600 driver ekstra untuk W6.

Seasonal ARIMA: Kasus Gojek & BCA

Gojek: Demand Harian per Kota

Order GoFood memiliki pola musiman harian (jam makan siang, makan malam) dan mingguan (Jumat malam lebih tinggi). Model yang sesuai:

SARIMA(1,1,1)(1,1,1)7

m=7 (periode musiman mingguan). Komponen seasonal menangkap lonjakan akhir pekan secara otomatis.

BCA / BRImo: Volume Transaksi Digital

Transaksi mobile banking memiliki musiman bulanan (tanggal gajian ~25-1) dan tahunan (Lebaran, akhir tahun). Pendekatan:

  • SARIMA dengan m=12 untuk musiman tahunan
  • Tambahkan dummy variabel Lebaran (regresor eksternal)
  • Model SARIMAX untuk efek kalender
Prinsip umum: Semakin pendek horizon forecast, semakin sederhana model yang Anda butuhkan. Forecast 1 minggu → SES atau SMA sudah cukup. Forecast 6–12 bulan → SARIMA atau Prophet lebih tepat.

Alur Kerja Forecasting Bisnis

1. KumpulkanData Historis(≥ 2 siklus)2. Eksplorasi& Visualisasi(plot, ACF, PACF)3. Pilih & LatihModel(MA/ES/ARIMA)4. EvaluasiAkurasi(MAE, MAPE, RMSE)5. Forecast &KeputusanOperasionalPerbarui model saat akurasi menurun (retraining)Pipeline Forecasting Bisnis End-to-EndDari data mentah hingga keputusan operasional, dengan loop retraining berkelanjutan

Rangkuman Pertemuan 9

5 Key Takeaway:
  1. Time series terdiri dari empat komponen: trend (arah jangka panjang), seasonal (pola periodik), cyclical (siklus ekonomi), dan noise (variasi acak). Pisahkan keempatnya sebelum memodelkan.
  2. Model Additive vs Multiplicative: pilih berdasarkan apakah amplitudo seasonal tumbuh seiring trend. Multiplicative lebih sering tepat untuk data bisnis yang bertumbuh.
  3. Moving Average cocok untuk data stasioner jangka pendek; Exponential Smoothing (terutama Holt-Winters) lebih baik saat ada trend dan seasonal.
  4. ARIMA(p,d,q) adalah model statistik yang menangkap autokorelasi; pastikan data stasioner (uji ADF) sebelum fitting. SARIMA tambahkan komponen musiman.
  5. Evaluasi selalu wajib: gunakan MAE dan MAPE untuk komunikasi ke manajemen, RMSE jika Anda ingin menghukum error besar secara lebih kuat.

Tugas & Diskusi

Tugas Individu (dikumpul minggu depan)
  1. Unduh data penjualan atau transaksi bulanan minimal 24 bulan dari sumber terbuka (BPS, Kaggle, atau dataset perusahaan publik IDX).
  2. Buat plot time series dan identifikasi komponen trend, seasonal, dan noise secara visual.
  3. Hitung SMA-3 dan SES (α=0.3) untuk 6 periode terakhir sebagai in-sample test.
  4. Hitung MAPE dari kedua metode dan tentukan metode mana yang lebih akurat untuk dataset Anda.
Pertanyaan Diskusi
  • Mengapa Lebaran menjadi tantangan khusus untuk model time series di Indonesia?
  • Dalam situasi apa Anda lebih memilih SMA dibanding ARIMA? Jelaskan trade-off-nya.
  • Jika MAPE forecast Anda 35%, apakah model tersebut layak dipakai untuk keputusan pengadaan stok? Argumentasikan.
Tools yang bisa digunakan: Python (statsmodels, pandas, matplotlib), R (forecast package), atau Excel (jika hanya SMA/SES manual).

Q&A & Preview Pertemuan 10

?Tanya Jawab

Ada pertanyaan tentang materi hari ini? Silakan diskusikan sekarang atau kirim via forum diskusi.

Preview: Pertemuan 10
Text Mining & Analisis Sentimen
  • Preprocessing teks: tokenisasi, stopwords, stemming Bahasa Indonesia
  • TF-IDF dan representasi dokumen
  • Analisis sentimen review produk & media sosial
  • Aplikasi: monitoring brand Tokopedia/Shopee via ulasan pelanggan
Persiapan: Install library nltk dan PySastrawi (stemmer Bahasa Indonesia) di Python Anda sebelum pertemuan berikutnya.