في هذا المشروع قمت بتطوير نظام تنبؤ بسعر الذهب باستخدام تقنيات التعلم الآلي (Machine Learning). الهدف من المشروع هو بناء نموذج قادر على التنبؤ بقيمة سعر الذهب اعتمادًا على مجموعة من المؤشرات الاقتصادية والمالية.
بدأت المشروع بمرحلة تحليل البيانات الاستكشافي (EDA) حيث قمت بفحص البيانات وفهم خصائصها وتحليل العلاقات بين المتغيرات المختلفة مثل:
SPX ، GLD ، USO ، SLV ، وسعر صرف EUR/USD.
كما قمت بتحليل توزيع البيانات واكتشاف القيم الشاذة (Outliers) باستخدام الرسوم البيانية مثل:
Histogram
Boxplot
Correlation Heatmap
بعد ذلك قمت بمرحلة معالجة البيانات (Data Preprocessing) والتي تضمنت:
- معالجة القيم الشاذة باستخدام IQR
- تطبيق التحويل اللوغاريتمي لبعض المتغيرات
- تحويل التاريخ إلى ميزات جديدة مثل Year و Month
- حذف الأعمدة غير الضرورية
- تقسيم البيانات إلى Training و Test
- استخدام StandardScaler لتوحيد القيم
بعد تجهيز البيانات قمت بتجربة مجموعة كبيرة من خوارزميات التعلم الآلي مثل:
Linear Regression
Ridge
Lasso
KNN
Decision Tree
Random Forest
Gradient Boosting
XGBoost
LightGBM
CatBoost
ثم قمت باستخدام GridSearchCV للقيام بعملية Hyperparameter Tuning من أجل العثور على أفضل إعدادات لكل نموذج.
بعد تدريب النماذج تم تقييمها باستخدام عدة مقاييس أداء مثل:
R2 Score
RMSE
MAE
تم ترتيب النماذج حسب أفضل أداء باستخدام RMSE، وكان أفضل نموذج هو:
KNN Regressor مع n_neighbors = 3
وقد حقق النموذج:
Test R2 ≈ 0.986
RMSE ≈ 0.015
MAE ≈ 0.009
وأخيرًا قمت بحفظ النموذج النهائي باستخدام Joblib ليكون جاهزًا للاستخدام في التطبيقات أو أنظمة التنبؤ المستقبلية.
التقنيات المستخدمة:
Python
Pandas
NumPy
Scikit-learn
XGBoost
LightGBM
CatBoost
Matplotlib
Seaborn
ناتج المشروع:
بناء نموذج تعلم آلي قادر على التنبؤ بسعر الذهب بدقة عالية اعتمادًا على مجموعة من المؤشرات المالية والاقتصادية.