P
PipsGrowth
متابعة الاتجاهمفتوح المصدر - مجاني

Pipsgrowth EX16085 Trend — إكسبرت أدفايزر متابعة اتجاه

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

Pipsgrowth EX16085 Trend — Multi-indicator trend EA using four Hull MA variants with JMA, T3, TEMA, Kalman filter, and pattern recognition entries.. إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

إكس 16085 من بيبس جروث هو إطار عمل تصويتي قابل للتجميع على منصة MT5. يُسلَّم ملف mq5 وكل مؤشرات الدخول والخروج معطّلة، فتجد على شاشتك سجلاً من أربعة عشر وحدة قابلة للتوصيل ومحرك تصويت يحول اتجاهات كل شريط إلى إشارة شراء أو بيع واحدة. وحدات الدخول الأربع عشرة هي: جما المتكيف مع متوسط النطاق الحقيقي، وتي ثري بدون تأخير، وتي إي إم إيه بدون تأخير، ومتوسط جوريك، والانحراف المعياري لجما، وثلاثي جما لوغاريتمي، ودرجة معيارية جما، ومذبذب جي بي، وآي-موفمنت، واتجاه جي بي، ومرشح كالمان، وهيكن آشي على المتوسط المتحرك التكيفي، ومنطقة هيكن آشي التجارية، ومميّز أنماط الشموع اليابانية. كل وحدة لها مفتاح تفعيل مستقل وكتلة إعدادات خاصة بها — طول ومرحلة جما، وفترة كالمان والسعر المطبق، وزوج المتوسط السريع/البطيء لهيكن آشي، ومعاملَي K1 وK2 لنطاقات الانحراف المعياري لجما — ويخصص الخبير مقبض مؤشر لكل وحدة داخل RegisterIndicator(). ما إن تحدد الصناديق، تمرّ BuildSignalSnapshot() على g_indicatorRegistry، وتستدعي EvaluateDirection() لكل محوّل مفعّل عند إزاحة شريط الإشارة المختارة، وتجمع أصوات الصعود والهبوط والمحايد في بنية SDirectionCounts. تعكس وحدات الخروج الأربع عشرة هذا التخطيط واحدًا لواحد، فيمكنك تشغيل حزمة مؤشرات مختلفة لمنطق الإغلاق عن تلك التي تحرّك الدخول.

يتحول فرز الأصوات إلى صفقة عبر بوابة من اثنتين تختارها InpEntryVotingMode. وضع ENTRY_VOTING_MIN_COUNT (الافتراضي) يطلب موافقة InpMinIndicatorsAgreeForInitialTrades=3 وحدات على الاتجاه قبل أول صفقة، وInpMinIndicatorsAgreeForAdditonalTrades=2 قبل أي تدرّج لاحق. يعمل InpEntryMinOppositeIndicatorsReject=1 كسلك شائك: مؤشر واحد معاكس يلغي الدخول مباشرة، وهي الطريقة التي يمنع بها الخبير تصويتًا هشًا بموافقة 3 مقابل 1 من التسلل. يحول ENTRY_VOTING_PERCENTAGE نفس المنطق إلى نسب — موافقة 65% من المجموعة المعتبرة مع كبت الجانب المعاكس تحت 20%. أيًا كان الوضع المستخدم، يجب أن تستمر الإشارة InpEntryMinPersistenceBars=2 من الأشرطة المغلقة المتتالية قبل أن تمرّر TryOpenPositions() الأمر، وInpEntryUseClosedBarSignals=true تجبر ResolveEntrySignalShift() على قراءة الشريط 1 بدلًا من الشريط 0 كي يُؤخذ التصويت على شمعة مكتملة الإغلاق. تعمل كومة تأكيد منفصلة — آر إس آي المتكيف، وحجم التداول المتكيف، والإيه تي آر المتكيف، وسي سي آي — جنبًا إلى جنب مع تصويت الدخول. كل محوّل تأكيد له إطاره الزمني وفترة وعتباته الخاصة (آر إس آي المتكيف يستخدم فترة أساس 14 مع إزاحة 5/5 يعدّلها زوج إيه تي آر 14/50 وتأثير 3.0؛ سي سي آي يستخدم فترة 18 مع قصوى 140/-140، ونظرة منحدر لثلاث أشرطة، ورفض تباعد لـ5 أشرطة). يجب أن يتفق InpMinConfirmationsAgreeEntry=1 من التأكيدات المفعّلة على الأقل مع اتجاه الدخول، فيمكن ترقية تصويت مؤشر مجرد إلى صفقة حتى بدون أي تأكيد، لكن اشتراط تأكيد واحد يترك الباب مفتوحًا لفحص إضافي.

يتبع توجيه الأوامر سياسة صارمة باتجاه واحد في كل مرة. تفحص CountSymbolPositions() عدد التذاكر المفتوحة، وإن وصل إلى InpMaxOpenPositions=2، تعود TryOpenPositions() فورًا. تمنع رايتا hasBuy وhasSell دخول شراء جديد أثناء وجود بيع مفتوح والعكس صحيح، فلا يكدّس السجل ضد نفسه. يمرّ حساب حجم اللوت عبر CalculateLotSize() التي تستخدم InpMoneyManagementMode (FIXED_LOTS=0 أو PERCENT_RISK=1، الافتراضي) لقراءة InpRiskPerTradePercent=0.5% من الرصيد الحالي. يمرّ الحجم الناتج على RoundLotsToStep() ليطابق درجة حجم الوسيط، ثم NormalizeLot() لتنظيف القيمة، ثم EnsureMarginAffordable() للانسحاب إذا كان الحساب لا يغطي الحد الأدنى من اللوت بمستوى الهامش الحالي. تفرض IsMarginLevelAcceptable() أرضية 250% من InpMinMarginLevelPerc قبل أي أمر جديد، وتمشي ProfitGateAllowsEntries() على المراكز المفتوحة وترفض إضافة جديدة حتى يكون كل تذكرة قائمة رابحة بمقدار InpProfitGatePoints=5 نقاط على الأقل. يأتي وقف الخسارة وجني الأرباح من CalculateStopLossPrice() وCalculateTakeProfitPrice() عند InpStopLossPoints=90 وInpTakeProfitPoints=150 نقطة خام، تُطبّق على سعر الطلب للشراء وسعر العرض للبيع، فتقاس المخاطرة دائمًا من جانب الدخول بعد الفروقات السعرية. يُغلِّف CTrade كل تنفيذ بالسحر 22216085 والتعليق Psgrowth.com Expert_16085 لتصفية لاحقة في اليوميات، وتُضبط tolerance الانزلاق على InpSlippagePoints=10.

تنقسم إدارة المراكز إلى ثلاث جولات مستقلة تعمل كلها عند كل تيكة من ManageOpenPositions(). تشدّ ApplyTrailingStop() الوقف إلى السعر الحالي ناقص InpTrailingStepPts=40 بمجرد أن يتحرك السعر InpTrailingTriggerPts=25 لصالح الصفقة، فلا تشدّ الوقف إلا بشكل أحادي الاتجاه ولا تخلّفه أبدًا. تنقل ApplyBreakEven() الوقف إلى سعر الدخول زائد InpBreakEvenOffset=3 بعد أن يقطع السعر InpBreakEvenTrigger=25، فتؤمّن الصفقة في منطقة التعادل أو أفضل. ApplyProfitLock() موصولة لكن معطّلة افتراضيًا، ولو فُعّلت لنقلت الوقف إلى السعر الحالي ناقص InpProfitLockStep=15 كل InpProfitLockIncrement=40 نقطة من التقدم الإضافي، مكوّنة سلّمًا متدرجًا. تمرّ كل استدعاءات التعديل عبر TryModify_EX16085() التي تعيد المحاولة ثلاث مرات في أخطاء إعادة التسعير أو انتهاء المهلة أو تغير السعر مع وقفة 100 مللي ثانية بين المحاولات، وتستخدم كلها حارس InpMinDistanceFromPrice لمنع الوقف من الهبوط على الجانب الخطأ من الدخول.

لجهة الخروج يوجد محرك مؤشرات خاص في HandleIndicatorClosings(). بعد أن تجمع BuildExitSnapshot() وBuildExitConfirmationSnapshot() تصويت الخروج وعدّ التأكيدات، تمشي الدالة على المراكز المفتوحة، وحينما يتجاوز تصويت الاتجاه المعاكس InpMinIndicatorsAgreeCloseLoss=2 ويكون InpCloseOnOppositeEvenIfInLose=true (الافتراضي)، تغلق الصفقة حتى لو كانت خاسرة. يُبدّل InpCloseOnOpposite بين الوضع المحافظ الذي لا يُغلق إلا إذا كانت الصفقة رابحة بمقدار InpCloseProfitPoints=6 نقاط على الأقل. تطلق HandleEndOfDayActions() جولة منفصلة عند InpEndOfDayCloseHour=23:InpEndOfDayCloseMinute=45، فتغلق قسريًا كل صفقة على الرمز (مع تخطّي الخاسرة لو فُعّل InpEndOfDayProfitOnly)، وتضع g_blockNewTradesForDay كي لا يمرّر أي دخول جديد لبقية الجلسة. تصفّر ResetDailyStateIfNeeded() مفتاح اليوم في كل يوم تقويمي جديد لتُفرج عن هذا العلم عند افتتاح الجلسة التالية.

مرشح الجلسات هو الجزء الأكثر قابلية للتكوين في الإطار. تجمع IsTradingSessionOpen() نتائج أربع نوافذ مستقلة — الآسيوية (InpAsianSessionEnabled=true، افتراضي 00:00–08:00)، والأوروبية (true، 07:00–16:00)، والأمريكية (true، 12:00–21:00)، ونافذة مخصصة (معطّلة افتراضيًا، 22:00–23:59 لو فُعّلت). تطبّق GetAdjustedMinutesOfDay() قيمة InpSessionUtcOffsetHours (افتراضي 0) زائد InpSessionAdditionalOffsetMinutes (افتراضي 0) على توقيت جرينتش لمحاذاة النوافذ مع توقيت خادم الوسيط دون إعادة ترجمة، وتتعامل IsWithinSession() مع حالة الالتفاف حين تعبر الجلسة منتصف الليل بتحويل فحص start<=end إلى فحص start>=end. تُتجاوز الطبقة كاملة عندما يكون InpEnableSessionFilters=false، فيمكن تشغيل الخبير على مدار الساعة بإبقاء المفتاح مغلقًا.

ثمة تفصيلان أخيران جديران بالذكر. أولًا، أدوات Try*_EX16085 الثلاث في أسفل الكود — TryClose_EX16085 وTryClosePartial_EX16085 وTryModify_EX16085 — معرّفة لاكتمال الكود لكن TryModify فقط هو الموصول بمسار التنفيذ الحي؛ أدوات الإغلاق كود ميت من نمط الخبير-الأداة السابق الذي اشتُق منه القالب. ثانيًا، كل مؤشر يشير إليه السجل محتفظ به في مصفوفة مؤشرات من نوع CIndicatorAdapter، فلا تحتاج إضافة أو إزالة وحدة إلى إعادة ترجمة المحرك — فقط اضبط InpEnableAtrJmaForEntry وInpEnableKalmanForEntry وما شابه في لوحة المدخلات، وأعد تشغيل الخبير، ويصبح تركيب التصويت الجديد ساريًا عند الشريط التالي. التكوين الابتدائي الموصى به على شارت الذهب لخمس دقائق: فعّل 3–4 وحدات سريعة الاستجابة (تي ثري بدون تأخير، وجوريك، ودرجة جما المعيارية، وكالمان) مع بوابة MIN_COUNT بموافقة 3 من N، وآر إس آي المتكيف كتأكيد وحيد، ونوافذ الجلسة الأوروبية والأمريكية نشطة، وإدارة مخاطر بنسبة 0.5% لكل دخول — واترك وحدات الخروج الأربع عشرة معطّلة في البداية كي يدفع وقف الخسارة/جني الأرباح والتريلينج ستوب منطق الإغلاق وحده.

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

يعمل إكس 16085 كمحرك تصويت قائم على السجل، يفعّل المستخدم أي مجموعة فرعية من وحدات الدخول الأربع عشرة وكتلة تأكيد من أربع وحدات، ثم يحصي الخبير اتجاهاتها لكل شريط في أعداد الصعود والهبوط عند كل شريط جديد. يضغط وضعَا تصويت — MIN_COUNT (افتراضي 3 من N مع رفض معاكس واحد) وPERCENTAGE (موافقة 65%، رفض معاكس 20%) — العدّ في نداء اتجاهي واحد يجب أن يستمر لشريطَين مغلقَين متتاليَين. تفرض TryOpenPositions() بعد ذلك سقفًا لصفقتَين، وتمنع الإدخالات بالاتجاه المعاكس لأي صفقة قائمة، وتطلب مستوى هامش 250%، وترفض الإضافة ما لم تكن التذكرة القائمة رابحة. تكدّس ManageOpenPositions() ثلاث جولات مستقلة لإدارة الوقف (تريلينج، وتعديل للفرق، وسلّم الربح الاختياري) حول كل صفقة مفتوحة عند كل تيكة، بينما تُغلق HandleIndicatorClosings عند تصويت معاكس ما إن تنقلب كومة التأكيد أيضًا. تحرس أربع نوافذ جلسة قابلة للضبط (آسيوية، أوروبية، أمريكية، مخصصة) مع إزاحة UTC كامل تدفق الإشارة، وجولة نهاية اليوم 23:45 تغلق قسريًا ما تبقّى.

إشارة الدخول

في كل شريط مغلق يجوب الخبير سجل مؤشرات الدخول، ويسأل كل وحدة مفعّلة عن اتجاه صاعد أو هابط أو محايد، ويحوّل الفرز إلى صفقة عبر ENTRY_VOTING_MIN_COUNT (افتراضيًا موافقة 3 من N مع رفض من معاكس واحد) أو ENTRY_VOTING_PERCENTAGE (موافقة 65%، رفض معاكس 20%). يجب أن يستمر الاتجاه الناتج InpEntryMinPersistenceBars=2 شريطًا متتاليًا ويمرّ تصويت التأكيد الموازي (موافقة InpMinConfirmationsAgreeEntry من بين آر إس آي المتكيف/الحجم/الإيه تي آر/سي سي آي). لا يُوجَّه أمر شراء أو بيع جديد إلا إذا لم تكن هناك صفقة معاكسة مفتوحة على الرمز، وكان العدد الإجمالي للمراكز أقل من InpMaxOpenPositions=2، وكان مستوى الهامش فوق 250%، وأكدت ProfitGate أن أي تذكرة قائمة رابحة بما لا يقل عن 5 نقاط.

إشارة الخروج

يعمل منطق الخروج على ثلاث مسارات. يدير مسار إدارة الصفقات ApplyTrailingStop (محفز 25 نقطة، خطوة 40)، وApplyBreakEven (محفز 25 نقطة، إزاحة 3)، وApplyProfitLock الاختيارية (زيادة 40، خطوة 15). يغلق مسار HandleIndicatorClosings المعتمد على المؤشرات عند تصويت معاكس حينما يتجاوز عداد المؤشرات المعاكسة InpMinIndicatorsAgreeCloseLoss=2 وينقلب تصويت التأكيد أيضًا — إما دون شرط (InpCloseOnOppositeEvenIfInLose=true) أو فقط حين يكون رابحًا بمقدار InpCloseProfitPoints=6. تُغلق HandleEndOfDayActions بعد ذلك كل المراكز قسريًا عند الساعة 23:45 بتوقيت الخادم، مع خيار تخطّي الخاسرة.

وقف الخسارة

يُرسل كل دخول مع وقف خسارة ثابت InpStopLossPoints=90 نقطة خام (على XAUUSD بنقطة=0.01 هذا 900 تكة / 0.9 دولار لكل لوت من المسافة)، ثم تشدّ ApplyTrailingStop الوقف إلى السعر الحالي ناقص 40 نقطة بمجرد أن تكون الصفقة رابحة 25 نقطة، وتنقله ApplyBreakEven إلى سعر الدخول زائد 3 نقاط بعد 25 نقطة ربح. سلّم ApplyProfitLock الاختياري (معطّل افتراضيًا) ينقل الوقف إلى السعر الحالي ناقص 15 كل 40 نقطة تقدم إضافية، وتغلق HandleEndOfDayActions الباقي قسريًا عند 23:45.

جني الأرباح

يضع كل دخول جني أرباح ثابت InpTakeProfitPoints=150 نقطة خام، تحسبه CalculateTakeProfitPrice() من سعر العرض/الطلب وقت التنفيذ ويُحفظ في حقل جني الأرباح للصفقة طوال عمر التذكرة. يمكن للإغلاق المعتمد على المؤشرات إغلاق الصفقة أبكر حين يتجاوز تصويت الاتجاه المعاكس InpMinIndicatorsAgreeCloseProfit وتكون الصفقة رابحة بما لا يقل عن InpCloseProfitPoints=6 نقطة، وتوفّر جولة نهاية اليوم 23:45 قطعًا يوميًا صلبًا يلتقط أي ربح غير محقق قبل ترحيل الوسيط.

الأنسب لـ

يُنصح بنشره على XAUUSD M5 أو H1 مع وسيط ECN فروقه منخفضة (يُوصى بفروقات خام تحت 25 نقطة على الذهب لأن عتبات وقف الخسارة/جني الأرباح/التريلينج/التعديل للفرق تُقاس بالنقاط الخام)، والحد الأدنى للرصيد 100 دولار يعكس المخاطرة الافتراضية 0.5% لكل صفقة مع سقف الصفقتَين. إعدادات الجلسة الافتراضية مضبوطة على ساعات التداول الأوروبية والأمريكية (07:00–16:00 و12:00–21:00 بتوقيت الخادم)، وكل نافذة قابلة للإزاحة بتوقيت UTC لتُحاذى مع توقيت خادم الوسيط دون تغيير الكود. يعكس تصنيف المخاطرة MEDIUM نسبة المخاطرة 0.5% لكل صفقة، وسقف الصفقتَين، وحارس الهامش 250%، وبوابة الربح — تمنع هذه مجتمعة الخبير من مضاعفة الصفقة الخاسرة وتحول دون تحوّل جلسة سيئة واحدة إلى سلسلة خسائر. ولأن الخيار يُسلَّم بوحدات الدخول الأربع عشرة ووحدات الخروج الأربع عشرة معطّلة، فهو يناسب المتداول الذي يريد اختبار أي توليفة مؤشرات تناسب رمزه وإطاره الزمني قبل ربط رأس مال حقيقي.

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

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

العائلة: Trend الماجيك: 22216085 الإصدار: 2.00

الوصف: Multi-indicator trend EA using four Hull MA variants with JMA, T3, TEMA, Kalman filter, and pattern recognition entries. Features voting-based entry/exit, session filters, trailing, break-even, and profit lock management. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

المؤشرات:

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

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

  • ResetDailyStateIfNeeded()
  • UpdateBarState()
  • BuildEntrySnapshot()
  • BuildExitSnapshot()
  • BuildEntryConfirmationSnapshot()
  • BuildExitConfirmationSnapshot()
  • BuildConfirmationSnapshot()
  • IsTradingSessionOpen()
  • IsWithinSession()
  • GetAdjustedMinutesOfDay()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX16085 Trend — Execution Flow (from source analysis)
// Family: Trend
// Multi-indicator trend EA using four Hull MA variants with JMA, T3, TEMA, Kalman filter, and pattern recognition entries. Features voting-based entry/exit, session filters, trailing, break-even, and profit lock management. 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
الأطر الزمنية المُحسّنة:
M5H1

كيفية تثبيت الإكسبرت على 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اسحب الإكسبرت على رسم H4 أو اليومي للحصول على أفضل النتائج
  7. 7حدد فترات EMA وعتبة ADX وحجم اللوت في نافذة الإعدادات
  8. 8فعّل Allow Algo Trading واضغط OK

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

المعاملالافتراضيالوصف
InpLots0.10Fixed lot size (0.01,0.01,50.0)
InpSlippagePoints10Max slippage (points) (0,1,100)
InpMagicNumber22216085Magic number (1,1,99999999)
InpTradeComment"Psgrowth.com Expert_16085"Trade comment for new positions
InpMoneyManagementModeMM_MODE_PERCENT_RISKMoney management mode
InpRiskPerTradePercent0.5Risk per trade (% of balance) (0.1,0.1,10.0)
InpLotRoundingModeLOT_ROUND_DOWNLot rounding mode
InpStopLossPoints90.0Initial stop loss (points) (10.0,1.0,5000.0)
InpTakeProfitPoints150.0Initial take profit (points) (10.0,1.0,10000.0)
InpEnableMarginGuardtrueEnforce minimum margin level before new trades
InpMinMarginLevelPerc250.0Minimum margin level (%) (100.0,1.0,1000.0)
InpEnableTrailingStoptrueMaster toggle for trailing stop management
InpTrailingTriggerPts25.0Trailing stop trigger (points) (5.0,1.0,500.0)
InpTrailingStepPts40.0Trailing stop step (points) (10.0,1.0,2000.0)
InpEnableBreakEventrueMove SL to break-even
InpBreakEvenTrigger25.0Profit trigger (points) (5.0,1.0,500.0)
InpBreakEvenOffset3.0Offset from entry (points) (0.0,1.0,100.0)
InpEnableProfitLockfalseLock profits
InpProfitLockIncrement40.0Lock every X points (10.0,1.0,500.0)
InpProfitLockStep15.0Distance from current price (1.0,1.0,200.0)
InpEnableProfitGatetrueRequire existing trades be in profit
InpProfitGatePoints5.0Minimum profit (points) per trade (1.0,1.0,500.0)
InpMaxOpenPositions2Maximum open positions (0=unlimited) (0,1,100)
InpEnableSessionFilterstrueEnable session-based trading
InpSessionUtcOffsetHours0.0Session timezone offset from UTC (-14.0,0.25,14.0)
InpSessionAdditionalOffsetMinutes0Extra manual offset minutes for DST (-180,1,180)
InpAsianSessionEnabledtrueEnable trading during Asian session
InpAsianSessionStartHour0Asian session start hour (0,1,23)
InpAsianSessionStartMinute0Asian session start minute (0,1,59)
InpAsianSessionEndHour8Asian session end hour (0,1,23)
InpAsianSessionEndMinute0Asian session end minute (0,1,59)
InpEuropeanSessionEnabledtrueEnable trading during European session
InpEuropeanSessionStartHour7European session start hour (0,1,23)
InpEuropeanSessionStartMinute0European session start minute (0,1,59)
InpEuropeanSessionEndHour16European session end hour (0,1,23)
InpEuropeanSessionEndMinute0European session end minute (0,1,59)
InpUSSessionEnabledtrueEnable trading during US session
InpUSSessionStartHour12US session start hour (0,1,23)
InpUSSessionStartMinute0US session start minute (0,1,59)
InpUSSessionEndHour21US session end hour (0,1,23)
InpUSSessionEndMinute0US session end minute (0,1,59)
InpCustomSessionEnabledfalseEnable trading during custom session
InpCustomSessionStartHour22Custom session start hour (0,1,23)
InpCustomSessionStartMinute0Custom session start minute (0,1,59)
InpCustomSessionEndHour23Custom session end hour (0,1,23)
InpCustomSessionEndMinute59Custom session end minute (0,1,59)
InpEnableEndOfDayClosefalseClose all trades at specific time
InpEndOfDayCloseHour23Close hour (0,1,23)
InpEndOfDayCloseMinute45Close minute (0,1,59)
InpEndOfDayProfitOnlyfalseOnly close profitable positions
InpEndOfDayBlockNewTradestrueBlock new trades after close time
InpSignalBarShift1Signal bar shift base (0=current,1=closed)
InpEntryUseClosedBarSignalstrueForce using closed bar signals
InpEntryVotingModeENTRY_VOTING_MIN_COUNTEntry voting evaluation mode
InpMinIndicatorsAgreeForInitialTrades3Minimum indicators agreeing for initial entries (1,1,8)
InpMinIndicatorsAgreeForAdditonalTrades2Minimum indicators agreeing for additional entries (1,1,8)
InpEntryMinOppositeIndicatorsReject1Minimum opposite indicators to reject entry (0,1,8)
InpEntryAgreePercentThreshold65.0Percent of agreeing indicators required (percentage mode)
InpEntryOppositeRejectPercent20.0Percent of opposite indicators to reject (percentage mode)
InpEntryMinPersistenceBars2Required consecutive bars meeting criteria (1,1,10)
InpEnableAtrJmaForEntryfalseUse ATR adaptive JMA for entries
InpAtrJmaEntryPeriod10ATR adaptive JMA entry period
InpAtrJmaEntryPhase0.0ATR adaptive JMA entry phase
InpAtrJmaEntryPrice1Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) // ATR adaptive JMA entry price source
InpEnableZlT3ForEntryfalseUse Zero lag T3 for entries
InpZlT3EntryPeriod14.0Zero lag T3 entry period
InpZlT3EntryHot0.7Zero lag T3 entry hot
InpZlT3EntryTypeT3_FULKSMATZero lag T3 entry calculation type
InpZlT3EntryPrice5Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) // Zero lag T3 entry price source
InpEnableZlTemaForEntryfalseUse Zero lag TEMA for entries
InpZlTemaEntryPeriod20.0Zero lag TEMA entry period
InpZlTemaEntryPrice5Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) // Zero lag TEMA entry price source
InpEnableJmaForEntryfalseUse JMA for entries
InpJmaEntryLength7JMA entry length
InpJmaEntryPhase100JMA entry phase (-100..100)
InpJmaEntryShift0JMA entry horizontal shift (bars)
InpJmaEntryPriceShift0JMA entry vertical shift (points)
InpJmaEntryPriceJMA_PRICE_CLOSEJMA entry price source
InpEnableJmaStDevForEntryfalseUse JMA StdDev for entries
InpJmaStDevEntryLength7StdDev JMA entry length
InpJmaStDevEntryPhase100StdDev JMA entry phase
InpJmaStDevEntryK11.5StdDev entry coefficient 1
InpJmaStDevEntryK22.5StdDev entry coefficient 2
InpJmaStDevEntryPeriod9StdDev entry period
InpJmaStDevEntryShift0StdDev entry horizontal shift
InpJmaStDevEntryPriceShift0StdDev entry vertical shift
InpJmaStDevEntryPriceJMA_PRICE_CLOSEStdDev entry price source
InpEnableJmaTrixForEntryfalseUse JMA TRIX for entries
InpJmaTrixEntryPeriod14JMA TRIX entry period
InpJmaTrixEntryPrice1Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) // JMA TRIX entry price source
InpEnableJmaZScoreForEntryfalseUse JMA Z-Score for entries
InpJmaZScoreEntryPeriod14JMA Z-Score entry smooth period
InpJmaZScoreEntryPhase0.0JMA Z-Score entry phase
InpJmaZScoreEntryZsPeriod30JMA Z-Score entry Z-score period
InpJmaZScoreEntryPrice1Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) // JMA Z-Score entry price source
InpEnableJpOscForEntryfalseUse JP Oscillator for entries
InpJpOscEntryPeriod5JP Oscillator entry period
InpJpOscEntryMethodMODE_SMAJP Oscillator entry smoothing method
InpJpOscEntrySmoothingtrueJP Oscillator entry smoothing flag
InpEnableIMovmentForEntryfalseUse i-Movment for entries
InpIMovmentEntryMovement70Movement threshold (points)
InpIMovmentEntryUpColorclrBlueUptrend candle color
InpIMovmentEntryUpBackColorclrWhiteUptrend retracement color
InpIMovmentEntryDownColorclrRedDowntrend candle color
InpIMovmentEntryDownBackColorclrWhiteDowntrend retracement color
InpIMovmentEntryAuto5DigitstrueAuto-scale for 5/3 digit symbols
InpEnableJpTrendForEntryfalseUse JP Trend for entries
InpJpTrendEntryDimMaxPos150JP Trend max bars analyzed
InpJpTrendEntryAlertAutofalseEnable JP Trend auto alerts
InpJpTrendEntryAlertThreshold0.0002JP Trend alert threshold
InpJpTrendEntrySupportColorclrRedJP Trend support color
InpJpTrendEntryResistanceColorclrBlueJP Trend resistance color
InpEnableKalmanForEntryfalseUse Kalman filter for entries
InpKalmanEntryTimeframeKALMAN_TF_CURRENTKalman timeframe option
InpKalmanEntryPeriod1.0Kalman filter period
InpKalmanEntryPrice1Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) // Kalman filter price source
InpKalmanEntryInterpolatetrueKalman interpolation flag
InpEnableHaAmaForEntryfalseUse Heiken Ashi on AMA for entries
InpHaAmaEntryAmaPeriod8AMA period for Heiken Ashi entries
InpHaAmaEntryFastEma2Fast EMA for AMA smoothing (entry)
InpHaAmaEntrySlowEma24Slow EMA for AMA smoothing (entry)
InpHaAmaEntryAmaShift0AMA shift applied to Heiken Ashi (entry)
InpEnableHaZoneForEntryfalseUse Heiken Ashi zone trade for entries
InpHaZoneEntryAcTimeframe0Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Accelerator Oscillator timeframe (entry)
InpHaZoneEntryAoTimeframe0Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Awesome Oscillator timeframe (entry)
InpEnablePatternForEntryfalseUse pattern recognition for entries
InpPatternEntryUseExtraDigitfalsePattern recognition extra digit mode
InpPatternEntryShowAlertfalseAllow indicator alerts when used for entries
InpEnableConfirmationVotingtrueEnable confirmation-based voting
InpMinConfirmationsAgreeEntry1Minimum confirmations required for entries (1,1,3)
InpMinConfirmationsAgreeExit1Minimum confirmations required for exits (1,1,3)
InpEnableAdaptiveRsiConfirmfalseEnable adaptive RSI confirmation for entries
InpEnableAdaptiveRsiConfirmForExitfalseEnable adaptive RSI confirmation for exits
InpConfirmRsiTimeframe0Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Timeframe for adaptive RSI
InpConfirmRsiPeriod14Adaptive RSI period
InpConfirmRsiUpperOffset5.0Adaptive RSI bullish offset from 50
InpConfirmRsiLowerOffset5.0Adaptive RSI bearish offset from 50
InpConfirmRsiAtrFastPeriod14Fast ATR period for RSI adaptation
InpConfirmRsiAtrSlowPeriod50Slow ATR period for RSI adaptation
InpConfirmRsiAtrInfluence3.0ATR influence on RSI thresholds
InpEnableAdaptiveVolumeConfirmfalseEnable adaptive volume confirmation for entries
InpEnableAdaptiveVolumeConfirmForExitfalseEnable adaptive volume confirmation for exits
InpConfirmVolumeTimeframe0Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Timeframe for adaptive volume
InpConfirmVolumeLookback20Volume lookback for adaptation
InpConfirmVolumeMultiplier1.2Required volume multiplier over average
InpEnableAdaptiveAtrConfirmfalseEnable adaptive ATR confirmation for entries
InpEnableAdaptiveAtrConfirmForExitfalseEnable adaptive ATR confirmation for exits
InpConfirmAtrTimeframe0Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Timeframe for adaptive ATR
InpConfirmAtrFastPeriod14Fast ATR period
InpConfirmAtrSlowPeriod50Slow ATR period
InpConfirmAtrMinRatio1.2Minimum ATR ratio fast/slow
InpConfirmAtrTrendPeriod50Trend MA period for ATR confirmation
InpConfirmAtrTrendPrice1Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted)// Price source for trend MA
InpEnableCCIConfirmfalseEnable CCI confirmation for entries
InpEnableCCIConfirmForExitfalseEnable CCI confirmation for exits
InpConfirmCCITimeframe4Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // CCI confirmation timeframe
InpConfirmCCIPeriod18CCI confirmation period (10,1,50)
InpConfirmCCIPrice6Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) // Applied price for CCI confirmation
InpConfirmCCIOverbought140.0Overbought threshold for confirmation (100.0,10.0,300.0)
InpConfirmCCIOversold-140.0Oversold threshold for confirmation (-300.0,10.0,-100.0)
InpConfirmCCIVetoExtremestrueVeto entries at extremes
InpConfirmCCICheckSlopetrueRequire CCI slope alignment
InpConfirmCCISlopeLookback3Slope lookback bars (1,1,5)
InpConfirmCCIUseDivergencetrueBlock trades on CCI divergence
InpConfirmCCIDivergenceBars5Divergence lookback bars (3,1,20)
InpCloseOnOppositefalseClose trades on opposite agreement if in profit
InpMinIndicatorsAgreeCloseProfit1Minimum Indicators to close in profit (1,1,4)
InpCloseProfitPoints6.0Minimum profit (points) to close on opposite (0.0,1.0,200.0)
InpCloseOnOppositeEvenIfInLosetrueClose trades on opposite agreement even if losing
InpMinIndicatorsAgreeCloseLoss2Minimum Indicators to close even if losing (1,1,4)
InpEnableAtrJmaForExitfalseUse ATR adaptive JMA for exits
InpAtrJmaExitPeriod10ATR adaptive JMA exit period
InpAtrJmaExitPhase0.0ATR adaptive JMA exit phase
InpAtrJmaExitPrice1Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) // ATR adaptive JMA exit price source
InpEnableZlT3ForExitfalseUse Zero lag T3 for exits
InpZlT3ExitPeriod14.0Zero lag T3 exit period
InpZlT3ExitHot0.7Zero lag T3 exit hot
InpZlT3ExitTypeT3_FULKSMATZero lag T3 exit calculation type
InpZlT3ExitPrice5Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) // Zero lag T3 exit price source
InpEnableZlTemaForExitfalseUse Zero lag TEMA for exits
InpZlTemaExitPeriod20.0Zero lag TEMA exit period
InpZlTemaExitPrice5Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) // Zero lag TEMA exit price source
InpEnableJmaForExitfalseUse JMA for exits
InpJmaExitLength7JMA exit length
InpJmaExitPhase100JMA exit phase (-100..100)
InpJmaExitShift0JMA exit horizontal shift (bars)
InpJmaExitPriceShift0JMA exit vertical shift (points)
InpJmaExitPriceJMA_PRICE_CLOSEJMA exit price source
InpEnableJmaStDevForExitfalseUse JMA StdDev for exits
InpJmaStDevExitLength7StdDev JMA exit length
InpJmaStDevExitPhase100StdDev JMA exit phase
InpJmaStDevExitK11.5StdDev exit coefficient 1
InpJmaStDevExitK22.5StdDev exit coefficient 2
InpJmaStDevExitPeriod9StdDev exit period
InpJmaStDevExitShift0StdDev exit horizontal shift
InpJmaStDevExitPriceShift0StdDev exit vertical shift
InpJmaStDevExitPriceJMA_PRICE_CLOSEStdDev exit price source
InpEnableJmaTrixForExitfalseUse JMA TRIX for exits
InpJmaTrixExitPeriod14JMA TRIX exit period
InpJmaTrixExitPrice1Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) // JMA TRIX exit price source
InpEnableJmaZScoreForExitfalseUse JMA Z-Score for exits
InpJmaZScoreExitPeriod14JMA Z-Score exit smooth period
InpJmaZScoreExitPhase0.0JMA Z-Score exit phase
InpJmaZScoreExitZsPeriod30JMA Z-Score exit Z-score period
InpJmaZScoreExitPrice1Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) // JMA Z-Score exit price source
InpEnableJpOscForExitfalseUse JP Oscillator for exits
InpJpOscExitPeriod5JP Oscillator exit period
InpJpOscExitMethodMODE_SMAJP Oscillator exit smoothing method
InpJpOscExitSmoothingtrueJP Oscillator exit smoothing flag
InpEnableIMovmentForExitfalseUse i-Movment for exits
InpIMovmentExitMovement70Movement threshold (points)
InpIMovmentExitUpColorclrBlueUptrend candle color (exit)
InpIMovmentExitUpBackColorclrWhiteUptrend retracement color (exit)
InpIMovmentExitDownColorclrRedDowntrend candle color (exit)
InpIMovmentExitDownBackColorclrWhiteDowntrend retracement color (exit)
InpIMovmentExitAuto5DigitstrueAuto-scale for exits
InpEnableJpTrendForExitfalseUse JP Trend for exits
InpJpTrendExitDimMaxPos150JP Trend max bars analyzed (exit)
InpJpTrendExitAlertAutofalseEnable JP Trend auto alerts (exit)
InpJpTrendExitAlertThreshold0.0002JP Trend alert threshold (exit)
InpJpTrendExitSupportColorclrRedJP Trend support color (exit)
InpJpTrendExitResistanceColorclrBlueJP Trend resistance color (exit)
InpEnableKalmanForExitfalseUse Kalman filter for exits
InpKalmanExitTimeframeKALMAN_TF_CURRENTKalman timeframe option (exit)
InpKalmanExitPeriod1.0Kalman filter period (exit)
InpKalmanExitPrice1Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) // Kalman filter price source (exit)
InpKalmanExitInterpolatetrueKalman interpolation flag (exit)
InpEnableHaAmaForExitfalseUse Heiken Ashi on AMA for exits
InpHaAmaExitAmaPeriod8AMA period for Heiken Ashi exits
InpHaAmaExitFastEma2Fast EMA for AMA smoothing (exit)
InpHaAmaExitSlowEma24Slow EMA for AMA smoothing (exit)
InpHaAmaExitAmaShift0AMA shift applied to Heiken Ashi (exit)
InpEnableHaZoneForExitfalseUse Heiken Ashi zone trade for exits
InpHaZoneExitAcTimeframe0Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Accelerator Oscillator timeframe (exit)
InpHaZoneExitAoTimeframe0Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Awesome Oscillator timeframe (exit)
InpEnableCCIForExitfalseUse CCI exhaustion for exits
InpCCIExitTimeframe0Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // CCI timeframe for exits
InpCCIExitPeriod18CCI period for exits (10,1,50)
InpCCIExitPrice6Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) // CCI applied price for exits
InpCCIExitOverbought140.0Overbought threshold for exits (100.0,10.0,300.0)
InpCCIExitOversold-140.0Oversold threshold for exits (-300.0,10.0,-100.0)
InpCCIExitUseDivergencetrueDetect divergence for exits
InpCCIExitDivergenceBars5Divergence lookback bars (3,1,20)
InpCCIExitCloseProfittrueAllow closing profitable positions via CCI
InpCCIExitCloseLossfalseAllow closing losing positions via CCI
InpCCIExitMinProfitPoints6.0Minimum profit before closing (0.0,1.0,100.0)
InpEnablePatternForExitfalseUse pattern recognition for exits
InpPatternExitUseExtraDigitfalsePattern recognition extra digit mode (exit)
InpPatternExitShowAlertfalseAllow indicator alerts when used for exits
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX16085.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX16085 mu — Multi-indicator Hull MA trend EA, full 12-layer stack."
 
#include <Trade/Trade.mqh>
#include <Trade/PositionInfo.mqh>

enum ENUM_MM_MODE
{
	MM_MODE_FIXED_LOTS = 0,
	MM_MODE_PERCENT_RISK = 1
};

enum ENUM_LOT_ROUNDING
{
	LOT_ROUND_DOWN = 0,
	LOT_ROUND_NEAREST = 1,
	LOT_ROUND_UP = 2
};

enum ENUM_ENTRY_VOTING_MODE
{
	ENTRY_VOTING_MIN_COUNT = 0,
	ENTRY_VOTING_PERCENTAGE = 1
};

enum ENUM_JMA_PRICE_SOURCE
{
	JMA_PRICE_CLOSE        = 1,
	JMA_PRICE_OPEN         = 2,
	JMA_PRICE_HIGH         = 3,
	JMA_PRICE_LOW          = 4,
	JMA_PRICE_MEDIAN       = 5,
	JMA_PRICE_TYPICAL      = 6,
	JMA_PRICE_WEIGHTED     = 7,
	JMA_PRICE_SIMPLE       = 8,
	JMA_PRICE_QUARTER      = 9,
	JMA_PRICE_TRENDFOLLOW0 = 10,
	JMA_PRICE_TRENDFOLLOW1 = 11,
	JMA_PRICE_DEMARK       = 12
};

enum ENUM_KALMAN_TF_OPTION
{
	KALMAN_TF_CURRENT        = PERIOD_CURRENT,
	KALMAN_TF_M1             = PERIOD_M1,
	KALMAN_TF_M2             = PERIOD_M2,
	KALMAN_TF_M3             = PERIOD_M3,
	KALMAN_TF_M4             = PERIOD_M4,
	KALMAN_TF_M5             = PERIOD_M5,
	KALMAN_TF_M6             = PERIOD_M6,
	KALMAN_TF_M10            = PERIOD_M10,
	KALMAN_TF_M12            = PERIOD_M12,
	KALMAN_TF_M15            = PERIOD_M15,
	KALMAN_TF_M20            = PERIOD_M20,
	KALMAN_TF_M30            = PERIOD_M30,
	KALMAN_TF_H1             = PERIOD_H1,
	KALMAN_TF_H2             = PERIOD_H2,

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

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

الوسوم:ex16085trendpipsgrowthfreemt5xauusd

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

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

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

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

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

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

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

اسم الملفPipsgrowth_com_EX16085.mq5
حجم الملف207.6 KB
الإصدارv2.00
PlatformMetaTrader 5
نوع الملف.mq5 Source
الاستراتيجيةمتابعة الاتجاه
المخاطرةمخاطرة متوسطة
الأطر الزمنية
M5H1
أزواج العملات
XAUUSD
الحد الأدنى للإيداع$100