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

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

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

Pipsgrowth EX16056 Trend — Optimized Expert Advisor addressing 100+ performance and structure issues, combining RSI entry signals, Momentum Breakou. إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

يبني Pipsgrowth EX16056 مسار الإشارة الخاص به كنظام تصويت بثلاثة محركات، ثم يُخضع الفائز لسلسلة من أربع بوابات تأكيد قبل إرسال أي أمر سوق. المحركات الثلاثة مُعرّفة في الكود لكن معطلة بشكل افتراضي في لوحة المدخلات — RSI_EntrySignal = false و MBS_EntrySignal = false و Magic_EntrySignal = false — لذا يُحمَّل الخبير في حالة خام، ويختار المتداول المحركات التي يريد تشغيلها. يُرجع كل محرك سلسلة "BUY" أو "SELL" أو "NO_SIGNAL" خاصة به، وتقوم دالة GenerateSignalWithConfirmations() بحساب الأصوات. لا يصدر أمر الشراء إلا عندما يصوّت محرك واحد على الأقل لصالح الشراء ولا يصوّت أي محرك لصالح البيع (يُرجع الكود NO_SIGNAL عند تضارب التصويتات بدلاً من اختيار جانب)، مما يجعل اللاتناظر واضحاً — الصمت يتفوق على التعارض.

المحرك الأول هو مصوّتر انعكاسي كلاسيكي بمؤشر RSI(14). يُفعَّل فرع الدخول عندما يعبر مؤشر RSI الحالي مناطق التشبع البيعي/الشرائي 30/70 (مع عازل 2 نقطة لمنع الانعكاس عند حافة المنطقة)، أو عندما يرتدّ المؤشر الحالي عن المنطقة صعوداً أو هبوطاً. ثلاث بوابات إضافية تحجب التقاطعات الضعيفة: يجب أن يغطي نطاق RSI الأخير ما لا يقل عن RSI_Entry_MinRange = 5 نقاط، ويجب أن تتجاوز السرعة بين الأعمدة RSI_Entry_MinVolatility = 2.0، ويجب أن يكون الفاصل الزمني بين الإشارة الحالية والسابقة على الأقل RSI_Entry_CooldownBars = 3 أعمدة. يعمل محرك تأكيد RSI على نفس المؤشر بإعداد 21 فترة مع منطقة ميتة بعرض 5 نقاط حول خط الوسط 50 — إذا كان RSI راكداً في المنتصف، لن يصدر أي تأكيد — ويطلب سلسلة زخم من 3 أعمدة بالإضافة إلى قوة دنيا قدرها 3.0 نقاط بعيداً عن خط الوسط قبل المصادقة.

المحرك الثاني، وهو وحدة Momentum Breakout Structure (MBS)، يمسح آخر MBS_Entry_LookbackBars = 20 عموداً بحثاً عن قمة هيكلية (ArrayMaximum) وقاع هيكلي (ArrayMinimum)، ثم يبحث عن اختراق نظيف خارج هذا النطاق بما لا يقل عن MBS_Entry_MinBreakoutSize = 50 نقطة. يجب أن يتزامن الاختراق مع توافق اتجاه EMA(21) (ثلاث متوسطات صاعدة للشراء، ثلاث هابطة للبيع)، ونسبة قوة اتجاه أعلى من MBS_Entry_TrendStrengthMin = 0.6 على مدى MBS_Entry_ConfirmationBars = 2 عمودين، ونسبة تذبذب ATR(14) أقل من MBS_Entry_VolatilityFilter = 1.5 (بحيث لا يلوّث التوسع المفاجئ في التذبذب الإشارة)، وارتفاع حجم اختياري بمقدار 1.5x مقابل متوسط آخر 10 أعمدة، وفحص اتجاهي للسعر مقابل المتوسط. تتراكم تسعة شروط في تصويت واحد. محرك تأكيد MBS هو التوأم المرن — ينخفض عتبة الزخم إلى 0.5، ويُعطَّل ارتفاع الحجم، وينخفض حد قوة الاتجاه إلى 0.4 — ويعني نجاح تأكيد MBS ببساطة أن سياق الهيكل لا يزال داعماً بعد الاختراق الأولي.

المحرك الثالث هو الأكثر تميزاً: غلاف "Magic". يبني الخبير متوسطاً متحركاً واحداً (طريقة المتوسط الافتراضية هي MODE_LWMA بفترة 10، مع توفر بدائل SMA/EMA/SMMA أيضاً)، ثم يرسم حدوداً علوية وسفلية عند MA ± DistanceMultiplier × ATR(14) (المضاعف الافتراضي 0.85). يتيح UseAutoFilter، المفعّل افتراضياً، لدالة MagicBandsAutoTuneFilters() إعادة حساب مضاعف الحدود في وقت التشغيل بناءً على السبريد المباشر و MinATR (0.03) و MinBreakDistance (0.3) اللذين يحددهما المستخدم — إذ يُضيّق المسار التلقائي الحدود على الأزواج منخفضة السبريد ويُوسّعها على الأزواج الصاخبة. يصدر أمر Magic BUY عندما يتجاوز ميل LWMA (بالنقاط) عتبة الطريقة الخاصة بالمتوسط — 0.3 لـ LWMA، و0.5 لـ SMA، و0.7 لـ EMA، و0.8 لـ SMMA — وعندما يُغلق السعر فوق الحد العلوي، وعندما يكون زخم العمودين إيجابياً. يُرخي تأكيد Magic جميع العتبات الثلاث إلى 70% من قيم الإدخال، لذا يدفع عمود الإدخال السعر المشدد ويحصل عمود التأكيد على إعادة فحص أكثر ليونة. يجلس EMA(50) منفصل على الإطار H4 (TrendFilterTF، TrendEMA) في الخلفية كتحيّز TrendEMA لكنه لا يُستخدم كبوابة صارمة.

بعد التصويت، يجب على الاتجاه المرشح أن يمر بأربع بوابات تأكيد على التوالي: CheckRSIConfirmation و CheckMBSConfirmation و CheckMagicConfirmation و Adaptive Confirmation (بالإضافة إلى بوابة خامسة اختيارية، CheckCorrelationConfirmation، عند تفعيل UseCorrelationFilter). البوابة التكيّفية هي الابتكار الهادئ في الكود. تُسجّل هذه البوابة سياق الصفقة مقابل Adaptive_BaseThreshold = 65 على مقياس 0-100، ثم تعدّل العتبة بناءً على نظام التذبذب المباشر. عندما يتجاوز قراءة ATR(14) Adaptive_HighVol_Pips = 40، تنخفض العتبة بمقدار Adaptive_VolBoost = 0.8 — يقبل الخبير الصفقات بسهولة أكبر في الأسواق السريعة. عندما ينخفض ATR إلى ما دون Adaptive_LowVol_Pips = 15، ترتفع العتبة بمقدار Adaptive_VolPenalty = 1.2 — يطلب الخبير مزيداً من الأدلة في الأسواق الهادئة. يسحب مرشح الارتباط الاختياري سلة من EURUSD و GBPUSD و AUDUSD و USDCHF و USDCAD و EURJPY و GBPJPY، ويُشغّل ارتباط بيرسون مقابل الرمز المضيف، ويرفض الإشارات التي يتعارض فيها تدفق الأصول المتقاطعة مع الاتجاه. لا توجد من هذه البوابات الأربع أو الخمس اختيارية في وقت التشغيل — إذا أعادت إحداها NO_SIGNAL، يُسقَط المرشح بصمت.

تقع إدارة المخاطر في طبقتين. الطبقة لكل صفقة ثابتة: StopLossPoints = 100 و TakeProfitPoints = 200، وهي نسبة عائد إلى مخاطرة 1:2 واضحة مع احتفاظ الوسيط بوقف الخسارة وجني الأرباح. فوق ذلك، يقوم قفل الربح الديناميكي بتعديل وقف الخسارة على كل صفقة مفتوحة. يُفعَّل القفل عندما يتجاوز الربح غير المحقق LockProfitEvery_X_Points = 30؛ ويُضبط وقف الخسارة الجديد على current_bidLockMinusBuffer = 15 للشراء (current_ask + 15 للبيع)، ولا يُرسَل التعديل إلا عندما يُحسّن الوقف الجديد الوقف الحالي بما لا يقل عن 5 نقاط، مما يمنع ازدحام التعديلات أثناء ضوضاء M5. تعمل طبقة المحفظة على كل تكة داخل UpdateTradeInfo() — إذا تجاوزت القيمة المطلقة للخسارة غير المحققة MaxDrawdownPercent = 10% من رصيد الحساب، يرفع الخبير علامة risk_exceeded ويتوقف OnTick عن إرسال إدخالات جديدة في العمود التالي. يقف غطاء MaxOpenTrades = 5 وبوابة MaxSpread = 30 نقطة لكل تكة أمام مسار الإشارة. AllowOnlyProfitableAdditions = true يُجبر أي إدخال جديد على الانتظار حتى تُظهر كل صفقة قائمة ربحاً لا يقل عن MinProfitInPointsPerTradeToAdd = 20 نقطة — وهي مضادة المرتينجال داخل الصفقة.

مكتبة الجلسات والأوقات هي الجزء الأوسع في الملف. يُسلّم الكود نافذة وقت أساسية (UseTimeFilter مع StartHour/EndHour بتوقيت GMT المعدّل)، ومرشح أربع جلسات (لندن 8-17، نيويورك 13-22، طوكيو 0-9، سيدني 22-7، جميعها بتوقيت GMT+offset)، ومفتاح تشغيل للتداخل فقط، وجلساتين مخصصتين يحددهما المستخدم، ومدير نهاية يوم (EODCloseMode: NONE / ALL / PROFITABLE / LOSING) مع ساعة إغلاق قابلة للتكوين، ومدير نهاية أسبوع بنفس التعداد ومُحدِّد يوم إغلاق منفصل، ووقف تجنّب الأخبار، ومرشح يوم من أيام الأسبوع، ومؤقت توقف بعد الإغلاق. جميع هذه العناصر مُعرّفة في الكود لكنها معطلة افتراضياً — يفتح الخبير للتداول على مدار 24/5 لحظة إرفاقه. لنشر USDJPY يوصي تعليق المصدر بتفعيل جلستي لندن ونيويورك مع EODCloseMode = EOD_CLOSE_PROFITABLE و EOWCloseMode = EOD_CLOSE_ALL للتسطيح قبل عطلة نهاية الأسبوع. بالنسبة لـ XAUUSD، يلتقط نفس المزيج أعمق نافذة سيولة دون تعريض الصفقات لخطر الفجوة.

تُقوّي طبقتان أخيرتان الكود. مرشح التأخير (EnableDelayFilter، BarDelay = 1، EntryDelayBars = 1) يتطلب استمرار الإشارة لعمود واحد على الأقل قبل العد، والانتظار عموداً جديداً كاملاً على الأقل بعد الإدخال السابق — يُحوّل المفتاح المعطل افتراضياً نظاماً ينتج 20 إشارة يومياً إلى نظام 3-8 إشارات يومياً في الجلسات النشطة. تتطلب بوابة التذبذب داخل ConfirmSignal() أن يكون ATR الحالي أعلى من 10 نقاط قبل إرسال أي صفقة، مع تثبيت العتبة كحد أدنى للصلاحية. تمر كل استدعاء إغلاق عبر TryClose_EX16056 وكل تعديل عبر TryModify_EX16056، حيث يعيد كل منهما المحاولة حتى 3 مرات عند أخطاء REQUOTE / TIMEOUT / PRICE_OFF / PRICE_CHANGED مع فترات نوم 100-200 مللي ثانية — ويكتب سجل الملف إلى OptimizedEA__.log عند تفعيل EnableDebug، لذا فإن تدفق الإشارة الكامل قابل للمراجعة في التحليل اللاحق. لا يزال رأس الرمز يقول USDJPY، لكن الإعداد الافتراضي للمنصة يُعيّن XAUUSD M5، حيث يُساوي وقف الخسارة 100 نقطة وجني الأرباح 200 نقطة ما يقارب 1.0/2.0 دولار كوقف و2.0/4.0 دولار كهدف على لوت 0.01، وتُساوي خطوة قفل الربح البالغة 30 نقطة 0.30 دولار لكل تكة — وهو إعداد منطقي على قيمة نقطة الذهب دون إعادة ضبط يدوية.

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

تحسب GenerateSignalWithConfirmations الأصوات من ثلاثة محركات معطلة افتراضياً — RSI_Entry_Signal (تقاطع تشبّع بيعي/شرائي 14 فترة مع نطاق 5 نقاط وسرعة 2.0)، و MBS_Entry_Signal (اختراق هيكلي لـ 20 عموداً مع 9 شروط متراكمة تشمل توافق اتجاه 21-EMA وارتفاع حجم 1.5x ونسبة ATR(14) أقل من 1.5)، و Magic_Entry_Signal (غلاف LWMA(10) ± 0.85×ATR(14) مع عتبة ميل خاصة بالطريقة 0.3 وزخم عمودين فوق 1.0) — وترفض أي تصويت متعارض. يمر الفائز بعدها عبر CheckRSIConfirmation و CheckMBSConfirmation و CheckMagicConfirmation والبوابة التكيفية المرتبطة بالتذبذب (يطبق ATR فوق 40 نقطة مضاعف 0.8، وATR دون 15 نقطة يطبق مضاعف 1.2) قبل أن يمشي ProcessTradingLogic عبر التأخيرات المتبقية (IsSignalStable، IsEntryDelayMet) وتأكيد ATR-أكبر-من-10 النهائي في ConfirmSignal، ثم يستدعي ExecuteTrade. تُنشأ المؤشرات الأصلية العشرة (rsi_entry، rsi_confirm، mbs_entry_ema، mbs_entry_atr، mbs_confirm_ema، mbs_confirm_atr، magic_ma، magic_atr، magic_ema_htf، adaptive_atr) فقط عند تفعيل المحركات الخاصة بها، لذا يستخدم خبير يعمل على Magic وحده ثلاث مؤشرات فقط. بينما تكون الصفقة مفتوحة، يعمل ProcessExitSignals أولاً عند كل تكة لتطبيق قفل الربح 30/15 نقطة عبر TryModify_EX16056 مع 3 محاولات؛ يحجب AllowOnlyProfitableAdditions المضاعفة حتى تُظهر كل صفقة قائمة ربحاً لا يقل عن 20 نقطة.

إشارة الدخول

يُفعَّل الشراء أو البيع عندما يُرجع أيٌّ من ثلاثة مولّدات إشارة مستقلة الاتجاه نفسه (تقاطع RSI تشبّع بيعي/شرائي مع نطاق 5 نقاط وسرعة 2.0، أو اختراق MBS فوق قمة هيكلية لـ 20 عموداً مع 9 شروط متراكمة، أو اختراق غلاف Magic مع ميل LWMA فوق 0.3 وزخم عمودين فوق 1.0)، ولا يكون الاتجاه متنازعاً عليه (لا يوجد تصويت معاكس)، ثم يمر المرشح بأربع بوابات تأكيد على التوالي (RSI 21 فترة مع منطقة ميتة حول خط الوسط، MBS مرن بزخم 0.5، Magic عند 70% من عتبة الإدخال، ودرجة تكيفية مرتبطة بالتذبذب مقابل عتبة أساسية 65 تُسهّل في التذبذب العالي وتشدّد في المنخفض).

إشارة الخروج

تعمل المخارج عبر ثلاث مسارات مستقلة: وقف الخسارة وجني الأرباح عند 100/200 نقطة من جانب الوسيط، وقفل الربح الديناميكي 30/15 نقطة الذي يُعدّل وقف الخسارة كل 30 نقطة من الربح غير المحقق إلى 15 نقطة خلف السعر (مع حد أدنى 5 نقاط لتحسين الوقف لمنع ازدحام التعديلات، مُغلَّف في TryModify_EX16056 مع 3 محاولات إعادة عند REQUOTE/TIMEOUT/PRICE_CHANGED)، وغطاء الانخفاض 10% على مستوى المحفظة الذي يحجب الإدخالات الجديدة من خلال علامة risk_exceeded دون إجبار إغلاق الصفقات.

وقف الخسارة

وقف الخسارة لكل صفقة ثابت بالنقاط (StopLossPoints = 100 افتراضي، نسبة عائد إلى مخاطرة 1:2 مقابل جني الأرباح 200 نقطة). يُعدّل قفل الربح الديناميكي وقف الخسارة كل 30 نقطة من الربح غير المحقق إلى current_bid − 15 نقطة (أو current_ask + 15 للبيع) ولا يُكتب إلا عندما يتفوق الوقف الجديد على الحالي بـ 5 نقاط. يحجب MaxDrawdownPercent = 10% على مستوى المحفظة الإدخالات الجديدة من خلال علامة risk_exceeded دون إغلاق الصفقات القائمة.

جني الأرباح

جني الأرباح ثابت عند TakeProfitPoints = 200 نقطة (نسبة عائد إلى مخاطرة 2:1 مقابل وقف الخسارة 100 نقطة). يُغلق قفل الربح الديناميكي 30/15 نقطة عادةً معظم الصفقات الرابحة ضمن نطاق 30-200 نقطة من خلال تعديل الوقف كل 30 نقطة من الربح إلى 15 نقطة خلف السعر، لذا يتفوق الخروج الفعلي على جني الأرباح المُكوَّن فقط في الجاهات الاتجاهية القوية التي تقطع 200 نقطة كاملة قبل أن يلحق القفل.

الأنسب لـ

متداولون يُديرون حساباً بـ 1,000 دولار أو أكثر على وسيط ECN منخفض السبريد ويرغبون في محرك اتجاه متعدد المصادر قابل للتكوين بالكامل بدلاً من إشارة بمؤشر واحد. اللوت الافتراضي 0.01 ووقف الخسارة/جني الأرباح 100/200 نقطة مُعاير لـ XAUUSD M5 (الإعداد الافتراضي للمنصة)، لكن الكود قابل للنقل إلى USDJPY وأي عملة رئيسية أو معدن — فعّل UseSessionLondon و UseSessionNewYork (8-17 و13-22 بتوقيت GMT) لأعمق نافذة سيولة، واضبط EODCloseMode على EOD_CLOSE_PROFITABLE لقطف مكاسب intraday، واقرن غطاء MaxDrawdownPercent = 10% مع وسيط يوفر حماية من الرصيد السالب. يُفيد UseCorrelationFilter الاختياري أكثر عند إرفاق الخبير بـ XAUUSD أو EURUSD عندما تريد تصويت أصول متقاطعة لـ USDJPY عند كل إدخال؛ وإلا اتركه معطلاً وشغّل الخبير كمتبع اتجاه ثلاثي المصادر نقي.

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

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

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

الوصف: Optimized Expert Advisor addressing 100+ performance and structure issues, combining RSI entry signals, Momentum Breakout Structure (MBS), Magic indicator and adaptive confirmation for USDJPY with dynamic profit management. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

المؤشرات:

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

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

  • GetAdjustedTime()
  • ValidateTimeInputs()
  • IsWithinSession()
  • IsSessionActive()
  • IsSessionOverlap()
  • IsEndOfDayTime()
  • IsEndOfWeekTime()
  • IsTradingDay()
  • IsNewsTime()
  • IsTimeBasedEntryPaused()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX16056 Trend — Execution Flow (from source analysis)
// Family: Trend
// Optimized Expert Advisor addressing 100+ performance and structure issues, combining RSI entry signals, Momentum Breakout Structure (MBS), Magic indicator and adaptive confirmation for USDJPY with dynamic profit 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
الأطر الزمنية المُحسّنة:
M5

كيفية تثبيت الإكسبرت على 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

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

المعاملالافتراضيالوصف
EnableTradingtrueEnable trading
EnableDebugfalseEnable debug logging
LotSize0.01Fixed lot size
MagicNumber22216056Magic number
InpTradeComment"Psgrowth.com Expert_16056"Trade comment
Slippage3Slippage in points
MaxSpread30.0Maximum spread in points
MaxDrawdownPercent10.0Maximum drawdown percentage
MaxRiskPerTrade2.0Maximum risk per trade %
MaxOpenTrades5Maximum open trades
StopLossPoints100.0Stop loss in points
TakeProfitPoints200.0Take profit in points
EnableDynamicLockProfittrueEnable dynamic profit locking
LockProfitEvery_X_Points30.0Step: every X points profit
LockMinusBuffer15.0Lock profit minus X point buffer
AllowOnlyProfitableAdditionstrueOnly allow adding positions if existing trades are profitable
MinProfitInPointsPerTradeToAdd20.0Minimum profit required per existing trade in points
RSI_EntrySignalfalseEnable RSI entry signals
RSI_Entry_Period14RSI period for entry
RSI_Entry_Overbought70.0Entry overbought level
RSI_Entry_Oversold30.0Entry oversold level
RSI_Entry_Buffer2.0Buffer around entry levels
RSI_Entry_SignalShift0Entry signal bar shift
RSI_Entry_MinRange5.0Minimum RSI range for valid entry
RSI_Entry_MinVolatility2.0Minimum volatility for entry
RSI_Entry_CooldownBars3Cooldown between entry signals
RSI_ConfirmfalseEnable RSI confirmation
RSI_Confirm_Period21RSI period for confirmation
RSI_Confirm_Midline50.0Confirmation midline
RSI_Confirm_UpperThreshold60.0Upper confirmation threshold
RSI_Confirm_LowerThreshold40.0Lower confirmation threshold
RSI_Confirm_DeadZone5.0Dead zone around midline
RSI_Confirm_SignalShift0Confirmation signal shift
RSI_Confirm_MomentumBars3Bars for momentum confirmation
RSI_Confirm_MinStrength3.0Minimum strength for confirmation
RSI_TF0Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Timeframe for RSI
RSI_Price1Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) // Applied price for RSI
MBS_EntrySignalfalseEnable MBS entry signals
MBS_Entry_Timeframe0Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Entry timeframe for analysis
MBS_Entry_LookbackBars20Entry lookback period for structure analysis
MBS_Entry_MinBreakoutSize50Entry minimum breakout size in points
MBS_Entry_MomentumThreshold0.7Entry momentum strength threshold (0-1)
MBS_Entry_ConfirmationBars2Entry bars needed for confirmation
MBS_Entry_VolatilityFilter1.5Entry volatility filter multiplier
MBS_Entry_TrendStrengthMin0.6Entry minimum trend strength (0-1)
MBS_Entry_RequireVolumeSpiketrueEntry require volume confirmation
MBS_Entry_VolumeMultiplier1.5Entry volume spike multiplier
MBS_Entry_ATRPeriod14Entry ATR period for volatility
MBS_Entry_ATRMultiplier1.0Entry ATR multiplier for breakout validation
MBS_Entry_EMAPeriod21Entry EMA period for trend direction
MBS_Entry_MinPriceMovement0.0001Entry minimum price movement for signal
MBS_ConfirmfalseEnable MBS confirmation
MBS_Confirm_Timeframe0Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Confirmation timeframe for analysis
MBS_Confirm_LookbackBars15Confirmation lookback period for structure analysis
MBS_Confirm_MomentumThreshold0.5Confirmation momentum strength threshold (0-1)
MBS_Confirm_ConfirmationBars1Confirmation bars needed for validation
MBS_Confirm_VolatilityFilter2.0Confirmation volatility filter multiplier
MBS_Confirm_TrendStrengthMin0.4Confirmation minimum trend strength (0-1)
MBS_Confirm_RequireVolumeSpikefalseConfirmation require volume confirmation
MBS_Confirm_VolumeMultiplier1.2Confirmation volume spike multiplier
MBS_Confirm_ATRPeriod14Confirmation ATR period for volatility
MBS_Confirm_ATRMultiplier1.2Confirmation ATR multiplier for breakout validation
MBS_Confirm_EMAPeriod21Confirmation EMA period for trend direction
EnableDelayFilterfalseEnable N-bar delay confirmation filter
BarDelay1Number of bars delay required for signal confirmation
EntryDelayBars1Wait this many full new bars before placing a new entry
Magic_EntrySignalfalseEnable Magic entry signals
Magic_ConfirmfalseEnable Magic confirmation
UseMagic_DecisiontrueMaster switch for Magic Decision
UseAutoFiltertrueUse automatic filter tuning
Length10Magic indicator length
MagicMAMethodMODE_LWMAMagic MA calculation method
DistanceMultiplier0.85Distance multiplier for bands
Timeframe0Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Magic indicator timeframe
TrendFilterTF6Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Trend filter timeframe
TrendEMA50Trend EMA period
MinATR0.03Minimum ATR value
MinBreakDistance0.3Minimum break distance
SlopeSMAThreshold0.5Slope threshold for SMA (points)
SlopeEMAThreshold0.7Slope threshold for EMA (points)
SlopeLWMAThreshold0.3Slope threshold for LWMA (points)
SlopeSMMAThreshold0.8Slope threshold for SMMA (points)
UseAdaptiveConfirmfalseEnable adaptive confirmation (additional to Magic)
Adaptive_ATR_Period14ATR period for volatility measurement
Adaptive_HighVol_Pips40.0High volatility threshold (pips for USDJPY) - SCALPING OPTIMIZED
Adaptive_LowVol_Pips15.0Low volatility threshold (pips for USDJPY) - SCALPING OPTIMIZED
Adaptive_Momentum_Bars8Bars for momentum calculation
Adaptive_Momentum_MinPips15.0Minimum momentum in pips - SCALPING OPTIMIZED (was 100)
Adaptive_Trend_Period20Period for trend strength measurement
Adaptive_BaseThreshold65.0Base confirmation threshold (0-100)
Adaptive_VolBoost0.8Multiplier during high volatility - FIXED LOGIC (easier confirmation)
Adaptive_VolPenalty1.2Multiplier during low volatility - FIXED LOGIC (harder confirmation)
Adaptive_DebugLogfalseEnable debug logging for adaptive system
GMT_Offset0GMT offset for all time filters (hours, +/- from GMT)
UseBrokerTimefalseUse broker time instead of GMT (NOT RECOMMENDED)
UseTimeFilterfalseUse basic time filter
StartHour8Start trading hour (GMT + offset)
StartMinute0Start trading minute
EndHour18End trading hour (GMT + offset)
EndMinute0End trading minute
UseSessionFilterfalseEnable trading session filtering
UseSessionOverlapOnlyfalseTrade only during session overlaps
UseSessionLondontrueTrade London session
LondonStartHour8London session start hour (GMT + offset)
LondonStartMinute0London session start minute
LondonEndHour17London session end hour (GMT + offset)
LondonEndMinute0London session end minute
UseSessionNewYorktrueTrade New York session
NewYorkStartHour13New York session start hour (GMT + offset)
NewYorkStartMinute0New York session start minute
NewYorkEndHour22New York session end hour (GMT + offset)
NewYorkEndMinute0New York session end minute
UseSessionTokyofalseTrade Tokyo session
TokyoStartHour0Tokyo session start hour (GMT + offset)
TokyoStartMinute0Tokyo session start minute
TokyoEndHour9Tokyo session end hour (GMT + offset)
TokyoEndMinute0Tokyo session end minute
UseSessionSydneyfalseTrade Sydney session
SydneyStartHour22Sydney session start hour (GMT + offset)
SydneyStartMinute0Sydney session start minute
SydneyEndHour7Sydney session end hour (GMT + offset)
SydneyEndMinute0Sydney session end minute
UseCustomSession1falseEnable custom session 1
Custom1StartHour10Custom session 1 start hour (GMT + offset)
Custom1StartMinute0Custom session 1 start minute
Custom1EndHour16Custom session 1 end hour (GMT + offset)
Custom1EndMinute0Custom session 1 end minute
UseCustomSession2falseEnable custom session 2
Custom2StartHour15Custom session 2 start hour (GMT + offset)
Custom2StartMinute0Custom session 2 start minute
Custom2EndHour21Custom session 2 end hour (GMT + offset)
Custom2EndMinute0Custom session 2 end minute
UseEndOfDayFilterfalseEnable end-of-day position management
EODCloseHour22End-of-day close hour (GMT + offset)
EODCloseMinute0End-of-day close minute
PauseNewTradesBeforeEODtruePause new trades before EOD
PauseMinutesBeforeEOD30Minutes before EOD to pause new trades
EODCloseModeEOD_CLOSE_NONEEOD position closing mode
ForceCloseMinutesBeforeEOD5Minutes before EOD to force close trades
UseEndOfWeekFilterfalseEnable end-of-week position management
EOWCloseDay5End-of-week day (1=Monday, 5=Friday)
EOWCloseHour21End-of-week close hour (GMT + offset)
EOWCloseMinute0End-of-week close minute
PauseNewTradesBeforeEOWtruePause new trades before EOW
PauseMinutesBeforeEOW60Minutes before EOW to pause new trades
EOWCloseModeEOW_CLOSE_NONEEOW position closing mode
ForceCloseMinutesBeforeEOW15Minutes before EOW to force close trades
UseTimeBasedEntryPausefalseEnable time-based entry pause
EntryPauseAfterPositionClose5Minutes to pause entries after position close
AvoidMajorNewsTimefalseAvoid trading during major news
NewsAvoidanceMinutes30Minutes to avoid before/after news
UseDayOfWeekFilterfalseEnable day of week filter
TradeMondaytrueTrade on Monday
TradeTuesdaytrueTrade on Tuesday
TradeWednesdaytrueTrade on Wednesday
TradeThursdaytrueTrade on Thursday
TradeFridaytrueTrade on Friday
AvoidFridayAfterHourfalseAvoid Friday trading after specific hour
FridayAvoidAfterHour16Hour to stop Friday trading (GMT + offset)
UseCorrelationFilterfalseEnable correlation filter for USDJPY scalping
CorrelationTimeframe4Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Timeframe for correlation analysis
CorrelationLookbackBars20Bars to analyze for correlation
CorrelationThreshold0.7Minimum correlation threshold (0-1)
CorrelationInversefalseUse inverse correlation (for counter-trend scalping)
CorrelationMinimumMove20.0Minimum price movement in points to consider
CorrelationSmoothingPeriod5Smoothing period for correlation calculation
CorrelationDebugLogfalseEnable debug logging for correlation filter
UseEURUSD_CorrelationtrueUse EURUSD correlation
UseGBPUSD_CorrelationtrueUse GBPUSD correlation
UseAUDUSD_CorrelationtrueUse AUDUSD correlation
UseUSDCHF_CorrelationtrueUse USDCHF correlation
UseUSDCAD_CorrelationtrueUse USDCAD correlation
UseEURJPY_CorrelationfalseUse EURJPY correlation
UseGBPJPY_CorrelationfalseUse GBPJPY correlation
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX16056.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX16056 newOptmized -- Optimized multi-indicator EA with RSI, MBS, Magic indicator and adaptive confirmation, full 12-layer stack."
#include <Trade/Trade.mqh>
#include <Trade/PositionInfo.mqh>
#include <Trade/OrderInfo.mqh>

//+------------------------------------------------------------------+
//| Input Parameters - Organized and Validated                      |
//+------------------------------------------------------------------+
ENUM_TIMEFRAMES MapTimeframeInt(int tf)
{
   switch(tf)
   {
      case 1: return PERIOD_M1;
      case 2: return PERIOD_M5;
      case 3: return PERIOD_M15;
      case 4: return PERIOD_M30;
      case 5: return PERIOD_H1;
      case 6: return PERIOD_H4;
      case 7: return PERIOD_D1;
      default: return PERIOD_H1;
   }
}
ENUM_APPLIED_PRICE MapAppliedPriceInt(int ap)
{
   switch(ap)
   {
      case 1: return PRICE_CLOSE;
      case 2: return PRICE_OPEN;
      case 3: return PRICE_HIGH;
      case 4: return PRICE_LOW;
      case 5: return PRICE_MEDIAN;
      case 6: return PRICE_TYPICAL;
      case 7: return PRICE_WEIGHTED;
      default: return PRICE_CLOSE;
   }
}
ENUM_TIMEFRAMES g_RSI_TF = PERIOD_H1;
ENUM_TIMEFRAMES g_MBS_Entry_Timeframe = PERIOD_H1;
ENUM_TIMEFRAMES g_MBS_Confirm_Timeframe = PERIOD_H1;
ENUM_TIMEFRAMES g_Timeframe = PERIOD_H1;
ENUM_TIMEFRAMES g_TrendFilterTF = PERIOD_H1;
ENUM_TIMEFRAMES g_CorrelationTimeframe = PERIOD_H1;
ENUM_APPLIED_PRICE g_RSI_Price = PRICE_CLOSE;
input group "=== BASIC SETTINGS ==="
input bool     EnableTrading = true;                    // Enable trading
input bool     EnableDebug = false;                     // Enable debug logging
input double   LotSize = 0.01;                         // Fixed lot size
input int      MagicNumber = 22216056;                   // Magic number
input string           InpTradeComment = "Psgrowth.com Expert_16056";   // Trade comment
input int      Slippage = 3;                           // Slippage in points

ENUM_TIMEFRAMES MapTimeframeInt(int tf)
{
   switch(tf)
   {
      case 1: return PERIOD_M1;

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

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

الوسوم:ex16056trendpipsgrowthfreemt5xauusd

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

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

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

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

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

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

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

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