Selamat datang di Proyek MLOps – Prediksi Arah Harga Saham. Proyek ini dibuat untuk menunjukkan implementasi pipeline MLOps end-to-end dengan fokus utama pada operasionalisasi model (deployment, CI/CD, dan monitoring), bukan pada kompleksitas pemodelan.
Aplikasi akhir berupa web app Streamlit yang dapat memprediksi arah harga saham (Naik / Turun) berdasarkan data historis saham.
Tujuan utama proyek ini adalah:
- Menerapkan konsep MLOps dalam proyek Machine Learning sederhana
- Mengintegrasikan proses training → versioning → deployment model
- Menyediakan aplikasi prediksi dalam bentuk web app (Streamlit)
- Menerapkan CI/CD menggunakan GitHub Actions
- Menjamin aplikasi reproducible & mudah dijalankan oleh user lain
User (Browser)
↓
Streamlit Web App
↓
Load Trained Model
↓
Prediksi Arah Harga Saham (Up / Down)
↓
Hasil Ditampilkan ke User
Alur pengembangan model:
Data Historis Saham
↓
Preprocessing Data
↓
Feature Engineering
↓
Training Model
↓
Model Terbaik (model.pkl)
↓
Deployment (Streamlit + Docker)
↓
CI/CD (GitHub Actions)
Aplikasi dapat diakses melalui browser dan memiliki fitur:
- Input ticker saham (contoh:
ASII.JK) - Tombol Prediksi
- Output berupa arah harga saham (Naik / Turun)
Judul aplikasi:
Prediksi Arah Harga Saham Model MLOps – Multi-Stock Price Direction Prediction
.
├── data/
│ └── multistock_tuning_data.csv
│ └── sample_data.csv
├── models/
│ └── best_model.pkl
├── src/
│ └── serving/
│ └── app.py
├── predictions/
├── train.py
├── tune.py
├── predict.py
├── config.yaml
├── requirements.txt
├── Dockerfile
├── README.md
└── .github/
└── workflows/
└── ci.yml
git clone https://github.com/<username>/mlops-stock-direction-prediction.git
cd mlops-stock-direction-predictionPastikan Python 3.8+ sudah terinstal.
pip install -r requirements.txtstreamlit run app.pyAplikasi akan berjalan di:
https://stock-updown-prediction.streamlit.app/docker build -t mlops-stock-app .docker run -p 8501:8501 mlops-stock-appAkses aplikasi di browser:
http://localhost:8501Proyek ini menggunakan GitHub Actions untuk Continuous Integration.
Pipeline dijalankan otomatis setiap kali terjadi push ke repository, dengan tahapan:
- Checkout source code
- Install dependency
- Validasi aplikasi Streamlit
- Build Docker image
CI/CD memastikan aplikasi:
- Selalu dalam kondisi siap dijalankan
- Tidak error akibat dependency
- Konsisten antar environment
Monitoring dilakukan secara sederhana melalui:
- Logging proses prediksi
- Error handling pada aplikasi Streamlit
Pengembangan lanjutan (future work):
- Integrasi Prometheus & Grafana
- Logging terpusat
- Monitoring performa model (data drift)
| Nama | NIM | Peran | Tanggung Jawab |
|---|---|---|---|
| Salwa Farhanatussaidah | 122450011 | Data Engineer | Data collection, preprocessing |
| Tria Yunanni | 122450062 | ML Engineer | Training model, evaluasi |
| Meira Listyaningrum | 122450055 | MLOps Engineer | Streamlit app, Docker, deployment |
| Chalifia Wananda | 122450076 | DevOps / PM | CI/CD, monitoring, dokumentasi, koordinasi |
Proyek ini menggunakan MIT License.