Pipsgrowth EX03013 Grid — إكسبرت أدفايزر شبكة
إكسبرت أدفايزر MT5 مفتوح المصدر · XAUUSD · M5، H1
Pipsgrowth EX03013 Grid — Multi-strategy EA with price-action entries (EMA crossover, RSI reversal, engulfing, tick momentum), martingale recovery. إكسبرت أدفايزر MT5 مفتوح المصدر.
نظرة عامة
Pipsgrowth EX03013 MartingalePulse هو مستشار آلي يجمع بين أربعة محركات إشارات price-action اختيارية وطبقة استرداد مارتينجال قابلة للتبديل. يتحكم في اختيار محرك الإشارة متغير InpPriceActionType الذي يحدد واحدًا من أربعة: تقاطع المتوسط المتحرك الأسي EMA(15) عندما تغلق شمعة مكتملة فوق أو تحت المتوسط على الإطار الزمني المكوَّن، أو انعكاس مؤشر RSI(14) عندما يخرج من مناطق التشبع الشرائي 70 أو التشبع البيعي 30، أو نموذج الابتلاع (Engulfing) الذي يقارن بين شمعتين متجاورتين مغلقتين، أو وضع زخم الـ HFT الذي يتطلب ست تكات متتالية (قابلة للتعديل عبر InpTickMomentumCount = 6) تتحرك في الاتجاه نفسه. يختار المستخدم أيضًا آلية الدخول: أمر سوق فوري، أو أمر معلق بوقف على بعد 500 نقطة (InpPendingOrderDistancePoints)، أو أمر معلق بحد على نفس المسافة تحت السعر، مع كولداون افتراضي قدره 3 ثوان بين الصفقات (InpTradeCooldownSeconds). لا يوجد مصنف نظام سوق (regime classifier) — المستشار ينفذ الإشارة فور صدورها.
خط أنابيب التنفيذ هو الميزة المميزة الحقيقية. تأخذ دالة ExecuteTrade اتجاه الإشارة، تحسب وقف الخسارة كـ InpStopLossPoints * point (1000 نقطة = 100 بيب على وسيط XAUUSD بخمس خانات)، وجني الأرباح كـ SL * InpRiskRewardRatio (افتراضي 1:2)، ثم تحوّل الطلب إلى الدالة المساعدة المناسبة Try*_EX03013. تلتف هذه المساعدات حول أوامر CTrade بحلقة إعادة محاولة من 3 محاولات عند رموز REQUOTE أو TIMEOUT أو PRICE_OFF أو PRICE_CHANGED، مع نوم 200 مللي ثانية بين المحاولات. يُعاد استخدام نفس القالب لأوامر الوقف والحد (TryBuyStop_EX03013، TryBuyLimit_EX03013، TrySellStop_EX03013، TrySellLimit_EX03013)، ولتعديل المراكز (TryModify_EX03013)، ولإغلاق المراكز بالكامل (TryClose_EX03013)، ولحذف الأوامر المعلقة (TryOrderDelete_EX03013). بعد تنفيذ أمر السوق، تستمع OnTradeTransaction إلى TRADE_TRANSACTION_DEAL_ADD وتقرأ ربح الصفقة وسوابها والعمولة، ثم تمررها إلى HandleMartingale لتحديد حجم اللوت للصفقة التالية.
سلوك المارتينجال هو الركيزة الثانية. يكون InpEnableMartingale معطلاً افتراضيًا، ما يعني أن المستشار يعيد حجم اللوت إلى الحجم الأولي المحسوب بعد كل خسارة. عند تفعيله، تتاح ثلاثة أنماط تصعيد: CLASSIC_MULTIPLIER (اللوت التالي = اللوت المغلق × InpMartingaleMultiplier = 2.0)، أو MULTIPLIER_WITH_SUM (اللوت المضاعف مضافًا إليه اللوت الأولي)، أو SUM_WITH_INITIAL (اللوت المغلق مضافًا إليه اللوت الأولي). الحد الأقصى للجولة الواحدة هو InpMaxOrdersPerRound = 5 خسائر، وبعدها تُعاد الدورة قسرًا إلى اللوت الأولي. يوجد سقف صلب للحجم عند InpMaxLotSize = 5.0 لوت. تحديد حجم اللوت الأولي قابل للاختيار: PERCENT_OF_BALANCE (افتراضي، 1% من الرصيد) أو FIXED_LOT (0.01). يمر المسار النسبي عبر CalculateLotSizeBasedOnRisk التي تقرأ SYMBOL_TRADE_TICK_VALUE وSYMBOL_TRADE_TICK_SIZE لتحويل InpStopLossPoints إلى خسارة بالدولار لكل لوت، ثم تقسم risk_amount / loss_per_lot للحصول على الحجم. قبل إرسال الأمر، تتحقق CalculateMaxAffordableLot من الهامش الحر عبر OrderCalcMargin وتقص الحجم بصمت إلى 98% من الطاقة الاستيعابية للحساب، وتوقف HasSufficientMargin الصفقة إذا كان الحجم المقصوص أكبر من المتاح.
إدارة الصفقات خفيفة الوزن عن قصد. لا توجد نقطة تعادل، ولا إغلاق جزئي، ولا جني أرباح للسلة. التريلنج الاختياري (InpEnableTrailingStop = false افتراضيًا) يعمل فقط عندما يصل الربح إلى InpTrailingStartPoints = 200 نقطة (أو InpTrailingStartMoney = 50 دولارًا عند التبديل إلى TRAILING_IN_MONEY)، وعندها يُسحب وقف الخسارة إلى InpTrailingStopPoints = 100 نقطة (أو InpTrailingStopMoney = 10 دولارات) خلف السعر، ويتقدم فقط عندما يكون الرفع نقطة واحدة على الأقل بعد الوقف السابق. منطق الانعكاس يأتي من فحص position.SelectByMagic داخل OnTick: إذا انعكس اتجاه الإشارة ووجدت مركزًا معاكسًا مفتوحًا، يُطلق TryClose_EX03013، ويُرفع علم g_is_closing_for_reversal، ويعود المستشار دون فتح الصفقة الجديدة حتى تأكيد الإغلاق في حدث OnTradeTransaction التالي. مؤقت الكولداون (InpTradeCooldownSeconds = 3) يؤخر الإدخال التالي بثلاث ثوانٍ، وهو يعمل أيضًا كحارس بعد الانعكاس.
تعمل إدارة المخاطر في طبقتين متوازيتين. الطبقة التقليدية في CheckRiskManagement تعيد التهيئة عند منتصف الليل (أو في وقت UTC مخصص عبر InpDrawdownStartTimeUTC) وتتعقب عتبتين: حد الربح اليومي InpDailyProfitLimitAmount = 1000 من عملة الإيداع (يُغلق كل شيء ويتوقف لليوم عندما يصل الفرق بين Equity والرصيد الافتتاحي إلى 1000)، وحد السحب اليومي InpDrawdownPercentage = 5% من الرصيد الافتتاحي، قابل للحساب كنسبة مئوية أو كمبلغ ثابت (InpDrawdownFixedAmount = 300). عند تحقق أي منهما، تعمل CloseAllOpenPositions وCancelPendingOrders ويُرفع g_risk_limit_reached_today، ما يوقف التداول حتى إعادة التهيئة التالية. الطبقة الثانية في IsSafeToTrade_EX03013 تتحقق من InpEquityFloor، وInpHrdDailyLoss، وInpHrdWeeklyLoss، وInpCapitalCap (يوقف الحسابات التي تساوي أو تتجاوز العتبة)، وInpMaxTradesPerDay = 50، وInpHrdMaxConsecLoss. يُضبط g_cooldownUntil إلى TimeCurrent() + 30 * 60 بعد ثلاث خسائر متتالية، وترفض بوابة الأمان العمل خلال تلك النافذة.
التحكم في الجلسات هجين. النظام الأساسي IsWithinTradingSession يقرأ سلاسل نصية لكل يوم من أيام الأسبوع (InpMondayTimes إلى InpSundayTimes، كلها افتراضيًا 01:00-23:00 لأيام العمل و00:00-00:00 لنهاية الأسبوع). وعند تفعيل InpCloseAtSessionEnd، يُغلق كل شيء تلقائيًا خارج النافذة. تضيف طبقة الـ Hardening فحصًا ثانيًا معتمدًا على GMT داخل InActiveSession_EX03013: بعد أن يكتشف DetectGMTOffset_EX03013 إزاحة GMT تلقائيًا في النطاق −12 إلى +12، لا تعيد الدالة true إلا عندما تقع ساعة GMT ضمن نافذة لندن 7–16 أو نيويورك 12–21، وترفض يومي السبت والأحد. يعني هذا أن المستشار ليس متداولًا على مدار 24/5 افتراضيًا — تعطيل InpEnableTradingSessions يبقي بوابة لندن/نيويورك GMT حية. معيار تقييم الاستراتيجية في OnTester هو profit × PF / maxDD، بحد أدنى صلب من 10 صفقات وسحب أقصى غير صفري، لذا فإن الجولات التي تنزف الحساب تُعاقب بنفس المقياس الذي يكافئ عامل الربح القوي.
في الممارسة العملية، هذا المستشار هو رمل تجريبي لاختبار أي توليفة من نمط الدخول ومنحنى المارتينجال ستبقى حية على XAUUSD M5. المحركات الأربعة للإشارات تعطيك محفزات متعامدة (ارتداد الترند عبر EMA، انعكاس المتوسط عبر RSI، نموذج كلاسيكي عبر الابتلاع، زخم مجهري عبر عد التكات)، والأنماط الثلاثة للمارتينجال تعطيك ثلاثة أشكال لاسترداد الخسارة. ثمن هذه المرونة هو أن المستشار لا يحمل مصنفًا لنظام السوق، ولا بوابة تأكيد متعددة، ولا فلتر أخبار — سينفذ بجدية إشارة ضعيفة في افتتاح لندن المتقطع إذا نمط الدخول تطلب ذلك. المستخدمون الذين يحتاجون طبقة توجيه أكثر صرامة عليهم اختيار نمط إشارة واحد، وإيقاف المارتينجال في الجولة الأولى من الباك تيست، ثم إعادة تفعيله على أقوى نمط بعد التأكد من المنحنى على إطار M5.
تفاصيل الاستراتيجية
في كل تكة، تدور UpdateDailyCounters_EX03013 على g_realizedToday وg_dailyTrades وg_realizedWeek عند تغيير اليوم أو الأسبوع، ثم تعيد CheckRiskManagement تقييم حد الربح اليومي والسحب مقابل رصيد بداية اليوم وتوقف كل شيء عند الاختراق. تشغّل IsSafeToTrade_EX03013 بعدها بوابات الـ Hardening — حد الـ Equity، وحدود الخسارة اليومية والأسبوعية، وسقف رأس المال، والحد الأقصى للصفقات اليومية، ونافذة g_cooldownUntil النشطة بعد ثلاث خسائر متتالية — وتفحص InActiveSession_EX03013 الوقت المعدّل بتوقيت GMT مقابل ساعات لندن 7–16 ونيويورك 12–21. مع وجود السوق في الجلسة وخلو المستشار، يطابق النظام الأساسي IsWithinTradingSession مع السلاسل النصية لكل يوم، ويتحقق OnTick من كولداون الثلاث ثوانٍ، وتشغّل GetTradeSignal المحرك المختار (تقاطع EMA، انعكاس RSI، الابتلاع، أو زخم التكات) على شمعتين مغلقتين. عند صدور إشارة شراء أو بيع وعدم وجود مركز مفتوح، تقص ExecuteTrade اللوت إلى 98% من الهامش الحر عبر CalculateMaxAffordableLot، وتمرر الطلب إلى إحدى دوال Try*_EX03013 بثلاث محاولات عند requote/timeout/price-off، وعند التنفيذ تكتب SetInitialSLTP الـ SL والـ TP إلى الوسيط. بعد إغلاق الصفقة، تقرأ OnTradeTransaction الربح/الخسارة المحققة وتوجهه إلى HandleMartingale التي تعيد اللوت إلى الحجم الأولي أو تصعّده عبر نمط المارتينجال المختار حتى InpMaxOrdersPerRound = 5 قبل إعادة الضبط الصلب للدورة. يعمل التريلنج عند تفعيله في كل تكة عبر HandleTrailingStop ويرفع الـ SL فقط عند تحقق عتبة الربح وسحب نقطة واحدة على الأقل بعد الوقف السابق، بينما تعيد UpdatePendingOrders تسعير الأوامر المعلقة كل 100 ثانية لتثبيتها على سبريد bid/ask المباشر.
تمر الإدخالات عبر GetTradeSignal() التي تختار المحرك المحدد في InpPriceActionType (الافتراضي EMA_CROSSOVER على الإطار المكوَّن عبر InpChartTimeframe). يقرأ كل محرك شمعتين مغلقتين: إما يراقب شمعة مغلقة حديثًا تعبر المتوسط الأسي EMA(15) (وضع EMA)، أو يراقب RSI(14) يخرج من عتبتي 70/30 (RSI_REVERSAL)، أو يفحص نموذج ابتلاع صاعد أو هابط للشمعة المغلقة السابقة (CANDLESTICK_ENGULFING)، أو يتطلب ست تكات متجانسة في الاتجاه نفسه (HFT_TICK_MOMENTUM، قابل للتعديل عبر InpTickMomentumCount). ثم تفتح OnTick الصفقة عبر الاستراتيجية المختارة في InpEntryStrategy — أمر سوق، أو أمر معلق بوقف على بعد 500 نقطة، أو أمر معلق بحد — بشرط أن يكون TotalPositionsAndOrders() صفريًا للسحر المخصص وأن يكون الكولداون قد انتهى.
تأتي الخروج من ثلاثة مصادر: انعكاس إشارة price-action يُغلق المركز المفتوح عبر TryClose_EX03013 ويرفع g_is_closing_for_reversal، ثم يمسح حدث OnTradeTransaction التالي العلم ويجهّز المستشار الاتجاه الجديد في التكة التالية. تستدعي طبقة المخاطر اليومية في CheckRiskManagement كلًا من CloseAllOpenPositions وCancelPendingOrders عندما يصل الربح اليومي إلى InpDailyProfitLimitAmount (1000 من عملة الإيداع) أو السحب اليومي إلى InpDrawdownPercentage (5%) من الرصيد الافتتاحي، وبعدها يوقف g_risk_limit_reached_today كل التداول. إشارة المحرك بحد ذاتها لا تلغي المعلقات — مسار UpdatePendingOrders الذي يعمل كل InpPendingUpdateInterval = 100 ثانية يعيد تسعير أوامر الوقف/الحد المعلقة بالـ SL/TP الجديد ويلغي المعلق المعاكس بعد التنفيذ.
كل أمر سوق يتلقى وقف خسارة أولي تحدده SetInitialSLTP بقيمة InpStopLossPoints * point (1000 نقطة = 100 بيب على وسيط XAUUSD بخمس خانات)، مع فحص أمان للحد الأدنى للوقف عند الوسيط يسحب الوقف للداخل فقط عندما تكون القيمة المحسوبة أقرب من SYMBOL_TRADE_STOPS_LEVEL المسموح. تعمل HandleTrailingStop الاختيارية على رفع الوقف للأمام فقط بعد أن يصل الربح إلى InpTrailingStartPoints (200) وبعدها بمقدار InpTrailingStopPoints (100) فقط — المستشار لا يوسّع وقف الخسارة أبدًا، بل يضيقه فقط.
يُحدَّد جني الأرباح في SetInitialSLTP بـ InpStopLossPoints * InpRiskRewardRatio * point، وهو ما يعطي بالقيم الافتراضية 1000 نقطة و RR = 2.0 هدف ربح قدره 2000 نقطة (200 بيب) لكل صفقة. لا يوجد جني أرباح للسلة، ولا إغلاق جزئي، ولا قفل لنقطة التعادل — جني الأرباح مستوى ثابت واحد يُضبط عند فتح الصفقة (أو عند وضع الأمر المعلق) ولا يتحرك بعد ذلك.
هذا المستشار مناسب للمتداولين الذين لديهم هامش لا يقل عن 100 دولار ويريدون صراحة طبقة مارتينجال قابلة للتبديل، والذين اختاروا بالفعل XAUUSD على إطار M5–H1 كأدوات عمل. لأن InpEnableMartingale يكون معطلاً افتراضيًا، فإن الإعداد الافتراضي هو شبكة باتجاه واحد بمخاطرة 1% لكل صفقة ونسبة R:R قدرها 1:2، وهو مناسب للحسابات التي تستوعب سقف السحب اليومي 5% والكولداون 30 دقيقة بعد ثلاث خسائر؛ أما المستخدمون الذين يفعّلون المارتينجال فعليهم توقع قفزة ذات معنى في الحد الأقصى للوت وطلب الهامش الحر، لأن المضاعف وInpMaxOrdersPerRound يتضاعفان بسرعة في تسلسل الخاسر. تغطية الجلسات هي تقاطع GMT لندن (7–16) ونيويورك (12–21) مع جدول منفصل لكل يوم من أيام الأسبوع، لذا يُفضل تشغيل المستشار على وسيط ECN أو RAW بفارق سعر ضيق على XAUUSD خلال النوافذ النشطة — وتذكر أن محركات الدخول الأربعة مختارة بالنمط، لا مفلترة بنظام السوق، فنفس المستشار الذي يلتقط تقاطع EMA نظيف في افتتاح لندن قد يطلق أيضًا إشارة RSI ضعيفة في فترة نيويورك المسائية المسطحة.
منطق الاستراتيجية
Pipsgrowth EX03013 Grid — تحليل منطق الاستراتيجية (من كود .mq5)
العائلة: Grid
الماجيك: 22203013
الإصدار: 2.00
الوصف:
Multi-strategy EA with price-action entries (EMA crossover, RSI reversal, engulfing, tick momentum), martingale recovery grid, dynamic lot sizing, trailing profit, session filters and daily profit/drawdown limits. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester
المؤشرات:
- مؤشرات قياسية
الدوال الرئيسية:
IsWithinTradingSession()CloseAllOpenPositions()CancelPendingOrders()CheckRiskManagement()NormalizeLotSize()CalculateLotSizeBasedOnRisk()TimeToMinutes()HandleMartingale()HandleTrailingStop()SetInitialSLTP()
// Pipsgrowth EX03013 Grid — Execution Flow (from source analysis)
// Family: Grid
// Multi-strategy EA with price-action entries (EMA crossover, RSI reversal, engulfing, tick momentum), martingale recovery grid, dynamic lot sizing, trailing profit, session filters and daily profit/drawdown limits. 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اسحب الإكسبرت على رسم بياني — يُنصح بـ H1 أو H4 لروبوتات الشبكة
- 7حدد خطوة الشبكة (نقاط)، الحد الأقصى للأوامر، وحجم اللوت في نافذة الإعدادات
- 8فعّل Allow Algo Trading واضغط OK
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| InpPriceActionType | EMA_CROSSOVER | Price Action Strategy |
| InpEntryStrategy | MARKET_ORDER | Entry Strategy |
| InpPendingOrderDistancePoints | 500 | Distance for pending orders from current price |
| InpPendingUpdateInterval | 100 | Seconds to wait before updating pending orders |
| InpTradeCooldownSeconds | 3 | Cooldown in seconds between trades (0 = disabled) |
| InpChartTimeframe | 0 | Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Timeframe for Indicators |
| InpTickMomentumCount | 6 | Ticks for HFT Momentum |
| InpEmaPeriod | 15 | EMA Period for Crossover |
| InpRsiPeriod | 14 | RSI Period |
| InpRsiOverbought | 70 | RSI Overbought Level |
| InpRsiOversold | 30 | RSI Oversold Level |
| InpLotSizeMode | PERCENT_OF_BALANCE | Lot Sizing Mode |
| InpFixedInitialLot | 0.01 | Initial Lot Size (for Fixed Lot mode) |
| InpRiskPercentage | 1.0 | Risk Percentage of Balance (for Percent mode) |
| InpEnableMartingale | false | Enable Martingale Recovery Grid |
| InpMartingaleType | CLASSIC_MULTIPLIER | Martingale Type |
| InpMartingaleMultiplier | 2.0 | Martingale Multiplier on Loss |
| InpMaxOrdersPerRound | 5 | Maximum orders per Martingale round |
| InpMaxLotSize | 5.0 | Maximum Lot Size |
| InpStopLossPoints | 1000 | Stop Loss in Points |
| InpRiskRewardRatio | 2 | Risk:Reward Ratio (e.g., 1.5 means TP is 1.5 * SL) |
| InpEnableTrailingStop | false | Enable Trailing Stop |
| InpTrailingStopType | TRAILING_IN_POINTS | Trailing Stop Type |
| InpTrailingStartPoints | 200 | Start trailing when profit is >= this amount in Points |
| InpTrailingStopPoints | 100 | Trail distance from current price in Points |
| InpTrailingStartMoney | 50 | Start trailing when profit is >= this amount in Money |
| InpTrailingStopMoney | 10 | Trail distance from current price in Money |
| InpEnableTradingSessions | true | Enable Trading Sessions (false = trade 24/7) |
| InpCloseAtSessionEnd | true | Close all trades at the end of a session |
| InpMondayTimes | "01:00-23:00" | Monday Trading Times |
| InpTuesdayTimes | "01:00-23:00" | Tuesday Trading Times |
| InpWednesdayTimes | "01:00-23:00" | Wednesday Trading Times |
| InpThursdayTimes | "01:00-23:00" | Thursday Trading Times |
| InpFridayTimes | "01:00-23:00" | Friday Trading Times |
| InpSaturdayTimes | "00:00-00:00" | Saturday Trading Times |
| InpSundayTimes | "00:00-00:00" | Sunday Trading Times (HH:MM-HH:MM;...) |
| InpEnableDailyProfitLimit | true | Enable Daily Profit Limit |
| InpDailyProfitLimitAmount | 1000.0 | Daily Profit Limit Amount (in deposit currency) |
| InpEnableDrawdown | true | Enable Drawdown Protection |
| InpDrawdownType | PERCENTAGE | Drawdown Calculation Type |
| InpDrawdownFixedAmount | 300.0 | Max Drawdown (Fixed Amount) |
| InpDrawdownPercentage | 5.0 | Max Drawdown (Percentage) |
| InpDrawdownTimeMode | SERVER_TIME | Drawdown Calculation Time |
| InpDrawdownStartTimeUTC | "00:01" | Custom Start Time (UTC) |
| InpDrawdownEndTimeUTC | "23:59" | Custom End Time (UTC) |
| InpMagicNumber | 22203013 | Magic Number for this EA |
| InpTradeComment | "Psgrowth.com Expert_03013" | Trade comment |
| InpHrdMaxConsecLoss | 0 | --- Global variables |
#property copyright "Pipsgrowth.com"
#property link "https://pipsgrowth.com"
#property version "2.00"
#property strict
#property description "Pipsgrowth.com EX03013 MartingalePulse — multi-strategy grid with martingale recovery, full 12-layer stack."
#include <Trade\Trade.mqh>
#include <Trade\PositionInfo.mqh>
//--- MP by SPLpulse
//--- CTrade and CPositionInfo instances
CTrade trade;
CPositionInfo position;
//--- Enumeration for Entry Strategy
enum ENUM_ENTRY_STRATEGY
{
MARKET_ORDER, // Entry via Market Order
STOP_ORDER, // Entry via Stop Order
LIMIT_ORDER // Entry via Limit Order
};
//--- Enumeration for Price Action Strategy
enum ENUM_PRICE_ACTION_TYPE
{
HFT_TICK_MOMENTUM, // HFT Momentum
CANDLESTICK_ENGULFING, // Strategy based on engulfing candlestick pattern
RSI_REVERSAL, // RSI crosses back from overbought/oversold
EMA_CROSSOVER // Candle closes across the EMA
};
//--- Enumeration for Martingale Strategy
enum ENUM_MARTINGALE_TYPE
{
CLASSIC_MULTIPLIER, // lot = previous_lot * multiplier
MULTIPLIER_WITH_SUM, // lot = (previous_lot * multiplier) + initial_lot
SUM_WITH_INITIAL // lot = previous_lot + initial_lot
};
//--- Enumeration for Drawdown Type
enum ENUM_DRAWDOWN_TYPE
{
FIXED_AMOUNT, // Drawdown as a fixed of daily starting balance
PERCENTAGE // Drawdown as a percentage of daily starting balance
};
//--- Enumeration for Lot Sizing Mode
enum ENUM_LOT_SIZE_MODE
{
FIXED_LOT, // Use a fixed initial lot size
PERCENT_OF_BALANCE // Calculate initial lot based on risk percentage of balance
};
//--- Enumeration for Drawdown Time Calculation
enum ENUM_DRAWDOWN_TIME_MODE
{
SERVER_TIME, // Based on Broker's Server Time (resets at 00:00)
CUSTOM_TIME // Based on a custom UTC time range
};
الكود المصدري الكامل متاح عند التحميل
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.
تحذير صريح: لأغراض تعليمية فقط
تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.
وسطاء موصى بهم لهذا الإكسبرت
هذه الروبوتات تعمل على MT5 — استخدم وسيطاً موثوقاً بتنفيذ سريع وسبريد منخفض
إكسبرتات مشابهة
عرض جميع الإكسبرتاتإكسبرتات أخرى بنفس استراتيجية شبكة
Pipsgrowth EX03022 Grid — إكسبرت أدفايزر شبكة
Pipsgrowth EX03022 Grid — Hedging + grid recovery EA that opens opposing positions at configurable distance. Uses a hedge-and-recover approach wit. إكسبرت أدفايزر MT5 مفتوح المصدر.
Pipsgrowth EX03027 Grid — إكسبرت أدفايزر شبكة
Pipsgrowth EX03027 Grid — Equal-lot pyramid scalper using EMA crossover + SuperTrend confirmation. Pyramiding with fixed or auto lot capped by Max. إكسبرت أدفايزر MT5 مفتوح المصدر.
Pipsgrowth EX03021 Grid — إكسبرت أدفايزر شبكة
Pipsgrowth EX03021 Grid — Grid system with optional martingale lot progression for major pairs. Places initial buy and a ladder of BuyLimit orders. إكسبرت أدفايزر MT5 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.