Pipsgrowth EX01004 Adaptive — إكسبرت أدفايزر تكييفي
إكسبرت أدفايزر MT5 مفتوح المصدر · XAUUSD · M5، H1
Pipsgrowth EX01004 Adaptive — Safe but profitable EA with multiple adaptive confirmations — AMA, RSI, MACD, Stochastic, ATR with self-tuning sensitivi. إكسبرت أدفايزر MT5 مفتوح المصدر.
نظرة عامة
إكسبرت Pipsgrowth EX01004 Adaptive يحتل موقعاً وسطاً في تشكيلة PipsGrowth بوصفه إكسبرت متعدد التأكيدات محافظاً عمداً — أولوية تصميمه هي تداول عدد أقل من الفرص بجودة أعلى بدلاً من مطاردة التكرار. تمزج الاستراتيجية بين خمسة مدخلات تقنية مستقلة في درجة مرجحة واحدة، ثم تضع هذه الدرجة خلف تسعة فحوصات أمان منفصلة قبل أن يصل أي أمر إلى الوسيط. فوق AMA بفترة 14، وRSI بفترة 14، وMACD بإعدادات 12/26/9، وStochastic بإعدادات 14/3/3، وATR بفترة 14، يبني EX01004 توجيهاً على الشموع المغلقة، ثم يسأل دالة IsSafeToTrade() ما إذا كان باقي الحساب في حالة مناسبة للتصرف بناءً عليه.
جوهر المحرك هو دالة GetMarketSignal(). تسحب القيم من الشمعة المغلقة (الإزاحة 1، لتجنب إعادة الرسم) من مؤشرات AMA وRSI وMACD وStochastic وATR، ثم تحسب درجة من خمسة أجزاء. التقاطع مع AMA (المتوسط المتحرك التكيّفي، بـ EMA سريع قيمته 2 و EMA بطيء قيمته 30) يساهم بأكبر وزن عند 0.4 — شراء عندما أغلقت الشمعة السابقة تحت AMA والشمعة المغلقة الحالية فوقه، والعكس للبيع. عبور RSI(14) لمستوى متكيف مع التذبذب يساهم بـ 0.2: مستوى الـ30 والـ70 القياسيين يُوسَّعان أو يُضيَّقان بحسب نسبة ATR الحالي إلى متوسط ATR لثلاث شموع، مضروبة في الحساسية التكيفية. تقاطع خط MACD(12,26,9) مع خط الإشارة يساهم بـ 0.2. مناطق Stochastic(14,3,3) تساهم بـ 0.1 عندما يكون الخط الرئيسي تحت 20 (ميل شرائي) أو فوق 80 (ميل بيعي). أخيراً، مرشح اتجاه SMA لـ5 شموع مقابل 20 شمعة يساهم بـ 0.1 كتوجه اتجاهي. درجة مركبة أعلى من 0.5 × الحساسية التكيفية ترجع إشارة شراء؛ أقل من -0.5 × الحساسية التكيفية ترجع إشارة بيع؛ أي شيء بينهما صمت.
كلمة «التكيّفي» في الاسم تأتي من UpdateAdaptiveSensitivity()، التي تعدّل العتبة في كل تيك بناءً على حركة الرصيد. ثلاث ارتفاعات متتالية في رصيد الحساب تدفع الحساسية للأعلى بمقدار 0.1، حتى سقف 1.0؛ انخفاضان متتاليان يسحبانها للأسفل بمقدار 0.1، مع حد أدنى 0.3. في سوق هادئ بلا اتجاه، تجد الدرجة صعوبة في تجاوز العتبة — لذلك ببساطة لا يتداول الإكسبرت. في سوق ذي اتجاه قوي حيث المستخدم يحقق أرباحاً بالفعل، تتسع العتبة ويبدأ الإكسبرت في أخذ مزيد من الفرص. الأثر الصافي هو حلقة تغذية راجعة: سلاسل الأرباح تسمح بمزيد من التداول، وسلاسل الخسائر تفرض انتقائية.
قبل إرسال أي أمر، يمر الإكسبرت عبر IsSafeToTrade(). تطبّق هذه الدالة تسع بوابات مستقلة: حد أقصى لرأس المال (إيقاف التداول فوق InpCapAmount)، حد أدنى لرأس المال (إغلاق قسري وإيقاف التداول تحت InpCapFloor، الافتراضي 100 دولار)، حد أدنى للرصيد (80% من الرصيد الأولي افتراضياً — الاختراق يستدعي CloseAllPositions())، حد خسارة يومي (3% من الرصيد الأولي عبر g_realizedToday المحدّث من خطاف OnTradeTransaction)، حد خسارة أسبوعي (8%)، مؤقت تهدئة (30 دقيقة بعد ثلاث خسائر متتالية، تحكمه InpMaxConsecLosses وInpCooldownMin)، حد لعدد الصفقات اليومية (5 افتراضياً)، فحص فتح السوق الذي يستخدم فجوة نهاية الأسبوع المكتشفة بتوقيت GMT لرفض تداول السبت وأوائل الأحد، وفحص الجلسة النشطة (لندن 07-16 بتوقيت GMT أو نيويورك 12-21 بتوقيت GMT، مع InpAvoidAsia المضبوط افتراضياً على true). كما يحظر مدخل AvoidNews نوافذ الـ30 دقيقة حول افتتاح لندن ونيويورك. مفتاح InpMaxDDPct عند 20% سحب إجمالي يوقف الإكسبرت نهائياً للجلسة.
يفرض مسار الدخول أيضاً بوابة هرمية عبر PyramidGateAllows(). افتراضياً، البوابة مضبوطة على PyramidGate_ProfitOnly، مما يعني أن أي صفقة موجودة على الرمز يجب أن تُظهر ربحاً لا يقل عن 5 نقاط (InpProfitGatePoints) قبل السماح بدخول جديد في نفس الاتجاه. الوضع البديل PyramidGate_ProfitAndSL يطلب كذلك أن يكون وقف الصفقة القائمة في المنطقة الرابحة. يُحدد InpMaxOpenPositions الحد الأقصى للتذاكر المفتوحة بـ5، لذا حتى في سوق جامح لن ينتج عن ذلك تعرض أكبر من ذلك.
روتينات تنفيذ الأوامر OpenBuyOrder() وOpenSellOrder() تحجم الصفقة ديناميكياً. يُحسب اللوت في CalculateLotSize() كـ EffectiveCapital() × RiskPercent / (slPoints × tickValue)، ثم يُطبَّع على خطوة حجم الوسيط ويُقصّ عند InpMaxLot (100.0). يُوضع وقف الخسارة عند currentPrice ± (ATR × SLMultiplier) (افتراضي 1.0)، وجني الأرباح عند currentPrice ± (ATR × SLMultiplier × TPMultiplier) (افتراضي 2.0) — نسبة مخاطرة إلى عائد 1:2 مقارنة بوقف الخسارة الأولي. يُحترم الحد الأدنى لـSYMBOL_TRADE_STOPS_LEVEL الخاص بالوسيط؛ إذا كانت الوقوفات المستندة إلى ATR ستخرقه، تُدفع إلى مسافة الحد الأدنى. تُستشار OrderCalcMargin() أولاً للتأكد من أن اللوت المحسوب يمكن تمويله من الهامش الحر، ويُرسل الأمر بـ supportedFillingMode المكتشف تلقائياً (FOK أو IOC أو RETURN، بحسب ما يعلنه الوسيط عبر SYMBOL_FILLING_MODE). تعمل DetectFillingMode() في OnInit() وتبقى طوال عمر الإكسبرت.
إدارة الصفقات هي مسار الكود الأكثر كتابةً. في كل تيك، تُشغّل UpdatePositionManagement() عملية mark-and-sweep على المصفوفة المحلية currentPositions[]، ثم لكل صفقة باقية تفحص أربعة أمور: خروج عند الإشارة المعاكسة (يستدعي TryClosePosition() مع 3 محاولات إعادة على إعادة التسعير وتغيّر السعر)، الرفع التدريجي لنقطة التعادل (في ApplyBreakEven())، قفل الربح التدريجي (في ApplyProfitLock())، ووقف الخسارة المتقدم المعتمد على ATR (في UpdateAdvancedTrailing()). يُفعَّل وقف التعادل عند BreakEvenTrigger = 10 نقاط ربح وينقل وقف الخسارة إلى سعر الدخول مرة واحدة بالضبط. يعمل قفل الربح كل ProfitLockIncrement (10 نقاط) من الربح ويرفع وقف الخسارة بمقدار الزيادة ناقص ProfitLockStep (3 نقاط)، لذا يبقى وقف الخسارة دائماً 3 نقاط خلف مستوى القفل السابق. يستخدم وقف الخسارة المتقدم TrailingATRMultiplier × ATR(14) كمسافة trailing ولا يرفع وقف الخسارة إلا في الاتجاه الملائم. تمر جميع التعديلات الثلاثة عبر TryModify()، التي تتضمن حماية ضد الوقوفات غير الصالحة و3 محاولات إعادة.
الإكسبرت مبني أساساً لـXAUUSD على الإطار الزمني M5 (مدخل InpTimeframe يربط القيمة 3 بـ PERIOD_M5)، رغم أن H1 وجميع الفترات الزمنية القياسية الأخرى مكشوفة عبر نفس التعداد. رقم التعريف السحري الافتراضي هو 22201004، وتعليق الصفقة هو Pipsgrowth.com Expert_01004، ويُكتشف فرق توقيت GMT تلقائياً بفحص فجوة نهاية الأسبوع على H1 في DetectGMTOffset() — الإكسبرت يتوقع أن يحترم الخادم إغلاق الجمعة 22:00 وافتتاح الأحد 22:00. إذا كنت تستخدم خادماً غير قياسي، يمكنك تجاوز الفرق بـ InpServerGMTOffset. يفترض مرشح نافذة لندن/نيويورك أن طرح فرق التوقيت المكتشف تلقائياً من وقت الخادم يطابق مدخلات ساعات GMT بشكل نظيف.
للاختبار العكسي، لا يحدد المصدر أي منطق OnTester() للقبول/الرفض، لذا فإن لياقة التحسين هي نسبة الرصيد إلى أقصى سحب قياسية في MT5. نظراً لأن خطاف OnTradeTransaction يحدّث g_realizedToday وg_realizedWeek لحدود اليومية والأسبوعية، فإن الاختبار العكسي سيحترم حدود 3% اليومية و8% الأسبوعية تماماً كما في التداول الحقيقي. الافتراضي InpSignalOnBarClose هو true، مما يعني تقييم الإشارات فقط عند إغلاق الشمعة — التبديل إلى false يتيح إعادة تقييم الإشارات عند كل تيك ويميل إلى إنتاج نتائج مختلفة بشكل ملموس (وأسوأ عادةً)، لأن قراءة الشمعة المغلقة عند shift=1 في GetMarketSignal() لم تعد مضمونة.
InpDryRun هو من المدخلات الأكثر فائدة للنشر الحي: اضبطه على true وسيقوم الإكسبرت بتسجيل كل إشارة كان سيضعها دون إرسال أي أوامر، حتى تتمكن من التحقق من تدفق الإشارات على تغذية وسيط حية دون المخاطرة برأس المال. مدخل InpKillSwitch هو إيقاف صارم — تحويله إلى true يوقف كل التداول فوراً دون إزالة الإكسبرت من الرسم البياني، مفيد كزر ذعر أثناء حدث مفاجئ أو انقطاع واسع للوسيط. سقف InpMaxLot هو سقف هيكلي: حتى لو أنتج حساب المخاطرة حجماً أكبر، يُقص اللوت عند 100.0 قبل OrderSend.
تأتي قاعدة الكود بدون استيرادات DLL، وبدون طلبات ويب، وبدون سلاسل مشفّرة. كل ما يفعله الإكسبرت مرئي في Pipsgrowth_com_EX01004.mq5 ومفتوح للتعديل وإعادة الترجمة وإعادة التوزيع بموجب شروط PipsGrowth. المفاتيح الثلاثة الأكثر أهمية للضبط هي أوزان الدرجة المركبة داخل GetMarketSignal() (حالياً 0.4/0.2/0.2/0.1/0.1)، ومعامل توسيع التذبذب في عتبات RSI التكيفية، وقيمة مفتاح InpMaxDDPct — كل شيء آخر عرف. مع RiskPercent عند 1.0 وحد 3% اليومي، الإكسبرت مُحجَّم لحساب 100 دولار يصرّح المطور صراحة بأنه الحد الأدنى للتصميم.
تفاصيل الاستراتيجية
في كل شمعة جديدة، يقرأ EX01004 أربع مقابض مؤشرات قياسية (AMA 14/2/30، RSI 14، MACD 12/26/9، Stochastic 14/3/3، ATR 14) على الشمعة المغلقة عند shift=1، ثم يحسب درجة مركبة واحدة: تقاطع AMA يساهم بـ 0.4، عبور RSI لمستويات التشبع بـ 0.2، تقاطع خط MACD مع خط الإشارة بـ 0.2، مناطق Stochastic 20/80 بـ 0.1، واتجاه SMA لـ5 مقابل 20 بـ 0.1. تُوسَّع عتبات RSI نفسها أو تُضيَّق بحسب نسبة ATR الحالي إلى متوسط ATR لثلاث شموع، مضروبة في الحساسية التكيفية — قيمة ذاتية الضبط ترتفع بـ 0.1 بعد ثلاث أرصدة رابحة متتالية وتنخفض بـ 0.1 بعد رصيدين خاسرين متتاليين، محصورة بين 0.3 و1.0. قبل إرسال أي أمر، تفحص IsSafeToTrade() ثماني بوابات مستقلة: حد رأس المال/أرضيته، حد أدنى للرصيد عند 80%، خسارة يومية 3%، خسارة أسبوعية 8%، فترة تهدئة، أقصى عدد صفقات يومي، فتح السوق، الجلسة النشطة (لندن 7-16 أو نيويورك 12-21 بتوقيت GMT افتراضياً مع تجنب آسيا)، ومفتاح السحب الإجمالي 20%. يفرض مسار الصفقات المفتوحة بوابة الهرم (PyramidGate_ProfitOnly افتراضياً — يجب أن تُظهر أي صفقة قائمة ربحاً لا يقل عن 5 نقاط قبل أي دخول جديد في نفس الاتجاه)، وكل صفقة مُدارة تمر عبر ApplyBreakEven وApplyProfitLock وUpdateAdvancedTrailing في كل تيك بحيث يُرفع وقف الخسارة بـ 1.5× ATR بعد كل قمة جديدة.
تُفعَّل إشارات الشراء عندما يعبر إغلاق الشمعة السابقة فوق AMA(14, 2, 30) صعوداً، وتتجاوز درجة التأكيد المرجحة (AMA 0.4 + RSI 0.2 + MACD 0.2 + Stoch 0.1 + اتجاه SMA 0.1) عتبة تكيفية مستمدة من الحساسية التكيفية. تتكيف مستويات تشبع RSI شرائهاً وبيعاُ ديناميكياً بناءً على نسبة ATR الحالي إلى متوسط ATR لثلاث شموع، لذا تتطلب الأسواق الهادئة إشارات أقوى من الأسواق المتقلبة. تمنع بوابة إغلاق الشمعة (InpSignalOnBarClose) تقييم الإشارات إلا على شمعة مفتوحة حديثاً، وتحظر طبقة عدم التداول الأوامر عندما يتجاوز السبريد 50 نقطة، أو يُخترق حد الرصيد الأدنى، أو تكون فترة التهدئة البالغة 30 دقيقة نشطة بعد ثلاث خسائر متتالية.
تُغلق الصفقات عند إشارة معاكسة مؤكدة من نفس الحزمة المركبة، عبر حلقة إعادة المحاولة TryClosePosition() مع انحراف سعري قدره 10 نقاط. إذا لم تنقلب الإشارة، تظل الصفقة تُدار بآليات الرفع التدريجي الثلاث: مشغّل نقطة التعادل يرفع وقف الخسارة إلى سعر الدخول عند 10 نقاط ربح، وخطوة قفل الربح ترفع وقف الخسارة بزيادات قدرها 10 نقاط ناقص 3 نقاط، ووقف الخسارة المتقدم المعتمد على ATR يتبع سعر العرض/الطلب بمسافة 1.5× ATR. تُوسم تذاكر الصفقات وتُمسح في كل تيك عبر UpdatePositionManagement() بحيث تُحذف التذاكر المغلقة من مصفوفة التتبع المحلية.
يُحسب وقف الخسارة عند الدخول كـ ATR(14) × SLMultiplier (افتراضي 1.0)، ويُطبَّع على تيك الرمز ويُقيَّد بمسافة الوقف الدنيا للوسيط. إلى جانب وقف الخسارة لكل صفقة، يوقف مفتاح السحب الأقصى الثابت عند InpMaxDDPct = 20% كل التداول بمجرد أن ينخفض الرصيد بنسبة 20% من الرصيد الأولي، ويُغلق حد أدنى للرصيد عند 80% من الرصيد الأولي جميع الصفقات قسرياً.
يُحسب جني الأرباح عند الدخول كـ ATR(14) × SLMultiplier × TPMultiplier (افتراضي 2.0)، مما يعطي نسبة مخاطرة إلى عائد ثابتة 1:2 مقارنة بوقف الخسارة الأولي. بمجرد تقدّم السعر، يبقى جني الأرباح الثابت محفوظاً بينما يُرفع وقف الخسارة تدريجياً بواسطة آليات نقطة التعادل وقفل الربح والـtrailing المتقدم — لذا يعمل جني الأرباح كسقف بينما تُبقي آلية الـtrailing الجانب السلبي على مسار تصاعدي.
شغّله على XAUUSD M5 (الربط الافتراضي InpTimeframe=3) مع الحد الأدنى 100 دولار — RiskPercent البالغ 1% وحد الخسارة اليومي 3% مُحجَّمان لنشر محافظ على رصيد صغير على وسيط ECN بسبريد منخفض. الجلسة الموصى بها هي تداخل لندن ونيويورك (12-16 بتوقيت GMT، عندما تكون كل من نافذتي InpLondonStartHour وInpNYStartHour مفتوحتين ويكون سبريد الذهب عادةً أضيق)، مع تجنب الجلسة الآسيوية صراحةً وفقاً للافتراضي InpAvoidAsia=true. تجنب الوسطاء الذين يعانون من قفزات سبريد عالية على XAUUSD أو فجوات نهاية أسبوع للذهب أكبر من ساعتين، واستخدم مدخل InpDryRun أولاً لتسجيل الإشارات دون الالتزام برأس مال.
منطق الاستراتيجية
Pipsgrowth EX01004 Adaptive — تحليل منطق الاستراتيجية (من كود .mq5)
العائلة: Adaptive
الماجيك: 22201004
الإصدار: 3.00
الوصف:
Safe but profitable EA with multiple adaptive confirmations — AMA, RSI, MACD, Stochastic, ATR with self-tuning sensitivity and session filtering. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester
المؤشرات:
- مؤشرات قياسية
الدوال الرئيسية:
DetectFillingMode()IsSafeToTrade()DetectGMTOffset()ServerToGMT()IsMarketOpen()InActiveSession()EffectiveCapital()IsNewsTime()GetMarketSignal()GetSMA()
// Pipsgrowth EX01004 Adaptive — Execution Flow (from source analysis)
// Family: Adaptive
// Safe but profitable EA with multiple adaptive confirmations — AMA, RSI, MACD, Stochastic, ATR with self-tuning sensitivity and session filtering. 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
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| InpMagicNumber | 22201004 | Magic Number |
| InpTradeComment | "Psgrowth.com Expert_01004" | Trade Comment |
| InpTimeframe | 3 | Timeframe: 1=M1,2=M3,3=M5,4=M10,5=M15,6=M30,7=H1,8=H4,9=D1 |
| InpSignalOnBarClose | true | Evaluate signals only on new bar close |
| InpMaxSpread | 50 | Max spread in points (0=disabled) |
| RiskPercent | 1.0 | Risk percentage per trade (max 2% for $100 account) |
| MaxDailyLossPercent | 3.0 | Maximum daily loss percentage |
| MaxTradesPerDay | 5 | Maximum trades per day |
| MinEquityPercent | 80.0 | Stop trading if equity falls below this % of initial balance |
| InpMaxConsecLosses | 3 | Max consecutive losses before cooldown (0=disabled) |
| InpCooldownMin | 30 | Cooldown minutes after consec losses (0=disabled) |
| InpMaxWeeklyLossPct | 8.0 | Max weekly loss % (0=disabled) |
| InpCapAmount | 0.0 | Capital cap amount (stop trading at this equity) |
| InpCapFloor | 100.0 | Capital floor (stop trading below this equity) |
| InpServerGMTOffset | 0 | Server GMT offset in hours (0=auto-detect via weekend gap) |
| InpLondonStartHour | 7 | London session start (GMT) |
| InpLondonEndHour | 16 | London session end (GMT) |
| InpNYStartHour | 12 | New York session start (GMT) |
| InpNYEndHour | 21 | New York session end (GMT) |
| InpAvoidAsia | true | Avoid Asian session |
| InpAsiaStartHour | 0 | Asian session start (GMT) |
| InpAsiaEndHour | 7 | Asian session end (GMT) |
| AvoidNews | true | Avoid trading during news |
| InpMaxDDPct | 20.0 | Max total drawdown % (0=disabled, triggers kill switch) |
| InpKillSwitch | false | Kill switch (stops all trading immediately) |
| InpDryRun | false | Dry-run mode: log signals without trading |
| InpMaxLot | 100.0 | Maximum lot size cap |
| AMA_Period | 14 | Adaptive Moving Average period |
| AMA_FastEMA | 2 | Fast EMA for AMA |
| AMA_SlowEMA | 30 | Slow EMA for AMA |
| RSI_Period | 14 | RSI period for adaptive calculation |
| MACD_Fast | 12 | MACD fast period |
| MACD_Slow | 26 | MACD slow period |
| MACD_Signal | 9 | MACD signal period |
| Stoch_K | 14 | Stochastic %K period |
| Stoch_D | 3 | Stochastic %D period |
| ATR_Period | 14 | ATR period for volatility |
| TPMultiplier | 2.0 | Take Profit multiplier (conservative 1:2 RR) |
| SLMultiplier | 1.0 | Stop Loss multiplier |
| InpEnableBreakEven | true | Enable break-even move |
| BreakEvenTrigger | 10.0 | Break-even trigger in points |
| InpEnableProfitLock | true | Enable profit lock |
| ProfitLockIncrement | 10.0 | Profit lock increment in points |
| ProfitLockStep | 3.0 | Profit lock step (SL trails increment minus step) |
| InpPyramidGateMode | PyramidGate_ProfitOnly | Pyramid gate mode |
| InpProfitGatePoints | 5.0 | Minimum profit in points for pyramid gate |
| InpMaxOpenPositions | 5 | Max open positions (0=unlimited) |
| UseAdvancedTrailing | true | Advanced trailing stop system |
| TrailingATRMultiplier | 1.5 | ATR multiplier for trailing distance |
#property copyright "Pipsgrowth.com"
#property link "https://pipsgrowth.com"
#property version "3.00"
#property strict
#property description "Pipsgrowth.com EX01004 AdaptiveForexMaster Fixed — multi-adaptive confirmation EA, full 12-layer stack, configurable timeframe, trailing/BE/profit-lock toggles, pyramid gate, spread filter, new-bar gate, filling mode detection."
//--- 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
};
//--- 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_M5;
}
}
// Input Parameters
input group "=== Identity ==="
input ulong InpMagicNumber = 22201004; // Magic Number
input string InpTradeComment = "Psgrowth.com Expert_01004"; // Trade Comment
input int InpTimeframe = 3; // Timeframe: 1=M1,2=M3,3=M5,4=M10,5=M15,6=M30,7=H1,8=H4,9=D1
input bool InpSignalOnBarClose = true; // Evaluate signals only on new bar close
input int InpMaxSpread = 50; // Max spread in points (0=disabled)
input group "=== Risk Management ==="
input double RiskPercent = 1.0; // Risk percentage per trade (max 2% for $100 account)
input double MaxDailyLossPercent = 3.0; // Maximum daily loss percentage
input int MaxTradesPerDay = 5; // Maximum trades per day
input double MinEquityPercent = 80.0; // Stop trading if equity falls below this % of initial balance
input int InpMaxConsecLosses = 3; // Max consecutive losses before cooldown (0=disabled)
input int InpCooldownMin = 30; // Cooldown minutes after consec losses (0=disabled)
input double InpMaxWeeklyLossPct = 8.0; // Max weekly loss % (0=disabled)
input group "=== Capital Cap ==="
// InpCapEnabled removed — use InpCapAmount=0 to disable // Enable capital cap (stop trading above cap)
input double InpCapAmount = 0.0; // Capital cap amount (stop trading at this equity)
input double InpCapFloor = 100.0; // Capital floor (stop trading below this equity)
input group "=== Sessions Management (GMT) ==="
input int InpServerGMTOffset = 0; // Server GMT offset in hours (0=auto-detect via weekend gap)
input int InpLondonStartHour = 7; // London session start (GMT)
input int InpLondonEndHour = 16; // London session end (GMT)
input int InpNYStartHour = 12; // New York session start (GMT)
input int InpNYEndHour = 21; // New York session end (GMT)الكود المصدري الكامل متاح عند التحميل
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.
تحذير صريح: لأغراض تعليمية فقط
تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.
وسطاء موصى بهم لهذا الإكسبرت
هذه الروبوتات تعمل على 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 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.