مؤشر DEMA: الصيغة والإعدادات وطريقة القراءة
DEMA (المتوسط المتحرك الأسي المزدوج، Patrick Mulloy، 1994) خط سعري مُنعَّم مبني من متوسطين أسّيين مرتّبين بحيث يُلغى جزء من تأخّر EMA المفرد. يُحسب بضعف EMA الإغلاق مطروحًا منه EMA مطبَّق على ذلك الـ EMA الأول، ويُرسم على مخطط السعر.
Senzoukria · المؤشرات · Updated September 2026
DEMA — المتوسطات والتقلب, فوق رسم الأسعار.
ما الذي يقيسه DEMA
تستخدم المرحلتان EMA الكتالوج: يُهيَّأ بالمتوسط البسيط لأول N عينة، ثم يُحدَّث بمعامل تنعيم قدره 2 / (N + 1). لا تعمل المرحلة الثانية إلا على الجزء المُعرَّف فعلًا من المرحلة الأولى، فلا تُختلق أي قيمة ما دام الـ EMA الأول في طور الإحماء. ومع فترة N تتوفر النتيجة إذن ابتداءً من الشمعة ذات الفهرس 2 × (N - 1)، أي ضعف إحماء EMA عادي. وإذا أعادت المرحلة السابقة فجوةً بعد بدايتها، يرفض التنفيذ الاستيفاء ولا يُعيد شيئًا على الإطلاق بدل رسم خط قائم على مُدخل معطوب.
الصيغة كما هي منفَّذة في الكود
هذا ليس التعريف الشائع في مصادر أخرى، بل ما يحسبه الكود المنشور فعليًا، موثَّقًا بجانب التنفيذ:
EMA_N appliquée au SUFFIXE défini d'une série à préfixe null (sortie d'un étage EMA/lissage précédent — suffixe contigu par construction). Permet EMA(EMA(x)) sans inventer de valeur pendant le warm-up de l'étage amont. Défensif : un null APRÈS le début du suffixe (étage amont incohérent) → tout null, on ne trace rien de faux. */ function emaOverSuffix( values: ReadonlyArray<number | null>, period: number, ): Array<number | null> { const out: Array<number | null> = new Array(values.length).fill(null); let start = 0; while (start < values.length && values[start] === null) start++; if (start >= values.length) return out; const defined: number[] = []; for (let i = start; i < values.length; i++) { const v = values[i]; if (v === null) return out; // suffixe non contigu → dégradation totale defined.push(v); } const e = emaSeries(defined, period); for (let j = 0; j < e.length; j++) out[start + j] = e[j]; return out; } /** Moindres carrés y = a + b·t sur la fenêtre de n valeurs se terminant à l'indice i (t = 0 pour la plus ancienne, t = n−1 pour la courante). Sommes fermées : Σt = n(n−1)/2, Σt² = n(n−1)(2n−1)/6. n = 1 → b = 0. */ function linFit( values: readonly number[], i: number, n: number, ): { a: number; b: number } { const sumT = (n * (n - 1)) / 2; const sumT2 = (n * (n - 1) * (2 * n - 1)) / 6; let sumY = 0; let sumTY = 0; for (let t = 0; t < n; t++) { const y = values[i - n + 1 + t]; sumY += y; sumTY += t * y; } const denom = n * sumT2 - sumT * sumT; // > 0 dès n ≥ 2 const b = denom > 0 ? (n * sumTY - sumT * sumY) / denom : 0; const a = (sumY - b * sumT) / n; return { a, b }; } function periodOf( params: Record<string, unknown>, key: string, fallback: number, floor = 1, ): number { return Math.max(floor, Math.floor(numParam(params, key, fallback))); } // ── Défs ──────────────────────────────────────────────────────────────────── /** DEMA (Patrick Mulloy, 1994) : DEMA_N = 2·EMA_N(close) − EMA_N(EMA_N(close)) EMA du catalogue : graine = SMA des N premiers échantillons, α = 2/(N+1) (parité TradingView/ATAS). Le double étage compense le lag de l'EMA simple. Défini à partir de l'indice 2(N−1) — null avant. Défaut N=20.
كيف تقرأه
- توقّع أن ينعطف الخط قبل EMA بالفترة نفسها، وأن يتجاوز السعر أكثر عندما ينعكس بحدّة.
- طرح نسخة مُنعَّمة من التنعيم يسمح للخط بالخروج لفترة وجيزة عن نطاق الإغلاقات الأخيرة؛ هذه خاصية في البناء، لا خلل.
- تغيّر الميل هو الحدث المفيد هنا. أما تقاطع السعر مع خطٍّ يستقرئ أصلًا فهو الأكثر ضجيجًا.
- ضع DEMA وEMA بالفترة نفسها جنبًا إلى جنب: تتسع الفجوة بينهما مع قوة الحركة الجارية وتنغلق في المراحل الهادئة.
- الفترات القصيرة تجعل المرحلة المزدوجة تُضخّم أحدث البيانات، فيغيّر الخط اتجاهه كثيرًا.
المعاملات والقيم الافتراضية
الفترة الافتراضية 20، وهي القيمة الافتراضية نفسها لـ EMA في الكتالوج، وتتراوح بين 1 و500. الفترة القصيرة تجعل تعويض التأخر عنيفًا والخط متقلبًا؛ والطويلة تعيد الاستقرار على حساب سرعة الاستجابة التي صُمّم البناء من أجلها. ورفع الفترة يدفع أيضًا أول شمعة مرسومة إلى اليمين على المخطط ضعف ما يدفعها EMA مفرد.
| المعامل | النوع | القيمة الافتراضية | المدى |
|---|---|---|---|
| Period | number | 20 | 1 – 500 |
ما لا يُظهره
تخفيض التأخر يُدفع ثمنه تجاوزًا: بعد حركة سريعة تتوقف، قد يظل DEMA يشير في الاتجاه القديم لشمعة أو اثنتين بعد الإغلاقات التي أنتجته. مُدخله الوحيد هو الإغلاقات، فلا يصله شيء عن جانبي الـ bid والـ ask في الحجم المتداول. كما يحتاج إلى سجل طويل غير منقطع قبل أن يُنتج أي شيء، وهذا مهم على مخطط حُمّل للتو أو عندما يكون عمق السجل المتاح لذلك العقد محدودًا بما يوفره مزوّد بياناتك.
مؤشرات ذات صلة
- SMA — المتوسطات والتقلب
- EMA — المتوسطات والتقلب
- WMA — المتوسطات والتقلب
- Hull MA — المتوسطات والتقلب
- ATR (Wilder) — المتوسطات والتقلب
- Bollinger — المتوسطات والتقلب
هذه الصفحة بلغات أخرى
Frequently asked questions
- ما الفرق بين DEMA ومتوسط متحرك مُنعَّم مرتين؟
- تطبيق EMA مرتين يجعل الخط أبطأ لا أسرع. أما DEMA فيأخذ ضعف الـ EMA الأول ويطرح الثاني، فيصبح التنعيم المزدوج حدَّ تصحيح لا ترشيحًا إضافيًا. والنتيجة تتفاعل قبل EMA مفرد بالفترة نفسها.
- لماذا يكون DEMA فارغًا في بداية مخططي؟
- تحتاج كل مرحلة أسية إلى إحمائها الخاص، ولا تبدأ الثانية إلا حيث تكون الأولى مُعرَّفة. مع الفترة الافتراضية 20 تقع أول قيمة مرسومة عند الشمعة ذات الفهرس 38، ولا يُقدَّر شيء قبل تلك النقطة.
- هل يمكن أن يتجاوز DEMA أعلى إغلاق حديث؟
- نعم، وهذا متوقع. لأن الـ EMA الثاني يُطرح من ضعف الأول، فالنتيجة استقراء لا متوسط مرجّح للنافذة، ولذلك لا تحدّها الإغلاقات التي حُسبت منها.