GaiaExGaiaEx
التنبّؤ بالسلاسل الزمنية بنماذج LSTM والمحوِّلات
مطوّرالذكاء الاصطناعي والتعلم الآلي12 min read

التنبّؤ بالسلاسل الزمنية بنماذج LSTM والمحوِّلات

استخدام نماذج السلاسل للتنبّؤ بحركة الأسعار

مشاركة المنشورات

فهم بيانات السلاسل الزمنية

السلسلة الزمنية هي تتابع من نقاط البيانات مرتّبة بالزمن — أسعار الأسهم في كل دقيقة، إغلاقات Bitcoin اليومية، قراءات الحرارة كل ساعة. ما يميّز السلسلة الزمنية عن البيانات الأخرى هو أن الترتيب مهم. خلط صفوف في مجموعة بيانات تصنيف غير مؤذٍ؛ خلط سلسلة زمنية يدمّر معناها.

ثلاث خصائص تحدّد طبيعة أي سلسلة زمنية. الاتجاه هو الوجهة طويلة الأمد — تحرّك سعر BTC من $3,000 في أوائل 2019 إلى $60,000 بحلول أواخر 2021، اتجاه صاعد واضح. الموسمية تشير إلى أنماط متكرّرة على فترات ثابتة — أسواق العملات الرقمية تشهد غالبًا حجمًا متزايدًا خلال ساعات السوق الأمريكية ونشاطًا أقل في عطلات نهاية الأسبوع. السكون (Stationarity) يعني بقاء خصائص إحصائية كالمتوسط والتباين ثابتة عبر الزمن. أغلب السلاسل الزمنية المالية غير ساكنة — الأسعار تنجرف صاعدة أو تنهار — وهذا يخلق تحدّيات للنماذج التي تفترض توزيعات مستقرة.

قبل تغذية بيانات مالية إلى أي نموذج، تحتاج إلى تحويلها. أخذ العوائد اللوغاريتمية (اللوغاريتم الطبيعي لنسب السعر بين فترات متتالية) يحوّل الأسعار غير الساكنة إلى عوائد ساكنة تقريبًا. الفَرَقة — طرح القيمة السابقة — تحقّق أثرًا مماثلًا. هذه التحويلات ليست اختيارية؛ بل شروط مسبقة لعمل أغلب طرق التنبّؤ بشكل صحيح.

تحليل سلسلة زمنية مالية إلى عناصرها (توضيحي) الاتجاه التذبذب الموسمي الزمن ← القيمة المرصودة = الاتجاه + الموسمية + التشويش (العوائد غالبًا تستقر التشويش)
الأسعار الحقيقية تمزج انجرافًا بطيئًا، وأنماطًا متكرّرة، وعشوائية — النماذج تستهدف الأجزاء التي تريد التنبؤ بها.

ARIMA: خط الأساس الكلاسيكي

ARIMA (المتوسط المتحرك المتكامل ذاتي الارتداد) كان عمود الأساس في التنبّؤ بالسلاسل الزمنية لعقود. يجمع بين ثلاثة مكوّنات: AR(p) يستخدم القيم p السابقة للتنبّؤ بالقيمة التالية، I(d) يُفرِّق السلسلة d مرات لتحقيق السكون، وMA(q) ينمذج حدود الخطأ من التنبّؤات السابقة.

بالنسبة للبيانات المالية، يعمل ARIMA كخط أساس حاسم. أي نموذج تعلّم آلي لا يستطيع التفوّق على ARIMA مضبوط جيدًا على مجموعة بياناتك المحدَّدة يضيف تعقيدًا دون قيمة. عمليًا، يؤدّي ARIMA بشكل مفاجئ جيد للتنبّؤات قصيرة الأفق للبيانات منخفضة التردد (شموع يومية أو أسبوعية) حيث تكون نسبة الإشارة إلى التشويش قابلة للإدارة.

# خط أساس ARIMA لعوائد BTC اليومية
from statsmodels.tsa.arima.model import ARIMA
import pandas as pd

returns = prices.pct_change().dropna()
model = ARIMA(returns, order=(2, 0, 1))  # AR(2)، بلا فَرَقة (العوائد ساكنة أصلًا)، MA(1)
fitted = model.fit()
forecast = fitted.forecast(steps=5)
print(f"AIC: {fitted.aic:.2f}")  # AIC أدنى = نموذج أفضل

تصبح حدود ARIMA واضحة مع الأنماط غير الخطية المعقّدة، وتغيّرات النظام، وفضاءات الميزات عالية الأبعاد. هنا يدخل التعلّم العميق على الخط.

ARIMA(p,d,q): كيف تُغذّي القيم والأخطاء السابقة التنبّؤ AR(p) y يستخدم yt-1…t-p I(d) d فَرَقات MA(q) أخطاء εt-1…t-q ŷt+1 تنبّؤ اختر (p,d,q) باستخدام ACF/PACF، وAIC، أو التحقق التقاطعي المتدحرج — ثم قارن بخطوط أساس التعلّم الآلي. العوائد المالية غالبًا تضبط d=0 عند استخدام العوائد اللوغاريتمية مباشرة
الارتداد الذاتي، والتكامل (الفَرَقة)، وصدمات المتوسط المتحرك تجتمع في محرّك تنبّؤ خطي مضغوط واحد.

شبكات LSTM لنمذجة السلاسل

شبكات الذاكرة القصيرة والطويلة المدى (LSTM) هي نوع من الشبكات العصبية المتكرّرة صُمِّم لتعلّم الاعتماديات بعيدة المدى في البيانات المتسلسلة. على خلاف الشبكات العصبية المتكرّرة الأساسية، التي تعاني من تدرّجات متلاشية وتنسى المعلومة بعد خطوات زمنية قليلة فقط، تستخدم LSTM آلية بوّابات — بوّابة النسيان، وبوّابة الإدخال، وبوّابة الإخراج — للاحتفاظ بالمعلومة أو التخلّي عنها بشكل انتقائي عبر مئات الخطوات.

للسلاسل الزمنية المالية، تقدّم LSTM ميزتين عن ARIMA: تستطيع نمذجة العلاقات غير الخطية (ديناميكيات السعر نادرًا ما تكون خطية)، وتستطيع دمج ميزات مدخلة متعددة في الوقت نفسه — لا الأسعار السابقة فقط، بل الحجم، والتقلب، ومعدلات التمويل، وعدم توازن دفتر الأوامر، وأي إشارة أخرى تعتقد أنها تحمل معلومة تنبّؤية.

يتطلب تحضير البيانات لـLSTM نَوفَذة (windowing) دقيقة. تُنشئ سلاسل مدخلة بطول ثابت (مثلًا، 60 خطوة زمنية) مقترنة بالقيمة الهدف (السعر أو العائد التالي). التسوية (Normalization) حاسمة — قِس الميزات إلى [0, 1] أو وحّدها إلى متوسط صفري وتباين واحد. لكن هنا المصيدة: يجب أن تُلائم المسوِّي على بيانات التدريب فقط وتحوِّل بيانات التحقق والاختبار باستخدام نفس المعاملات. الملاءمة على مجموعة البيانات الكاملة تُسرِّب معلومة مستقبلية.

لا تُسوِّ أبدًا باستخدام إحصائيات محسوبة من مجموعة البيانات كاملة. لائم مسوِّيك على مجموعة التدريب فقط، ثم طبّقه على مجموعتَي التحقق والاختبار. هذا الخطأ الواحد يتسبّب في تحيّز استباق أكثر من أي خطأ آخر في تحضير البيانات.

# تحضير بيانات LSTM بتسوية صحيحة
import numpy as np
from sklearn.preprocessing import MinMaxScaler

def create_sequences(data, window=60):
    X, y = [], []
    for i in range(window, len(data)):
        X.append(data[i - window:i])
        y.append(data[i, 0])  # التنبّؤ بالإغلاق التالي
    return np.array(X), np.array(y)

# لائم المسوِّي على بيانات التدريب فقط
scaler = MinMaxScaler()
train_scaled = scaler.fit_transform(train_data)
test_scaled = scaler.transform(test_data)  # حوِّل، لا تُلائم

X_train, y_train = create_sequences(train_scaled)
X_test, y_test = create_sequences(test_scaled)

آليات الانتباه ومحوِّلات الدمج الزمني

نفس آلية الانتباه الذاتي التي أحدثت ثورة في معالجة اللغة الطبيعية أثبتت قوة مماثلة للسلاسل الزمنية. بدلًا من معالجة السلاسل خطوة بخطوة مثل LSTM، يسمح الانتباه للنموذج بالنظر إلى كل الخطوات الزمنية في الوقت نفسه، متعلّمًا أي اللحظات التاريخية أكثر أهمية للتنبّؤ بالمستقبل.

محوِّل الدمج الزمني (Temporal Fusion Transformer، TFT)، الذي قدّمه Google Research في 2021، مبنيّ خصيصًا للتنبّؤ متعدد الآفاق بالسلاسل الزمنية. يجمع بين عدة ابتكارات:

  • شبكات اختيار المتغيّرات — تتعلّم تلقائيًا أي الميزات المدخلة الأكثر أهمية، موفّرة قابلية تفسير مدمجة. تستطيع رؤية إن كان النموذج يعتمد أكثر على زخم السعر، أو الحجم، أو معدلات التمويل.
  • شبكات متبقّية مسنودة — تكبت المدخلات غير ذات الصلة وتمكّن النموذج من التعامل مع تفاعلات ميزات غير خطية معقّدة.
  • انتباه متعدد الرؤوس عبر الزمن — يحدّد أي الخطوات الزمنية التاريخية الأكثر إفادة لكل أفق تنبّؤ.
  • مخرجات كمّية — تُنتِج فترات تنبّؤ (المئينات 10، و50، و90) بدلًا من تقديرات نقطية، ما يمنحك مقياسًا لعدم اليقين — أساسي لإدارة المخاطر في التداول.

عمليًا، تفوّقت محوّلات TFT على LSTM والنماذج التقليدية في معايير قياسية تشمل التنبّؤ بالطلب على الكهرباء، والتنبّؤ بمبيعات التجزئة، ونمذجة التقلب المالي. لأسواق العملات الرقمية المتاحة عبر منصات مثل GaiaEx، تجعل قدرة TFT على معالجة مدخلات متنوّعة — بيانات وصفية ثابتة (نوع الأصل، تاريخ الإدراج)، قيم مستقبلية معروفة (يوم الأسبوع، وقت اليوم)، وميزات مرصودة متغيّرة زمنيًا (السعر، الحجم، مقاييس على السلسلة) — من الملائمة الخاصة.

مثال عملي: التنبّؤ باتجاه سعر BTC

لنكن صادقين حول ما هو قابل للتحقيق. التنبّؤ بالسعر الدقيق لـBitcoin غدًا مستحيل تقريبًا. تجادل فرضية السوق الفعّال (EMH) أن الأسعار تعكس أصلًا كل المعلومات المتاحة، ما يجعل التنبّؤ المستمر مهمّة عبثية. في العملات الرقمية، الشكل الضعيف من EMH قابل للنقاش — الأسواق أقل كفاءة من الأسهم — لكن نسبة التشويش إلى الإشارة تظل قاسية.

هدف أكثر واقعية هو الدقة الاتجاهية: هل ستغلق BTC أعلى أو أدنى مما افتتحت؟ مشكلة التصنيف الثنائي هذه أكثر قابلية للحل، وحتى التحسينات المتواضعة عن دقة 50% (لنقل، 53–55% باستمرار) يمكن أن تكون مربحة جدًا مع حجم مركز وإدارة مخاطر مناسبين.

أنبوب عمل عملي يبدو كالتالي:

  • الميزات: عوائد 60 فترة، RSI، رسم بياني MACD، عرض نطاق بولينجر، نسبة الحجم (الحالي مقابل متوسط 20 فترة)، معدل التمويل من العقود الآجلة الدائمة، هيمنة BTC، وتغيّر العقود المفتوحة.
  • النموذج: LSTM ثنائي الطبقة بـ128 وحدة خفية، تسرّب بـ0.3، متبوعًا بطبقة كثيفة بتفعيل سيغمويد للتصنيف الثنائي.
  • التقسيم: التدريب على 2020–2023، التحقق على يناير–يونيو 2024، الاختبار على يوليو–ديسمبر 2024. لا تخلط أبدًا — قسّم دائمًا زمنيًا.
  • التقييم: الدقة الاتجاهية، الدقة/الاستدعاء على تنبّؤات الصعود مقابل النزول، والأهم — ربح وخسارة محاكى بافتراض حجم مركز ثابت لكل إشارة.

إذا حقّق نموذجك دقة اتجاهية 54% على مجموعة اختبار خارج العيّنة بعامل ربح فوق 1.2، فلديك شيء يستحق مزيدًا من الاستكشاف. إذا أظهر دقة 65%، فأنت على الأرجح بالغت في التخصيص. الميزات الحقيقية في الأسواق المالية صغيرة، وأي من يزعم غير ذلك يبيعك شيئًا.

مقاييس التقييم ونهج التجميع

اختيار المقياس الصحيح يحدّد إن كنت تحسِّن الشيء الصحيح. MAE (متوسط الخطأ المطلق) يخبرك بمقدار حجم أخطاء تنبّؤك بوحدات بياناتك نفسها — بديهي لكنه لا يعاقب الأخطاء الكبيرة بشكل غير متناسب. RMSE (جذر متوسط مربّع الخطأ) يرفّع الأخطاء إلى مربعات قبل حساب المتوسط، معاقِبًا القيم الشاذة بشدّة — مناسب عندما يهمّ خطأ تنبؤ كارثي واحد أكثر من أخطاء صغيرة عديدة. الدقة الاتجاهية تقيس النسبة المئوية للمرات التي يتنبّأ فيها نموذجك بشكل صحيح إن كان السعر يصعد أو ينزل — غالبًا المقياس الأكثر صلة لإشارات التداول.

نُهُج التجميع تجمع تنبّؤات من نماذج متعددة لتقليل التباين وتحسين المتانة. النُهُج الشائعة تشمل:

  • المتوسط البسيط — احسب متوسط تنبّؤات LSTM، ومحوِّل، وARIMA. إذا التقط كل نموذج جانبًا مختلفًا من الإشارة، يتفوّق التجميع على أي نموذج منفرد.
  • Stacking — درّب نموذجًا فوقيًا (شجرة معزَّزة بالتدرّج مثلًا) ليتعلّم التركيبة المُثلى لتنبّؤات النماذج الأساسية.
  • التبديل الواعي بالنظام — استخدم كاشف نظام تقلب لاختيار أي نموذج تثق به. قد تتفوّق LSTM في الأسواق الاتجاهية بينما يتفوّق نموذج الارتداد نحو المتوسط في أوضاع النطاقات.

أيّ نهج تختاره، تذكّر أن الفجوة بين البحث والإنتاج واسعة. نموذج يتنبّأ باتجاه BTC بدقة 55% في دفتر Jupyter يحتاج للنجاة من زمن الاستجابة، والانزلاق السعري، وكلفة المعاملات عند تنفيذه حيًا عبر منصة مثل GaiaEx. ابنِ أنبوب تقييمك ليحاكي هذه الحقائق من اليوم الأول — لا كفكرة لاحقة.