Abstrak— Prediksi harga saham merupakan salah satu permasalahan penting dalam bidang keuangan karena memiliki tingkat kompleksitas dan ketidakpastian yang tinggi. Oleh karena itu, diperlukan model prediksi yang akurat dan mampu menangkap pola data secara optimal. Penelitian ini menggunakan pendekatan machine learning dengan algoritma XGBoost dan Random Forest untuk memprediksi harga saham PT Bank Syariah Indonesia Tbk (BRIS) dengan memanfaatkan kombinasi variabel teknikal dan makroekonomi. Dataset yang digunakan berupa data historis harga saham BRIS dan nilai tukar USD/IDR pada periode 1 Juli 2021 hingga 1 Oktober 2025. Tahapan penelitian meliputi feature engineering dengan pembuatan lag feature dan moving average, pembagian data berdasarkan time series, serta normalisasi data menggunakan StandarScaler. Evaluasi model dilakukan menggunakan metrik Root Mean Square Error (RMSE) dan Mean Absolute Percentage Error (MAPE). Selain itu, dilakukan analisis SHAP untuk mengetahui pengaruh masing-masing variabel terhadap performa model. Hasil penelitian menunjukkan bahwa penggunaan kombinasi variabel teknikal dan makroekonomi tidak memberikan peningkatan performa yang signifikan dibandingkan variabel teknikal saja. Pada dataset BRIS sebagai fokus utama penelitian, model Random Forest dengan variabel teknikal menghasilkan performa terbaik dengan nilai RMSE sebesar 30.793479 dan MAPE sebesar 0.823462%. Hasil analisis SHAP menunjukkan bahwa variabel Low dan High memiliki kontribusi paling besar dibandingkan fitur seperti volume perdagangan, harga pada beberapa periode sebelumnya, serta rata-rata harga dalam periode tertentu yang menunjukkan bahwa informasi harga harian memiliki peran dominan dalam menentukan hasil prediksi model. Selain itu, model juga diuji pada dataset lain sebagai pengujian tambahan yang menunjukkan bahwa model memiliki kemampuan generalisasi yang cukup baik, meskipun tingkat akurasinya tetap dipengaruhi oleh karakteristik masing-masing data.