كيف يتم حساب استراتيجيات MACD؟
الإجابة المباشرة
يتم حساب MACD (اختصارًا لـ “Moving Average Convergence Divergence”) اعتمادًا على متوسطين متحركين أسيين (EMAs) يتم حسابهما على نفس سلسلة الأسعار. الخطوات الأساسية هي: حساب EMA سريع، حساب EMA بطيء، طرحهما للحصول على خط MACD، تطبيق EMA على خط MACD للحصول على خط الإشارة، ثم طرح الإشارة من MACD للحصول على المدرج التكراري.
عادةً ما تعني مقاربة “استراتيجيات MACD” استخدام قيم MACD كمدخلات لمنطق القواعد (على سبيل المثال، مقارنة خط MACD بخط الإشارة أو تحليل تغيّرات المدرج التكراري). أما حساب المؤشر نفسه فهو رياضيات المؤشر المذكورة أعلاه.
الآلية والتعريفات
1) اختر سلسلة سعر الإدخال
أولًا، حدّد ماذا يعني “السعر” في حسابك. تشمل الخيارات الشائعة سعر الإغلاق، أو أحيانًا سعرًا متوسطًا. بعد اختيار سلسلة الإدخال، يجب تطبيق نفس السلسلة بشكل متسق على كل EMA في حساب MACD.
افتراض لأي مثال مُنجز: تستخدم جميع الحسابات سلسلة زمنية واحدة من الأسعار مأخوذة عند وتيرة ثابتة (على سبيل المثال، إغلاق كل شمعة/بار). إذا تغيّرت وتيرة بياناتك أو السلسلة، ستتغير قيم MACD.
2) احسب EMA السريع وEMA البطيء
لنفترض:
n_fast= طول EMA السريع (معلمة)n_slow= طول EMA البطيء (معلمة)P_t= السعر المختار عند الزمنt
الـ EMA هو متوسط متحرك مرجّح يعطي وزنًا أكبر للمشاهدات الأحدث. في كثير من التعريفات، يمكن كتابة الـ EMA بشكل تراجعي:
EMA_fast(t) = EMA_fast(t-1) + α_fast * (P_t - EMA_fast(t-1))EMA_slow(t) = EMA_slow(t-1) + α_slow * (P_t - EMA_slow(t-1))
حيث تعتمد عوامل التمليس α_fast وα_slow على الأطوال:
α_fast = 2 / (n_fast + 1)α_slow = 2 / (n_slow + 1)
ملاحظة التهيئة (حدّ مادي): تتطلب الـ EMAs قيمة ابتدائية. قد تُهيّئ المنصات المختلفة الـ EMAs بطرق مختلفة (على سبيل المثال، البدء من أول سعر، أو استخدام متوسط متحرك بسيط كقيمة ابتدائية للـ EMA). وهذا يعني أن قيم MACD المبكرة قد لا تتطابق تمامًا بين التطبيقات المختلفة.
3) احسب خط MACD
يكون خط MACD عند الزمن t هو الفرق بين الـ EMA السريع والـ EMA البطيء:
MACD(t) = EMA_fast(t) - EMA_slow(t)
يمكن أن يكون هذا الفرق موجبًا أو سالبًا. تعتمد قيمته المطلقة على مقياس السعر وعلى أطوال الـ EMA المختارة.
4) احسب خط الإشارة كـ EMA لخط MACD
لتكن n_signal هي طول EMA خط الإشارة (معلمة). خط الإشارة هو EMA يُطبّق على سلسلة MACD:
Signal(t) = Signal(t-1) + α_signal * (MACD(t) - Signal(t-1))α_signal = 2 / (n_signal + 1)
مرة أخرى، يحتاج EMA خط الإشارة إلى طريقة تهيئة.
5) احسب المدرج التكراري
يُبرز المدرج التكراري المسافة بين خط MACD وخط الإشارة:
Histogram(t) = MACD(t) - Signal(t)
إذا كان المدرج التكراري موجبًا، فإن MACD أعلى من الإشارة؛ وإذا كان سالبًا، فإن MACD أدنى من الإشارة.
ملخص المعلمات
يعتمد حساب MACD على ثلاث أطوال رئيسية:
n_fast(طول EMA السريع)n_slow(طول EMA البطيء)n_signal(طول EMA خط الإشارة)
كما يعتمد أيضًا على:
- سلسلة الأسعار المختارة
P_t - كيفية تهيئة الـ EMAs في تطبيقك
- وتيرة أخذ العينات لبياناتك
دليل أو مثال يمكنك التحقق منه
فيما يلي مثال عددي عام باستخدام افتراضات بسيطة حتى تتمكن من إعادة إنتاجه.
افتراض:
- استخدم سلسلة أسعار قصيرة عند الأزمنة
t = 1..6 - استخدم
n_fast = 3وn_slow = 6وn_signal = 2 - استخدم التكرار الخاص بالـ EMA مع بعض التهيئة (يجب أن تختار طريقة واحدة ثم تتبعها باستمرار)
اختر سلسلة أسعار إدخال (قيم مثال):
P_1, P_2, P_3, P_4, P_5, P_6
الخطوة A: احسب α_fast = 2/(3+1) = 0.5 وα_slow = 2/(6+1) ≈ 0.2857.
الخطوة B: قيم البداية.
- إحدى الطرق هي
EMA_fast(1) = P_1وEMA_slow(1) = P_1.
الخطوة C: كرّر للأمام عند t = 2..6:
EMA_fast(t) = EMA_fast(t-1) + 0.5*(P_t - EMA_fast(t-1))EMA_slow(t) = EMA_slow(t-1) + 0.2857*(P_t - EMA_slow(t-1))
الخطوة D: خط MACD:
MACD(t) = EMA_fast(t) - EMA_slow(t)لكلt.
الخطوة E: خط الإشارة:
α_signal = 2/(2+1) = 2/3 ≈ 0.6667- اختر
Signal(1) = MACD(1)(أو تهيئة ابتدائية أخرى متسقة)، ثم كرّر:Signal(t) = Signal(t-1) + 0.6667*(MACD(t) - Signal(t-1))
الخطوة F: المدرج التكراري:
Histogram(t) = MACD(t) - Signal(t).
ما الذي يجب أن تلاحظه عند حسابه:
- يؤدي تغيير
n_fastأوn_slowأوn_signalإلى تغيير نعومة وتأخر (lag) خط MACD وخط الإشارة. - المدرج التكراري ليس سلسلة مستقلة؛ بل هو مشتق رياضيًا من MACD وSignal.
إذا اختلف MACD الذي حسبته عن أداة رسم بياني، فالأسباب الأكثر شيوعًا هي تهيئة EMA، أو حقول سعر مختلفة (الإغلاق مقابل النموذجي/typical)، أو تفسير مختلف للمعلمات.
القيود والمخاطر (أنماط فشل مادية)
1) اختلافات تهيئة EMA
نظرًا لأن الـ EMAs تحتاج إلى قيمة ابتدائية، فقد ينتج عن البرامج المختلفة قيم MACD مختلفة قليلًا في بداية السلسلة. وقد ينتقل ذلك إلى EMA خط الإشارة والمدرج التكراري، خصوصًا مع مجموعات بيانات قصيرة.
2) حساسية المعلمات
يعتمد MACD بشكل مباشر على n_fast وn_slow وn_signal. قد تؤدي التغييرات الصغيرة إلى تغيير:
- السعة (حجم القيم الظاهرة)
- التوقيت (مدى سرعة استجابة MACD)
- وتيرة نقاط التحول
لذلك، إذا قارن شخص ما قيم MACD عبر مجموعات معلمات مختلفة، فقد تكون المقارنة مضللة.
3) اختيار سلسلة الأسعار وتواتر الزمن
يتم حساب MACD من سلسلة إدخال محددة P_t ويتم أخذها عند فاصل زمني معين. إذا حسبت MACD على تعريف سعر مختلف أو إطار زمني مختلف، فلن تتطابق قيم المؤشر الناتجة.
4) استخدام MACD في القواعد لا يزيل عدم اليقين
حتى عندما يتم حساب المؤشر بشكل صحيح، فإن تحويل تلك القيم إلى قرارات يضيف عدم يقين. تعتمد النتائج الفعلية في بيئات التداول الحية على عوامل كثيرة خارج معادلة MACD (على سبيل المثال، جودة التنفيذ، وظروف السوق، وتكاليف التشغيل). لا تضمن العلاقات التاريخية النتائج المستقبلية.
التحقق وما الذي يجب فحصه بعد ذلك
للتحقق بشكل مستقل من أنك (أو مزود) تحسب MACD بشكل صحيح، يمكنك القيام بذلك دون الاعتماد على نصائح التداول:
- تأكد من سلسلة سعر الإدخال الدقيقة (على سبيل المثال، close) وتواتر البيانات.
- تأكد من قيم المعلمات لـ fast EMA وslow EMA وsignal EMA.
- أعد حساب الـ EMAs باستخدام طريقة التهيئة نفسها التي تعتقد أن التطبيق يستخدمها.
- احسب
MACD = EMA_fast − EMA_slow، ثم احسبSignalكـ EMA لِـ MACD، ثم احسبHistogram = MACD − Signal.
السؤال التالي الذي يستحق التوضيح في أي نقاش حول “استراتيجيات MACD”: ما منطق القواعد الذي يتم تطبيقه فوق قيم MACD (على سبيل المثال، أي مقارنات أو شروط للمدرج التكراري)؟ يكون الحساب حتميًا (deterministic) بالنظر إلى المدخلات، بينما تحدد طبقة الاستراتيجية كيفية تفسير تلك القيم.