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

Pipsgrowth EX12039 MultiIndicatorConfluence — إكسبرت أدفايزر إكسبرت أدفايزر

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

Pipsgrowth EX12039 MultiIndicatorConfluence — Adaptive forex scalping EA combining AMA, RSI, ATR, Bollinger Bands and Heiken Ashi confluence. Supports BB breakout and. إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

Pipsgrowth EX12039 هو النسخة المخصصة لزوج EURUSD ضمن عائلة MultiIndicatorConfluence — وهو مضارب آلي على منصة MT5 يدمج بين متوسط متحرك بسيط متكيف مع التذبذب، وبوابة انعكاس مؤشر RSI(14)، ومفتاح تبديل وضع بولينجر باندز (20, 2.0) بين الاختراق والعودة إلى المتوسط، ومرشح تذبذب مبني على ATR(14)، وتأكيد هيكن آشي مبني بالكود، في سلسلة قرارات مجمعة بمنطق AND. رقم السحر 22212039 يعني أن هذه النسخة منفصلة عمداً عن EX12036 وEX12037 وEX12038، مما يتيح لك تشغيل عدة نسخ من العائلة على نفس الحساب لتنويع المحفظة دون تصادم في وسوم الأوامر.

تبدأ سلسلة الإشارات في OnTick، لكن قرارات الدخول لا تُتخذ إلا عند ظهور شمعة جديدة. تعمل دالة UpdateAdaptiveIndicators() في كل تيكت وتُحدّث أربع مصفوفات مبنية بالكود: adaptiveMA[] وvolatility[] وrsiBuffer[] وatrBuffer[]، بالإضافة إلى رباعي هيكن آشي haOpen/haClose/haHigh/haLow. ما يُسمى "المتوسط المتحرك المتكيف" ليس iAMA القياسي — دالة CalculateAdaptiveMA() تحسب متوسط أسعار الإغلاق على فترة adaptivePeriod تعيد تشكيلها كل شمعة دالة CalculateAdaptiveVolatility(). تقارن هذه الدالة النطاق الحالي (high−low) بمتوسط 20 شمعة لحساب نسبة التذبذب، ثم تضبط adaptivePeriod = AdaptiveMA_Period / (1 + (volRatio − 1) × AdaptiveMA_Sensitivity)، مع تقييد النطاق بين 5 و50 شمعة. بعبارة أبسط: عندما تتوسع النطاقات تنكمش الفترة (متوسط سريع)، وعندما تنكمش النطاقات تتمدد الفترة (متوسط بطيء). الناتج يُسجل كمتوسط بسيط SMA على تلك الفترة، وليس AMA بنسب كفاءة كوفمان. يروّج الترويسة لـ"AMA" لكن ما يُنفّذ فعلياً هو متوسط بسيط بنافذة تذبذب — أقرب إلى مزيج بطيء-سريع على غرار Keltner منه إلى AMA حقيقي.

قرار الشراء في GetBuySignal() يربط خمسة شروط بـ AND معاً. يجب أن يُغلق السعر فوق المتوسط المتكيف (اتجاه)، وأن تكون الشمعة الحالية صاعدة، وأن يجتاز فحص التذبذب المعياري بـ ATR(14) قيمة ATR_VolatilityMultiplier × VolatilityThreshold × pointValue (الافتراضي 0.3 نقطة)، وأن يتفق فرع بولينجر باندز، وأن يكون مؤشر RSI(14) قد تجاوز صعوداً مستوى التشبع البيعي 30 إذا كان وضع التقاطع مفعّلاً. مع BB_UseBreakoutStrategy=true (الافتراضي)، يتطلب فرع BB أن يكون close > bbUpper[0]؛ غيّر المفتاح إلى BB_UseMeanReversionStrategy=true وسيتطلب الفرع بدلاً من ذلك close < bbLower[0] — الوضعان حصرية متبادلة، لا مزج بينهما. هيكن آشي هو البوابة الأخيرة بمنطق AND: عندما يكون UseHeikenAshi=true، يجب أن يكون haClose[0] أكبر من haOpen[0] للدخول شراءً. مسار البيع يعكس مسار الشراء تماماً بعلاقات معكوسة.

يمر التأكيد عبر GetConfirmationSignal()، وهو محدد من 4 فروع يعتمد على مفتاحي RSI_UseCrossoverSignals وRSI_UseDivergenceSignals. إذا كان كلاهما مفعّلاً، يمر التأكيد عندما يمر rsiCrossoverConfirm أو rsiDivergenceConfirm AND volumeConfirm (صحيح دائماً في تداول التجزئة للفوركس) AND bbConfirm. تأكيد التقاطع = تجاوز RSI صعوداً لمستوى 30 أو هبوطاً لمستوى 70. تأكيد التباعد = مقارنة تذبذب 5 شموع (سعر قاع أدنى مع RSI قاع أعلى للصعودي، سعر قمة أعلى مع RSI قمة أعلى للهبوطي) تتطلب حجم rsiBuffer ≥ 10. الروتين الفرعي bbConfirm يحسب priceToBBUpperRatio = (price − bbMiddle) / (bbUpper − bbMiddle) وpriceToBBLowerRatio = (bbMiddle − price) / (bbMiddle − bbLower) — يمر التأكيد عندما تتجاوز أي من النسبتين 0.8 في وضع الاختراق، أو عندما يكون السعر في النصف الداخلي من النطاقات في وضع العودة إلى المتوسط. تصميم الأربعة فروع هذا هو البنية المميزة لهذا الـ EA — معظم إخوته في EX12 يستخدمون محدد تأكيد أبسط بفرع أو اثنين.

فلسفة الإدارة تختلف عن أنماط وقف الخسارة المتتبع الموجودة في إخوة فلتر التذبذب فقط. كل أمر جديد يُرسل بوقف خسارة ثابت 50 نقطة وجني أرباح ثابت 100 نقطة (نسبة مخاطرة/عائد 1:2) على تذكرة الأمر نفسها — لا توجد مرحلة حماية أولية منفصلة. بعد فتح الصفقة، تقوم ManageDynamicStopLoss() بسحب وقف الخسارة بخطوات 30 نقطة باستخدام نمط العلامة المائية: تتتبع أعلى ربح لكل صفقة في lastHighestProfit[]، وتحسب lockSteps = floor(peakProfit / 30)، وتسحب وقف الخسارة إلى priceOpen + (lockSteps × 30 − 15) × pointValue. مخزن LockMinusBuffer البالغ 15 نقطة يضمن بقاء وقف الخسارة المُقفل 15 نقطة تحت العلامة المائية — وقف الخسارة لا يرتخي أبداً، بل يشتد فقط. إذا أُغلقت الصفقة وعُيد فتحها عند مستوى مشابه، تُعاد تهيئة العلامة المائية طبيعياً في التيكت التالي.

سياسة الإضافة إلى الرابحين هي الركيزة الثانية للإدارة. AllowOnlyProfitableAdditions=true (الافتراضي) يعني أن الـ EA سيكدّس تذكرة جديدة فوق صفقات الشراء القائمة فقط إذا كانت كل صفقة شراء قائمة رابحة بـ 20 نقطة على الأقل (MinProfitInPointsPerTradeToAdd). الفحص لكل اتجاه على حدة: يمر على PositionsTotal()، ويُصفّي حسب السحر 22212039، ويحسب ربح كل صفقة بالنقاط وليس بعملة الحساب. MaxOpenTrades=5 يطبق لكل اتجاه، لذا السقف المطلق هو 5 شراء + 5 بيع = 10 تذاكر جارية. RequireToCheckForConfirmationBeforeAdding=true يُجبر كل تذكرة إضافية على اجتياز GetConfirmationSignal() أيضاً — إعادة فحص للتأكيد، وليس تخفيفاً.

تعمل بوابات ما قبل التداول في IsMarketConditionsOK() وIsOptimalTradingSession(). ترفض بوابة شروط السوق الدخول عندما يتجاوز السبريد MaxSpread=5.0 نقطة (ورفض أشد عندما يقفز إلى 5 أضعاف ذلك، مفتاح إيقاف لارتفاع السبريد المتطرف)، أو عندما يخترق انخفاض الحساب MaxDrawdownPercent=10.0%، أو عندما ينخفض ATR(14) تحت حد التذبذب الأدنى. بوابة الجلسة اختيارية: UseSessionFilter=false افتراضياً، لذا الإدخالات الحية غير مقيدة؛ إذا فعّلتها، يسمح الـ EA بالدخول فقط خلال جلسة لندن 08–16 بتوقيت جرينتش، أو نيويورك 13–21، أو التداخل 13–16. والأهم أن isTester = MQLInfoInteger(MQL_TESTER) يجعل بوابة الجلسة تُختصر إلى true في Strategy Tester، فلا تُقصّ الباك تيستات اصطناعياً إلى ساعات محددة. isTester هو أيضاً سبب اختلاف سلوك نفس المسار البرمجي بين العينة الداخلية والتشغيل الحي — احذر عند مقارنة منحنيات الباك تيست بالنتائج الحقيقية.

تعتمد الموثوقية على ثلاثة مساعدات إعادة المحاولة — TryClose_EX12039() وTryClosePartial_EX12039() وTryModify_EX12039() — كل منها يدور حتى 3 محاولات مع نوم 200 مللي ثانية عند REQUOTE/TIMEOUT/PRICE_OFF/PRICE_CHANGED للإغلاقات، و100 مللي ثانية للتعديلات. يُعيّن السحر 22212039 على كل استدعاء trade.Buy() / trade.Sell() عبر trade.SetExpertMagicNumber(MagicNumber) في OnInit، وتُختم كل عملية تنفيذ بسلسلة تعليق Psgrowth.com Expert_12039 حتى تنفصل الـ EAs بوضوح في تقارير السجلات.

توقعات الباك تيست: مع تفعيل وضع الاختراق الافتراضي، سيتداول هذا الـ EA مرات أقل من مضارب متعدد المؤشرات المعتاد لأن كل شرط AND يجب أن يجتاز في وقت واحد. تتجمع الصفقات حول اختراقات بولينجر باندز المتزامنة مع انعكاسات RSI وتأكيد هيكن آشي، وستُغلق معظم الصفقات الرابحة إما عند هدف جني الأرباح 100 نقطة أو عبر قفل وقف الخسارة الديناميكي بمجرد تحرك الصفقة 30+ نقطة في الأخضر. تنشأ الانخفاضات عادةً من تسلسلات يكون فيها اختراق BB كاذباً وينعكس إلى نظام العودة إلى المتوسط — عندها قد يكدّس الـ EA تذاكر إضافية في الاتجاه الخاطئ (لأن صفقات الشراء القائمة لا تزال رابحة في بداية الانعكاس). فكّر في تشديد MinProfitInPointsPerTradeToAdd من 20 إلى 30+ نقطة أو تعطيل AllowOnlyProfitableAdditions كلياً إذا لاحظت تكديساً يشبه المارتينجال خلال الأنظمة المتقطعة.

الحد الأدنى للنشر هو 100 دولار على وسيط ECN فروقات ضيقة مثل Exness أو IC Markets أو Pepperstone — تتوقع بوابة تذبذب ATR سبريد EURUSD ثابتاً بين 1.2 و2.0 نقطة، ويحتاج مساعدات الإغلاق/التعديل ذات الثلاث محاولات إلى زمن استجابة ذهاب وإياب أقل من 50 مللي ثانية. يفترض LotSize=1.0 الثابت تفسيراً للعقد الصغير 0.01 على حساب مايكرو (قيد التعليق يقول 0.012.0 لوت)، لذا لحساب مايكرو بـ 100 دولار ابدأ بـ 0.01 لوت ولا تكبّر إلا بعد 30+ يوماً موثقاً من الباك تيست/التداول.

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

في كل تيكت، تعيد UpdateAdaptiveIndicators() حساب فترة SMA المُكيّفة بالتذبذب من نسبة (high−low) / متوسط 20 شمعة، وتُعيد تعبئة مصفوفات RSI(14) وATR(14) وبولينجر باندز (20, 2.0) وهيكن آشي المبني بالكود. لا تُفعّل CheckForEntry() إلا عند شموع جديدة، وبعد أن تجتاز IsMarketConditionsOK() بوابات السبريد والانخفاض والتذبذب بـ ATR، وتؤكد IsPositionManagementOK() أن التذاكر القائمة رابحة (أو لا توجد تذاكر)، وتسمح IsOptimalTradingSession() بالساعة الحالية — مع أن isTester=true يختصر بوابة الجلسة داخل Strategy Tester. قرار الشراء/البيع في GetBuySignal()/GetSellSignal() هو AND خماسي بين اتجاه السعر مقابل SMA المتكيف، واتجاه الشمعة، وتذبذب ATR، ووضع BB المختار (اختراق/عودة للمتوسط)، واتجاه شمعة هيكن آشي. تضيف GetConfirmationSignal() محدداً رباعي الفروع لتقاطع/تباعد RSI واختبار نسبة مسافة BB قبل أن يُرسل الأمر عبر trade.Buy()/trade.Sell() بوقف خسارة 50 نقطة وجني أرباح 100 نقطة ثابتين. بعد الفتح، تسحب ManageDynamicStopLoss() وقف الخسارة بخطوات 30 نقطة مع مخزن 15 نقطة، وتُصرّ IsPositionDirectionProfitable() التذاكر الإضافية عند 20 نقطة (MinProfitInPointsPerTradeToAdd) لكل اتجاه. يتولى ثلاثة مساعدات إعادة المحاولة (إغلاق / إغلاق جزئي / تعديل) معالجة REQUOTE/TIMEOUT/PRICE_OFF/PRICE_CHANGED بفاصل 200/100 مللي ثانية.

إشارة الدخول

يُفعّل أمر الشراء عندما يكون الإغلاق فوق المتوسط البسيط المتكيف مع التذبذب، والشمعة الحالية صاعدة، وATR(14) يتجاوز حد التذبذب الأدنى، وفرع بولينجر باندز يتفق (الإغلاق > bbUpper[0] في وضع الاختراق، الافتراضي)، وRSI(14) تجاوز صعوداً مستوى التشبع البيعي 30، وشمعة هيكن آشي صاعدة — كل الشروط الخمسة مجمعة بمنطق AND. تعكس أوامر البيع أوامر الشراء بعلاقات معكوسة وباتجاه هيكن آشي معاكس. يعيد التأكيد المرور عبر GetConfirmationSignal() الذي يضيف تحققاً رباعي الفروع لتقاطع/تباعد RSI ومسافة BB قبل فتح أي أمر جديد.

إشارة الخروج

تُغلق الصفقات بثلاث طرق: الوصول إلى هدف جني الأرباح 100 نقطة على تذكرة الأمر، أو ضرب وقف الخسارة الثابت 50 نقطة، أو الإيقاف بواسطة نظام قفل الربح الديناميكي بمجرد تحرك الصفقة 30+ نقطة في الأخضر. يقفل القفل الديناميكي بخطوات 30 نقطة مع مخزن 15 نقطة تحت العلامة المائية — لذا ذروة 90 نقطة تقفل 75 نقطة ربحاً (3 خطوات × 30 − 15). لا يوجد خروج قائم على الإشارة؛ تبقى الصفقات مفتوحة حتى يخرجها وقف الخسارة أو جني الأرباح أو القفل الديناميكي.

وقف الخسارة

كل أمر يُفتح بوقف خسارة ثابت 50 نقطة مُبرمج على التذكرة عبر sl = ask - StopLossPoints * pointValue. بعد الفتح، تتعقب ManageDynamicStopLoss() ذروة ربح كل صفقة في lastHighestProfit[] وتسحب وقف الخسارة إلى priceOpen + (lockSteps × 30 − 15) × pointValue للشراء، دون ارتخاء — تشديد فقط. يضمن مخزن LockMinusBuffer البالغ 15 نقطة بقاء وقف الخسارة المُقفل 15 نقطة تحت العلامة المائية، لذا لا يُفعّل السحب إلا بعد أن تتجاوز ذروة الربح 30 نقطة.

جني الأرباح

كل أمر يُفتح بجني أرباح ثابت 100 نقطة على التذكرة عبر tp = ask + TakeProfitPoints * pointValue، مما يعطي نسبة مخاطرة/عائد 1:2 مقابل وقف الخسارة 50 نقطة. لا يتحرك جني الأرباح أبداً — يبقى مثبتاً عند سعر الدخول زائد 100 نقطة، ويتولى نظام وقف الخسارة الديناميكي حماية الأرباح بأسلوب التعقب عبر سحب وقف الخسارة بدلاً من تحريك جني الأرباح.

الأنسب لـ

الحد الأدنى الموصى به للرصيد هو 100 دولار على وسيط ECN فروقات ضيقة مثل Exness أو IC Markets أو Pepperstone — تتوقع بوابة تذبذب ATR(14) سبريد EURUSD ثابتاً بين 1.2 و2.0 نقطة، ويحتاج مساعدات الإغلاق/التعديل الثلاثية المحاولات إلى زمن استجابة ذهاب وإياب أقل من 50 مللي ثانية. شغّل على EURUSD M5 أو H1 (الزوج الافتراضي للـ EA والأطر الزمنية التي بُوُختبر عليها). يمكن تكديسه مع EAs أخرى من عائلة EX12 على نفس الحساب — السحر 22212039 يمنع تصادم وسوم الأوامر عبر EX12036 وEX12037 وEX12038. ابدأ بـ 0.01 لوت على حساب مايكرو ولا تكبّر إلا بعد 30+ يوماً موثقاً من الباك تيست أو التداول الحي. مستوى المخاطرة: متوسط.

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

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

العائلة: MultiIndicatorConfluence الماجيك: 22212039 الإصدار: 2.00

الوصف: Adaptive forex scalping EA combining AMA, RSI, ATR, Bollinger Bands and Heiken Ashi confluence. Supports BB breakout and mean-reversion modes, dynamic profit locking, additional position management, session and volatility filters. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

المؤشرات:

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

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

  • UpdateAdaptiveIndicators()
  • CalculateAdaptiveVolatility()
  • CalculateAdaptiveMA()
  • CalculateRSI()
  • CalculateHeikenAshi()
  • CalculateATR()
  • CalculateBollingerBands()
  • CheckForEntry()
  • GetBuySignal()
  • GetSellSignal()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX12039 MultiIndicatorConfluence — Execution Flow (from source analysis)
// Family: MultiIndicatorConfluence
// Adaptive forex scalping EA combining AMA, RSI, ATR, Bollinger Bands and Heiken Ashi confluence. Supports BB breakout and mean-reversion modes, dynamic profit locking, additional position management, session and volatility filters. 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
الرموز المُحسّنة:
EURUSD
الأطر الزمنية المُحسّنة:
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اسحب الإكسبرت على رسم بياني يطابق الإطار الزمني الموصى به
  7. 7هيّء المعاملات وفقاً للجدول في هذه الصفحة
  8. 8فعّل Allow Algo Trading واضغط OK

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

المعاملالافتراضيالوصف
EnableTradingtrueEnable trading
EnableDebugfalseEnable debug logging
AllowBuystrueAllow opening buy orders
AllowSellstrueAllow opening sell orders
LotSize1.0Fixed lot size (0.01,0.01,2.0)
MagicNumber22212039Magic number
InpTradeComment"Psgrowth.com Expert_12039"Trade comment
Slippage3Slippage in points (1,1,10)
MaxSpread5.0Maximum spread in points (1.0,0.5,10.0)
MaxDrawdownPercent10.0Maximum drawdown percentage (5.0,1.0,20.0)
MaxRiskPerTrade2.0Maximum risk per trade % (0.5,0.5,5.0)
MaxOpenTrades5Maximum open trades (1,1,10)
StopLossPoints50.0Stop loss in points (20.0,5.0,150.0)
TakeProfitPoints100.0Take profit in points (40.0,10.0,300.0)
EnableDynamicLockProfittrueEnable dynamic profit locking
LockProfitEvery_X_Points30.0Step: every X points profit (10.0,5.0,50.0)
LockMinusBuffer15.0Lock profit minus X point buffer (5.0,2.0,30.0)
EnableDynamicProfitManagementDebugfalseEnable debug logging for dynamic profit management
AllowOnlyProfitableAdditionstrueOnly allow adding positions if existing trades are profitable
MinProfitInPointsPerTradeToAdd20.0Minimum profit required per existing trade in points (10.0,5.0,50.0)
RequireToCheckForConfirmationBeforeAddingtrueRequire to check active confirmation before adding new positions
EnableAdditionalPositionManagementDebugfalseEnable debug logging for additional position management
EnableIndicatorDebugfalseEnable debug logging for indicators
UseAMAforEntrySignalstrueUse AMA for entry signals
UseAMAforConfirmationtrueUse AMA for confirmation
UseRSIforEntrySignalstrueUse RSI for entry signals
UseRSIforConfirmationtrueUse RSI for confirmation
AdaptiveMA_Period14Adaptive MA base period (8,2,30)
AdaptiveMA_Sensitivity2.0Adaptive sensitivity multiplier (1.0,0.5,5.0)
RSI_Period14RSI period (7,1,21)
RSI_Oversold30.0RSI oversold level (20.0,1.0,40.0)
RSI_Overbought70.0RSI overbought level (60.0,1.0,80.0)
RSI_UseCrossoverSignalstrueUse RSI crossover signals
RSI_UseDivergenceSignalsfalseUse RSI divergence signals
EnableRSI_DebugfalseEnable RSI debug logging
ATR_Period14ATR period (7,1,28)
UseATRforVolatilityFiltertrueUse ATR for volatility filtering
ATR_VolatilityMultiplier1.0ATR volatility multiplier (0.5,0.1,3.0)
EnableATR_DebugfalseEnable ATR debug logging
BB_Period20Bollinger Bands period (10,5,50)
BB_Deviation2.0Standard deviation multiplier (1.0,0.1,3.0)
UseBBforEntrySignalstrueUse Bollinger Bands for entry signals
UseBBforConfirmationtrueUse Bollinger Bands for confirmation
BB_UseBreakoutStrategytrueUse breakout strategy
BB_UseMeanReversionStrategyfalseUse mean reversion strategy
EnableBB_DebugfalseEnable Bollinger Bands debug logging
UseHeikenAshitrueUse Heiken Ashi for smoother signals
UseVolatilityFiltertrueUse volatility filter for entries
VolatilityThreshold0.3Minimum volatility threshold in points (0.1,0.1,1.0)
UseSessionFilterfalseUse trading session filter
TradeLondonSessiontrueTrade during London session (8-16 GMT)
TradeNewYorkSessiontrueTrade during New York session (13-21 GMT)
TradeOverlapSessiontrueTrade during London/NY overlap (13-16 GMT)
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX12039.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX12039 EURUSD_1_3 — Adaptive AMA+RSI+ATR+BB+Heiken Ashi scalper, full 12-layer stack."

#include <Trade/Trade.mqh>
#include <Trade/PositionInfo.mqh>
#include <Trade/AccountInfo.mqh>

//--- Global objects
CTrade         trade;
CPositionInfo  position;
CAccountInfo   account;

//--- Input parameters
input group "=== Basic Settings ==="
input bool     EnableTrading = true;                    // Enable trading
input bool     EnableDebug = false;                     // Enable debug logging
input bool     AllowBuys = true;                        // Allow opening buy orders
input bool     AllowSells = true;                       // Allow opening sell orders
input double   LotSize = 1.0;                           // Fixed lot size (0.01,0.01,2.0)
input int      MagicNumber = 22212039;                  // Magic number
input string   InpTradeComment = "Psgrowth.com Expert_12039"; // Trade comment
input int      Slippage = 3;                            // Slippage in points (1,1,10)

input group "=== Risk Management ==="
input double   MaxSpread = 5.0;                         // Maximum spread in points (1.0,0.5,10.0)
input double   MaxDrawdownPercent = 10.0;               // Maximum drawdown percentage (5.0,1.0,20.0)
input double   MaxRiskPerTrade = 2.0;                   // Maximum risk per trade % (0.5,0.5,5.0)
input int      MaxOpenTrades = 5;                       // Maximum open trades (1,1,10)
input double   StopLossPoints = 50.0;                   // Stop loss in points (20.0,5.0,150.0)
input double   TakeProfitPoints = 100.0;                // Take profit in points (40.0,10.0,300.0)

input group "=== Dynamic Profit Management ==="
input bool     EnableDynamicLockProfit = true;         // Enable dynamic profit locking
input double   LockProfitEvery_X_Points = 30.0;        // Step: every X points profit (10.0,5.0,50.0)
input double   LockMinusBuffer = 15.0;                 // Lock profit minus X point buffer (5.0,2.0,30.0)
input bool     EnableDynamicProfitManagementDebug = false; // Enable debug logging for dynamic profit management

input group "=== Additional Position Management ==="
input bool     AllowOnlyProfitableAdditions = true;    // Only allow adding positions if existing trades are profitable
input double   MinProfitInPointsPerTradeToAdd = 20.0;  // Minimum profit required per existing trade in points (10.0,5.0,50.0)
input bool     RequireToCheckForConfirmationBeforeAdding = true; // Require to check active confirmation before adding new positions
input bool     EnableAdditionalPositionManagementDebug = false; // Enable debug logging for additional position management

input group "=== Adaptive Indicators ==="
input bool     EnableIndicatorDebug = false;            // Enable debug logging for indicators
input bool     UseAMAforEntrySignals = true;            // Use AMA for entry signals
input bool     UseAMAforConfirmation = true;            // Use AMA for confirmation
input bool     UseRSIforEntrySignals = true;            // Use RSI for entry signals
input bool     UseRSIforConfirmation = true;            // Use RSI for confirmation
input int      AdaptiveMA_Period = 14;                 // Adaptive MA base period (8,2,30)
input double   AdaptiveMA_Sensitivity = 2.0;           // Adaptive sensitivity multiplier (1.0,0.5,5.0)

input group "=== RSI Settings ==="
input int      RSI_Period = 14;                        // RSI period (7,1,21)
input double   RSI_Oversold = 30.0;                    // RSI oversold level (20.0,1.0,40.0)
input double   RSI_Overbought = 70.0;                  // RSI overbought level (60.0,1.0,80.0)
input bool     RSI_UseCrossoverSignals = true;         // Use RSI crossover signals

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

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

الوسوم:ex12039multiindicatorconfluencepipsgrowthfreemt5eurusd

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

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

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

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

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

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

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

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