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

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

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

Pipsgrowth EX12070 MultiIndicatorConfluence — Production-ready multi-indicator EA using Ichimoku, MACD, RSI across timeframes with confluence entry logic, ATR SL/TP, . إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

إكس 12070 هو الإصدار الإنتاجي الكامل من عائلة MultiIndicatorConfluence — محرك تلاقي يضم 131 مُدخلاً ويجمع ثلاث غيوم إيشيموكو مستقلة وثلاث موجات MACD وثلاث موجات RSI عبر أُطر زمنية قابلة للضبط، ولا يسمح بفتح أي صفقة حتى تتفق كلها على قرار موحَّد. صُمِّم للمتداول الذي يريد رسمًا بيانيًا واحدًا وقرارًا واحدًا، لكنه يريد في الوقت نفسه مرونة المحلّل في وضع إيشيموكو سريع أمام MACD بطيء أمام RSI متوسط والسماح للنظام بالتسوية بينهم. الإعداد الافتراضي هو XAUUSD على الإطار M5 برصيد يبدأ من 100 دولار، لكن الرمز والأطر الزمنية لكل مؤشر وطريقة تحديد حجم اللوت وقاعدة التصويت على الدخول وقاعدة التصويت على التأكيد ووقف التعادل والقفل الديناميكي للربح وسقف الانخفاض وحماية الخسائر المتتالية جميعها مُدخلات يمكنك تجاوزها بلا استثناء.

منطق الدخول مبنيّ على طبقتين من التصويت. الطبقة الأولى، الإشارات، تنتج عن منطق التقاطع لكل مؤشر مُفعَّل: يُسجِّل إيشيموكو إشارة شراء عندما تتقاطع Tenkan-sen فوق Kijun-sen على الشمعة 1 (تقاطع طازج)، ويُسجِّل MACD إشارة شراء عندما يتقاطع خطه الرئيسي فوق خط الإشارة على الشمعة 1، ويُسجِّل RSI إشارة شراء عندما يخرج من منطقة التشبع البيعي إلى الأعلى على الشمعة 1. الطبقة الثانية، التأكيدات، تنتج عن قراءة نفس المؤشرات في صيغة حالة: يؤكِّد إيشيموكو الشراء عندما يكون إغلاق الشمعة 1 فوق السحابة (أعلى Senkou Span A وB)، ويؤكِّد MACD الشراء عندما يكون خطه الرئيسي فوق الصفر على الشمعة 1، ويؤكِّد RSI الشراء عندما يكون فوق 50 على الشمعة 1. تُجمَع الطبقتان لكل مؤشر ثم تُمرَّران عبر مفتاحين مستقلين: EntryMethod (افتراضي ENTRY_ALL_ENABLED، يطلب موافقة كل المؤشرات المُفعَّلة على الإشارة) وConfirmationMethod (افتراضي CONFIRM_ALL_ENABLED، يطلب تأييد كل المؤشرات المُفعَّلة). هذا المزيج هو ما تختبره ShouldOpenBuy() وShouldOpenSell() قبل إرسال أي أمر، لذا في الإعداد الافتراضي لا يُفتح أي مركز حتى يكون كل إيشيموكو وكل MACD وكل RSI في الوقت نفسه يتقاطع ويؤكِّد في الاتجاه ذاته.

عدد المؤشرات ليس ثابتًا. كل سحابة من سحب إيشيموكو الثلاثة وكل MACD وكل RSI له علم Enable خاص به ومُدخل إطار زمني مستقل (1=M1، 2=M5، 3=M15، 4=M30، 5=H1، 6=H4، 7=D1)، فيمكنك تشغيل إيشيموكو بطيء 26-52 على H4 أمام MACD سريع 12-26-9 على H1 وأمام RSI 14 فترة على M30 من داخل EA واحد. الافتراضات هي: إيشيموكو 9-26-52 على H1 (TF=8 يطابق H1MACD 12-26-9 على H4 (TF=6)، RSI 14 فترة على H4 (TF=6)، وATR(14) على إطار الرمز (TF=0). دالة GetEnabledIndicatorCount() ترجع عدد أعلام EnableX الفعّال، وهذا العدد هو المقام الذي تقارن به ENTRY_ALL_ENABLED وCONFIRM_ALL_ENABLED — فشدّة النظام تتناسب طرديًا مع عدد المؤشرات التي تُفعِّلها. المتداول الذي يُفعِّل مؤشرين فقط ويستعمل ENTRY_MIN_REQUIRED = 1 وCONFIRM_ANY_CONFIRMATION سيرى نظامًا أكثر تساهلًا بكثير من الإعداد الأصلي.

وقف الخسارة وجني الأرباح كلاهما مرتبط بالتذبذب ولكلٍّ منهما مسار احتياطي. المسار الأساسي هو وقف ATR: تقرأ CalculateStopLoss() وCalculateTakeProfit() قيمة ATR(14) وتضربها في ATR_MultiplierSL (افتراضي 1.2) للوقف وفي ATR_MultiplierTP (افتراضي 1.5) للجني، فيكون R:R الافتراضي عند استخدام ATR هو 1:1.25. المسار الاحتياطي هو HardSL_Points = 120 وHardTP_Points = 180 ويُستخدم فقط عندما يتعذَّر قراءة ATR، وهو يعطي نسبة 1:1.5. هناك طبقة ثالثة: عندما يكون كل من وقف ATR والقفل الديناميكي للربح نشطين، فإن تعداد SLResolve (SL_SYSTEM_DECIDE، SL_USE_ATR، SL_USE_DYNAMIC_LOCK) يقرر أيهما يُطبَّق على كل تذكرة. تحديد حجم اللوت ثلاثي أيضًا: LOT_FIXED (افتراضي 0.10 لوت)، أو LOT_PER_BALANCE (اللوت = الرصيد / 2000)، أو LOT_RISK_PERCENTAGE (1.0% من الإكويتي مقسومة على مسافة الوقف المحسوبة من ATR في نموذج وسيط من خمس خانات).

بعد فتح الصفقة، تستدعي ManagePositions() على كل تيك. أول ما تستدعيه CheckBreakeven(): عندما يتحرك السعر 30 نقطة في الربح، يُرفع وقف الخسارة إلى سعر الدخول مضافًا إليه 5 نقاط (أو إلى سعر الدخول بالضبط إذا كان BreakevenLockPoints = 0). ثم تستدعي CheckDynamicProfitLock(): عندما يتجاوز الربح العائم LockProfitEvery_X_Dollars (2 دولار افتراضيًا)، يُنقل وقف الخسارة ليقفل كل الربح ماعدا LockMinusBuffer (1 دولار افتراضيًا) من المسافة الحالية بين السعر وسعر الدخول. النتيجة أن الصفقة بعد تعويم بسيط تصبح مستحيلة الإغلاق بخسارة. CheckOppositeSignalClosure() هي طبقة الإدارة الثالثة: إذا أنتج تحليل جديد للمؤشرات إشارة معاكسة تستوفي شروط ShouldOpenBuy/ShouldOpenSell، يُغلق المركز عبر TryClose_EX12070. كل مسارات التعديل والإغلاق تمر عبر غلاف إعادة المحاولة ثلاث مرات الذي يلتقط TRADE_RETCODE_REQUOTE و_TIMEOUT و_PRICE_OFF و_PRICE_CHANGED بسكون 100–200 مللي ثانية بين المحاولات — حل وسط متعمَّد بين السرعة والموثوقية في تيارات الذهب السريعة.

طبقة إدارة المخاطر تتضمن ثلاثة حراس مستقلين. تقارن CheckDrawdownProtection() بين الإكويتي الحالي والإكويتي المسجَّل في OnInit؛ عندما يتجاوز الانخفاض MaxDrawdownPercent (10% افتراضيًا) وكان DrawdownStopTrading مفعَّلًا، يتوقف الـ EA عن فتح صفقات جديدة، وإذا كان DrawdownCloseAll مفعَّلًا، يُصفِّي أيضًا كل المراكز عبر CloseAllPositions(). إذا تجاوز الانخفاض 50% من السقف وكان DrawdownReduceLots مفعَّلًا، تضرب CalculateLotSize() حجم اللوت التالي في DrawdownLotReduction (0.5 افتراضيًا) فتُنصَف المخاطرة قبل بلوغ السقف. تراقب CheckConsecutiveLossProtection() رد نداء OnTradeTransaction: بعد MaxConsecutiveLosses صفقات خاسرة (3 افتراضيًا)، يضبط الـ EA pauseUntil على الآن + LossProtection_PauseMinutes * 60 ويرفض الدخول طوال تلك المدة. يوجد أيضًا مسار تعافٍ قابل للضبط — LossProtection_ReduceLotSize يُنصِف حجم اللوت التالي لكل خسارة بعد LotReduction_AfterLosses (2)، وLossProtection_IncreaseSL يوسِّع الوقف التالي بمعامل SL_Increase_Factor (1.5x) لكل خسارة، بسقف SL_Increase_MaxMultiplier (2.0x). كلاهما مُعطَّل افتراضيًا لأن الـ EA يفترض أن السوق في وضع اتجاه على الإعداد الأصلي؛ تشغيلهما هو المسار المحافظ.

ثلاث نوافذ جلسات تضع بوابة على طريق الدخول، تتحكم فيها مجموعة === Trading Sessions ===. الإعداد الافتراضي يُعطِّل فلتر الجلسات (EnableSessionFilter = false)، فيتداول الـ EA على مدار الساعة، لكن التوصيل جاهز لما يصل إلى ثلاث نوافذ مستقلة. الجلسة 1 مضبوطة مسبقًا على 08:00–17:00 (جلسة لندن + نيويورك النقدية على وسيط بتوقيت GMT+0/+2)، والجلسة 2 على 18:00–23:59 (بعد ظهر نيويورك)، والجلسة 3 على 00:00–07:59 (آسيا). تتحقق IsWithinTradingSession() من كل جلسة بالترتيب، والجلسة التي تتجاوز منتصف الليل تُعامَل كنافذة ليلية — ولذلك تعمل نافذة 22:00–06:00 أيضًا دون تعديل في الكود. يُضيف MinBarsBetweenTrades = 1 وOneTradePerSignal = true خانقًا ثانيًا: دخول واحد لكل شمعة، وفاصل شمعة واحدة على الأقل بين الدخولين، ما يمنع نفس الإشارة من إعادة الإطلاق على كل تيك من شمعة الخمس دقائق.

البصمة على الرسم البياني صغيرة بقصد التصميم: ShowIndicatorsOnChart = true يرسم كل سحب إيشيموكو وموجات MACD ولوحات RSI المُفعَّلة، وShowOrderExecutionLines = true يضع خطًا عموديًا منقَّطًا عند كل دخول شراء (أزرق) ودخول بيع (أحمر). يُبنى تعليق الصفقة من InpTradeComment + PresetNumber + الاتجاه، فيمكن البحث في سجل الباك تيست باسم الـ EA. طبقة العرض هي الشيء الوحيد الذي يستهلك وحدة المعالجة المركزية — VerboseLogging وDebugSignalDetails كلاهما معطَّل افتراضيًا ويُفضَّل إبقاؤهما معطَّلين في التشغيل الحقيقي لأنهما يطبعان على كل شمعة مؤكدة. EvaluateOnNewBar = true هو مفتاح الأداء الآخر: يقصر طريق OnTick() على ما لم تنتهِ الشمعة الحالية بعد، ما يعني على M5 أن التحليل يعمل 12 مرة في الساعة بدل آلاف المرات في الدقيقة. مع تفعيل المؤشرات الثلاثة لكل فئة، يحتفظ الـ EA بعشر مقابض مؤشر أصلية (من ichimoku1_handle إلى ichimoku3_handle، ومن macd1_handle إلى macd3_handle، ومن rsi1_handle إلى rsi3_handle، إضافة إلى atr_handle)؛ وتعطيل الفئات التي لا تحتاجها هو أكبر توفير يمكنك تحقيقه في وحدة المعالجة المركزية على هذا الإصدار.

عمليًا، يكافئ هذا الـ EA المستخدم الذي يُدخل مُدخلاته ببطء أكثر من المستخدم السريع. الإعداد الافتراضي — عشرة مؤشرات كلها مفعَّلة، دخول الكل، تأكيد الكل، تعادل عند +30، قفل عند +2 دولار، سقف 10% — نظام عالي الاقتناع وقليل الصفقات. تقليص المُدخلات إلى إيشيموكوين وMACD واحد على H1، والتحويل إلى ENTRY_MIN_REQUIRED = 2 وCONFIRM_MIN_REQUIRED = 1، وتشغيل LossProtection_RestrictTrading = true ينتج EA مختلفًا تمامًا: صفقات أكثر، وقف أضيق، وتوقف بعد كل سلسلة خسائر. الوضعان صحيحان؛ ما ليس صحيحًا هو تغيير مقابض المؤشرات وعدم تغيير MinRequiredEntries ليتناسب معها.

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

على كل شمعة جديدة من الإطار الزمني للرمز، تمر OnTick() على خمس بوابات بالترتيب: IsNewBar() وIsWithinTradingSession() وCheckDrawdownProtection() وCheckConsecutiveLossProtection() وManagePositions() — وبعدها فقط تستدعي AnalyzeSignals() التي تستطلع مقابض المؤشرات العشرة وتجمِّع التصويت لكل اتجاه. يُساهم كل إيشيموكو مُفعَّل بإشارة شراء/بيع واحدة من تقاطع Tenkan/Kijun وبتأكيد واحد من حالة السعر مقابل السحابة؛ ويُساهم كل MACD بإشارة من تقاطع الرئيسي/الإشارة وبتأكيد من إشارة خطه الرئيسي؛ ويُساهم كل RSI بإشارة من تقاطع التشبع البيعي/الشرائي وبتأكيد من كونه فوق/تحت 50. يُطبَّق مفتاحا ENUM_ENTRY_METHOD وENUM_CONFIRMATION_METHOD على الأعداد المجمَّعة داخل ShouldOpenBuy() وShouldOpenSell()، ولا تُستدعى CalculateLotSize() (التي تُدمج أي تخفيض لوط ناتج عن الانخفاض أو الخسائر المتتالية) وOpenBuyTrade/OpenSellTrade إلا بعد أن يجتاز الاختبارَين معًا.

إشارة الدخول

يُفعَّل الدخول عندما تتفق طبقتا التصويت. طبقة الإشارات تحصي التقاطعات (تقاطع Tenkan فوق Kijun، تقاطع خط MACD الرئيسي فوق خط الإشارة، خروج RSI من منطقة التشبع البيعي إلى الأعلى)، وطبقة التأكيدات تحصي قراءات الحالة (السعر فوق سحابة إيشيموكو، خط MACD الرئيسي فوق الصفر، RSI فوق 50). مع EntryMethod = ENTRY_ALL_ENABLED وConfirmationMethod = CONFIRM_ALL_ENABLED (الافتراضات)، يجب على كل مؤشر مُفعَّل أن يُنتج تقاطعًا طازجًا وتأكيد حالة في الاتجاه ذاته على الشمعة 1 قبل إرسال تذكرة شراء أو بيع.

إشارة الخروج

تعمل المخارج على ثلاث مسارات. تغلق CheckOppositeSignalClosure() المركز عندما يُنتج تحليل جديد للمؤشرات إشارة معاكسة تستوفي شروط ShouldOpenBuy/ShouldOpenSell. تُحرِّك CheckBreakeven() وقف الخسارة إلى سعر الدخول +5 نقاط بعد 30 نقطة ربح، وتُحرِّك CheckDynamicProfitLock() وقف الخسارة ليقفل كل الربح ماعدا 1 دولار من المسافة الحالية بين السعر والدخول بمجرد أن يتجاوز الربح العائم 2 دولار. جني الأرباح الثابت عند 180 نقطة أو جني الأرباح المعتمد على ATR بمعامل 1.5x يعمل كهدف على جانب الخادم.

وقف الخسارة

وقف الخسارة هو ATR(14) × 1.2 من سعر الدخول (افتراضي)، مع مسار احتياطي ثابت عند 120 نقطة. مسار ATR نشط افتراضيًا ويُعاد تقييمه لكل صفقة. عندما يبلغ الربح العائم 30 نقطة، يُنقل وقف الخسارة إلى سعر الدخول +5 نقاط عبر CheckBreakeven()؛ وعندما يتجاوز الربح العائم 2 دولار، يُنقل وقف الخسارة ليقفل كل المسافة بين السعر والدخول ماعدا 1 دولار عبر CheckDynamicProfitLock().

جني الأرباح

جني الأرباح هو ATR(14) × 1.5 من سعر الدخول (افتراضي)، مع مسار احتياطي ثابت عند 180 نقطة (نسبة 1:1.5 مقابل الوقف الثابت 120 نقطة). يمكن تحويل النظام إلى مسار ATR فقط، أو مسار نقطي فقط، أو مسار يقرره النظام عبر enableATR_TP وHardTP_Points. بمجرد فتح الصفقة، يكون جني الأرباح الفعلي هو الهدف على جانب الخادم، ويقوم ترقيت وقف الخسارة وقفل الربح بحماية الأرباح غير المحققة.

الأنسب لـ

الحد الأدنى للرصيد 100 دولار على وسيط ECN بفارق سعر منخفض، XAUUSD على M5، مع التصويت الافتراضي للمؤشرات العشرة كلها لأنظمة السوينج قليلة الصفقات. تتيح لك مُدخلات الإطار الزمني لكل مؤشر إعادة توجيه نفس الكود إلى تداول السوينج على H1/H4 على الأزواج الرئيسية (EURUSD وGBPUSD وUSDJPY) دون إعادة ترجمة — لكن عطِّل سحابتَي إيشيموكو وموجتَي MACD أولًا، لأن عبء المؤشرات العشر على M5 هو السبب الأرجح لبطء المعالج. للاستخدام على مدار الساعة، اترك EnableSessionFilter = false؛ للتركيز على جلستَي لندن + نيويورك النقديتين، اضبط Session1_Enable = true (08:00–17:00) وعطِّل الجلستين الأخريين.

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

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

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

الوصف: Production-ready multi-indicator EA using Ichimoku, MACD, RSI across timeframes with confluence entry logic, ATR SL/TP, dynamic profit lock, breakeven and consecutive loss protection. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

المؤشرات:

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

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

  • InitializeIndicators()
  • ReleaseIndicators()
  • IsNewBar()
  • IsWithinTradingSession()
  • CheckDrawdownProtection()
  • CheckConsecutiveLossProtection()
  • AnalyzeIchimokuSignals()
  • AnalyzeMACDSignals()
  • AnalyzeRSISignals()
  • ShouldOpenBuy()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX12070 MultiIndicatorConfluence — Execution Flow (from source analysis)
// Family: MultiIndicatorConfluence
// Production-ready multi-indicator EA using Ichimoku, MACD, RSI across timeframes with confluence entry logic, ATR SL/TP, dynamic profit lock, breakeven and consecutive loss protection. 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اسحب الإكسبرت على رسم بياني يطابق الإطار الزمني الموصى به
  7. 7هيّء المعاملات وفقاً للجدول في هذه الصفحة
  8. 8فعّل Allow Algo Trading واضغط OK

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

المعاملالافتراضيالوصف
LotSizingMethodLOT_FIXEDLot sizing method
Lots0.1Fixed lot size (used when method = Fixed)
BalancePerLot2000.0Balance required per lot (used when method = Per Balance)
RiskPercent1.0Risk percentage (used when method = Risk Percentage)
MinLotSize0.01Minimum lot size (for Balance/Risk methods)
MaxLotSize10.0Maximum lot size (for Balance/Risk methods)
OneTradeOnlytrueAllow only one trade per symbol
MaxOpenTrades5Maximum allowed open trades
AllowOnlyProfitableAdditionstrueOnly add positions when existing are profitable
MinProfitPerTradeToAdd5.0Minimum profit required per trade to add new position
MinBarsBetweenTrades1Minimum bars between new trades (0=no limit)
OneTradePerSignaltrueOnly one trade per signal bar
AllowBuytrueAllow BUY
AllowSelltrueAllow SELL
MagicNumber22212070Magic Number
InpTradeComment"Psgrowth.com Expert_12070"Trade Comment
AdditionalTradeCommentPrefix"Add"Additional trades prefix
PresetNumber"1"Preset number to add to trade comments
ShowOrderExecutionLinestrueShow vertical lines on order execution
ShowIndicatorsOnCharttrueShow indicators on chart
HardSL_Points120Hard stop loss in points
HardTP_Points180Hard take profit in points
enableATR_SLtrueEnable ATR-based stop loss
ATR_MultiplierSL1.2ATR multiplier for stop loss
enableATR_TPtrueEnable ATR-based take profit
ATR_MultiplierTP1.5ATR multiplier for take profit
SLResolveSL_SYSTEM_DECIDEResolution when both ATR SL & Dynamic Lock Profit are active
EnableDynamicLockProfittrueEnable dynamic profit locking
LockProfitEvery_X_Dollars2.0Lock profit at every X dollars
LockMinusBuffer1.0Buffer amount subtracted from locked profit
EnableBreakeventrueEnable automatic breakeven
BreakevenActivatePoints30.0Points profit to activate breakeven
BreakevenLockPoints5.0Points above entry to set SL (0 = exact entry)
BreakevenOncePerTradetrueOnly move to breakeven once per trade
MaxDrawdownPercent10.0Maximum allowed drawdown percentage
EnableDrawdownProtectiontrueEnable drawdown protection system
DrawdownStopTradingtrueStop new trades when max drawdown reached
DrawdownCloseAllfalseClose all positions when max drawdown reached
DrawdownReduceLotstrueReduce lot sizes as drawdown increases
DrawdownLotReduction0.5Lot reduction factor at 50% of max drawdown
DrawdownWarningPercent7.5Warning threshold (% of equity)
DrawdownAlertEnabledtrueSend alerts when drawdown limits reached
DrawdownUseBalancefalseUse balance instead of equity for drawdown calculation
MaxSlippage10Maximum allowed slippage in points
CloseOnOppositeSignaltrueClose positions on opposite signal
EnableConsecutiveLossProtectionfalseEnable consecutive loss protection system
MaxConsecutiveLosses3Maximum consecutive losses allowed
LossProtection_PauseMinutes60Trading pause duration (minutes) after max losses
LossProtection_ReduceLotSizetrueReduce lot size after consecutive losses
LotReduction_Factor0.5Lot reduction factor (0.1-1.0, e.g., 0.5 = 50% reduction)
LotReduction_AfterLosses2Start reducing lot size after X consecutive losses
LotReduction_MinSize0.01Minimum lot size when reducing
LossProtection_IncreaseSLfalseIncrease stop loss after consecutive losses
SL_Increase_Factor1.5SL increase factor (e.g., 1.5 = 50% larger SL)
SL_Increase_AfterLosses2Start increasing SL after X consecutive losses
SL_Increase_MaxMultiplier2.0Maximum SL multiplier
LossProtection_RestrictTradingtrueRestrict trading to higher probability setups
LossProtection_OnlyTrendSignalsfalseOnly take trend-following signals after losses
LossProtection_RequireConfirmationtrueRequire signal confirmation after consecutive losses
LossProtection_ResetAfterWin1Reset consecutive loss count after X wins
LossProtection_ShowWarningstrueDisplay consecutive loss warnings on chart
EnableSessionFilterfalseEnable trading session filtering
Session1_EnabletrueEnable Session 1
Session1_StartHour8Session 1: Start Hour (0-23)
Session1_StartMinute0Session 1: Start Minute (0-59)
Session1_EndHour17Session 1: End Hour (0-23)
Session1_EndMinute0Session 1: End Minute (0-59)
Session2_EnablefalseEnable Session 2
Session2_StartHour18Session 2: Start Hour (0-23)
Session2_StartMinute0Session 2: Start Minute (0-59)
Session2_EndHour23Session 2: End Hour (0-23)
Session2_EndMinute59Session 2: End Minute (0-59)
Session3_EnablefalseEnable Session 3
Session3_StartHour0Session 3: Start Hour (0-23)
Session3_StartMinute0Session 3: Start Minute (0-59)
Session3_EndHour7Session 3: End Hour (0-23)
Session3_EndMinute59Session 3: End Minute (0-59)
EntryMethodENTRY_ALL_ENABLEDEntry signal requirement method
MinRequiredEntries2Minimum entries required (when using ENTRY_MIN_REQUIRED)
ConfirmationMethodCONFIRM_ALL_ENABLEDConfirmation filter requirement method
MinRequiredConfirmations1Minimum confirmations required (when using CONFIRM_MIN_REQUIRED)
EvaluateOnNewBartrueOnly evaluate new entries on new bar (FASTER for backtesting)
VerboseLoggingfalseDetailed print logs (DISABLE for faster backtesting)
DebugSignalDetailsfalseExtra debug verbosity (DISABLE for faster backtesting)
EnableIchimoku1trueEnable Ichimoku 1
Ichimoku1_TF8Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Ichimoku 1 Timeframe
Ichimoku1_Tenkan9Ichimoku 1 Tenkan-sen
Ichimoku1_Kijun26Ichimoku 1 Kijun-sen
Ichimoku1_Senkou52Ichimoku 1 Senkou Span B
EnableIchimoku2trueEnable Ichimoku 2
Ichimoku2_TF9Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Ichimoku 2 Timeframe
Ichimoku2_Tenkan9Ichimoku 2 Tenkan-sen
Ichimoku2_Kijun26Ichimoku 2 Kijun-sen
Ichimoku2_Senkou52Ichimoku 2 Senkou Span B
EnableIchimoku3trueEnable Ichimoku 3
Ichimoku3_TF10Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Ichimoku 3 Timeframe
Ichimoku3_Tenkan9Ichimoku 3 Tenkan-sen
Ichimoku3_Kijun26Ichimoku 3 Kijun-sen
Ichimoku3_Senkou52Ichimoku 3 Senkou Span B
EnableMACD1trueEnable MACD 1
MACD1_TF6Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // MACD 1 Timeframe
MACD1_FastEMA12MACD 1 Fast EMA
MACD1_SlowEMA26MACD 1 Slow EMA
MACD1_SignalSMA9MACD 1 Signal SMA
EnableMACD2trueEnable MACD 2
MACD2_TF8Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // MACD 2 Timeframe
MACD2_FastEMA12MACD 2 Fast EMA
MACD2_SlowEMA26MACD 2 Slow EMA
MACD2_SignalSMA9MACD 2 Signal SMA
EnableMACD3trueEnable MACD 3
MACD3_TF9Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // MACD 3 Timeframe
MACD3_FastEMA12MACD 3 Fast EMA
MACD3_SlowEMA26MACD 3 Slow EMA
MACD3_SignalSMA9MACD 3 Signal SMA
EnableRSI1trueEnable RSI 1
RSI1_TF6Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // RSI 1 Timeframe
RSI1_Period14RSI 1 Period
RSI1_Overbought70.0RSI 1 Overbought level
RSI1_Oversold30.0RSI 1 Oversold level
EnableRSI2trueEnable RSI 2
RSI2_TF8Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // RSI 2 Timeframe
RSI2_Period14RSI 2 Period
RSI2_Overbought70.0RSI 2 Overbought level
RSI2_Oversold30.0RSI 2 Oversold level
EnableRSI3trueEnable RSI 3
RSI3_TF9Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // RSI 3 Timeframe
RSI3_Period14RSI 3 Period
RSI3_Overbought70.0RSI 3 Overbought level
RSI3_Oversold30.0RSI 3 Oversold level
ATR_TF0Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // ATR Timeframe
ATR_Period14ATR Period
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX12070.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX12070 Multi_Indicator_EA — Multi-indicator confluence (Ichimoku+MACD+RSI), full 12-layer stack."

#include <Trade\Trade.mqh>
#include <Indicators\Indicators.mqh>

CTrade trade;

// Custom enumerations
enum ENUM_LOT_SIZING_METHOD
{
   LOT_FIXED,           // Fixed lot size
   LOT_PER_BALANCE,     // Lot size based on balance
   LOT_RISK_PERCENTAGE  // Risk percentage based
};

enum ENUM_SL_RESOLVE
{
   SL_SYSTEM_DECIDE,    // System decides between ATR SL and Dynamic Lock
   SL_USE_ATR,          // Always use ATR SL
   SL_USE_DYNAMIC_LOCK  // Always use Dynamic Lock Profit
};

enum ENUM_ENTRY_METHOD
{
   ENTRY_ALL_ENABLED,   // All indicators must signal
   ENTRY_MIN_REQUIRED,  // Minimum required signals
   ENTRY_ANY_SIGNAL     // Any single signal triggers
};

enum ENUM_CONFIRMATION_METHOD
{
   CONFIRM_ALL_ENABLED,     // All confirmations required
   CONFIRM_MIN_REQUIRED,    // Minimum confirmations required
   CONFIRM_ANY_CONFIRMATION // Any confirmation triggers
};

// ================= User Inputs ===============================
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_Ichimoku1_TF = PERIOD_H1;
ENUM_TIMEFRAMES g_Ichimoku2_TF = PERIOD_H1;
ENUM_TIMEFRAMES g_Ichimoku3_TF = PERIOD_H1;
ENUM_TIMEFRAMES g_MACD1_TF = PERIOD_H1;
ENUM_TIMEFRAMES g_MACD2_TF = PERIOD_H1;

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

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

الوسوم:ex12070multiindicatorconfluencepipsgrowthfreemt5xauusd

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

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

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

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

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

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

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

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