Pipsgrowth EX12074 MultiIndicatorConfluence — إكسبرت أدفايزر إكسبرت أدفايزر
إكسبرت أدفايزر MT5 مفتوح المصدر · XAUUSD، XAGUSD · M5، H1
Pipsgrowth EX12074 MultiIndicatorConfluence — Multi-symbol portfolio EA trading Gold, Silver and FX majors with dynamic risk scaling, Hull MA confluence entry, market. إكسبرت أدفايزر MT5 مفتوح المصدر.
نظرة عامة
إكسبرت EX12074 هو الإكسبرت الوحيد في عائلة EX12 الذي لا يلتزم برمز واحد. يُحمَّل على الشارت ثم يوزّع انتباهه على ثمانية رموز في الوقت نفسه — XAUUSDm و XAGUSDm و USDJPYm و EURUSDm و GBPUSDm و AUDUSDm و EURJPYm و GBJPYm — ويختار أفضل فرصة في كل دورة مسح. منطق التداول مبنيّ على توافق أربع حزم من المتوسطات المتحركة Hull: عند كل شمعة جديدة يحسب الإكسبرت قيم Hull MA لأربع فترات مختلفة (الفترات تُضبط بحسب preset لكل رمز — الذهب يستخدم 14/21/34/55، الفضة وأزواج JPY تستخدم 21/34/55/89، أزواج EUR/GBP تستخدم 34/55/89/144، وأي رمز BTC/ETH يستخدم 10/16/26/42) باستخدام الصيغة WMA(2·WMA(price, period/2) − WMA(price, period), sqrt(period)). يُقارن منحدر كل Hull بعتبة خمس نقاط لتصفية الضوضاء، ولا يُثبَّت الاتجاه إلا عندما تشير InpMinHullAgreement (افتراضياً 2 من 4) حزم على الأقل إلى الاتجاه نفسه ويكون سعر الإغلاق على الجانب الصحيح من Hull. يُعدّ عدد التوافق أحد أعمدة كفاءة سبعة مرجّحة تتجمع في درجة ثقة واحدة على مقياس 100 نقطة.
تتمثّل الأعمدة السبعة في: الاتجاه (25 نقطة — توافق Hull، توافق الإطار الزمني الأكبر، قوة ADX، افتراض خلوّ من التباعد)، التوقيت (15 نقطة — عمر الإشارة أقل من 20 شمعة، اتساق الزخم على 5 شموع، فحص الجلسة المثلى)، حالة الأصل (10 نقاط — ATR بين 0.5× و1.5× من متوسطه على 50 شمعة، السبريد الحالي داخل spreadMaxPips، نظام السوق TRENDING)، المرشحات (20 نقطة — حالياً 20/20 لأن InpRequireSRBreakout افتراضياً false)، دقة الدخول (15 نقطة — 7 نقاط تقارب مفترض + 8 من عدد توافق Hull)، وخطة الخروج (15 نقطة — يمكن حساب SL/TP صحيح + جاهزية التتبع). عندما تُرجع CalculateConfidenceForSymbol() ما لا يقل عن InpMinConfidenceScore (70 افتراضياً، النطاق 5–100)، ينضم الرمز إلى قائمة الفرص. ثم ترتّب ScanAllSymbols() القائمة بحسب درجة الثقة، وتختار الفرصة الأفضل، وتُمرّرها إلى ExecuteTradeOnSymbol().
مُصنّف نظام السوق خلف عمود حالة الأصل يستخدم handle الخاص بـ ADX (iADX(sym, PERIOD_CURRENT, InpRegimeADXPeriod=14)) و handle الخاص بـ ATR (الفترة من preset — ذهب 10، فضة 12، JPY 14، EUR/GBP 14، BTC/ETH 8). يطلق Trending عندما ADX ≥ InpRegimeTrendADX (30 افتراضياً، مع تجاوزات بحسب فئة الرمز: ذهب 30، فضة 28، JPY 25، EUR/GBP 25، BTC/ETH 35). يطلق Volatile عندما يكون ATR الحالي على الأقل InpRegimeVolatileATR (1.5× متوسط 50 شمعة). يطلق Quiet عندما يهبط ATR تحت InpRegimeRangeATR (0.5× المتوسط). أي شيء آخر هو RANGING. على الرغم من وجود InpOnlyTrendingRegime في مجموعة المدخلات، فإن مسار التسجيل لم يعد يحجب بشكل صارم الأنظمة غير-Trending — النظام ببساطة يضيف 0 أو 1 أو 3 نقاط نحو عمود الأصل.
خط أنابيب المعايرة التلقائية هو الابتكار الهيكلي. عند OnInit، وبعد قراءة مواصفات الرموز، تستدعي CalibrateSymbol() مرة لكل رمز مفعّل. الخطوة 3 تستدعي MeasureSpreadStats() التي تأخذ عينات من السبريد المباشر لمدة 5 ثوانٍ (أو 100 عينة بفواصل 50 مللي ثانية — أيهما أسبق) وتسجّل المتوسط/الأدنى/الأعلى في SpreadStats. الخطوة 4 تستدعي CalculateATRStats() لالتقاط ATR الحالي و المتوسط المتحرك لـ 50 فترة. الخطوة 5 تستدعي CalculateOptimalParameters() التي تستنتج مسافات خاصة بكل رمز بوحدات السعر: مسافة SL = avgATR × InpStopLossATRMult (2.0) مع أرضية عند (stopLevel + avgSpread) × point × 1.5 لاحترام الحد الأدنى للسماسرة دائماً، مسافة TP = SL × InpTakeProfitRR (2.0)، مسافة التعادل = max(avgATR × InpBreakevenATRMult=0.5، SL × 0.3)، بداية التتبع = max(avgATR × InpTrailStartATRMult=1.0، SL × 0.5)، خطوة التتبع = avgATR × InpTrailStepATRMult=0.5، و spreadMaxPoints = avgSpread × InpSpreadMaxMultiplier (2.5). الخطوة 6 تتحقق من SL ≥ stopLevel × point وأن مسافة التعادل غير سالبة وفي نطاق SL. عندما يكون InpExportCalibration=true (الافتراضي)، تكتب ExportCalibrationData() خمسة ملفات CSV/log إلى MQL5/Files: مواصفات الرموز، عينات السبريد، عينات ATR، المعلمات المثلى، وسجل تحقق لكل رمز. خط الأنابيب لمرة واحدة عند البدء؛ InpRecalibrateDaily معرّف لكن المؤقت الذي يقود إعادة المعايرة اليومية معلق، وكل المسح يعمل من OnTick على أحداث الشمعة الجديدة — تعليق في المصدر يوضح أن ذلك تم لضمان تطابق المسح في التحسين والتداول الحقيقي.
تحجيم المخاطرة الديناميكي يجلس فوق مُحدّد حجم الصفقة. يتبع مدير المخاطر consecutiveWins و consecutiveLosses و protectedBalance و peakBalance و currentDrawdown و safeModeActive وكتلة أرباح/خسائر يومية. المخاطرة الأساسية هي InpStartRisk (25%)، تُرفع بمقدار InpRiskIncrement (8%) لكل فوز متتالي، بسقف InpMaxRisk (75%). عندما تصل الخسائر المتتالية إلى InpMaxConsecutiveLosses (3)، تُضرب المخاطرة الحالية في InpLossReduction (0.5). عندما يتجاوز الرصيد 80% من InpTargetBalance (افتراضياً 1000 دولار)، تُضرب المخاطرة في 0.5 حتى في منتصف التداول. عندما يصل الرصيد فعلياً إلى الهدف، ينقلب g_riskManager.safeModeActive إلى true وتهبط المخاطرة إلى InpSafeModeRisk (3%) لبقية التشغيل. ثم تطرح CalculateDynamicLotSize() رأس المال المحمي (الرصيد الأولي + 30% من أي ربح غير محقق) قبل تحديد حجم اللوت، بحيث تنكمش الشريحة القابلة للتداول مع بناء الوسادة. تُمرَّر النتيجة إلى صيغة المخاطرة القياسية: lotSize = riskAmount / (slDistance/tickSize × tickValue)، ثم NormalizeLot() يقيّدها بـ lotMin و lotMax و lotStep لدى السمسار.
حماية رأس المال وتصفية الارتباط هما الطبقتان الأخيرتان. حارس CheckProtectionLimits() يُرجع false (ويتوقف الإكسبرت عن مسح الإدخالات) عندما يكون الانخفاض من الذروة إلى الحالي ≥ InpMaxDrawdown (25%) أو عندما تكون الخسارة اليومية ≥ InpMaxDailyLoss (15% من رصيد بداية اليوم). يُقصّر CheckSymbolProtections() رمزاً واحداً بعد 3 خسائر متتالية على ذلك الرمز أو عندما يتجاوز السبريد المباشر spreadMaxPoints المُعاير. تمشي IsCorrelatedWithOpenPositions() على كل الصفقات المفتوحة التي يطابق magic فيها InpMagicNumber=22212074، تبحث عن الزوج في g_correlationMatrix، وتحجب الفرصة الجديدة عندما يتجاوز الارتباط المطلق InpMaxCorrelation (0.70). تُبنى مصفوفة الارتباط مرة واحدة عند البدء بواسطة BuildCorrelationMatrix() باستخدام EstimateCorrelation() — بحث ثابت: أي رمزين يحتويان على "EUR" يرجعان 0.8؛ EURUSD مقابل GBPUSD يرجعان 0.85؛ أي زوجين USD يرجعان −0.5؛ أي زوجين JPY يرجعان 0.7؛ XAU مقابل XAG يرجعان 0.6؛ أي شيء آخر يرجع 0.3. هذا تقريب متعمد، وليس حساب ارتباط متحرك، ومذكور في المصدر.
تدبير الخروج يعمل على كل تيكت وعلى كل صفقة. تمشي ProcessAllExits() على صفقات الإكسبرت بالعكس، ثم لكل صفقة تستدعي MoveToBreakeven() ثم PartialClosePosition() ثم TrailStop() بهذا الترتيب. تستخدم MoveToBreakeven() مسافة beDistancePrice المُعايرة — بمجرد أن يتحرك السعر بذلك القدر في الربح ويكون SL الحالي لا يزال على الجانب الخطأ من الدخول، يُنقل SL إلى entry+point للشراء أو entry−point للبيع عبر TryModify_EX12074(). تتحقق PartialClosePosition() من متغير عمومي لكل تيكت (PartialClosed_<ticket>) حتى تُشتعل مرة واحدة فقط، ثم تغلق InpPartialClosePercent (50%) عند الحد الأدنى للوت لدى السمسار عندما يكون priceDiff ≥ slDiff (أي أن الربح وصل 1:1 R:R). يفعّل TrailStop() بمجرد أن يتحرك السعر trailStartPrice في الربح، ثم يقفل SL إلى currentPrice ± trailStepPrice، لكن فقط عندما يكون SL الجديد أحكم بشكل ملموس من الحالي (newSL > sl + trailStep × 0.5، أو SL الحالي صفر). كل تعديلات الخروج الثلاث تمر عبر غلاف إعادة المحاولة TryModify_EX12074() الذي يعيد المحاولة عند REQUOTE/TIMEOUT/PRICE_OFF/PRICE_CHANGED بـ 100 مللي ثانية backoff.
ما لا يفعله الإكسبرت: لا يُشغّل مؤقتاً (دالة OnTimer هي stub ترجع فوراً)، لا يطبّق وقف حقوق ملكية إجمالياً صلباً داخل دوال التداول (الوقفيات الوحيدة هي SL/TP لكل صفقة بالإضافة إلى بوابات per-symbol/drawdown في CheckProtectionLimits)، لا يعمل بنظام grid أو martingale (لا تكديس أوامر، لا مضاعفة لوت عند الخسارة)، ولا يحتفظ بمعامل ارتباط متحرك — المصفوفة ثابتة بعد البدء. تكتب لوحة المعلومات (InpEnableDashboard=true افتراضياً) لافتة عبر Comment() تعرض الرصيد، حقوق الملكية، الهدف، الذروة، الانخفاض، الوضع (AGGRESSIVE/SAFE)، سلسلة الانتصارات، معدل الربح، إحصائيات أعلى 5 رموز، ووقت آخر مسح، وتُحجب أثناء عمليات تحسين MQL5 حتى لا تلوّث سجل المحسّن.
تفاصيل الاستراتيجية
EX12074 هو إكسبرت محفظة متعدد الرموز: يُحمِّل ما يصل إلى ثمانية رموز (XAUUSDm، XAGUSDm، USDJPYm، EURUSDm، GBPUSDm، AUDUSDm، EURJPYm، GBPJPYm — يُفعَّل كل منها عبر مدخلات بولية) ويُشغّل مسحاً لكل شمعة عبرها جميعاً. نواة الإشارة هي Hull MA محسوبة يدوياً — WMA(2·WMA(price, period/2) − WMA(price, period), sqrt(period)) — تُحسب من أسعار الإغلاق الخام لأربع فترات خاصة بكل رمز (ذهب 14/21/34/55، فضة و JPY 21/34/55/89، EUR/GBP 34/55/89/144، BTC/ETH 10/16/26/42)، ثم تُطوى في درجة ثقة مرجّحة من 7 أعمدة على مقياس 100 نقطة (اتجاه 25، توقيت 15، حالة الأصل 10، مرشحات 20، دقة الدخول 15، خطة الخروج 15). تُنفَّذ الفرصة الأعلى تسجيلاً فقط لكل مسحة، بعد اجتياز بوابات عدم التداول (انخفاض من الذروة 25%، خسارة يومية 15%، 3 خسائر متتالية، سقف سبspread مُعاير، ارتباط 0.7، مُصنّف النظام يُرجع TRENDING يضيف 3 لعمود الأصل). عند OnInit، تقيس CalibrateSymbol() 5 ثوانٍ من عينات السبريد المباشر + ATR لـ 50 شمعة لكل رمز وتستنتج مسافات SL/TP/التعادل/التتبع الخاصة بكل رمز بوحدات السعر، ثم تُصدِّر خمسة ملفات CSV/log إلى MQL5/Files. يُوسِّع مدير المخاطر الديناميكي المخاطرة الأساسية 25% بمقدار +8% لكل فوز متتالي (سقف 75%)، يُنصفها بعد 3 خسائر، يُنصفها مرة أخرى عند 80% من هدف 1000 دولار، وينقلب إلى مخاطرة وضع آمن 3% بمجرد الوصول إلى الهدف. يعمل تدبير الخروج على كل تيكت: انتقال إلى التعادل عند beDistance، إغلاق جزئي 50% عند 1:1 R:R، ثم وقف تتبع لكل شمعة يقفل عند trailStep. تُحدِّث ردّة نداء OnTradeTransaction إحصائيات الأداء لكل رمز وتُغذّي عدادات الفوز/الخسارة المتتالية التي تقود مُقاييس المخاطرة.
شراء عندما يتفق InpMinHullAgreement على الأقل (افتراضياً 2 من 4) متوسطات Hull على الاتجاه ويكون السعر على الجانب الصحيح من Hull، ADX ≥ عتبة فئة الرمز (ذهب 30، فضة 28، JPY 25، EUR/GBP 25، BTC/ETH 35)، ودرجة الثقة المرجّحة من سبعة أعمدة ≥ InpMinConfidenceScore (70 افتراضياً، النطاق 5–100). البيع هو المعكوس. لكل مسحة، تُنفَّذ الفرصة ذات الثقة الأعلى فقط عبر g_trade.Buy/Sell بحجم لوت مُعاير تلقائياً من مدير المخاطر الديناميكي.
ثلاث طبقات، جميعها في ProcessAllExits(): MoveToBreakeven() تنقل SL إلى entry±point بمجرد أن يتحرك السعر بمقدار beDistancePrice (مُعاير، max(ATR×0.5، SL×0.3)) في الربح؛ PartialClosePosition() تغلق InpPartialClosePercent (50%) عند الحد الأدنى للوت لدى السمسار عندما يكون priceDiff ≥ slDiff (تم الوصول إلى 1:1 R:R)، تُتابع عبر متغير عمومي لكل تيكت حتى تُشتعل مرة واحدة فقط؛ TrailStop() يقفل SL إلى currentPrice ± trailStepPrice (مُعاير، ATR×0.5) بمجرد أن يتحرك السعر بمقدار trailStartPrice (ATR×1.0) في الربح، فقط عندما يكون SL الجديد أحكم بشكل ملموس. كل التعديلات تُعاد على REQUOTE/TIMEOUT/PRICE_OFF/PRICE_CHANGED عبر TryModify_EX12074().
وقف الخسارة لكل صفقة = الدخول ± slDistancePrice، حيث slDistancePrice = avgATR(50) × InpStopLossATRMult (افتراضي 2.0) مع أرضية عند (stopLevel + avgSpread) × point × 1.5 لاحترام قاعدة الحد الأدنى لدى السمسار. جني الأرباح = الدخول ± slDistancePrice × InpTakeProfitRR (افتراضي 2.0)، يفرض نسبة مخاطرة إلى عائد 1:2 عند الدخول. الوقف الصلب على مستوى الحساب هو 25% انخفاض من الذروة إلى الحالي في CheckProtectionLimits() بالإضافة إلى 15% خسارة يومية من رصيد بداية اليوم.
جني الأرباح = الدخول ± slDistancePrice × InpTakeProfitRR (افتراضي 2.0)، مما يعطي نسبة مخاطرة إلى عائد 1:2 عند الدخول. تُستمد كلتا مسافتَي SL و TP في OnInit بواسطة CalibrateSymbol() من عينة سبريد مباشر مدتها 5 ثوانٍ و متوسط ATR لـ 50 شمعة للرمز، وليس من نقاط ثابتة. بمجرد أن يتحرك السعر 1:1 R:R، تُغلق PartialClosePosition() نصف الصفقة عند الحد الأدنى للوت لدى السمسار ويأخذ وقف التتبع زمام الباقي.
مصمم لمتداولي المحافظ متعدد الرموز الذين يديرون الذهب (XAUUSDm) والفضة (XAGUSDm) وسبعة أزواج FX رئيسية (USDJPYm، EURUSDm، GBPUSDm، AUDUSDm، EURJPYm، GBPJPYm) على M5 أو H1 بحساب بحد أدنى 100 دولار. يُوصى بشدة بسمسار ECN/RAW — عينة السبريد المباشر لمدة 5 ثوانٍ عند البدء هي ما يُعاير سقف دخول الصفقات، و سبريد الذهب/الفضة فوق الحد الأقصى لفئة الرمز (ذهب 30 نقطة، فضة 20، JPY 15، EUR/GBP 12) سيحجب الإدخالات من تلقاء نفسه. M5 هو الإطار الزمني المقترح؛ يعمل H1 للتدوير الأبطأ. مستوى المخاطرة MEDIUM، مع مُقاييس مخاطر ديناميكي (25% أساسي، +8% لكل فوز، سقف 75%، 3% وضع آمن بعد هدف 1000 دولار) يجب على المتداولين فهمه قبل الانتقال إلى التداول المباشر. يعني مرشح الارتباط 0.7 أن تشغيل جانب واحد فقط من المجموعات المترابطة (زوج EUR واحد، زوج JPY واحد، أو XAU+XAG) يحقق صفقات أكثر من تشغيل كلا الجانبين من أي مجموعة.
منطق الاستراتيجية
Pipsgrowth EX12074 MultiIndicatorConfluence — تحليل منطق الاستراتيجية (من كود .mq5)
العائلة: MultiIndicatorConfluence
الماجيك: 22212074
الإصدار: 2.00
الوصف:
Multi-symbol portfolio EA trading Gold, Silver and FX majors with dynamic risk scaling, Hull MA confluence entry, market regime detection and auto-calibration. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester
المؤشرات:
- مؤشرات قياسية
الدوال الرئيسية:
OnTimer()OnTradeTransaction()InitializeRiskManager()InitializeAllSymbols()InitializeSymbol()ApplySymbolPreset()InitializeSymbolIndicators()CalibrateSymbol()ReadSymbolSpecs()CalculatePipMetrics()
// Pipsgrowth EX12074 MultiIndicatorConfluence — Execution Flow (from source analysis)
// Family: MultiIndicatorConfluence
// Multi-symbol portfolio EA trading Gold, Silver and FX majors with dynamic risk scaling, Hull MA confluence entry, market regime detection and auto-calibration. 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)ملف التحسين
كيفية تثبيت الإكسبرت على MT5
- 1حمّل ملف .mq5 بالضغط على زر التحميل أعلاه
- 2افتح برنامج MetaTrader 5 على حاسوبك
- 3من القائمة العلوية اختر File → Open Data Folder
- 4انتقل إلى مجلد MQL5 → Experts والصق الملف هناك
- 5في MT5، انقر بالزر الأيمن على Expert Advisors في لوحة Navigator → Refresh
- 6اسحب الإكسبرت على رسم بياني يطابق الإطار الزمني الموصى به
- 7هيّء المعاملات وفقاً للجدول في هذه الصفحة
- 8فعّل Allow Algo Trading واضغط OK
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| InpTradeXAUUSDm | true | Trade XAUUSDm (Gold) |
| InpTradeXAGUSDm | true | Trade XAGUSDm (Silver) |
| InpTradeUSDJPYm | true | Trade USDJPYm |
| InpTradeEURUSDm | true | Trade EURUSDm |
| InpTradeGBPUSDm | true | Trade GBPUSDm |
| InpTradeAUDUSDm | true | Trade AUDUSDm |
| InpTradeEURJPYm | true | Trade EURJPYm |
| InpTradeGBPJPYm | true | Trade GBPJPYm |
| InpScanIntervalSec | 15 | Scan Interval (seconds) - AGGRESSIVE |
| InpMaxConcurrentTrades | 3 | Max Concurrent Trades - AGGRESSIVE |
| InpAvoidCorrelation | true | Avoid Correlated Pairs |
| InpMaxCorrelation | 0.70 | Max Correlation Threshold |
| InpStartRisk | 25.0 | Starting Risk % (15.0,5.0,50.0) |
| InpMaxRisk | 75.0 | Maximum Risk % (50.0,10.0,100.0) |
| InpRiskIncrement | 8.0 | Risk Increase per Win (5.0,5.0,20.0) |
| InpProtectedProfit | 30.0 | Keep % Profit Protected (10.0,5.0,50.0) |
| InpTargetBalance | 1000.0 | Target Balance to Reach |
| InpAutoReduceNearGoal | true | Reduce Risk Near Target |
| InpSafeModeRisk | 3.0 | Safe Mode Risk % (after target) |
| InpMinConfidenceScore | 70 | Min Confidence Score (70,5,100) - AGGRESSIVE |
| InpRequireAllPillars | false | All 7 Pillars Must Pass |
| InpMinHullAgreement | 2 | Min Hull Agreement (2,1,4) - AGGRESSIVE |
| InpHull1Period | 21 | Hull 1 Period (auto-adjusted) |
| InpHull2Period | 34 | Hull 2 Period (auto-adjusted) |
| InpHull3Period | 55 | Hull 3 Period (auto-adjusted) |
| InpHull4Period | 89 | Hull 4 Period (auto-adjusted) |
| InpHullDivisor | 1.6 | Hull Divisor |
| InpHullPrice | 1 | Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) |
| InpSignalShift | 0 | Signal Bar Shift |
| InpRequireSRBreakout | false | Require S/R Breakout - DISABLED FOR MORE TRADES |
| InpSRBreakoutATR | 0.5 | Min Breakout ATR Mult (0.2,0.1,2.0) |
| InpSRHigherTFConfirm | false | Higher TF Confirmation - DISABLED |
| InpSRHigherTF | 9 | Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Higher Timeframe |
| InpSRLookbackBars | 50 | S/R Lookback Bars (20,5,200) |
| InpSRSwingBars | 5 | Swing Point Bars (3,1,20) |
| InpRegimeDetection | true | Enable Regime Detection |
| InpRegimeTrendADX | 30.0 | Trending Min ADX (20.0,5.0,50.0) |
| InpRegimeRangeATR | 0.5 | Ranging Max ATR Mult |
| InpRegimeVolatileATR | 1.5 | Volatile Min ATR Mult |
| InpRegimeADXPeriod | 14 | Regime ADX Period (7,1,30) |
| InpRegimeATRPeriod | 14 | Regime ATR Period (7,1,30) |
| InpRegimeATRAvgPeriod | 50 | ATR Average Period (20,1,100) |
| InpOnlyTrendingRegime | false | Only Trade in Trending |
| InpAutoCalibrate | true | Auto-Calibrate Parameters |
| InpExportCalibration | true | Export Calibration to Files |
| InpRecalibrateDaily | false | Recalibrate Every 24 Hours |
| InpStopLossATRMult | 2.0 | SL = ATR × this (1.5,0.5,5.0) |
| InpTakeProfitRR | 2.0 | TP = SL × this (1.0,0.5,5.0) |
| InpBreakevenATRMult | 0.5 | BE = ATR × this (0.3,0.1,2.0) |
| InpTrailStartATRMult | 1.0 | Trail Start = ATR × this (0.5,0.1,3.0) |
| InpTrailStepATRMult | 0.5 | Trail Step = ATR × this (0.2,0.1,2.0) |
| InpSpreadMaxMultiplier | 2.5 | Max Spread = Avg × this (1.5,0.5,5.0) |
| InpPartialClose | true | Partial Close at 1:1 |
| InpPartialClosePercent | 50.0 | Partial Close % (30.0,10.0,80.0) |
| InpTrailingStop | true | Enable Trailing Stop |
| InpMaxDailyLoss | 15.0 | Max Daily Loss % (10.0,5.0,30.0) |
| InpMaxDrawdown | 25.0 | Max Drawdown % (15.0,5.0,40.0) |
| InpMaxConsecutiveLosses | 3 | Max Consecutive Losses |
| InpLossReduction | 0.5 | Lot Reduction After Losses |
| InpMagicNumber | 22212074 | Magic Number |
| InpTradeComment | "Psgrowth.com Expert_12074" | Trade Comment |
| InpEnableDashboard | true | Enable Dashboard |
| InpDebugMode | false | Debug Mode (verbose logging) |
#property copyright "Pipsgrowth.com"
#property link "https://pipsgrowth.com"
#property version "2.00"
#property strict
#property description "Pipsgrowth.com EX12074 MultiSymbolPortfolioEA — Multi-symbol portfolio with Hull MA confluence, full 12-layer stack."
//--- Includes
#include <Trade\Trade.mqh>
#include <Trade\PositionInfo.mqh>
#include <Trade\AccountInfo.mqh>
#include <Trade\SymbolInfo.mqh>
//+------------------------------------------------------------------+
//| INPUT PARAMETERS |
//+------------------------------------------------------------------+
//--- Multi-Symbol Portfolio
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_InpSRHigherTF = PERIOD_H1;
ENUM_APPLIED_PRICE g_InpHullPrice = PRICE_CLOSE;
input group "=== Symbol Selection ==="
input bool InpTradeXAUUSDm = true; // Trade XAUUSDm (Gold)
input bool InpTradeXAGUSDm = true; // Trade XAGUSDm (Silver)
input bool InpTradeUSDJPYm = true; // Trade USDJPYm
input bool InpTradeEURUSDm = true; // Trade EURUSDm
input bool InpTradeGBPUSDm = true; // Trade GBPUSDm
input bool InpTradeAUDUSDm = true; // Trade AUDUSDm
input bool InpTradeEURJPYm = true; // Trade EURJPYm
input bool InpTradeGBPJPYm = true; // Trade GBPJPYm
ENUM_TIMEFRAMES MapTimeframeInt(int tf)
{الكود المصدري الكامل متاح عند التحميل
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.
تحذير صريح: لأغراض تعليمية فقط
تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.
وسطاء موصى بهم لهذا الإكسبرت
هذه الروبوتات تعمل على MT5 — استخدم وسيطاً موثوقاً بتنفيذ سريع وسبريد منخفض
إكسبرتات مشابهة
عرض جميع الإكسبرتاتإكسبرتات أخرى بنفس استراتيجية أخرى
Pipsgrowth EX01007 Adaptive — إكسبرت أدفايزر تكييفي
Pipsgrowth EX01007 Adaptive — Adaptive signal scorer EA combining EMA crossover, RSI, Heiken Ashi, Bollinger Bands, ATR and volume spike detection int. إكسبرت أدفايزر MT5 مفتوح المصدر.
Pipsgrowth EX01019 Adaptive — إكسبرت أدفايزر تكييفي
Pipsgrowth EX01019 Adaptive — Self-adaptive market regime EA that auto-detects trending, ranging, volatile, quiet and breakout conditions. Switches be. إكسبرت أدفايزر MT5 مفتوح المصدر.
Pipsgrowth EX15029 SMC-OrderBlock — إكسبرت أدفايزر إكسبرت أدفايزر
Pipsgrowth EX15029 SMC-OrderBlock — Smart Money Concepts breakout EA — detects order blocks, CHOCH and liquidity sweeps using EMA cross + structure break, A. إكسبرت أدفايزر MT5 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.