Pipsgrowth EX12048 MultiIndicatorConfluence — إكسبرت أدفايزر إكسبرت أدفايزر
إكسبرت أدفايزر MT5 مفتوح المصدر · XAUUSD · M5، H1
Pipsgrowth EX12048 MultiIndicatorConfluence — Robust MA-cross EA with Dynamic Lock Profit step-ratchet, initial vs additional trade tagging, hedging permissions, paus. إكسبرت أدفايزر MT5 مفتوح المصدر.
نظرة عامة
إكس 12048 من Pipsgrowth هو نظام تقاطع متوسطين متحركين 20/50 مصمم لسلوك شبه شبكي لا تظهره معظم Expert Advisors: يسمح بسلة شراء وسلة بيع على نفس الرمز في الوقت نفسه، ثم يوسم كل دخول جديد بكلمة Initial أو Add#N، مع عداد الإضافات الذي يُعاد ضبطه في كل مرة يتم فيها فتح صفقة ابتدائية جديدة في ذلك الاتجاه. إذن AllowHedgeBothDirections=true مفعّل افتراضيًا، فالنظام ليس نظام اتجاه صافٍ — يمكنه تشغيل هرمين متقابلين في نفس الوقت، مع تتبع مستقل لعدادَي g_addBuyNext و g_addSellNext. هذا هو الفرق البنيوي بين EX12048 وأي EA عادي لتقاطع المتوسطات، وهو الذي يحدد تقريبًا كل خيار تصميمي آخر في الملف.
مسار الإشارة يبدأ في دالة Signal(). تقرأ القيمة الحالية والسابقة لمتوسط سريع 20 ومتوسط بطيء 50، كلاهما SMA على PRICE_CLOSE، وتراقب تقاطع الشمعة الواحدة: تقاطع صاعد عندما fast[1] <= slow[1] و fast[0] > slow[0]، وتقاطع هابط في الحالة المعاكسة. ثم يتم بوابة هذا الاتجاه عبر UseTrendSlopeFilter=true الذي يقارن slow0 بـ slow1: يُسقط تقاطع شراء حيث المتوسط البطيء مسطح أو ينخفض، وينطبق نفس القانون على تقاطعات البيع. بوابة الميل هي التأكيد الوحيد المفعّل دائمًا. كل شيء آخر اختياري.
سلسلة التأكيدات تعمل في ConfirmationsPass() بترتيب ثابت. أولاً علم الإيقاف المؤقت (g_tradePauseUntil الذي يرفعه حارس OnTradeTransaction)، ثم مفاتيح الاتجاه (AllowBuyTrades/AllowSellTrades)، ثم سقف السبريد، ثم فلتر الجلسة، ثم قيد التحوط (الذي لا يُفعّل إلا عند ضبط AllowHedgeBothDirections على false)، ثم فلتر RSI نطاقي أو اتجاهي، ثم أرضية ADX، ثم فحص ربحية الإضافات، ثم سقف MaxOpenTrades. قيد التحوط مشروط — عندما يكون AllowHedgeBothDirections=true يسمح الـ EA صراحةً بتعايش مراكز BUY و SELL، ولا تحجب ConfirmationsPass أبدًا على فحص "يوجد مركز معاكس". عندما يكون false يعمل الـ EA كنظام اتجاه صافٍ.
بوابة الإضافات هي حيث يثبت وسم Initial/Add#N جدواه. بعد أن تتجاوز الإشارة كل فلتر آخر، CountOpenPositions(intent) يقرر ما إذا كانت هذه أول صفقة في ذلك الاتجاه (isInitial=true وعلامة التعليق Initial) أو صفقة تكديس متابعة (العلامة Add#N حيث N يُسحب من g_addBuyNext أو g_addSellNext). AllowOnlyProfitableAdditions=true يعني أن الـ EA يرفض الإضافة إلى اتجاه خاسر: IsAllSameDirProfitableAtLeast يمر على كل مركز في نفس الاتجاه ويتطلب أن يكون كل منها رابحًا بمقدار MinProfitPerTradeToAdd نقطة على الأقل قبل أن تمر أي إضافة جديدة. إذا كان حتى مركز واحد في نفس الاتجاه تحت الماء، تُرفض الإضافة مع سجل تصحيح يشرح أي جانب فشل في البوابة. هذا ما يمنع بنية التحوط من التحول إلى فخ تكديس غير منضبط — تحدث الإضافات فقط في أرجل تطفو في الربح.
سلم القفل الديناميكي للربح Dynamic Lock Profit يعمل كل تيكة من حلقة الصيانة في بداية OnTick، قبل معالجة أي إشارة جديدة. ApplyDynamicLockProfitToPosition() تقرأ سعر فتح المركز، تحسب movedPts كمسافة مرتبطة بالـ bid أو الـ ask بالنقاط، تقسم على InpLockProfitEveryXPoints (افتراضي 150) وتسقط الكسر، ثم تحسب targetLockPts = steps * 150 - InpLockMinusYPointsBuffer (افتراضي 20). المرشح الجديد لـ SL هو open + targetLockPts (أو open - للبيع). السلم أحادي الاتجاه: إذا كان SL الجديد عند SL الحالي أو أقل منه في صفقة شراء، تعود الدالة دون تعديل. يُترك TP دون مساس. ثم تقوم ModifyPositionSLTP() بتطبيع SL الجديد إلى حجم التيك، وتفرض مسافة stops-level الدنيا للوسيط، وتصدر تعديل TRADE_ACTION_SLTP. خنق السجل لكل مركز بسعة 32 مدخلاً يمنع ملف السجل من الفيضان عندما يُسحب مركز واحد كل تيكة.
حارس الإيقاف المؤقت يُدار كليًا من OnTradeTransaction. كل صفقة DEAL_ENTRY_OUT على ماجيك + رمز الـ EA تضيف dealProfit+swap+commission إلى g_lossStreakCount (العدد) والقيمة المطلقة إلى g_lossStreakAmt (المبلغ). إذا كان pnl غير سالب يُعاد ضبط العدّادين. الحراس اختياريون: PauseOnConsecutiveLosses=false افتراضيًا مع PauseConsecutiveLossesCount=3 و PauseConsecutiveLossesMinutes=60، PauseOnLossAmount=false مع PauseLossAmount=100 و PauseLossAmountMinutes=60. إذا تم تفعيل كليهما، يمدد الـ EA g_tradePauseUntil إلى الطابع الزمني اللاحق من نهايتي الإيقاف المحسوبتين. سبب التشغيل المسجل هو 'Count' أو 'Amount' أو 'Count+Amount' حسب الشرط الذي انطلق. ConfirmationsPass تتحقق من now < g_tradePauseUntil وترفض الإشارة برسالة '[PAUSE] active' حتى تنتهي النافذة.
غلاف الأمر هو تسلسل تعبئة ثلاثي. SendOrderMarket() تقرأ SYMBOL_FILLING_MODE المفضل لدى الوسيط وتبني تسلسلًا يبدأ بهذا الوضع، ثم تُلحق FOK / IOC / RETURN بهذا الترتيب إذا كانت مختلفة. لكل وضع تحاول أولاً الأمر مع SL و TP ملحقَين؛ عند فشل من نوع REQUOTE تعيد المحاولة في نفس الوضع دون SL/TP، وإذا تمت الصفقة ترسل تعديل TRADE_ACTION_SLTP لاحقًا لإرفاق مستويات الحماية. هذا هو المسار المتوافق مع ECN — FOK يُجرّب أولًا لأن بعض مزودي السيولة يرفضون IOC خلال الكتب الرقيقة. بعد الإرسال، تقرأ الدالة تذكرة المركز من PositionSelect(_Symbol)، مع احتياط تحوطي يمشي في PositionsTotal لإيجاد مركز يطابق magic+symbol إذا كان اختيار الرمز يُرجع أكثر من مطابقة.
قسم SL/TP والتحجيم له وضعان يختارهما UseATRforSLTP. في وضع النقاط الثابت الافتراضي المدخلات StopLossPoints=300 و TakeProfitPoints=600، مما يعطي نسبة المخاطرة إلى العائد الكلاسيكية 1:2. في وضع ATR يقرأ الـ EA مؤشر ATR(14)، يضرب في ATR_SL_Mult=3.0 و ATR_TP_Mult=6.0 (لا تزال 1:2)، ويقصر كل مسافة على stops-level الوسيط زائد 5 نقاط. ثم يُحسب التحجيم عبر LotsForRisk(): مع UseRiskPercent=false ترجع الدالة NormalizeVolume(FixedLot=0.10)؛ مع UseRiskPercent=true تحسب perLotRisk من مسافة SL عبر tickValue/tickSize، تقسم AccountInfoDouble(ACCOUNT_BALANCE)*RiskPercent/100 على ذلك، وتُطبّع النتيجة إلى شبكة vol_min/vol_step/vol_max للرمز. ثم يُفحص الحجم ضد g_vol_min ويُلغى الدخول إذا كانت النتيجة المقربة صغيرة جدًا.
سقف السبريد له وضعان يختارهما SpreadCapMode. SPREAD_MEDIAN_MULT الافتراضي يحتفظ بمخزن حلقي بسعة 211 من قيم (ask-bid)/point (SpreadBufferAdd تُستدعى كل تيكة)، والسقف هو median(buffer) * MedianMultiplier=3.0. MedianSpread() تنسخ العينات الحية إلى مصفوفة مؤقتة و ArraySorts تصاعديًا — إذا كان العدد فرديًا ترجع العنصر الأوسط، وإذا كان زوجيًا ترجع متوسط العنصرين الأوسطين. وضع SPREAD_FIXED الاحتياطي يستخدم FixedSpreadCapPoints=35 دون شرط. وضع مضاعف الوسيط هو إعداد الإنتاج: يتكيف مع نظام السبريد الطبيعي للوسيط ويرفض الإطلاق خلال عناقيد الارتفاع التي تضرب شمعة 5-تيك أو فترة الالتواء الرقيقة للجلسة الآسيوية.
فلتر الجلسة نافذتان. Session1 هي 7:00-22:00 بتوقيت الخادم ومفعلة افتراضيًا. Session2 هي 0/0 ومعطلة (EnableSession2=false). المساعد TimeInSessions يتعامل مع الالتفاف: إذا كان Session1StartHour <= Session1EndHour يكون الفحص هو اختبار الفترة المعتاد، وإلا يقبل أي شيء في [start, 24) U [0, end). عندما يكون EnableSessionFilter=false ترجع الدالة true دون شرط ويتداول الـ EA 24/5. لا يوجد إغلاق مبكر ليوم الجمعة، ولا توجد كتلة أخبار خاصة بالين، ولا فحص جودة شمعة — فلتر الجلسة هو البوابة الوحيدة لوقت اليوم.
ما هو غائب بشكل ملحوظ: لا توجد دالة OnTester() في المصدر، على الرغم من أن الموجز يدّعي وجود طبقة 'OnTester' الثانية عشرة. الطبقات الاثنتا عشرة المعلن عنها تنهار إلى 11 طبقة مفعّلة. لا يوجد فحص جودة شريط، ولا فلتر هايكن آشي، ولا توافق فيبوناتشي، ولا بوابات ويك/شمعة/ارتفاع، ولا قفل ربح ديناميكي مستقل عن سلم DLP، ولا حماية إغلاق السوق، ولا إغلاق شامل يوم الجمعة. الدالة MapAppliedPriceInt والمتغير العام g_MaPrice مُعلَنَان مرة لكل مجموعة مدخلات، وهي ظاهرة نسخ-لصق — المترجم يستخدم بصمت الإعلان الأخير. مقارنة ببنات EX12046/47 الأثقل، EX12048 هو المتغير الأنحف القادر على التحوط: نفس هيكل تقاطع المتوسطات + DLP + التوسيم مع بنية الهرم المحوّل مكشوفة عبر AllowHedgeBothDirections وحارس إيقاف مؤقت أنظف في OnTradeTransaction.
تفاصيل الاستراتيجية
كل تيكة تبدأ بجولة صيانة تمر على PositionsTotal، تلتقط المراكز التي تطابق ماجيك+رمز الـ EA فقط، وتُدخل كل منها في ApplyDynamicLockProfitToPosition() التي تقيس المسافة من سعر الفتح بالنسبة للـ bid أو الـ ask، تسقط الكسر إلى فواصل 150 نقطة، تطرح عازل 20 نقطة، وتحكم الوقف على تغييرات أحادية الاتجاه فقط عبر ModifyPositionSLTP. ثم يُدفع السبريد الحالي (ask-bid)/point إلى مخزن حلقي بسعة 211. على شمعة جديدة (حارس g_lastBarTime عند تفعيل SignalOncePerBar) تقرأ Signal() قيم fast0/fast1/slow0/slow1 من مؤشرات iMA، تبحث عن تقاطع الشمعة الواحدة، وتُطبق UseTrendSlopeFilter. ثم تدير ConfirmationsPass() حارس الإيقاف المؤقت، مفاتيح الاتجاه، سقف السبريد الوسيط أو الثابت، نافذة الجلسة 7:00-22:00 بتوقيت الخادم، قيد التحوط، فلاتر RSI/ADX الاختيارية، بوابة ربحية الإضافات، وسقف MaxOpenTrades. إذا مرّ كل شيء، CountOpenPositions(intent) يقرر Initial مقابل Add#N، LotsForRisk تحسب الحجم (FixedLot 0.10 افتراضي، أو مشتق من balance*RiskPercent عند تفعيل UseRiskPercent)، تُحسب SL/TP بالنقاط وتُطبّع إلى حجم التيك مع قيود stops-level، وتدير SendOrderMarket تسلسل التعبئة الثلاثي (FOK/IOC/RETURN المفضل) بنمط ECN "أرسل مع SL/TP ثم أعد دونها ثم عدّل لاحقًا". تراقب OnTradeTransaction كل صفقة DEAL_ENTRY_OUT وتزيد عداد/مبلغ سلسلة الخسائر، مع إيقاف مؤقت اختياري للـ EA لمدة PauseConsecutiveLossesMinutes أو PauseLossAmountMinutes عند انطلاق العتبات المُكوّنة؛ صفقة غير سالبة تُعيد ضبط العدّادين.
شراء عند تقاطع صعودي لمتوسط 20/50 SMA على شمعة واحدة، مع بوابة دائمة لفلتر ميل المتوسط البطيء (يجب أن يكون الميل متجهًا للأعلى ليبقى تقاطع الشراء). بيع عند التقاطع الهبوطي المتماثل، مع البوابة ذاتها للميل. كل تأكيد آخر — نطاق RSI الاتجاهي، أرضية ADX، سقف السبريد، نافذة الجلسة، قيد التحوط، ربحية الإضافات، MaxOpenTrades — يُضاف فوق التقاطع في ConfirmationsPass قبل تحجيم الأمر وإرساله.
الخرج هو وقف خسارة وجني أرباح صافٍ — 300/600 نقطة ثابتة في الإعداد الافتراضي (نسبة مخاطرة لعائد 1:2) أو 3.0x ATR للوقف و 6.0x ATR للربح عند تفعيل UseATRforSLTP. سلم القفل الديناميكي للربح في ApplyDynamicLockProfitToPosition() يُحكم الوقف على شبكة 150/-20 نقطة (افتراضي) لكنه لا يُغلق مركزًا بنفسه. المراكز تُضرب عند SL أو TP عبر الوسيط؛ الـ EA لا يدير إغلاق إشارة عكسية، ولا خروجًا زمنيًا، ولا مسحًا شاملًا ليوم الجمعة.
StopLossPoints=300 نقطة ثابت افتراضيًا، أو max(ATR(14)3.0، stops-level الوسيط+5) نقطة عند تفعيل UseATRforSLTP. يُطبّق كوقف ابتدائي على تذكرة الأمر، ثم يحكمه سلم DLP على شبكة فواصل 150 نقطة (targetLockPts = steps150 - 20 عازل) دون أن يرخيه أبدًا.
TakeProfitPoints=600 نقطة ثابت افتراضيًا (نسبة 1:2 مقابل وقف 300)، أو max(ATR(14)*6.0، stops-level الوسيط+5) نقطة عند تفعيل UseATRforSLTP. يُضبط TP على تذكرة الأمر ولا يُعدّل بواسطة سلم DLP — يُحكم السلم الوقف فقط.
المتداولون الذين يديرون استراتيجية سلة مزدوجة محوّطة على XAUUSD M5/H1 ويريدون توسيم هرم Initial/Add#N لكل اتجاه مع خيار الإضافة فقط إلى أرجل تطفو في الربح بالفعل. الحد الأدنى للرصيد 100 دولار على أساس FixedLot 0.10 لوت؛ ارفعه إلى 500-1000 دولار عند تفعيل UseRiskPercent=true. يتطلب وسيط ECN/RAW سبريد — سقف السبريد بمضاعف الوسيط (مخزن حلقي 211 تيكة، 3.0x) سيرفض الدخول على أي وسيط ترتفع ارتفاعاته بانتظام إلى أكثر من 3x وسيطه. فلتر الجلسة 7:00-22:00 بتوقيت الخادم هو البوابة الوحيدة لوقت اليوم، لذا تأكد من أن ساعة الخادم تطابق جلسة الفوركس النشطة التي تريد تداولها فعلًا.
منطق الاستراتيجية
Pipsgrowth EX12048 MultiIndicatorConfluence — تحليل منطق الاستراتيجية (من كود .mq5)
العائلة: MultiIndicatorConfluence
الماجيك: 22212048
الإصدار: 2.00
الوصف:
Robust MA-cross EA with Dynamic Lock Profit step-ratchet, initial vs additional trade tagging, hedging permissions, pause guards on consecutive losses, ECN-safe order wrappers, and multi-filter confirmations (RSI directional, ADX, slope). 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester
المؤشرات:
- مؤشرات قياسية
الدوال الرئيسية:
Log()LogI()LogD()LogW()NormalizeVolume()PipValuePerLotForDistance()LotsForRisk()TimeInSessions()SpreadBufferInitIfNeeded()SpreadBufferAdd()
// Pipsgrowth EX12048 MultiIndicatorConfluence — Execution Flow (from source analysis)
// Family: MultiIndicatorConfluence
// Robust MA-cross EA with Dynamic Lock Profit step-ratchet, initial vs additional trade tagging, hedging permissions, pause guards on consecutive losses, ECN-safe order wrappers, and multi-filter confirmations (RSI directional, ADX, slope). 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
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| MagicNumber | 22212048 | Expert Magic Number (55000,1,56000) |
| InpTradeComment | "Psgrowth.com Expert_12048" | Order Comment Prefix ("EA","","EA") |
| AllowBuyTrades | true | Enable BUY Trades (false/true) |
| AllowSellTrades | true | Enable SELL Trades (false/true) |
| AllowHedgeBothDirections | true | Allow Both Directions (false/true) |
| FastMAPeriod | 20 | Fast MA Period (5,1,100) |
| SlowMAPeriod | 50 | Slow MA Period (10,1,200) |
| MaMethod | MODE_SMA | MA Method (not optimized) |
| MaPrice | 1 | Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) // MA Applied Price (not optimized) |
| SignalOncePerBar | true | One Signal Per Bar (false/true) |
| UseRSIFilter | false | Enable RSI Filter (false/true) |
| RSIPeriod | 14 | RSI Period (5,1,30) |
| RSI_Min | 20 | RSI Minimum Threshold (10,5,40) |
| RSI_Max | 80 | RSI Maximum Threshold (60,5,90) |
| UseRSIDirectional | true | Directional RSI Mode (false/true) |
| RSI_BuyMin | 55 | BUY: Min RSI (40,1,70) |
| RSI_BuyOverbought | 90 | BUY: Overbought cap (70,1,99) |
| RSI_SellMax | 45 | SELL: Max RSI (30,1,60) |
| RSI_SellOversold | 20 | SELL: Oversold floor (1,1,30) |
| UseADXFilter | false | Enable ADX Strength Filter (false/true) |
| ADXPeriod | 14 | ADX Period (5,1,30) |
| ADX_Min | 20 | Minimum ADX Trend Strength (10,5,40) |
| UseTrendSlopeFilter | true | Require Slow MA Slope in Direction (false/true) |
| SpreadCapMode | SPREAD_MEDIAN_MULT | Spread Cap Mode (0,1,1) |
| FixedSpreadCapPoints | 35 | Fixed Spread Cap Points (10,1,80) |
| MedianWindowSize | 211 | Median Window (50,10,500) |
| MedianMultiplier | 3.0 | Median Multiplier (1.5,0.5,5.0) |
| EnableSessionFilter | true | Enable Session Filter (false/true) |
| Session1StartHour | 7 | Session1 Start Hour (0,1,23) |
| Session1EndHour | 22 | Session1 End Hour (0,1,23) |
| EnableSession2 | false | Enable Second Session (false/true) |
| Session2StartHour | 0 | Session2 Start Hour (0,1,23) |
| Session2EndHour | 0 | Session2 End Hour (0,1,23) |
| MaxSlippagePoints | 5 | Max Slippage (1,1,10) |
| UseRiskPercent | false | Use Risk % Sizing (false/true) |
| RiskPercent | 1.0 | Risk Percent Per Trade (0.5,0.5,5.0) |
| FixedLot | 0.10 | Fixed Lot Size (0.01,0.01,1.00) |
| UseATRforSLTP | false | Use ATR for SL/TP (false/true) |
| ATRPeriod | 14 | ATR Period (5,1,40) |
| ATR_SL_Mult | 3.0 | ATR Stop Multiplier (1.0,0.5,6.0) |
| ATR_TP_Mult | 6.0 | ATR TakeProfit Multiplier (2.0,0.5,12.0) |
| StopLossPoints | 300 | Fixed StopLoss Points (50,10,800) |
| TakeProfitPoints | 600 | Fixed TakeProfit Points (100,10,1600) |
| InpEnableDynamicLockProfit | true | Enable Dynamic Lock Profit (false/true) |
| InpLockProfitEveryXPoints | 150 | Lock Profit Step Points (50,10,500) |
| InpLockMinusYPointsBuffer | 20 | Lock Buffer Subtracted (5,5,100) |
| MaxOpenTrades | 5 | Maximum Open Trades Total (1,1,20) |
| AllowOnlyProfitableAdditions | true | Require Existing Profits for Adds (false/true) |
| MinProfitPerTradeToAdd | 5.0 | Min Profit (pts) For Adding (2.0,1.0,30.0) |
| PauseOnConsecutiveLosses | false | Pause After X Losses (false/true) |
| PauseConsecutiveLossesCount | 3 | Loss Streak Trigger Count (2,1,10) |
| PauseConsecutiveLossesMinutes | 60 | Pause Minutes After Streak (15,5,240) |
| PauseOnLossAmount | false | Pause On Loss Amount (false/true) |
| PauseLossAmount | 100.0 | Loss Amount Trigger (50,25,1000) |
| PauseLossAmountMinutes | 60 | Pause Minutes After Amount (15,5,240) |
| DebugLogs | true | Enable Debug Logs (false/true) |
| InfoLogs | true | Enable Info Logs (false/true) |
| WarnLogs | true | Enable Warning Logs (false/true) |
#property copyright "Pipsgrowth.com"
#property link "https://pipsgrowth.com"
#property version "2.00"
#property strict
#property description "Pipsgrowth.com EX12048 ex14 — MA-cross EA with DLP, hedging, pause guards and multi-filter confirmations, full 12-layer stack."
// Standard trade include (needed for trade structs/enums)
#include <Trade/Trade.mqh>
//-------------------------------//
// INPUTS //
//-------------------------------//
// 01 - Identification
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_APPLIED_PRICE g_MaPrice = PRICE_CLOSE;
input group "=== Core Identification ==="
input int MagicNumber = 22212048; // Expert Magic Number (55000,1,56000)
input string InpTradeComment = "Psgrowth.com Expert_12048"; // Order Comment Prefix ("EA","","EA")
// 02 - Direction & Hedging Permissions
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_APPLIED_PRICE g_MaPrice = PRICE_CLOSE;
input group "=== Direction & Hedging ==="
input bool AllowBuyTrades = true; // Enable BUY Trades (false/true)
input bool AllowSellTrades = true; // Enable SELL Trades (false/true)
input bool AllowHedgeBothDirections = true; // Allow Both Directions (false/true)
// 03 - Signal & Indicator Filters (entry generation + indicator confirmations)
ENUM_APPLIED_PRICE MapAppliedPriceInt(int ap)
{
switch(ap)
{
case 1: return PRICE_CLOSE;الكود المصدري الكامل متاح عند التحميل
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.
تحذير صريح: لأغراض تعليمية فقط
تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.
وسطاء موصى بهم لهذا الإكسبرت
هذه الروبوتات تعمل على 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 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.