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

Pipsgrowth EX15016 SMC-OrderBlock — إكسبرت أدفايزر إكسبرت أدفايزر

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

Pipsgrowth EX15016 SMC-OrderBlock — Liquidity-trap scalper with enhanced dynamic profit management — detects swing liquidity zones, price surges and volume . إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

إكس 15016 هو مضارب على XAUUSD مبني حول قرار تصميمي واحد: بدلاً من الاحتفاظ بالصفقات حتى جني أرباح ثابت والاعتماد على الحظ، يقوم هذا الخبير بتعديل وقف الخسارة ديناميكياً للأعلى كلما تحرك السعر في صالحك، عبر نظام قفل ربح ديناميكي يصبح أكثر عدوانية كلما ابتعد السعر لصالح صفقتك. الملف يأتي تحت اسم v3.5.1، لكن الكود المصدري يحتوي على ثلاث تسميات إصدار مختلفة — #property version 2.00، وسطر description يقول v3.5.1، وطباعة OnInit تقول v3.5.1، وعنوان لوحة المعلومات يقول v3.0 — فاعتبر البناء v3.5.1 (الأحدث من بين التسميات) وتجاهل نص لوحة المعلومات.

الفكرة التداولية تبدأ بمناطق السيولة عند القمم والقيعان. في كل شريط جديد، يمسح الخبير آخر Max(20, SwingBarCount*2+5) شريط بحثاً عن نقاط القمة والقاع الكسرية ثلاثية الأشرطة — FindSwingHigh يمشي في مصفوفة القمم ويعيد أول مؤشر حيث high[i] > high[i-1] و high[i] > high[i+1] لـ SwingBarCount=1 شريط على كل جانب؛ FindSwingLow يفعل العكس. كل قمة كسيرية جديدة تصبح منطقة سيولة علوية، وكل قاع كسيري جديد يصبح منطقة سيولة سفلية، وكل واحدة تُرسم على الرسم البياني كخط OBJ_HLINE بـ clrCrimson أو clrDodgerBlue بنمط STYLE_DASH مع تلميح. تقوم AddLiquidityZone بإلغاء تكرار المرشحين الجدد مقابل المناطق الحالية بتفاوت سعري قدره 0.3%، فيتراكم على الرسم البياني خريطة متفرقة من نقاط الارتكاز الأخيرة بدلاً من جدار من الخطوط المتداخلة. تتعطل المناطق تلقائياً بعد MaxZoneAge=24 ساعة، وتعمل CleanupInactiveZones كل أربع ساعات لضغط المصفوفات.

بمجرد ظهور منطقة على الرسم البياني، يصبح فحص الدخول بوابة AND من خمسة شروط. للشراء، ينظر الخبير إلى كل منطقة سفلية نشطة ويسأل هل سعر Ask الحالي داخل نطاق 1% لتلك المنطقة — zoneLower <= currentPrice <= zoneLower * 1.01. إذا كان السعر في النطاق، يتم تقييم خمسة شروط: (1) ترجع CheckPriceSurge صحيحاً عندما يتجاوز MathMax لنسبة الفتح-إلى-الحالي على آخر 10 أشرطة ونسبة النطاق بين الأعلى-والأدنى لـ 5 أشرطة قيمة PriceSurgePercent*100 = 0.1%؛ (2) ترجع IsVolumeSurge صحيحاً عندما يكون حجم التداول الحالي على الأقل VolumeSurgeMultiplier=1.5x لمتوسط 20 شريط — لكن الدالة تتجاوز وترجع صحيحاً مباشرة لأن RequireVolumeSurge=false افتراضياً، فحجم التداول حالياً بوابة خامدة؛ (3) تستدعي IsZoneConfirmedByHigherTimeframe دالة DetermineTrend(ConfirmationTimeframe) لقراءة تقاطع المتوسط المتحرك (20) مع (50) على H4 افتراضياً — لكن هذا أيضاً يتجاوز ويرجع صحيحاً لأن UseHigherTimeframeConfirmation=false، فلتر الإطار الزمني الأعلى خامد؛ (4) شرط اندفاع السعر هو المرشح الوحيد الفعال دائماً بعد احتواء المنطقة؛ (5) تمشي IsBullishEngulfingPattern للخلف EngulfingLookback=3 أشرطة بحثاً عن شمعة صاعدة حالية يبتلع جسمها تماماً نطاق جسم شمعة هابطة سابقة — currentOpen <= previousClose و currentClose >= previousOpen — وهو مفعّل افتراضياً. مسار البيع يعكس الفحص على المناطق العلوية مع النطاق المعكوس [zoneUpper*0.99, zoneUpper] ونمط الابتلاع البيعي. عملياً، الخبير يعمل كاستراتيجية اندفاع سعر + ابتلاع + قرب من المنطقة، مع بوابتي تأكيد خامدتين متاحتين إذا أردت تشديده.

هندسة وقف الخسارة وجني الأرباح ثابتة بالمنطقة، وليست بحالة المؤشر. للشراء، وقف الخسارة هو zoneLower * 0.995 — نصف بالمئة تحت النطاق السفلي — وجني الأرباح يُحسب كمكافأة-إلى-مخاطرة نظيفة 1:2: takeProfit = currentPrice + (currentPrice - stopLoss) * RewardToRiskRatio. مع RewardToRiskRatio=2.0 افتراضياً، يعطي وقف الخسارة بنسبة 1% من المنطقة هدفاً بنسبة 2%. البيع يعكس الهندسة على المنطقة العلوية. تحديد حجم اللوت هو أبسط جزء في النظام: تتجاهل CalculatePositionSize وسيط نقاط وقف الخسارة تماماً وترجع FixedLotSize=0.01 بعد أن تقيده NormalizeLotSize ضمن الحد الأدنى/الأعلى وخطوة اللوت لدى الوسيط. هذا خبير بحجم لوت ثابت — وليس بنسبة مخاطرة — فيتدرج حجم الصفقة فقط بتغيير المدخل، لا بحجم الرصيد.

نظام قفل الربح الديناميكي هو سبب وجود هذا الخبير كملف منفصل عن باقي عائلة EX15. في كل تيكت، تمشي ManageOpenPositions عبر كل صفقة مفتوحة بسحر هذا الخبير وتستدعي ApplyDynamicProfitLock(ticket). تقرأ الدالة أولاً سعر الدخول، ووقف الخسارة/جني الأرباح الحالي، و Bid الحالي (للشراء) أو Ask الحالي (للبيع)، ثم تحسب profitPoints = (currentPrice - entryPrice) / point. ثم تستخرج currentLockLevel = floor(profitPoints / LockProfitEvery_X_Points)، وهي floor(profitPoints / 30) مع الإعدادات الافتراضية. كلما تجاوز المستوى المكتشف lockLevelCount[posIndex] المخزن، يحسب الخبير وقف خسارة جديد يقفل الربح: newSL = entryPrice + (currentLockLevel * 30 - buffer) * point للشراء (معكوس للبيع). المخزن هو LockMinusBuffer=15 نقطة افتراضياً، لكن إذا كان EnableProgressiveBuffer=true، تضرب CalculateProgressiveBuffer المخزن في ProgressiveBufferRatio=0.8 مرة لكل مستوى قفل — فيرى المستوى 1 مخزن 15 نقطة، والمستوى 2 يرى 12، والمستوى 3 يرى ~9.6، والمستوى 4 يرى ~7.7، وهكذا، مع حد أدنى قسري عند 1 نقطة. آلية التدرج أحادية الاتجاه: الشراء يحدّث وقف الخسارة فقط عندما newSL > currentSL (أو وقف الخسارة الحالي 0)؛ البيع يحدّث فقط عندما newSL < currentSL. إذا كان وقف الخسارة الجديد قريباً جداً من السعر الحالي نسبةً لمستوى SYMBOL_TRADE_STOPS_LEVEL لدى الوسيط، يُتخطى التعديل. استدعاء PositionModify الفعلي يمر عبر CTrade tradeMod محلية طازجة مع SetDeviationInPoints(10) — ولا يمر عبر كائن Trade الرئيسي ولا يستخدم مساعد إعادة المحاولة TryModify_EX15016. كل حدث قفل ناجح يزيد totalLockEvents ويضيف النقاط المقفلة إلى totalProfitLocked؛ وكلا الرقمين تُطبعان في OnDeinit.

مسار الإغلاق الجزئي هو طبقة منفصلة اختيارية مدمجة في نفس خطوة القفل. عندما يكون EnablePartialClose=true ولم يتم بعد إغلاق جزئي للصفقة، يحسب الخبير partialCloseDone[posIndex] = true ويحاول إغلاق PartialClosePercent=50% من الصفقة عبر CTrade tradePartial طازجة بنفس السحر وانحراف 10 نقاط. مع الإعدادات الافتراضية يكون الإغلاق الجزئي معطلاً ولا يُطلق إطلاقاً؛ تشغيله يتيح للخبير جني نصف الصفقة عند مستوى القفل الأول ثم الاستمرار في إدارة الباقي بآلية التدرج. وقف الخسارة المتحرك القياسي هو مسار إدارة ثالث متوازٍ: عندما يكون EnableTrailingStop=true، تُطلق ApplyTrailingStop من ManageOpenPositions وتستخدم مساعد إعادة المحاولة TryModify_EX15016 (3 محاولات، تأخر تدريجي 100مللي/200مللي/300مللي على REQUOTE/TIMEOUT/PRICE_CHANGED) لنقل وقف الخسارة إلى entryPrice + profitPoints * TrailingStopPercent/100 — افتراضياً 50% من الربح غير المقفل. هذا مسار كود منفصل عن القفل الديناميكي: إذا فعّلت كلاً من وقف الخسارة المتحرك والقفل الديناميكي، سيحاول كلاهما دفع وقف الخسارة، ومن ينطلق آخراً بوقف خسارة أعلى يفوز.

ضوابط المخاطرة مختصرة. مرشح سبريد لكل تيكت يرفض أي تيكت حيث SymbolInfo.Spread() * point > MaxSpreadPoints * point (3 نقاط افتراضياً). عند كل إغلاق، تزيد UpdateTradeStatistics عدّاد consecutiveLosses عند الخسارة وتعيده إلى الصفر عند الربح؛ بمجرد consecutiveLosses >= MaxConsecutiveLosses=3، يحجب pauseUntilTime = TimeCurrent() + PauseMinutes * 60 كل المداخل الجديدة لمدة ساعة. MaxPositions=5 يحدد سقف التعرض المتزامن. EnableTimeFilter=false افتراضياً — اضبطه على true لتقييد الدخول بين TradingHoursStart='08:00' و TradingHoursEnd='20:00' بتوقيت الوسيط. المدخلان AvoidHighImpactNews=true ودقائق مخزن الأخبار زخرفيان: لا توجد دالة IsHighImpactNewsTime في المصدر، ولا تكامل مع موجز أخبار، والمرشح وظيفياً خامد.

ملاحظات جودة الكود التي تستحق المعرفة: مساعد MapTimeframeInt مُعرَّف ست مرات منفصلة في المصدر (السطور 35 و 58 و 82 و 106 و 133 و 163)، كل منها بنفس المفتاح على tf من 1 إلى 7 — التصريحات المكررة تترجم بسبب كيفية تعامل MQL5 مع التوقيعات المتطابقة، لكنها فوضى زائدة عن الحاجة. يعلن الرأس عن بنية من 12 طبقة (REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester) لكن المصدر فعلياً يطبق نحو سبع من تلك الطبقات فقط — لا يوجد مصنف نظام رسمي، ولا محرك سقف رأس مال، ولا دالة لياقة OnTester. استدعاء UpdateLiquidityZones مقيّد بأشرطة جديدة؛ استدعاء إدارة الصفقات يعمل في كل تيكت. لوحة المعلومات عبارة عن لوحة من 7 أسطر (العنوان / الحالة / اللوت ونسبة RR / عدد المناطق / إحصائيات الصفقات / عامل الربح / الإشارة الحالية) مع قسم منفصل UpdateProfitLockDashboard يعرض المستويات المقفلة لكل تذكرة — ShowProfitDashboard=true افتراضياً.

لاختبارات الـ backtest توقع: 1-4 صفقات لكل جلسة بحسب عدد مرات ملامسة السعر لمناطق الارتكاز الأخيرة، ونسبة مكافأة-إلى-مخاطرة 1:2 على ساق جني الأرباح الثابت، ووقف خسارة متدرج على الساق الديناميكية يحوّل نحو نصف كل الصفقات إلى مخارج عند نقطة التعادل أو أفضل. يحافظ حجم اللوت الثابت 0.01 على نفس المخاطرة بالدولار بصرف النظر عن مسافة الوقف — إذا أردت أن يدرج الخبير حجم الصفقة مع الحساب، اضرب FixedLotSize يدوياً عند تغيير الرمز. هذا الخبير مخصص للمتداولين الذين يريدون تحديداً قفل ربح بمستوى متدرج على إطار عمل انعكاس منطقة الارتكاز، وهم مستعدون لقبول بوابتي التأكيد الخامدتين كما هي مُكوَّنة.

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

في كل شريط جديد يمسح الخبير السعر بـ FindSwingHigh / FindSwingLow (كسور ثلاثية الأشرطة، SwingBarCount=1) ويسجل كل نقطة ارتكاز كسيرية طازجة كمنطقة سيولة تُرسم على الرسم البياني كخط OBJ_HLINE بـ clrCrimson / clrDodgerBlue بنمط STYLE_DASH. تلغي AddLiquidityZone التكرار بتفاوت 0.3%؛ تتعطل المناطق تلقائياً بعد MaxZoneAge=24 ساعة وتضغط CleanupInactiveZones المصفوفات كل 4 ساعات. تمشي CheckBuySignals عبر المناطق السفلية النشطة وتسأل هل يجلس Ask في نطاق 1% [zoneLower, zoneLower*1.01] — عندما يحدث ذلك، يقيّم الخبير اندفاعاً سعرياً (MathMax لحركة الفتح-إلى-الحالي على 10 أشرطة ونطاق الأعلى-والأدنى على 5 أشرطة، عتبة 0.1%) بالإضافة إلى ابتلاع صاعد خلال 3 أشرطة؛ البيع يعكس على المناطق العلوية مع النطاق المعكوس والابتلاع البيعي. يجلس وقف الخسارة بنسبة 0.5% خلف المنطقة، وجني الأرباح بنسبة 1:2 RR، وترجع CalculatePositionSize حجم لوت ثابت 0.01 بصرف النظر عن مسافة الوقف. تُطلق ApplyDynamicProfitLock في كل تيكت، وتستخرج currentLockLevel = floor(profitPoints / 30)، وكلما تجاوز المستوى المكتشف العدد المخزن تدرج وقف الخسارة بمخزن تدريجي (15 نقطة عند المستوى 1، ثم يُضرب في 0.8 لكل مستوى وصولاً إلى حد أدنى 1 نقطة). يمر التعديل عبر CTrade tradeMod محلية طازجة بانحراف 10 نقاط؛ الدالة تحرك وقف الخسارة فقط في الاتجاه لصالح الصفقة. تستدعي ManageOpenPositions أيضاً ApplyTrailingStop عندما يكون EnableTrailingStop=true (تستخدم مساعد إعادة المحاولة TryModify_EX15016) وتزيد consecutiveLosses عند كل إغلاق خاسر — ثلاثة على التوالي تُطلق إيقافاً مؤقتاً لمدة 60 دقيقة عبر pauseUntilTime.

إشارة الدخول

يُطلق إشارة شراء عندما يدخل السعر نطاق 1% فوق منطقة سيولة سفلية (قاع كسيري ثلاثي الأشرطة) ويحدث اندفاع سعري يتجاوز 0.1% (MathMax لحركة الفتح-إلى-الحالي على 10 أشرطة ونطاق الأعلى-والأدنى على 5 أشرطة) ويظهر نمط ابتلاع صاعد خلال آخر 3 أشرطة. البيع يعكس على المناطق العلوية. بوابتا التأكيد (اندفاع الحجم، اتجاه المتوسط على إطار أعلى) خامدتان افتراضياً.

إشارة الخروج

جني الأرباح الثابت بنسبة 1:2 هو الخروج الأساسي. تقوم دالة ApplyDynamicProfitLock أيضاً بتدرج وقف الخسارة في خطوات 30 نقطة (3 نقاط) في كل تيكت مع نمو الربح، باستخدام مخزن تدريجي يتقلص 20% لكل مستوى قفل من 15 نقطة إلى حد أدنى 1 نقطة. إغلاق جزئي اختياري بنسبة 50% يُطلق عند مستوى القفل الأول عندما يكون EnablePartialClose=true.

وقف الخسارة

وقف الخسارة الأولي الثابت يجلس بنسبة 0.5% خلف منطقة السيولة النشطة (zoneLower0.995 للشراء، zoneUpper1.005 للبيع). بمجرد تحرك السعر 30+ نقطة في الربح، يدرج الخبير وقف الخسارة نحو الدخول في خطوات 30 نقطة مع مخزن 15 نقطة يتقلص لكل مستوى. لا يوجد سقف تراجع على مستوى المحفظة؛ الضمانة العالمية الوحيدة هي إيقاف مؤقت لمدة 60 دقيقة بعد 3 خسائر متتالية.

جني الأرباح

هدف ثابت بنسبة مكافأة-إلى-مخاطرة 1:2 محسوب من سعر الدخول ناقص وقف الخسارة المرتكز على المنطقة: takeProfit = currentPrice + (currentPrice - stopLoss) * RewardToRiskRatio. مع وقف الخسارة الافتراضي عند 0.5% من المنطقة وRewardToRiskRatio=2.0، ينتج عن هذا هدف ثابت بنسبة 2%. يُوضع جني الأرباح لدى الوسيط؛ يمكن للقفل الديناميكي أيضاً إغلاق الصفقات أبكر بتدرج وقف الخسارة إلى مستوى يُمَس.

الأنسب لـ

الحد الأدنى الموصى به للرصيد: 100 دولار بحجم اللوت الثابت الافتراضي 0.01. الزوج: XAUUSD على الإطار الزمني للتداول المحدد بواسطة مدخل Timeframe (العدد الصحيح الافتراضي 4 يُعيَّن إلى M30؛ وسوم قاعدة البيانات تقول M5 — تأكد من أن المدخل يطابق الرسم البياني قبل التشغيل الفعلي). الوسيط: ECN / RAW بفارق أقل من 3 نقاط — مرشح السبريد 30 نقطة بالإضافة إلى وقف الخسارة 0.5% خلف المنطقة يعطي دخولاً ضيقاً يلتهمه السبريد الواسع. الجلسة: تداخل لندن ونيويورك، عندما يمسح XAUUSD بانتظام نقاط ارتكاز الجلسة السابقة ويكون لنمط الابتلاع حجم. الأنسب للمتداولين الذين يريدون قفل ربح بمستوى متدرج على انعكاس منطقة الارتكاز، ومستعدين لإدارة مفاتيح الحجم/HTF الخامدة يدوياً.

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

Pipsgrowth EX15016 SMC-OrderBlock — تحليل منطق الاستراتيجية (من كود .mq5)

العائلة: SMC-OrderBlock الماجيك: 22215016 الإصدار: 2.00

الوصف: Liquidity-trap scalper with enhanced dynamic profit management — detects swing liquidity zones, price surges and volume spikes, enters on engulfing confirmation with dynamic profit-locking, progressive buffers and partial close. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

المؤشرات:

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

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

  • LogMessage()
  • LogDynamicProfitMessage()
  • GetPositionIndex()
  • RemovePositionFromProfitLock()
  • ApplyDynamicProfitLock()
  • ApplyTrailingStop()
  • InitializeProfitLockArrays()
  • ErrorDescription()
  • ExecutePartialClose()
  • CalculateProgressiveBuffer()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX15016 SMC-OrderBlock — Execution Flow (from source analysis)
// Family: SMC-OrderBlock
// Liquidity-trap scalper with enhanced dynamic profit management — detects swing liquidity zones, price surges and volume spikes, enters on engulfing confirmation with dynamic profit-locking, progressive buffers and partial close. 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اسحب الإكسبرت على رسم بياني يطابق الإطار الزمني الموصى به
  7. 7هيّء المعاملات وفقاً للجدول في هذه الصفحة
  8. 8فعّل Allow Algo Trading واضغط OK

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

المعاملالافتراضيالوصف
MagicNumber22215016Magic Number
InpTradeComment"Psgrowth.com Expert_15016"Trade Comment
EnableDebugtrueEnable Debug Messages
Timeframe4Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Trading Timeframe
SwingBarCount1Number of bars for swing detection (smaller value = more swings)
MaxZoneAge24Maximum zone age in hours
PriceSurgePercent0.001Percent of price movement to consider as surge (0.001-0.2 recommended)
RequireVolumeSurgefalseRequire volume surge with price movement
VolumeSurgeMultiplier1.5Volume threshold as multiplier of average
UseHigherTimeframeConfirmationfalseUse higher g_Timeframe for trend confirmation
ConfirmationTimeframe6Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Higher timeframe for confirmation
RequireVolumeConfirmationfalseRequire volume confirmation for entry
UseEngulfingPatterntrueUse engulfing pattern as confirmation
EngulfingLookback3Number of bars to look back for engulfing pattern
FixedLotSize0.01Fixed lot size for all trades
RewardToRiskRatio2.0Reward to risk ratio
EnableTrailingStopfalseEnable trailing stop
TrailingStopPercent50.0Trailing stop as percentage of profit
MaxSpreadPoints30Maximum spread in points
MaxConsecutiveLosses3Max consecutive losses before pausing
PauseMinutes60Minutes to pause after max losses
MaxPositions5Maximum open positions
EnableDynamicLockProfittrueLock profit dynamically
LockProfitEvery_X_Points30.0Lock profit every X points
LockMinusBuffer15.0Buffer below locked level (points)
EnableProgressiveBuffertrueDecrease buffer as profit increases
ProgressiveBufferRatio0.8Buffer reduction ratio per level (0.5-0.9)
EnablePartialClosefalseEnable partial position closing
PartialClosePercent50.0Percentage to close at first profit level (%)
PartialCloseLevels1Number of levels at which to close partially
EnableDynamicProfitManagementDebugfalseDebug for dynamic profit management
ForceDynamicProfitDebugtrueForce debug output for profit locks (regardless of debug setting)
ShowProfitDashboardtrueShow profit lock details on dashboard
EnableTimeFilterfalseEnable trading hours filter
TradingHoursStart"08:00"Trading hours start (broker time)
TradingHoursEnd"20:00"Trading hours end (broker time)
AvoidHighImpactNewstrueAvoid trading during high impact news
NewsBufferMinutesBefore30Minutes to avoid trading before news
NewsBufferMinutesAfter30Minutes to avoid trading after news
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX15016.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX15016 XAUUSD Liquidity Trap EA v3.5.1 — liquidity-zone scalper with dynamic profit management, full 12-layer stack."

#include <Trade/Trade.mqh>
#include <Trade/SymbolInfo.mqh>

// Input parameters: General Settings
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_TIMEFRAMES g_Timeframe = PERIOD_H1;
ENUM_TIMEFRAMES g_ConfirmationTimeframe = PERIOD_H1;
input group "=== General Settings ==="
input int    MagicNumber = 22215016;           // Magic Number
input string InpTradeComment = "Psgrowth.com Expert_15016"; // Trade Comment
input bool   EnableDebug = true;               // Enable Debug Messages
input int Timeframe = 4; // Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1)   // Trading Timeframe

// Input parameters: Liquidity Trap Settings
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_TIMEFRAMES g_Timeframe = PERIOD_H1;
ENUM_TIMEFRAMES g_ConfirmationTimeframe = PERIOD_H1;
input group "=== Liquidity Trap Settings ==="
input int    SwingBarCount = 1;                // Number of bars for swing detection (smaller value = more swings)
input int    MaxZoneAge = 24;                  // Maximum zone age in hours
input double PriceSurgePercent = 0.001;        // Percent of price movement to consider as surge (0.001-0.2 recommended)
input bool   RequireVolumeSurge = false;       // Require volume surge with price movement
input double VolumeSurgeMultiplier = 1.5;      // Volume threshold as multiplier of average

// Input parameters: Entry Confirmation
ENUM_TIMEFRAMES MapTimeframeInt(int tf)
{
   switch(tf)

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

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

الوسوم:ex15016smc-orderblockpipsgrowthfreemt5xauusd

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

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

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

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

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

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

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

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