كيفية عمل Ultimate Oscillator في الفوركس
الإجابة المباشرة
Ultimate Oscillator هو مؤشر زخم يحوّل حركة السعر إلى أوسيلاتور عبر مقارنة “ضغط الشراء” بالمدى الإجمالي للتداول عبر فترات نظر متعددة. في الفوركس، تحسبه من قيم high وlow وclose للأداة، ثم تجمع ثلاث قراءات وسيطة بأوزان ثابتة لإنتاج رقم واحد ضمن حدود. لا يقوم ناتجه بالتنبؤ بالعوائد المستقبلية من تلقاء نفسه؛ بل يجب تفسير قيمته كقياس للزخم النسبي في الماضي، بناءً على مدخلات وحسابات محددة بوضوح.
الآليات: التعريف والمدخلات
في جوهره، يقيم Ultimate Oscillator أين يقع الـ close داخل نطاق high–low حديث، ويسأل: “هل تم دفع الـ close نحو قمة النطاق مقارنةً بما نتوقعه من الحركة المعتادة؟” يقوم بذلك عبر كميتين وسيطتين مستخدمتين لكل فترة نظر.
- ضغط الشراء (BP)
- يتم تعريف ضغط الشراء كالتالي:
- BP = Close − Min(Low, Previous Close)
- إذا كان الـ close أعلى من الحد الأدنى بين low الحالي وPrevious Close، فإن BP يكون موجبًا، ما يشير إلى أن الـ close حدث أعلى من هذا المرجع.
- المدى الحقيقي (TR)
- يتم تعريف True Range كأقصى قيمة من ثلاث قياسات:
- TR1 = Current High − Current Low
- TR2 = Absolute(Current High − Previous Close)
- TR3 = Absolute(Current Low − Previous Close)
- TR يمثل مدى تحرك السعر عبر الفترة ذات الصلة، مع مراعاة الفجوات مقارنةً بـ Previous Close.
لكل فترة نظر (غالبًا ما تُكتب كـ short وmedium وlong، وغالبًا 7 و14 و28 شمعة)، تحسب النسبة:
- Average BP / Average TR وبشكل أدق، بالنسبة لفترة معينة:
- SumBP = Σ BP عبر آخر N شمعة
- SumTR = Σ TR عبر آخر N شمعة
- RawComponent = SumBP / SumTR
ثم تجمع المكوّنات الثلاثة بأوزان ثابتة لتكوين مدخل الأوسيلاتور:
- WeightedValue = (4 × ComponentShort + 2 × ComponentMedium + 1 × ComponentLong) / (4 + 2 + 1)
- التحجيم إلى أوسيلاتور ثم يتم تحجيم نسبة الزخم المجمعة إلى أوسيلاتور يكون محصورًا بين 0 و100:
- Ultimate Oscillator = 100 × WeightedValue
افتراض نمذجة مهم لحسابات الفوركس: “بيانات الشمعة (bar)” (high وlow وclose) يجب أن تكون معرفة بشكل متسق مع إطار الزمن الذي تستخدمه في الرسم البياني. إذا كان مزود البيانات لديك ينسّق الشمعة بشكل مختلف (على سبيل المثال، معالجة جلسات مختلفة لأدوات معينة)، فقد تتغير BP وTR لأن المدخلات تتغير.
التسلسل خطوة بخطوة (ماذا تحسب وبأي ترتيب)
طريقة عملية للتحقق من الآلية هي إعادة حسابها مباشرة من بيانات OHLC. يفصل التسلسل أدناه بين الآليات الثابتة والمدخلات المتغيرة.
- اختر إطار الزمن وتعريف الشمعة
- اختر إطار الزمن (على سبيل المثال، شموع 1-hour، شموع 15-minute، إلخ).
- حدد أي سعر close تستخدمه (عادةً إغلاق الشمعة).
- لكل شمعة، احسب BP وTR باستخدام الـ previous close
- تتطلب BP الـ close الحالي وlow الحالي وprevious close.
- تتطلب TR high الحالي وlow الحالي وprevious close.
- هذا يعني أن أول شمعة في مجموعة بياناتك لا يمكنها حساب BP/TR بالكامل دون وجود شمعة سابقة.
- لكل فترة نظر N (short وmedium وlong)، اجمع BP وTR
- SumBP(N) = Σ BP عبر N شمعة
- SumTR(N) = Σ TR عبر N شمعة
- Component(N) = SumBP(N) / SumTR(N)
- اجمع المكوّنات بأوزان ثابتة
- WeightedValue = (4 × Component(short) + 2 × Component(medium) + 1 × Component(long)) / 7
- القسمة على 7 هي التطبيع المفترض من الأوزان 4 و2 و1.
- حوّل إلى أوسيلاتور من 0–100
- Ultimate Oscillator = 100 × WeightedValue
هذا هو التسلسل الذي تمثل به الآلية. الأجزاء الوحيدة “المتحركة” هي مدخلات OHLC (متغيرة) وأطوال الفترات/الأوزان (غالبًا ثابتة). إذا غيّرت أطوال الفترات، أو إذا تغيّر تعريف OHLC، فيجب أن تتوقع مخرجات أوسيلاتور مختلفة.
دليل أو مثال يمكنك إعادة إنتاجه (بافتراضات واضحة)
بما أنه لا يتم افتراض بيانات سوق حية هنا، فكر في مجموعة بيانات صغيرة افتراضية وركز على بنية الحساب.
افتراضات المثال
- إطار الزمن: خطوة شمعة واحدة (نحتاج فقط إلى الصيغ).
- فترات النظر: short N=3 وmedium N=3 وlong N=3 (كلها متساوية هنا لتبسيط عرض الآلية؛ الاستخدام الحقيقي غالبًا يستخدم أطوالًا مختلفة).
- افترض أنه لكل شمعة لديك قيم OHLC التالية: High وLow وClose، بالإضافة إلى Previous Close للشمعة الأولى عند الحاجة.
كيف سيعمل الحساب
- لكل شمعة بعد الأولى، احسب:
- BP = Close − Min(Low, Previous Close)
- TR = max(High − Low, abs(High − Previous Close), abs(Low − Previous Close))
- عبر آخر 3 شموع، احسب:
- SumBP(3) = BP1 + BP2 + BP3
- SumTR(3) = TR1 + TR2 + TR3
- Component(3) = SumBP(3) / SumTR(3)
- اجمع مع الأوزان (بما أن كل الفترات متساوية في هذا المثال المبسط):
- WeightedValue = (4C + 2C + 1C) / 7 = C
- Ultimate Oscillator = 100 × C
حتى مع هذا التبسيط، يمكنك رؤية ما يجعل المؤشر “يعمل”:
- إذا كانت الإغلاقات تستقر باستمرار أعلى ضمن نطاقاتها الأخيرة (بالنسبة لمرجع Min(Low, Previous Close))، فإن BP يزيد مقارنةً بـ TR.
- إذا كانت حركة السعر تهيمن عليها نطاقات واسعة (high/low كبيرة أو فجوات) دون إغلاقات قرب القمة، فقد يصبح TR كبيرًا مقارنةً بـ BP، مما يخفض النسبة.
كيف يرتبط ذلك بتفسير الفوركس
- تعكس قراءة أوسيلاتور أعلى (قريبة من 100) قوة ضغط شراء أكبر مقارنةً بالمدى ضمن النوافذ المختارة.
- تعكس قراءة أقل (قريبة من 0) قوة ضغط شراء أضعف مقارنةً بالمدى ضمن النوافذ المختارة.
هذا وصف لعملية القياس. لا يثبت، بحد ذاته، ما الذي سيحدث بعد ذلك.
القيود وأوضاع الفشل (ما الذي قد يحدث خطأ)
آليات Ultimate Oscillator متسقة، لكن قد يفشل التفسير إذا لم تكن الافتراضات أو السياق الأساسيان صحيحين.
- الحساسية لنظام السوق
- قد تتصرف مؤشرات الزخم بشكل مختلف في الأسواق الاتجاهية مقابل الأسواق الجانبية.
- في الأسواق التي تتراوح بقوة، قد تعكس حركات الأوسيلاتور التذبذب داخل النطاق بدلًا من ضغط اتجاهي مستدام.
- اختلافات تعريف البيانات
- يعتمد الأوسيلاتور على high وlow وclose، وTR يستخدم previous close.
- إذا كانت مصادر بياناتك تستخدم حدود جلسات مختلفة، أو إذا كان هناك اختلاف في استمرارية “previous close”، فقد تتغير نسب BP/TR.
- عدم تطابق المعلمات
- أطوال lookback القياسية ونظام الترجيح جزء من تصميم المؤشر.
- إذا استخدمت أطوال فترات مختلفة عما تعتقد، فقد تقارن قيمًا ليست متكافئة.
- شروط القسمة والحواف
- يتم بناء TR من high/low والمسافات المعدلة بسبب الفجوات. إذا كانت مجموعات TR صغيرة جدًا أو يهيمن عليها شموع غير معتادة، فقد تصبح النسبة غير مستقرة.
DOCUMENT END