P
PipsGrowth
الاختراقمفتوح المصدر - مجاني

Pipsgrowth EX02014 Breakout — إكسبرت أدفايزر اختراق

إكسبرت أدفايزر MT5 مفتوح المصدر · XAUUSD · M1

Pipsgrowth EX02014 Breakout — Modular adaptive trend rider using multiple indicators (Donchian, JMA, HMA, RSI, ATR) for signals and confirmations acro. إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

Pipsgrowth EX02014 Breakout هو إكسبرت أدفايزر لاختراقات قنوات Donchian مبني على مبدأ أن مؤشراً واحداً لا يمكن الوثوق به للقيام بخمسة أدوار مختلفة في وقت واحد. يربط كود المصدر عائلة اختراق واحدة (Donchian) لكنه يفعل ذلك عبر خمسة أدوار متوازية — الدخول، تأكيد الدخول، إضافة المراكز، الخروج، وتأكيد الخروج — لكل منها إطارها الزمني وفترتها وإزاحتها وإعدادات وضع الإشارة المستقلة. النتيجة نظام يمكن ضبطه بدقة من خلال المدخلات لكل دور على حدة، لكن الإعدادات الافتراضية كلها تشير إلى وصفة بسيطة: كشف اختراق H1 على الرسم البياني M1، تأكيده على M15، إضافة مراكز جديدة فقط عندما تكون المراكز القائمة قد حققت 180+ نقطة ربحاً، والخروج إما عند جني أرباح ثابت 160 نقطة، أو وقف خسارة ثابت 120 نقطة، أو ترقيته إلى نقطة التعادل بنسبة 1:1.

الرسم البياني M1 هو إطار التنفيذ، لكن كشف الاختراق الفعلي يعمل افتراضياً على H1 (InpDonchianTF_Entry=5 يقابل PERIOD_H1). عند كل شريط H1 جديد، يسحب الإكسبرت أعلى قمة وأدنى قاع لآخر 20 شريط H1 مغلق، ثم يتحقق مما إذا كانت الشمعة H1 السابقة قد أغلقت فوق ذلك الحد العلوي (شراء) أو تحت الحد السفلي (بيع). النظرة الخلفية للشريط المغلق (InpDonchianShift_Entry=1) هي التي تمنع المنطق من إعادة الرسم — الإشارة تنطلق على شريط مكتمل بالكامل، وليس على شريط قيد التشكيل. يوجد Donchian ثانٍ منفصل على M15 (InpDonchianTF_EntryConf=3، فترة 20) يعمل بالتوازي ويجب أن يتفق مع اتجاه H1 قبل السماح بالصفقة (InpDonchian_UseForEntryConf معطل افتراضياً، لذا هذه الطبقة خامدة من العلبة؛ تشغيلها يحوّل إشارة H1 إلى شرط توافق متعدد الأطر الزمنية).

أوضاع إشارة Donchian الأربعة المتاحة — BREAKOUT، RETRACE، TOUCH، CONSOLIDATION — ليست مجرد أسماء مختلفة لنفس الشيء. BREAKOUT يتطلب أن تكون إغلاق الشريط السابق خارج الحد بشكل صارم؛ RETRACE يقبل الإغلاقات عائدة داخل القناة طالما الاتجاه صحيح؛ TOUCH يتطلب أن يلامس الفتيل الحد لكن الإغلاق يكون على الجانب الصحيح؛ CONSOLIDATION هو وضع التداول في الضغط الذي يقلب الاتجاه بناءً على اتجاه الشريط فقط. الإعدادات الافتراضية تستخدم BREAKOUT، وهو الوضع الوحيد الذي يلتقط حدث "الإغلاق خارج مدى 20 شريط" الذي صُممت من أجله الاستراتيجية.

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

طبقة JMA (متوسط Jurik المتحرك) مثيرة للاهتمام بسبب ما هي عليه: منفّذة هيكلياً ولكن غير مربوطة. يتضمن المصدر هيكل حالة JMA كاملاً من الدرجة التجارية مع 16 خانة تنعيم داخلية، إضافة إلى مصفوفات حالة JMA بأبعاد خمسة أدوار × تسعة أطر زمنية، إضافة إلى دالة GetJMASignal_Advanced(). الدالة، مع ذلك، هي عنصر نائب يُرجع DIRECTION_NONE ويطبع رسالة تصحيح — لم يتم ربطها في تدفق الدخول. طبقة HMA (متوسط Hull المتحرك) أكثر اكتمالاً: تبني مقابض حقيقية عبر iMA مع MODE_LWMA، تحسب صيغة HMA الفعلية (2 × WMA(n/2) − WMA(n))، وتكشف مرشحات الميل والزاوية والتحقق من الاتجاه لكل دور. لكن HMA أيضاً غير مستدعى حالياً من GetPrimaryTradeSignal()، لذا من العلبة منطق الدخول الفعّال الوحيد هو Donchian. هذه الطبقات الخامدة هي سقالة للتوسع المستقبلي — الإكسبرت إطار بقدر ما هو استراتيجية مكتملة.

إدارة المراكز تعمل على مكدس حماية ربح ضيق. جني الأرباح الثابت يجلس على بعد 160 نقطة من الدخول (InpFixedTP_Points=160)، ووقف الخسارة الثابت يجلس على بعد 120 نقطة من الدخول (InpHardSL_Points=120)، مما يعطي نسبة مخاطرة/عائد 1.33:1. بمجرد أن تتحرك الصفقة 120 نقطة في الربح، ترقي دالة ApplyBreakeven() الوقف إلى سعر الدخول + 1 نقطة (شراء) أو الدخول − 1 نقطة (بيع) — حالة شبه خالية من المخاطر. من هناك، تقوم ApplyTrailingStop() بترقية الوقف تدريجياً باستخدام نفس مسافة 120 نقطة، لذا التريلنج لا يبدأ إلا بعد أن تتجاوز الحركة المخاطرة الأولية. فوق ذلك، تثبّت ApplyDynamicProfitLock() الوقف بزيادات 150 نقطة (InpLockProfitEveryXPoints=150)، محافظة على عازل 20 نقطة تحت المستوى المثبت (InpLockMinusYPointsBuffer=20). الطبقات الثلاث تعمل بالتسلسل: التعادل أولاً، ثم التريلنج، ثم قفل الربح — لذا الصفقة التي تتحرك 500 نقطة في الربح سترى وقفها يُرقى عند +120 (تعادل)، ثم يُرقى عند +300 (أول قفل) ومرة أخرى عند +450 (ثاني قفل)، مع تريلنج الوقف يترقّى أيضاً في الفترات البينية.

بوابة عدم التداول هي الجزء الأكثر دفاعية في الكود. ترفض دالة IsSafeToTrade_EX02014() فتح أي شيء عندما يكون السوق مغلقاً (سبت/أحد/إثنين-قبل-22بتوقيتGMT/جمعة-بعد-22بتوقيتGMT)، عندما يكون فلتر جلسة الوسيط مفعّلاً وساعة GMT خارج لندن (7–16) أو نيويورك (12–21)، عندما يُظهر تقويم MQL الاقتصادي حدثاً عالي التأثير خلال 30 دقيقة (InpNewsBufferMinutes=30)، عندما يكون رأس المال الفعلي تحت InpCapFloor البالغ 1000، عندما تكون Equity تحت 70% من الرصيد الأولي، عندما تتجاوز الخسارة اليومية المحققة 5% من الرصيد الأولي، عندما يتم تجاوز عتبة التراجع 20%، عندما تكون 10 صفقات قد فُتحت اليوم، عندما يكون التبريد 4 ساعات مفعّلاً، أو عندما تكون 5 مراكز مفتوحة بالفعل. معظم هذه البوابات يمكن تخفيفها أو تشديدها عبر المدخلات؛ التراجع الأقصى 20% والتبريد بعد الخسائر المتتالية هما الاثنان اللذان يتفاعلان مع OnTradeTransaction() لفرض نفسيهما بعد إغلاق صفقة خاسرة.

إضافة مركز قرار منفصل عن فتح واحد. CanOpenAdditionalTrade() تعمل فقط عندما يكون الإكسبرت في وضع ORDER_ENTRY_ADDITIONAL، وتطلب أن يكون كل مركز مفتوح حالياً قد حقق 180 نقطة على الأقل في الربح (InpMinProfitToAddPoints=180). إذا لم تكن مؤشرات الإضافة مفعّلة، يُرفع العتبة إلى 1.5× (270 نقطة) — وضع ديناميكي يمنع الإكسبرت من تكوين هرم في اتجاه بالكاد مربح. مع InpAllowProfitableAdditions=true ومدخلات الدور المحددة مقلوبة بشكل صحيح، يمكن إضافة فحص Donchian أو HMA إضافي فوق بوابة الربح لانتقاء دخول أكثر صرامة على الإضافات.

إعدادات الأداء والتحسين تستحق الانتباه. InpOptimizationMode=true و InpReduceCalculations=true كلاهما مفعّل افتراضياً — يُبسّط الإكسبرت حساب نطاقات Donchian إلى مقارنة عالية/منخفضة لشريحتين أثناء عمليات تحسين MT5 Strategy Tester، مما يجعل عمليات المسح بآلاف التمريرات قابلة للتنفيذ. InpProcessOnNewBarOnly=true يعني أن الإكسبرت يشغّل خط أنابيب الإشارة الكامل فقط عند تشكّل شريط جديد بدلاً من كل تيك، مما يقطع استخدام CPU أثناء التداول المباشر. اختصار التحسين محافظ: في وضع InpReduceCalculations، الحد العلوي هو max(high[shift+1], high[shift+2]) والحد السفلي هو min(low[shift+1], low[shift+2]). الوضع الكامل يستخدم CopyHigh/CopyLow على نافذة period كاملة، وهو أكثر دقة لكن أبطأ.

OnTester() هي دالة اللياقة التي يستخدمها محسّن MT5: (profit × profitFactor) / maxDD، مع رفض قاطع لأقل من 10 صفقات، أو تراكم فوق InpMaxDDPct، أو ربح صافٍ غير موجب. هذا معيار متوازن — يكافئ الربح الخام والاتساق (PF) لكنه يعاقب التراجع بشدة. عندما تُجري باك تيست، توقع أن يستقر المحسّن على فترات Donchian ضيقة (10–25) وفلترة جلسة لندن فقط للحصول على أكثر النتائج استقراراً على XAUUSD M1.

عملياً، توقع 2–6 صفقات يومياً على XAUUSD M1 بالإعدادات الافتراضية، معظمها خلال تداخل لندن ونيويورك (12:00–16:00 بتوقيت GMT). حد رأس المال المحافظ (InpCapAmount=0 افتراضياً = معطّل، لكن InpCapFloor=1000 يعني أنك إذا فعّلت الحد، الإكسبرت لن يتداول تحت $1,000 رأس مال فعلي) يجعل هذا الإكسبرت أكثر ملاءمة لحسابات الprop الصغيرة إلى المتوسطة من حساب شخصي بـ$10k. حجم اللوت الافتراضي 0.01 — صغير — وأقصى لوت 5.0، لذا تحديد حجم المركز يتدرج خطياً مع حجم الحساب إذا ربطت مدخل نسبة المخاطرة (هذا الإكسبرت يستخدم لوتات ثابتة، وليس نسبة مخاطرة).

بعض العيوب التي يجب الانتباه لها قبل الانطلاق المباشر: InpDonchian_UseForEntry=true هو مصدر الإشارة الوحيد المفعّل افتراضياً، لذا الاستراتيجية بأكملها تختزل إلى اختراق H1 Donchian حتى تقلب مفاتيح JMA وHMA. منطق إعادة المحاولة عند الخطأ يستخدم نمط استدعاء ذاتي تكراري في TryModify_EX02014() — يستدعي نفسه بنفس الوسائط، وهي مشكلة على مستوى الكود (ليست مشكلة استراتيجية)، لكنها تعني أن عمليات التعديل قد تستغرق وقتاً أطول من المتوقع تحت سيولة ضعيفة. علامة InpDryRun افتراضياً false، لذا الإكسبرت سينفذ أوامر حقيقية عند البدء؛ اقلبها إلى true إذا أردت تسجيل الإشارات دون إطلاق صفقات أثناء التحقق الأولي.

تفاصيل الاستراتيجية

Pipsgrowth EX02014 Breakout يشغّل إشارة اختراق Donchian واحدة على الرسم البياني M1، يأخذ عينات من حدود H1 (TF=5) وM15 (TF=3) بالتوازي، ويمرر عمليات الدخول عبر بنية من خمسة أدوار (دخول، تأكيد دخول، إضافات، خروج، تأكيد خروج) معظمها خامد في الإعداد الافتراضي. عند كل شريط جديد، يستدعي الإكسبرت GetPrimaryTradeSignal()، الذي يحسب أصوات Donchian (إغلاق H1 فوق الحد العلوي للشراء، تحت الحد السفلي للبيع)، يجمع مساهمات JMA وHMA إذا تم قلب مفاتيح أدوارها، ويقبل إما الاتجاه الأول مع الاتفاق الكامل (CONFIRM_ALL_ACTIVE_AGREE) أو تصويت الأغلبية (CONFIRM_WEIGHTED_SCORE). دالة JMA حالياً عنصر نائب يُرجع DIRECTION_NONE، وطبقة HMA منفّذة لكن غير مربوطة في GetPrimaryTradeSignal()، لذا السلوك الافتراضي هو Donchian خالص. إدارة المراكز هي مسار الكود الأكثر نشاطاً: ApplyBreakeven() يرقّي الوقف إلى الدخول + 1 نقطة عند 1R، ApplyTrailingStop() يترقّى باستخدام مسافة 120 نقطة، وApplyDynamicProfitLock() يدفع SL للأعلى بزيادات 150 نقطة مع عازل 20 نقطة. بوابة IsSafeToTrade_EX02014() تمنع الدخول عندما يكون خارج جلسات لندن (7–16 GMT) ونيويورك (12–21 GMT)، خلال 30 دقيقة من حدث اقتصادي عالي التأثير، تحت 70% من equity الرصيد الأولي، بعد خسارة يومية 5%، بعد 5 خسائر متتالية (تبريد 4 ساعات)، عند بلوغ حد التراجع 20%، أو عند فتح 10 صفقات بالفعل اليوم. OnTradeTransaction() يتتبع الربح/الخسارة المحققة في الوقت الفعلي، يزيد عداد الخسارة اليومية، ويُشغّل مؤقت التبريد عند بلوغ InpMaxConsecLosses=5. SendOrder يعيد المحاولة 3 مرات كل 200 مللي ثانية على requote/timeout/price-changed/price-off، مع فحص PreSendMarginOk_EX02014() عبر OrderCalcMargin قبل كل محاولة.

إشارة الدخول

يتم تشغيل الدخول للشراء عندما يكون إغلاق شمعة H1 المغلقة السابقة أعلى من الحد العلوي لـ Donchian المكون من 20 شريط بشكل صارم (InpDonchianPeriod_Entry=20، InpDonchianTF_Entry=5/H1، InpDonchianShift_Entry=1) على الرسم البياني M1 للتنفيذ، مع مرشحات عازل الخط الأوسط وعرض القناة الاختيارية المعطلة افتراضياً. الدخول للبيع هو المرآة — إغلاق تحت الحد السفلي المكون من 20 شريط. الإشارة تستخدم وضع BREAKOUT افتراضياً، ويمكن تفعيل Donchian ثانٍ اختياري على M15 (TF=3) لطلب توافق متعدد الأطر الزمنية قبل إطلاق الأمر.

إشارة الخروج

جني الأرباح الثابت عند 160 نقطة من الدخول (InpFixedTP_Points=160) يُغلق الصفقة في دورة ManageOpenPositions() التالية بمجرد أن يتجاوز السعر ذلك المستوى. إذا انعكس السعر بدلاً من ذلك، فإن وقف الخسارة الثابت 120 نقطة (InpHardSL_Points=120) يُغلق الصفقة. ترقية التعادل عند +1 نقطة بعد الدخول تنطلق بمجرد وصول الربح إلى 120 نقطة (1R)، وقفل الربح بزيادات 150 نقطة (InpLockProfitEveryXPoints=150، عازل 20) يستمر في ترقية الوقف للأعلى بينما تظل الصفقة مفتوحة.

وقف الخسارة

وقف خسارة ثابت 120 نقطة (InpHardSL_Points=120) يُرفق بكل أمر عند الدخول. بعد 120 نقطة ربح (1R)، يُرقّى الوقف إلى سعر الدخول + 1 نقطة (شراء) أو الدخول − 1 نقطة (بيع) — حالة شبه تعادل. من هناك، يرقّي التريلنج الوقف بزيادات 120 نقطة مع تحرك السعر أكثر في الربح، كما يدفع قفل الربح الديناميكي الوقف للأعلى كل 150 نقطة مع عازل 20 نقطة.

جني الأرباح

جني أرباح ثابت عند 160 نقطة من الدخول (InpFixedTP_Points=160) على كل أمر، مما يعطي نسبة مخاطرة/عائد 1.33:1 مع وقف 120 نقطة. لا يوجد جني أرباح قائم على الحركة المقاسة أو ATR — الخروج هدف بمسافة ثابتة. قفل الربح الديناميكي (كل 150 نقطة مع عازل 20 نقطة) يحافظ على المكاسب في الصفقات التي تتحرك بعيداً عن TP، مما يمدّ الاحتفاظ فعلياً عندما يكون الزخم قوياً.

الأنسب لـ

المتداولون الذين يشغّلون XAUUSD على M1 بحساب بحد أدنى $100 ويريدون اختراق Donchian أحادي الهدف مع TP ثابت 160 نقطة و SL ثابت 120 نقطة. الأنسب للنشاط خلال تداخل جلستي لندن ونيويورك (12:00–16:00 بتوقيت GMT) عندما تبلغ تقلبات XAUUSD ذروتها وتكون إشارة اختراق H1 لديها أكبر متابعة. يتطلب وسيط ECN أو RAW سبريد منخفض (25 نقطة كحد أقصى) — فروقات الذهب فوق 30 نقطة على الوسطاء التجزئة ستقتل هذه الاستراتيجية بصمت لأن معظم هدف الربح يعيش ضمن نطاق السبريد. موصى به لتداول intraday متوسط التردد، 2–6 صفقات يومياً بالإعدادات الافتراضية.

منطق الاستراتيجية

Pipsgrowth EX02014 Breakout — تحليل منطق الاستراتيجية (من كود .mq5)

العائلة: Breakout الماجيك: 22202014 الإصدار: 2.00

الوصف: Modular adaptive trend rider using multiple indicators (Donchian, JMA, HMA, RSI, ATR) for signals and confirmations across multiple timeframes, with profitability-checked position additions. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

المؤشرات:

  • مؤشرات قياسية

الدوال الرئيسية:

  • InitializeEA()
  • DeinitializeEA()
  • InitializeIndicators()
  • DeinitializeIndicators()
  • CalculateDonchianBands()
  • GetDonchianSignal()
  • DonchianMidlineFilter()
  • GetAdaptiveMidlineBuffer()
  • DonchianMidlineSlopeFilter()
  • GetAdvancedDonchianSignal()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX02014 Breakout — Execution Flow (from source analysis)
// Family: Breakout
// Modular adaptive trend rider using multiple indicators (Donchian, JMA, HMA, RSI, ATR) for signals and confirmations across multiple timeframes, with profitability-checked position additions. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

ON_INIT:
    Create indicator handles: standard set
    Initialize state variables
    Detect broker GMT offset

ON_TICK:
    1. Refresh indicator buffers (closed-bar shift=1)
    2. Manage existing positions:
       - Break-even check
       - ATR trailing stop
       - Profit lock ratchet
       - Time-based exit
       - Opposite-signal exit
    3. If new bar:
       a. ClassifyRegime() — ADX/ATR/BB regime detection
       b. NoTradeGate() checks:
          - Market open + session filter
          - Spread limit
          - Cooldown after loss
          - Consecutive loss limit
          - Kill switch
          - Max drawdown
          - Max concurrent positions
          - Daily/weekly loss limits
       c. GenerateSignal() — strategy-specific entry logic
       d. CheckConfirm() — HTF alignment + R:R + ADX minimum
       e. Calculate position size from risk %
       f. Execute with retry logic
       g. Mark bar to prevent duplicates

ON_TESTER:
    Custom fitness = weighted(RecoveryFactor, ROI, ProfitFactor, TradeCount, Sharpe, Drawdown)

ملف التحسين

الوسطاء المُحسّنون:
ExnessIC Markets
الرموز المُحسّنة:
XAUUSD
الأطر الزمنية المُحسّنة:
M1

كيفية تثبيت الإكسبرت على MT5

  1. 1حمّل ملف .mq5 بالضغط على زر التحميل أعلاه
  2. 2افتح برنامج MetaTrader 5 على حاسوبك
  3. 3من القائمة العلوية اختر File → Open Data Folder
  4. 4انتقل إلى مجلد MQL5 → Experts والصق الملف هناك
  5. 5في MT5، انقر بالزر الأيمن على Expert Advisors في لوحة Navigator → Refresh
  6. 6اسحب الإكسبرت على رسم H1 أو H4
  7. 7حدد فترة رصد النطاق وهامش الاختراق وحجم اللوت في نافذة الإعدادات
  8. 8فعّل Allow Algo Trading واضغط OK

معاملات الإكسبرت

المعاملالافتراضيالوصف
InpMagicNumber22202014Magic Number (222 + Expert ID)
InpTradeComment"Psgrowth.com Expert_02014"Trade Comment
InpMinTimeBetweenTradesSec30--- Logging & Debug ---
InpEnableDebugModefalseCHANGED: Disabled by default for optimization
InpOptimizationModetrueNEW: Reduces processing for optimization
InpProcessOnNewBarOnlytrueNEW: Process only on new bar formation
InpReduceCalculationstrueNEW: Skip complex calculations during optimization
InpConfirmationLogicTypeCONFIRM_ALL_ACTIVE_AGREE--- Risk Management ---
InpMaxSlippagePoints5--- Position Management ---
InpLockMinusYPointsBuffer20--- Main Timeframe ---
InpMainTimeframe0Main timeframe (0=current,1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1,8=W1,9=MN1)
InpUseGMTSessionstrueUse GMT-based session filter
InpLondonStartGMT7London start (GMT hour) [0-23]
InpLondonEndGMT16London end (GMT hour) [0-23]
InpNewYorkStartGMT12New York start (GMT hour) [0-23]
InpNewYorkEndGMT21New York end (GMT hour) [0-23]
InpCapAmount0.0Capital cap amount (0=disabled, effective capital = min(capAmount, equity))
InpCapFloor1000.0Floor - block new entries if effective capital < floor
InpMinEquityPct70.0Min equity % of initial balance to allow trades [1-100]
InpMaxTradesPerDay10Max new trades per day [1-100]
InpMaxConsecLosses5Max consecutive losses before cooldown [1-20]
InpCooldownHours4Cooldown hours after max consec losses [1-72]
InpDailyLossLimitPct5.0Daily loss limit % of initial balance [0.1-20]
InpFilterNewstrueFilter high-impact news
InpNewsBufferMinutes30News buffer minutes [5-120]
InpDryRunfalseDry-run: log signals without executing trades
InpKillSwitchfalseKill switch: close all positions and stop trading
InpMaxDDPct20.0Max drawdown % — stop trading if exceeded [1-50, step 0.5]
InpMaxLot5.0Max lot size cap [0.01-100, step 0.01]
InpDonchianTF_Entry5TF (0=current,1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1,8=W1,9=MN1)
InpDonchianUseMidlineSlopeFilter_Entryfalse--- Donchian Channel Settings - Entry Confirmation Role ---
InpDonchianTF_EntryConf3TF (0=current,1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1,8=W1,9=MN1)
InpDonchianUseMidlineSlopeFilter_EntryConffalse--- Donchian Channel Settings - Additions Role ---
InpDonchianTF_Add5TF (0=current,1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1,8=W1,9=MN1)
InpDonchianUseMidlineSlopeFilter_Addfalse--- Donchian Channel Settings - Exit Role ---
InpDonchianTF_Exit5TF (0=current,1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1,8=W1,9=MN1)
InpDonchianUseMidlineSlopeFilter_Exitfalse--- Donchian Channel Settings - Exit Confirmation Role ---
InpDonchianTF_ExitConf3TF (0=current,1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1,8=W1,9=MN1)
InpDonchianUseMidlineSlopeFilter_ExitConffalse--- JMA Settings - Entry Role ---
InpJMA_TF_Entry5TF (0=current,1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1,8=W1,9=MN1)
InpJMA_Phase_Entry0.0-30 to +30 for optimization
InpJMA_Power_Entry0.450.3-0.7 for optimization
InpVolty_Threshold_Low_Entry25.0--- JMA Settings - Entry Confirmation Role ---
InpJMA_TF_EntryConf3TF (0=current,1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1,8=W1,9=MN1)
InpVolty_Threshold_Low_EntryConf25.0--- JMA Settings - Additions Role ---
InpJMA_TF_Add5TF (0=current,1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1,8=W1,9=MN1)
InpVolty_Threshold_Low_Add25.0--- JMA Settings - Exit Role ---
InpJMA_TF_Exit5TF (0=current,1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1,8=W1,9=MN1)
InpVolty_Threshold_Low_Exit25.0--- JMA Settings - Exit Confirmation Role ---
InpJMA_TF_ExitConf3TF (0=current,1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1,8=W1,9=MN1)
InpVolty_Threshold_Low_ExitConf25.0=== Hull Moving Average (HMA) Settings ===
InpHMA_TF_Entry2TF (0=current,1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1,8=W1,9=MN1)
InpHMA_AppliedPrice_Entry1Price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted)
InpHMA_TrendBars_Entry3--- HMA Settings - Entry Confirmation Role ---
InpHMA_TF_EntryConf3TF (0=current,1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1,8=W1,9=MN1)
InpHMA_AppliedPrice_EntryConf1Price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted)
InpHMA_TrendBars_EntryConf3--- HMA Settings - Additions Role ---
InpHMA_TF_Add2TF (0=current,1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1,8=W1,9=MN1)
InpHMA_AppliedPrice_Add1Price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted)
InpHMA_TrendBars_Add3--- HMA Settings - Exit Role ---
InpHMA_TF_Exit5TF (0=current,1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1,8=W1,9=MN1)
InpHMA_AppliedPrice_Exit1Price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted)
InpHMA_TrendBars_Exit3--- HMA Settings - Exit Confirmation Role ---
InpHMA_TF_ExitConf3TF (0=current,1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1,8=W1,9=MN1)
InpHMA_AppliedPrice_ExitConf1Price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted)
InpHMA_TrendBars_ExitConf3+------------------------------------------------------------------+
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX02014.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX02014 donchain_full_before_alligator — Adaptive trend rider with multi-indicator signals, full 12-layer stack."
#include <Trade/Trade.mqh>

//+------------------------------------------------------------------+
//| Global Objects and Variables                                     |
//+------------------------------------------------------------------+
CTrade trade;

//--- Performance Optimization: Global Indicator Handles
int g_rsiHandles[9];    // RSI handles for each timeframe [M1,M5,M15,M30,H1,H4,D1,W1,MN1]
int g_atrHandles[9];    // ATR handles for each timeframe [M1,M5,M15,M30,H1,H4,D1,W1,MN1]

//--- Trade Timing
long g_lastTradeTimeBuy = 0;
long g_lastTradeTimeSell = 0;

//--- New Bar Detection for Performance
datetime g_lastBarTime = 0;

//--- Hardening Globals
int      g_gmtOffset       = 3;    // Auto-detected GMT offset
int      g_tradesToday     = 0;    // Trades opened today
datetime g_dayStartTime    = 0;    // Start of current trading day
double   g_initialBalance  = 0.0;  // Initial balance at EA start
datetime g_cooldownUntil   = 0;    // Cooldown end timestamp
int      g_consecLosses    = 0;    // Consecutive losses counter
double   g_realizedToday   = 0.0;  // Realized PnL today
double   g_realizedWeek    = 0.0;  // Realized PnL this week
datetime g_weekStartTime   = 0;    // Start of current trading week

//+------------------------------------------------------------------+
//| Enumerations                                                     |
//+------------------------------------------------------------------+
enum ENUM_TRADE_DIRECTION
{
    DIRECTION_NONE,
    DIRECTION_BUY,
    DIRECTION_SELL
};

enum ENUM_CONFIRMATION_LOGIC_TYPE
{
    CONFIRM_ALL_ACTIVE_AGREE,
    CONFIRM_WEIGHTED_SCORE
};

enum ENUM_DONCHIAN_SIGNAL_MODE
{
   DONCHIAN_SIGNAL_BREAKOUT,
   DONCHIAN_SIGNAL_RETRACE,
   DONCHIAN_SIGNAL_TOUCH,
   DONCHIAN_SIGNAL_CONSOLIDATION
};

enum ENUM_DONCHIAN_FILTER_MODE
{

الكود المصدري الكامل متاح عند التحميل

لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.

الوسوم:ex02014breakoutpipsgrowthfreemt5xauusd

تحذير صريح: لأغراض تعليمية فقط

تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.

وسطاء موصى بهم لهذا الإكسبرت

هذه الروبوتات تعمل على MT5 — استخدم وسيطاً موثوقاً بتنفيذ سريع وسبريد منخفض

مجتمع المستخدمين

سجّل دخولك للمشاركةتسجيل الدخول

لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.

اسم الملفPipsgrowth_com_EX02014.mq5
حجم الملف111.7 KB
الإصدارv2.00
PlatformMetaTrader 5
نوع الملف.mq5 Source
الاستراتيجيةالاختراق
المخاطرةمخاطرة متوسطة
الأطر الزمنية
M1
أزواج العملات
XAUUSD
الحد الأدنى للإيداع$100