Pipsgrowth EX01001 Adaptive — إكسبرت أدفايزر تكييفي
إكسبرت أدفايزر MT5 مفتوح المصدر · XAUUSD · H1
Pipsgrowth EX01001 Adaptive — ADX + ATR%ile + Bollinger width classify regime, then route to one of three native sub-signals: Trending -> EMA(21/50) c. إكسبرت أدفايزر MT5 مفتوح المصدر.
نظرة عامة
Pipsgrowth EX01001 Adaptive هو مستشار خبير واحد يعمل كموجِّه لأنظمة السوق، يصنّف حالة السوق عند كل إغلاق شمعة ويوجّه الصفقة إلى واحدة من ثلاث استراتيجيات فرعية مدمجة في الكود. لا توجد حافة ثابتة في النظام؛ مهمة المستشار هي اكتشاف نوع السوق الموجود أمامه واختيار المحرك الفرعي الذي يتناسب تاريخياً مع هذا النوع. أداة التصنيف هي دالة ClassifyRegime() في الكود المصدري، والمحركات الفرعية الثلاثة هي SignalTrendFollow() وSignalRSIMeanReversion() وSignalBreakout(). تقوم دالة MasterSignal() بعد ذلك بربط النظام بإحدى هذه المحركات الفرعية أو تُرجع صفراً في ظروف التذبذب.
يستخدم تصنيف النظام أربعة مدخلات تُقاس على آخر شمعة مغلقة: مؤشر ADX(14)، والنسبة المئوية لمؤشر ATR(14) على مدى خمسين شمعة، وعرض نطاق بولينجر عند الانحراف 20/2.0، والفصل المطلق بين المتوسطين المتحركين الأسِّيين EMA(21) وEMA(50). تم تعريف ثماني حالات للنظام: محايد، اتجاه قوي، اتجاه ضعيف، نطاق، اختراق، انضغاط، توسّع، تذبذب — وكل حالة تقترن بمسار إشارة مختلف. الاختراق يتطلب ADX أعلى من 25 ونسبة ATR أعلى من 60 واختراق السعر للنطاق العلوي أو السفلي لبولينجر. الاتجاه القوي يتطلب ADX أعلى من 25 مع تباعد المتوسطات أكبر من ATR واحد ونسبة ATR أعلى من 50. النطاق هو أي حالة يكون فيها ADX أقل من 20. التذبذب هو الحالة الوحيدة التي يتم رفضها قسرياً بواسطة NoTradeGate() قبل أي تقييم للإشارة.
يُفعَّل SignalTrendFollow في الاتجاهات القوية والضعيفة. التقاطع الطازج بين EMA(21) وEMA(50) على آخر شمعتين مغلقتين يحمل أعلى درجة ثقة عند 75؛ ويتطلب أيضاً أن يكون الإغلاق فوق مرشح EMA(200) وأن يكون مؤشر RSI(14) بين الحد المحايد الأدنى (40) وخط التشبع الشرائي (70). تتبع ذلك ثلاثة متغيرات للاستمرار: دخولات الارتداد حيث أغلقت الشمعة السابقة عائدة عبر EMA(21) في حدود 0.5 ATR، ودخولات الزخم على شموع ذات جسم قوي بنسبة جسم/مدى أعلى من 60 في المئة، وعمليات السكالب بتسارع RSI على شموع بنسبة جسم/ATR أعلى من 0.8. تشترط المتغيرات الأربعة جميعها توافق جانب EMA(200) وترفض عندما يكون RSI في الطرف المعاكس.
يعمل SignalRSIMeanReversion في نظامَي النطاق والانضغاط. الأنماط الأربعة هي: تقاطع كلاسيكي للتشبع البيعي/الشرائي مع الإغلاق على الجانب المواتي من EMA(21)، وقراءة RSI متطرفة مع شمعة انعكاس قوية، ولمس نطاق بولينجر مع تأكيد RSI في الاتجاه نفسه، وارتداد بولينجر حيث اخترق ظل الشمعة النطاق لكن الإغلاق عاد إلى الداخل. تتراوح درجات الثقة بين 55 و65 — محرك الارتداد المتوسط مصمَّم عمداً بدرجة ثقة أقل من محرك الاتجاه لأن الشمعة تكافح الاتجاه السائد.
يتعامل SignalBreakout مع حالات الاختراق والتوسّع والمحايدة. النمط الكلاسيكي يُغلق فوق قمة أو قاع قناة دونشيَان المكونة من 20 شمعة مع حجم على الشمعة المغلقة أعلى من 1.5 مرة متوسط 50 شمعة، وتوافق EMA للإطار الزمني الأعلى على H4، وعدم وجود RSI في منطقة متطرفة. النمط الثانوي يسمح بالدخول في حدود 10 في المئة من مدى قناة دونشيَان عندما يكون الحجم أعلى من المتوسط ويتفق اتجاه الإطار الزمني الأعلى. كلا النمطين يشترط أن يكون EMA(50) للإطار الأعلى على H4 في الجانب الصحيح من الإغلاق.
بعد توليد الإشارة، يفرض CheckConfirm() ثلاث بوابات إضافية: توافق EMA للإطار الزمني الأعلى، والحد الأدنى لنسبة المخاطرة إلى العائد عند 1.2 (الإعدادات الافتراضية تعطي وقف 2.0 ATR وهدف 4.0 ATR أي بنسبة 1:2)، وحد أدنى لمؤشر ADX عند 15 على الشمعة المغلقة. يمكن ضبط بوابة الهرَم إلى إيقاف، أو ربح فقط، أو ربح مع وقف محمي. تضيف دالة NoTradeGate() قائمة طويلة من حالات الرفض: السوق مغلق، خارج الجلسة، فارق سعر أعلى من 50 نقطة، خلل في الفارق أعلى من 3 أضعاف متوسط 30 شمعة، فترة تهدئة نشطة بعد خسارة، ثلاث خسائر متتالية (افتراضي)، مفتاح الإيقاف الطارئ، انحدار إجمالي أعلى من 20 في المئة، أقصى عدد من المراكز المفتوحة، أقصى عدد من الصفقات اليومية، نظام متذبذب، رأس مال تحت الحد الأدنى، خسارة يومية أعلى من 3 في المئة من رأس المال الفعّال، خسارة أسبوعية أعلى من 9 في المئة.
حجم المركز مبني على المخاطرة بنسبة 0.5 في المئة من رأس المال الفعّال افتراضياً. تقلل دالة CalcLotByRisk() الحجم بمقدار 25 في المئة عن كل خسارة متتالية، مع حد أدنى عند 25 في المئة من المخاطرة الأساسية. تُدرج تكلفة العمولة لكل لوت في حساب الخسارة. يُجبر الحد الأدنى لمسافة الوقف على 3 أضعاف الفارق الحالي لمنع الخروج الفوري خلال الافتتاحات المتقلبة. يتيح حد رأس المال (InpCapAmount) للمتداولين عزل هذا المستشار في شريحة اسمية ثابتة من الحساب.
تعمل إدارة الصفقات عند كل تيك من خلال ManageExits(). يُفعَّل التعادل بعد ربح 1x ATR، وجرّ الـATR بعد 1x ATR بخطوة 0.8، وقفل الربح كل 1x ATR مع تباطؤ الوقف بمقدار 0.5 ATR خلف السعر. يُغلق الخروج القائم على الوقت المراكز الأقدم من 240 ساعة. يتيح متغير السكالب السريع الخروج عند حد ربح ATR قابل للتكوين خلال عدد قابل للتكوين من الساعات. يدعم الإغلاق الجزئي بنسبة قابلة للتكوين عند الهدف الأول.
مرشح الجلسة مبرمج لساعات الجلسات الكبرى: لندن 08:00 إلى 16:30 بتوقيت غرينتش، نيويورك 13:00 إلى 21:00 بتوقيت غرينتش، وآسيا 22:00 إلى 06:00 بتوقيت غرينتش هي النافذة الافتراضية للتجنب. يتم الكشف التلقائي عن فرق غرينتش للوسيط من فجوة عطلة نهاية الأسبوع في بيانات شموع H1، وهو ما يعمل في Strategy Tester وكذلك على الخوادم الحية، ويمكن تجاوزه باستخدام InpServerGMTOffset للوسطاء الذين يعدّلون ساعاتهم عبر انتقالات التوقيت الصيفي.
لإعداد XAUUSD H1 المقترح، فإن نسبة المخاطرة إلى العائد 1:2 ووقف الخسارة القائم على ATR تعني فترات انحدار واقعية عندما يكون مصنّف النظام مخطئاً — وهذا هو السبب في وجود مفاتيح إيقاف الانحدار اليومي والأسبوعي والإجمالي. لا يقوم المستشار بالهرَم افتراضياً ويحدد نفسه عند 3 مراكز متوازية و10 دخولات يومياً، لذا فإن الإفراط في التداول ليس المخاطرة الرئيسية؛ بل سوء تصنيف النظام. التخفيض التكيفي للمخاطرة عند الخسائر المتتالية هو الإجابة الرئيسية للتصميم على ذلك، حيث يُقلّص حجم اللوت قبل تفعيل الحدود.
تفاصيل الاستراتيجية
عند كل شمعة مغلقة يُحدّث المستشار 8 مخازن مؤشرات — EMA(21) وEMA(50) وEMA(200) وRSI(14) وATR(14) وADX(14) وبولينجر(20، 2.0) وEMA(50) للإطار الزمني الأعلى — ويُشغّل ClassifyRegime() لتعيين إحدى الحالات الثماني. يوجّه MasterSignal() الشمعة بعد ذلك إلى أحد المحركات الفرعية الثلاثة: أنظمة الاتجاه تذهب إلى SignalTrendFollow()، والنطاق والانضغاط إلى SignalRSIMeanReversion()، والاختراق والتوسّع والمحايد إلى SignalBreakout(). يُصدر كل محرك فرعي إما +1 أو -1 أو 0 مع درجة ثقة، ويفرض CheckConfirm() توافق EMA للإطار الزمني الأعلى، وحد أدنى 1.2 للمخاطرة إلى العائد، وحد أدنى 15 لمؤشر ADX. ثم تُضيف دالة NoTradeGate() طبقات الرفض الخاصة بالفارق والجلسة وفترة التهدئة والانحدار والصفقات اليومية وأرضية رأس المال قبل أن تحسب TryEntry() اللوت من 0.5 في المئة من رأس المال الفعّال وترسل الأمر. تعمل ManageExits() عند كل تيك لتطبيق التعادل عند 1x ATR، والجرّ بخطوات 0.8 ATR، وقفل الربح كل 1x ATR، والوقف الزمني عند 240 ساعة.
يتم توجيه الدخول حسب النظام الحالي: في أنظمة الاتجاه يُطلق المستشار إشارة عند تقاطع طازج بين EMA(21) وEMA(50)، أو ارتداد إلى EMA(21)، أو إعادة دخول زخم على شمعة ذات جسم مهيمن، أو سكالب بتسارع RSI — جميعها مع توافق جانب EMA(200) وتأكيد EMA للإطار الزمني الأعلى. في أنظمة النطاق والانضغاط يُطلق دخولات الارتداد المتوسط على تقاطعات تشبع RSI(14) البيعي/الشرائي، ولمسات بولينجر مع تأكيد RSI، وانعكاسات ارتداد النطاق. في أنظمة الاختراق والتوسّع والمحايدة يُطلق عند إغلاق خارج قناة دونشيَان(20) مع حجم أعلى من 1.5 ضعف متوسط 50 شمعة وتوافق اتجاه الإطار الزمني الأعلى.
تستخدم الخروج مجموعة إدارة متعدية الطبقات: يُفعَّل التعادل بعد ربح 1x ATR، وجرّ ATR بعد 1x ATR بخطوة 0.8، وقفل الربح كل 1x ATR مع تباطؤ 0.5 ATR خلف السعر، ووقف زمني صارم عند 240 ساعة. يُغلق وضع السكالب السريع القابل للتكوين المراكز عند حد ربح ATR صغير خلال عدد قابل للتكوين من الساعات. انعكاس النظام إلى التذبذب ليس محفز خروج مباشر، لكن مرشح التذبذب يحجب الدخولات الجديدة وتُترك المراكز القائمة لطبقة الإدارة.
وقف الخسارة الابتدائي هو 2.0x ATR(14) افتراضياً، ويُجبر على حد أدنى 3 أضعاف الفارق الحالي لمنع حالات الإيقاف من قفزات الفارق. يستخدم حساب الحجم المبني على المخاطرة هذه المسافة بالتحديد: كل 0.5 في المئة من رأس المال الفعّال تحت المخاطرة. يُوقف مفتاح إيقاف الانحدار الإجمالي عند 20 في المئة من الرصيد الابتدائي جميع التداولات.
جني الأرباح الابتدائي هو 4.0x ATR(14)، مما ينتج نسبة مخاطرة إلى عائد 1:2 مقابل وقف 2.0x ATR. يتم فرض حد أدنى لنسبة المخاطرة إلى العائد عند 1.2 في طبقة التأكيد؛ وتُرفض الإعدادات التي تنتج نسبة أسوأ قبل إرسال أي أمر.
الحد الأدنى الموصى به للرصيد: 100 دولار مع تحجيم لوت متحفظ على XAUUSD H1، وتُتيح الأرصدة الأكبر تفعيل تحجيم المخاطرة التكيفي بالكامل. يُعدّ الوسيط ذو الفارق المنخفض أمراً ضرورياً — فحد الفارق عند 50 نقطة والحد الأدنى للوقف عند 3 أضعاف الفارق سيرفض معظم الإشارات على حسابات ECN ذات الفروقات الواسعة. أفضل الجلسات هي لندن 08:00–16:30 بتوقيت غرينتش ونيويورك 13:00–21:00 بتوقيت غرينتش؛ ويتجنب التكوين الافتراضي آسيا 22:00–06:00 بتوقيت غرينتش. هذا مستشار متعدد الأنظمة لا يحتاج إلى تدخل يُذكر ويتطلب ستة أشهر على الأقل من الاختبار الأمامي على الرمز المستهدف قبل أي نشر مباشر.
منطق الاستراتيجية
Pipsgrowth EX01001 Adaptive — تحليل منطق الاستراتيجية (من كود .mq5)
العائلة: Adaptive
الماجيك: 22201001
الإصدار: 1.00
الوصف:
ADX + ATR%ile + Bollinger width classify regime, then route to one of three native sub-signals: Trending -> EMA(21/50) cross + EMA(200) side Ranging -> RSI +/- OB/OS mean-reversion cross Breakout -> Donchian(20) channel + volume surge 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL ALLOCATION CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester. All paths use closed bar (shift=1)
المؤشرات:
- مؤشرات قياسية
الدوال الرئيسية:
RegimeName()DetectGMTOffset()RefreshClosedBarSeries()CurrentBarTime()WeekStart()DayStart()ATRPercentile()BBWidth()SignalTrendFollow()SignalRSIMeanReversion()
// Pipsgrowth EX01001 Adaptive — Execution Flow (from source analysis)
// Family: Adaptive
// ADX + ATR%ile + Bollinger width classify regime, then route to one of three native sub-signals: Trending -> EMA(21/50) cross + EMA(200) side Ranging -> RSI +/- OB/OS mean-reversion cross Breakout -> Donchian(20) channel + volume surge 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL ALLOCATION CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester. All paths use closed bar (shift=1)
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
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| InpMagic | 22201001 | Magic number (unique per EA) [10000000-99999999, step 1] |
| InpTradeComment | "Psgrowth.com Expert_01001" | Trade comment |
| InpStrategyTag | "RegimeSwitch" | Strategy tag (logs/index) |
| InpDryRun | false | Dry-run: skip real order sends (default OFF) |
| InpKillSwitch | false | Emergency kill switch (blocks new entries) |
| InpEnableLogging | false | Enable logging to journal |
| InpTimeframe | 7 | Timeframe: 1=M1,2=M3,3=M5,4=M10,5=M15,6=M30,7=H1,8=H4,9=D1 [1-9, step 1] |
| InpRiskPercent | 0.5 | Risk per trade, % of effective capital [0.1-5.0, step 0.1] |
| InpATR_SL_Mult | 2.0 | Initial SL = ATR × mult [0.5-10.0, step 0.1] |
| InpATR_TP_Mult | 4.0 | Initial TP = ATR × mult (sets R:R) [0.5-20.0, step 0.1] |
| InpFixedLot | 0.01 | Fallback lot when auto-sizing off [0.01-100.0, step 0.01] |
| InpUseAutoLot | true | Auto lot sizing from risk |
| InpMaxLot | 0.50 | Hard cap on lot size [0.01-100.0, step 0.01] |
| InpSignalOnBarClose | true | Evaluate signals only on bar close |
| InpMaxSpread | 50 | Max allowed spread in points (0=disable) [0-200, step 1] |
| InpCommissionPerLot | 7.0 | Commission cost per lot (account currency) [0-50, step 0.5] |
| InpCapAmount | 0.0 | Real-money capital cap, account currency [10-100000, step 10] |
| InpCapFloor | 50.0 | Floor below which new entries blocked [1-10000, step 1] |
| InpDailyLossPct | 3.0 | Max daily loss, % of effective capital [0.5-20.0, step 0.5] |
| InpWeeklyLossPct | 9.0 | Max weekly loss, % of effective capital [1.0-50.0, step 0.5] |
| InpMaxDDPct | 20.0 | Max total account drawdown % from start balance (0=disable) [5-50, step 1] |
| InpMaxDailyTrades | 10 | Max new entries per day [1-50, step 1] |
| InpCooldownMin | 30 | Cooldown minutes after a loss [0-1440, step 1] |
| InpMaxConsecLosses | 3 | Max consecutive losses before halt (0=disable) [0-20, step 1] |
| InpEMA_Fast | 21 | EMA fast period [2-500, step 1] |
| InpEMA_Slow | 50 | EMA slow period [2-500, step 1] |
| InpEMA_Filter | 200 | EMA trend filter period [10-1000, step 1] |
| InpRSI_Period | 14 | RSI period [2-100, step 1] |
| InpRSI_Oversold | 30 | RSI oversold threshold [1-49, step 1] |
| InpRSI_Overbought | 70 | RSI overbought threshold [51-99, step 1] |
| InpRSI_NeutralLow | 40 | RSI neutral low (trend signal floor) [1-49, step 1] |
| InpRSI_NeutralHigh | 70 | RSI neutral high (trend signal ceiling) [51-99, step 1] |
| InpADX_Period | 14 | ADX period [2-100, step 1] |
| InpATR_Period | 14 | ATR period [2-100, step 1] |
| InpBB_Period | 20 | Bollinger Bands period [2-100, step 1] |
| InpBB_Deviation | 2.0 | Bollinger Bands deviation [0.1-5.0, step 0.1] |
| InpRegime_ADX_Trend | 25.0 | ADX threshold for trend regime [10-60, step 0.5] |
| InpRegime_ADX_Range | 20.0 | ADX threshold for range regime [5-50, step 0.5] |
| InpATRPct_BK_Min | 0.6 | ATR%ile min for breakout regime [0.1-1.0, step 0.05] |
| InpATRPct_Lookback | 50 | ATR percentile lookback bars [10-200, step 1] |
| InpADX_Min_Signal | 15.0 | Min ADX on closed bar for signal validity [5-50, step 0.5] |
| InpADX_WeakOffset | 5.0 | ADX offset below trend threshold for weak trend [1-20, step 0.5] |
| InpATRPct_StrongTrend | 50.0 | ATR%ile min for strong trend [10-90, step 5] |
| InpATRPct_Compress | 25.0 | ATR%ile max for compression [5-50, step 5] |
| InpATRPct_Expand | 80.0 | ATR%ile min for expansion [50-95, step 5] |
| InpATRPct_Choppy | 40.0 | ATR%ile max for choppy [10-60, step 5] |
| InpBBWidth_Compress | 1.0 | BB width max for compression [0.1-5.0, step 0.1] |
| InpBBWidth_Expand | 2.5 | BB width min for expansion [0.5-10.0, step 0.1] |
| InpBreakout_Lookback | 20 | Donchian channel lookback (bars) [5-200, step 1] |
| InpVolume_Avg_Period | 50 | Volume averaging period (bars) [10-200, step 1] |
| InpVolume_Mult | 1.5 | Volume surge multiplier [1.0-5.0, step 0.1] |
| InpHTF_TF | 8 | HTF timeframe: 1=M1,2=M3,3=M5,4=M10,5=M15,6=M30,7=H1,8=H4,9=D1 [1-9, step 1] |
| InpHTF_EMA_Period | 50 | HTF EMA period [5-500, step 1] |
| InpMin_RR_Ratio | 1.2 | Minimum R:R ratio (TP/SL) [0.5-10.0, step 0.1] |
| InpTrail_ATR_Buffer | 0.5 | BE SL buffer (×ATR×0.1) [0.1-5.0, step 0.1] |
| InpPartial_TP_Ratio | 0.0 | Partial TP close ratio at TP1 (0=disabled) [0.0-0.9, step 0.05] |
| InpMax_Hours_In_Trade | 240 | Max hours in trade (time-based exit) [1-2000, step 1] |
| InpQuickScalpATR | 0.0 | Quick scalp exit: min ATR profit (0=disabled) [0-5.0, step 0.1] |
| InpQuickScalpHours | 6.0 | Quick scalp exit: min hours in trade [1-48, step 1] |
| InpMax_Spread_Mult_Avg | 3.0 | Spread anomaly: reject if > N× rolling avg [1.0-10.0, step 0.5] |
| InpSpread_Avg_Bars | 30 | Spread rolling avg period (M1 bars) [5-200, step 1] |
| InpEnableBreakEven | true | Enable break-even |
| InpATR_Breakeven | 1.0 | Move to BE after N×ATR profit [0.5-10.0, step 0.1] |
| InpEnableTrailingStop | true | Enable ATR trailing stop |
| InpATR_TrailStart | 1.0 | Activate ATR trail after N×ATR profit [0.5-20.0, step 0.1] |
| InpATR_TrailStep | 0.8 | ATR trailing step [0.1-10.0, step 0.1] |
| InpEnableProfitLock | true | Lock profits in incremental steps |
| InpProfitLockIncrement | 1.0 | Lock every N×ATR of profit [0.5-10.0, step 0.1] |
| InpProfitLockStep | 0.5 | Distance behind current price (N×ATR) [0.1-5.0, step 0.1] |
| InpPyramidGateMode | PyramidGate_Off | Pyramid gate mode |
| InpProfitGatePoints | 10.0 | Minimum profit (points) per trade for pyramid [1-1000, step 1] |
| InpMaxOpenPos | 3 | Max concurrent positions (this symbol+magic) [1-20, step 1] |
| InpUseSessionFilter | true | Enable session time filter |
| InpServerGMTOffset | 0 | Broker server GMT offset (hours). 0=auto-detect. For backtesting set manually (e.g. 2=winter, 3=summer) [-12-14, step 1] |
| InpLondonStartH | 8 | London start hour (GMT) [0-23, step 1] |
| InpLondonStartM | 0 | London start minute [0-59, step 1] |
| InpLondonEndH | 16 | London end hour (GMT) [0-23, step 1] |
| InpLondonEndM | 30 | London end minute [0-59, step 1] |
| InpNYStartH | 13 | New York start hour (GMT) [0-23, step 1] |
| InpNYStartM | 0 | New York start minute [0-59, step 1] |
| InpNYEndH | 21 | New York end hour (GMT) [0-23, step 1] |
| InpNYEndM | 0 | New York end minute [0-59, step 1] |
| InpAvoidAsia | true | Avoid Asian session |
| InpAsiaStartH | 22 | Asia start hour (GMT) [0-23, step 1] |
| InpAsiaStartM | 0 | Asia start minute [0-59, step 1] |
| InpAsiaEndH | 6 | Asia end hour (GMT) [0-23, step 1] |
| InpAsiaEndM | 0 | Asia end minute [0-59, step 1] |
#property copyright "Pipsgrowth.com"
#property link "https://pipsgrowth.com"
#property version "1.00"
#property strict
#property description "Pipsgrowth.com EX01001 Adaptive EA — regime-switch dispatcher (Trend/Range/Breakout) with full 12-layer stack, configurable timeframe, trailing/BE/profit-lock toggles, pyramid gate, spread filter, new-bar gate. Works on any symbol/timeframe."
//==== Allowed includes ============================================
#include <Trade/Trade.mqh>
#include <Trade/PositionInfo.mqh>
#include <Trade/SymbolInfo.mqh>
#include <Trade/AccountInfo.mqh>
//--- pyramid gate mode enum
enum PyramidGateMode
{
PyramidGate_Off=0, // No pyramid gate
PyramidGate_ProfitOnly, // Require existing trades be in profit
PyramidGate_ProfitAndSL // Require profit + SL secured in profit
};
//==== (former hardcoded tunables — now all exposed as inputs) ======
//--- Timeframe mapping: 1=M1, 2=M3, 3=M5, 4=M10, 5=M15, 6=M30, 7=H1, 8=H4, 9=D1
ENUM_TIMEFRAMES MapTimeframe(int tf)
{
switch(tf)
{
case 1: return PERIOD_M1;
case 2: return PERIOD_M3;
case 3: return PERIOD_M5;
case 4: return PERIOD_M10;
case 5: return PERIOD_M15;
case 6: return PERIOD_M30;
case 7: return PERIOD_H1;
case 8: return PERIOD_H4;
case 9: return PERIOD_D1;
default: return PERIOD_H1;
}
}
//==================================================================
// INPUTS
//==================================================================
input group "=== Identity ==="
input ulong InpMagic = 22201001; // Magic number (unique per EA) [10000000-99999999, step 1]
input string InpTradeComment = "Psgrowth.com Expert_01001"; // Trade comment
input string InpStrategyTag = "RegimeSwitch"; // Strategy tag (logs/index)
input bool InpDryRun = false; // Dry-run: skip real order sends (default OFF)
input bool InpKillSwitch = false; // Emergency kill switch (blocks new entries)
input bool InpEnableLogging = false; // Enable logging to journal
input int InpTimeframe = 7; // Timeframe: 1=M1,2=M3,3=M5,4=M10,5=M15,6=M30,7=H1,8=H4,9=D1 [1-9, step 1]
input group "=== Risk & Sizing ==="
input double InpRiskPercent = 0.5; // Risk per trade, % of effective capital [0.1-5.0, step 0.1]
input double InpATR_SL_Mult = 2.0; // Initial SL = ATR × mult [0.5-10.0, step 0.1]
input double InpATR_TP_Mult = 4.0; // Initial TP = ATR × mult (sets R:R) [0.5-20.0, step 0.1]
input double InpFixedLot = 0.01; // Fallback lot when auto-sizing off [0.01-100.0, step 0.01]
input bool InpUseAutoLot = true; // Auto lot sizing from risk
input double InpMaxLot = 0.50; // Hard cap on lot size [0.01-100.0, step 0.01]
input bool InpSignalOnBarClose= true; // Evaluate signals only on bar 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 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.