كيف يتم حساب CMO (الصيغة والمدخلات والتحقق)
الإجابة المباشرة: كيف يتم حساب CMO
يتم حساب CMO (Chande Momentum Oscillator) من خلال مقارنة إجمالي حجم التغيرات السعرية الصعودية الأخيرة (“مكاسب”) مع إجمالي حجم التغيرات السعرية الهابطة الأخيرة (“خسائر”) ضمن نافذة نظر (lookback) ثابتة، ثم تحويل هذه المقارنة إلى قيمة مذبذب (oscillator).
إحدى الطرق الشائعة لعرضها هي:
CMO = 100 × (SumGains − SumLosses) / (SumGains + SumLosses)
حيث:
- SumGains هو مجموع التغيرات السعرية الإيجابية خلال فترة النظر (lookback).
- SumLosses هو مجموع القيم المطلقة للتغيرات السعرية السلبية خلال فترة النظر (lookback).
ينتج عن ذلك قيمة تقع عادةً بين −100 و +100 عندما لا تكون قيمة المقام مساوية للصفر.
الآلية: تحديد المدخلات والحساب خطوة بخطوة
1) اختر طول النظر (lookback length)
اختر طول نظر (lookback) عددًا صحيحًا، وغالبًا ما يُرمز له بـ N. يستخدم الحساب في أي وقت معين آخر N تغيرًا من السعر إلى السعر ضمن السلسلة.
افتراض للتحقق: يجب أن تستخدم نفس N في كل مرة تحسب فيها CMO عند إجراء مقارنة حتى تكون المقارنة ذات معنى.
2) اختر سلسلة الأسعار
يتم حساب CMO من سلسلة زمنية للأسعار. يمكن تعريف السعر بعدة طرق (على سبيل المثال، سعر الإغلاق)، لكن أي تعريف تستخدمه يجب أن يكون متسقًا.
افتراض على سبيل المثال: تستخدم الحسابات أدناه سلسلة سعر واحدة P(t) وتعرّف التغيرات من خطوة زمنية إلى التي تليها.
3) احسب تغيرات السعر لكل خطوة
لكل خطوة زمنية i ضمن نافذة النظر (lookback window)، احسب التغير:
- ΔP(i) = P(i) − P(i−1)
ثم قسّم كل تغير إلى جزأين:
- Gain(i) = ΔP(i) إذا كانت ΔP(i) > 0، وإلا 0
- Loss(i) = −ΔP(i) إذا كانت ΔP(i) < 0، وإلا 0
لاحظ اصطلاح الإشارة: يتم تخزين الخسائر كقيم موجبة تمثل المقدار.
4) اجمع المكاسب والخسائر عبر نافذة النظر (lookback window)
- SumGains = Σ Gain(i) لكل i في آخر N خطوات
- SumLosses = Σ Loss(i) لكل i في آخر N خطوات
5) طبّق صيغة المذبذب (oscillator formula)
احسب:
- CMO = 100 × (SumGains − SumLosses) / (SumGains + SumLosses)
مهم: إذا كانت SumGains + SumLosses = 0، فإن المذبذب يكون غير محدد رياضيًا لأنك ستقسم على صفر. في التطبيقات الفعلية، قد تتعامل الأدوات مع ذلك بطرق مختلفة (على سبيل المثال، تركه فارغًا أو تعيين قيمة محددة). إذا كنت تريد تحققًا مستقلاً، تحقّق بدقة من كيفية تعامل طريقتك مع حالة المقام الصفري.
دليل أو مثال: شرح عددي صغير خطوة بخطوة
افترض N = 4 وأنك تستخدم سلسلة أسعار P بهذه القيم عند خطوات زمنية متتالية:
- P(0)=100, P(1)=102, P(2)=101, P(3)=103, P(4)=103
الخطوة 1: احسب التغيرات خلال آخر 4 خطوات:
- ΔP(1)=102−100=+2 → Gain=2, Loss=0
- ΔP(2)=101−102=−1 → Gain=0, Loss=1
- ΔP(3)=103−101=+2 → Gain=2, Loss=0
- ΔP(4)=103−103=0 → Gain=0, Loss=0
الخطوة 2: اجمع المكاسب والخسائر:
- SumGains = 2 + 0 + 2 + 0 = 4
- SumLosses = 0 + 1 + 0 + 0 = 1
الخطوة 3: احسب CMO:
- CMO = 100 × (4 − 1) / (4 + 1)
- CMO = 100 × 3/5
- CMO = 60
ماذا يعني ذلك من ناحية الحساب: الاتجاه الصافي موجب لأن مجموع المكاسب يتفوق على مجموع الخسائر ضمن النافذة المختارة.
القيود والمخاطر: ما الذي قد يحدث خطأ ولماذا يختلف
1) قيم غير محددة أو غير مستقرة عندما تكون المكاسب والخسائر كلاهما صفر
إذا، خلال نافذة النظر (lookback window)، لم يحدث ارتفاع أو انخفاض (أي أن جميع التغيرات تساوي صفرًا)، فسيكون SumGains = 0 و SumLosses = 0، وبالتالي يصبح المقام صفرًا. قد تعرض منصات مختلفة مخرجات مختلفة. هذه نقطة فشل رئيسية عند إجراء تحقق مستقل.
2) الحساسية لطريقة تعريف سعر الإدخال
تعتمد قيمة CMO على سلسلة الأسعار المختارة (على سبيل المثال، سعر الإغلاق مقابل تعريف سعر آخر متسق). حتى إذا كانت “نافذة النظر” والصيغة متطابقتين، فإن استخدام سلسلة إدخال مختلفة يمكن أن يغيّر المكاسب والخسائر المحسوبة.
3) الحساسية لطول نافذة النظر (N)
يؤدي تغيير N إلى تغيير التغيرات السابقة التي يتم تضمينها، وبالتالي قد يتحرك CMO. النوافذ الأطول تُنعّم المزيد من التذبذب عبر تجميع عدد أكبر من الخطوات؛ بينما النوافذ الأقصر تستجيب أكثر للتغيرات الأخيرة. هذه ليست مشكلة في الصيغة، لكنها تؤثر على قابلية المقارنة بين الرسوم البيانية.
4) ليست ضمانًا بشأن الحركة المستقبلية
يلخص CMO التغيرات السابقة ضمن نافذة ثابتة؛ ولا تُثبت الأنماط التاريخية في CMO أن أي اتجاه مستقبلي سيتبعها. قد تؤثر التكاليف واختلافات التنفيذ وتغيرات نظام السوق جميعها على كيفية تصرف السعر بعد قراءة معينة للمذبذب.
5) اختلافات البيانات والمعاينة
إذا كنت تحسب CMO من أطر زمنية مختلفة (أو من بيانات تختلف في كيفية تشكيل الخطوات الزمنية)، فإن مجموعة قيم ΔP تتغير، وبالتالي يتغير CMO.
التحقق والسؤال التالي: كيف تتحقق من عملك
للتحقق بشكل مستقل من أنك حسبت CMO بشكل صحيح:
- أكد تعريف السعر (أي سلسلة استخدمتها) وطول النظر N.
- أعد حساب ΔP(i) لكل خطوة داخل النافذة.
- قسّم كل ΔP إلى مقادير Gain و Loss باستخدام قاعدة الإشارة نفسها.
- اجمع المكاسب والخسائر وتأكد أن المقام (SumGains + SumLosses) غير صفري.
- طبّق CMO = 100 × (SumGains − SumLosses) / (SumGains + SumLosses).
السؤال التالي الذي يجب التفكير فيه: “كيف تغيّر إعدادات CMO سلوكه؟” يعتمد ذلك على اختيار N وسلسلة الأسعار، وكلاهما يؤثر مباشرة على مجموعات المكاسب/الخسائر.