P
PipsGrowth
أخرىمفتوح المصدر - مجاني

Pipsgrowth EX12044 MultiIndicatorConfluence — إكسبرت أدفايزر إكسبرت أدفايزر

إكسبرت أدفايزر MT5 مفتوح المصدر · EURUSD · M5، H1

Pipsgrowth EX12044 MultiIndicatorConfluence — Adaptive forex scalping EA combining adaptive moving average, RSI crossover/divergence, Heiken Ashi, and volatility filt. إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

إكسبرت Pipsgrowth EX12044 MultiIndicatorConfluence هو نفس قالب المقبض الواحد و38 المدخل الخاص بـ EX12043 مع تغيير تشغيلي واحد: رقم سحري مختلف، 22212044 بدلاً من 22212043. الملف يحمل وسم v1.0.1، وإصدار الخاصية 2.00، ولا يزال تعليق السطر 176 في المصدر يصف الإكسبرت بأنه "إصدار 1.1" (في إشارة إلى النظام الفرعي RSI، وليس إصدار الملف). الهدف من ترقية الرقم السحري على كود متطابق هو التوازي في المحفظة: يمكن للمتداول تشغيل نسختين أو أكثر من نفس القالب على نفس الحساب مع مجموعات تذاكر منفصلة، ليتمكن رصيد 1000 دولار من حمل مكدسين متزامنين من 5 تذاكر لكل اتجاه دون تصادم حدود المراكز. ولأن كل بوابة وكل إعادة محاولة وكل مدخل لها نفس الافتراضات مثل EX12043، فإن ما يلي هو جولة نشر لما يفعله الإكسبرت فعلياً تكة بتكة وشمعة بشمعة — وليسجرداً للميزات.

وتيرة اتخاذ القرار هي مرة لكل شمعة جديدة، وليست مرة لكل تكة. تشغل OnTick() في المصدر ثلاث مراحل بالترتيب: تستدعي UpdateAdaptiveIndicators() لتحديث المخازن المؤقتة الأربعة المشتقة (التذبذب، المتوسط المتحرك المحدود النافذة، RSI، هيكن أشي)، ثم تمشي ManagePositions() بكل تذكرة مفتوحة عبر مشاية الأرباح، ولا تشتعل CheckForEntry() إلا عندما totalBars != iBars(_Symbol, PERIOD_CURRENT). تلك المقارنة الأخيرة هي ما يمنح الإكسبرت حد معدله الأصلي: حتى لو اشتعلت كل واحدة من شروط الإشارة الأربعة على كل تكة من شمعة M5 سريعة، فإن فحص الدخول يظل يعمل مرة واحدة على الأكثر لكل شمعة. سقف الشمعة هيكلي، وغير قابل للضبط — لا يوجد مدخل يعطله.

مسار الدخول المباشر هو بوابة صارمة من أربعة شروط. الشرط الأول: إغلاق آخر شمعة — أو haClose[0] عند تشغيل UseHeikenAshi (الافتراضي) — فوق المتوسط المتحرك المحدود النافذة للشراء، وتحتة للبيع. الشرط الثاني: تم طباعة تقاطع حديث مع المتوسط، بحيث الشمعة السابقة عند أو تحت المتوسط والأخيرة فوقه، أو تشكّل جسم "قوي" لهيكن أشي، حيث الاختبار هو الجسم > 50% من المدى الكامل للشمعة واتجاه الجسم يتفق مع الإشارة. الشرط الثالث: اجتياز مرشح التذبذب، أي volatility[0] > VolatilityThreshold * pointValue مع مدخل العتبة عند 0.3 نقطة افتراضياً. الشرط الرابع: اشتعال النظام الفرعي RSI إما بتقاطع صاعد خارج عتبة 30 (rsiBuffer[1] < 30 && rsiBuffer[0] > 30) أو بسلسلة صاعدة من ثلاث شموع مع rsiBuffer[0] في منطقة 30 إلى 50. جانب البيع يعكس البوابة بخط الـ70 التشبع الشرائي وممر السقوط المتماثل 50 إلى 70.

إن "المتوسط المتحرك التكيفي" الذي تعلنه لوحة المعطيات هو SMA محدود النافذة بطول نافذة متقلب. تحسب CalculateAdaptiveVolatility مجموع مدى (high-low) على نافذة تساوي max(AdaptiveMA_Period, 10) شموع وتخزن النتيجة في volatility[0]. ثم تأخذ متوسط آخر 20 مدخل في ذلك المخزن لإنشاء خط أساس. تُغذّى النسبة volRatio = volatility[0] / avgVolatility في نافذة الفترة التالية: adaptivePeriod = base / (1 + (volRatio - 1) * 2.0) مع مضاعف الحساسية 2.0 معروض كمدخل AdaptiveMA_Sensitivity. تُقيَّد النتيجة بنطاق 5 إلى 50 شمعة. تأخذ CalculateAdaptiveMA بعد ذلك مجموع آخر إغلاق لـ adaptivePeriod شموع وتقسم لكتابة adaptiveMA[0]. لا توجد نسبة كوفمان للكفاءة، ولا ثابت تنعيم، ولا حد تعاودي — تعيد الرياضيات حساب فترة من نسبة التذبذب ويستخدم المرور التالي تلك الفترة كنافذة SMA ثابتة. السوق الأهدأ يطيل النافذة؛ السوق الأكثر تقطعاً يقصرها.

يُبنى هيكن أشي بالكود. تمشي CalculateHeikenAshi على آخر 20 شمعة وتكتب haClose[i] = (open + high + low + close) / 4 لكل شمعة. تبدأ ها المفتوحة التعاودة ببذرة (open + close) / 2 للشمعة الحالية، ولكل شمعة أقدم تأخذ متوسط الها المفتوحة السابقة مع الها إغلاق السابقة — لتنتشر البذرة للخلف عبر المخزن. أما ها هاي وها لو فيأخذان الحد الأقصى والأدنى من هاي ولو الأصليين للشمعة مع الها المفتوحة والإغلاق الحالية. مقبض المؤشر الأصلي الوحيد الذي يطلبه الإكسبرت من MetaTrader هو iRSI(_Symbol, PERIOD_CURRENT, 14, PRICE_CLOSE). تستدعي CalculateRSI CopyBuffer على ذلك المقبض وتنقل بالضبط ثلاث شموع إلى rsiBuffer، وهو المخزن الوحيد الذي تقرأه GetBuySignal وGetSellSignal وGetConfirmationSignal أبداً. يقرأ فرع التباعد 5 شموع في GetConfirmationSignal من rsiBuffer[1] وrsiBuffer[5] مباشرة ويُرجع false إذا كان المخزن أقل من 10 عناصر — حارس للإحماء الجزئي للشمعة أو إعادة الالتصاق بعد انقطاع الشبكة.

GetConfirmationSignal بوابة منفصلة بأربعة أوضاع. عند تمكين كل من RSI_UseCrossoverSignals وRSI_UseDivergenceSignals، يتطلب التأكيد إما تقاطع 30/70 حديث أو تباعد سعر/RSI على 5 شموع. التقاطع وحده يضيق الفحص إلى التقاطع فقط. التباعد وحده يضيقه إلى التباعد فقط. تعطيل كليهما يُسقط الدالة إلى فحص بسيط "RSI بين 30 و70". إن volumeConfirm الذي يذكرة المصدر عنصر نائب يُرجع true؛ يشير التعليق داخل المصدر إلى أن EURUSD للتجزئة نادراً ما يحتوي على بيانات حجم تكة موثوقة، فلا يشترطها الإكسبرت. يستخدم RequireToCheckForConfirmationBeforeAdding نفس قيمة إرجاع التأكيد لقفل pyramiding — عندما تكون أي مراكز مفتوحة، يجب أن يكون التأكيد المباشر true، وإلا تُمنع الإدخالات الجديدة بغض النظر عن مدى قوة الإشارة الأولية.

ثلاث مرشحات مسبقة تحظر الإدخالات قبل أن يعمل مسار الإشارة. يفحص IsMarketConditionsOK السبريد مقابل MaxSpread (5 نقاط) لحظر ناعم، وسبريد > 2 * MaxSpread لحظر صلب لارتفاع متطرف، والسحب = (الرصيد - الحقوق) / الرصيد * 100 مقابل MaxDrawdownPercent (10%)، وعدد المراكز المفتوحة مقابل MaxOpenTrades. تمشي IsPositionManagementOK بكل مركز مفتوح بسحر هذا الإكسبرت، وتحسب الربح لكل تذكرة بالنقاط، وتتطلب أن تتجاوز كل المراكز MinProfitInPointsPerTradeToAdd (20 نقطة افتراضياً) لتمرير pyramiding. تطبق IsOptimalTradingSession نافذة لندن 8-16 / نيويورك 13-21 / التداخل 13-16 بتوقيت GMT — لكن فقط عند UseSessionFilter = true، وهو ليس الافتراضي. يتجاوز Strategy Tester المرشح عبر دائرة isTester = MQLInfoInteger(MQL_TESTER) المختصرة في رأس الدالة، لذا تعمل الاختبارات الخلفية على كامل الأسبوع بصرف النظر عن نافذة الجلسة المكونة.

مشاية الأرباح داخل ManageDynamicStopLoss هي المسار الوحيد الذي يحرك وقف الخسارة لتذكرة مفتوحة. كل تكة، ولكل تذكرة مفتوحة بسحر 22212044، تقرأ الدالة الربح الحالي بالنقاط، وتحديث lastHighestProfit[positionIndex] إذا كان القراءة الحالية تتغلب على العلامة المائية المخزنة، وتحسب lockSteps = floor(العلامة المائية / 30) وlockProfitPoints = lockSteps * 30 - 15. يطبق الإيقاف الجديد فقط إذا كان أضيق من الحالي — يجب أن يكون newSL للشراء أعلى من الوقف الحالي، وأن يكون newSL للبيع أقل منه. المشاية تشدد فقط؛ ولا ترخي أبداً وقفاً شدته بالفعل. يجلس وقف الخسارة الأولي 50 نقطة وجني الأرباح 100 نقطة على تذكرة الأمر عند الفتح ولا تعدلهما المشاية حتى الوصول إلى عتبة العلامة المائية (30 نقطة من الربح غير المحقق).

Pyramiding نحو الفائزين هي سياسة تحديد حجم المركز. يفتح المركز الأول في اتجاه بصرف النظر عن ربحية الاتجاه الحالية. تفتح المراكز اللاحقة في نفس الاتجاه فقط إذا كانت كل المراكز القائمة في ذلك الاتجاه مربحة بما لا يقل عن MinProfitInPointsPerTradeToAdd (20 نقطة). يُفرض MaxOpenTrades = 5 لكل اتجاه — يمكن للحساب حمل ما يصل إلى 10 تذاكر في الذروة: 5 شراء و5 بيع. تمشي IsPositionDirectionProfitable بالمراكز في نفس الاتجاه فقط؛ ربحية الاتجاه المختلط ليست جزءاً من الاختبار. سلة شراء مربحة لا تسمح للإكسبرت بالإضافة إلى سلة بيع خاسرة، والعكس صحيح.

ثلاث مساعدين لإعادة المحاولة يُغلِّفون عمليات الأوامر: TryClose_EX12044 وTryClosePartial_EX12044 وTryModify_EX12044. تعمل كل منها حلقة 3 محاولات على REQUOTE أو TIMEOUT أو PRICE_OFF أو PRICE_CHANGED، بسكون 200 مللي ثانية بين المحاولات لمساري الإغلاق والإغلاق الجزئي و100 مللي ثانية لمسار التعديل. تتحقق الثلاثة من رمز نتيجة الإرجاع مقابل TRADE_RETCODE_DONE وTRADE_RETCODE_DONE_PARTIAL قبل إرجاع النجاح. يُستدعى TryModify_EX12044 من ManageDynamicStopLoss؛ مساعدا الإغلاق معرَّفان لكن لا يُستدعيان حالياً من المسار المباشر لهذا البناء، وهما حاضران للمستدعيات التي تريد ربط إغلاق السلة أو الإغلاق الجزئي على مستوى استدعاء الدالة.

يُقيَّد تسجيل التصحيح في كل طبقة. يستخدم كل من UpdateAdaptiveIndicators وCalculateRSI MathRand()%100 لقفل مخرجات Print() عند حوالي 1% من التكات. يطلق عداد تكات منفصل في OnTick مسح CheckAdditionalTradesConditions التشخيصي الكامل كل 50 تكة عند تشغيل EnableAdditionalPositionManagementDebug أو EnableDebug، ليُلقي بالحالة الكاملة — المراكز والإشارات والتأكيد وظروف السوق والجلسة — إلى تبويب Experts. تتحكم أعلام التصحيح الخمسة (EnableDebug وEnableRSI_Debug وEnableDynamicProfitManagementDebug وEnableAdditionalPositionManagementDebug وEnableIndicatorDebug) في نظامها الفرعي الخاص؛ EnableDebug هو المفتاح الرئيسي "أرني كل شيء" الواسع، والآخرون محددة النطاق.

في النشر يستهدف الإكسبرت EURUSD على M5 أو H1 برصيد بداية موصى به 100 دولار وتدرج حجم 0.01 لوت. غطاء MaxSpread عند 5 نقاط هو القيد الملزم على اختيار الوسيط: وسيط dealing-desk بفروق 8 نقطة حول الـrollover سيحظر معظم الإدخالات، لذا فإن النشر العملي هو وسيط سبريد خام بزمن استجابة أقل من 100 مللي ثانية. تقرأ الإعدادات الافتراضية أيضاً في رأس الملف: "Suggested symbols: EURUSD (portable to other FX majors)" و"Suggested timeframe: M5 (works M5-H1)". فوق H1 تتوقف نافذة المتوسط المحدود بالتذبذب عن الاستجابة بشكل مفيد لتغيرات المدى داخل اليوم، وتحت M5 يفشل غطاء السبريد 5 نقاط في معظم التكات خلال تمدد سبريد الـrollover. M5 هو المكان الذي ضُبطت فيه ملفات .set وحيث تفترض الاختبارات الخلفية الموثقة في تعليقات رأس .mq5.

تفاصيل الاستراتيجية

ينقسم معالج التكات في EX12044 إلى مرحلة صيانة لكل تكة ومرحلة قرار لكل شمعة جديدة. في كل تكة يستدعي UpdateAdaptiveIndicators تحديث المخازن المؤقتة الأربعة المشتقة (التذبذب، المتوسط المحدود النافذة، RSI، هيكن أشي)، وتمشي ManagePositions بالمراكز المفتوحة عبر مشاية الأرباح القائمة على القفل التصاعدي. تشتعل CheckForEntry فقط عند شمعة جديدة وتربط ثلاث مرشحات مسبقة (IsMarketConditionsOK للسبريد/السحب/عدد المراكز، IsPositionManagementOK لأرضية pyramiding عند 20 نقطة، IsOptimalTradingSession لنافذة لندن/نيويورك) قبل أن تطلب من GetBuySignal وGetSellSignal إجابة بوابة الشروط الأربعة ومن GetConfirmationSignal التأكيد المستقل لـRSI. سقف 1 صفقة لكل شمعة جديد هيكلي عبر بوابة الشمعة الجديدة؛ يُفرض سقف 5 صفقات لكل اتجاه داخل CheckForEntry مقابل مدخل MaxOpenTrades. نمط مساعد إعادة المحاولة الثلاثي — TryClose_EX12044 وTryClosePartial_EX12044 وTryModify_EX12044 — يُغلِّف عمليات الأوامر في حلقات 3 محاولات بسكون 200 مللي ثانية (إغلاق) أو 100 مللي ثانية (تعديل) على REQUOTE / TIMEOUT / PRICE_OFF / PRICE_CHANGED. يُقيَّد تسجيل التصحيح في كل طبقة عبر MathRand()%100 إلى حوالي 1% من التكات، ويطلق عداد تكات منفصل تفريغ تشخيصي كامل لـCheckAdditionalTradesConditions كل 50 تكة عند تشغيل علم التصحيح المعني.

إشارة الدخول

يُطلق الشراء عندما يكون إغلاق هيكن أشي (أو السعر المباشر عند إيقاف UseHeikenAshi) فوق المتوسط المتحرك التكيفي المحدود النافذة، AND تم تسجيل تقاطع حديث مع المتوسط أو جسم HA قوي للتو، AND يتجاوز مدى الشمعة عتبة التذبذب 0.3 نقطة، AND يكون RSI قد تجاوز صعوداً خط الـ30 التشبع البيعي أو يرتفع عبر منطقة 30–50. يُعكَس بوابة الشروط الأربعة للبيع بخط الـ70 التشبع الشرائي. GetConfirmationSignal بوابة منفصلة تتطلب تقاطع 30/70 حديث أو تباعد سعر/RSI على 5 شموع، أو — عند إيقاف كلا وضعي RSI — فحص بسيط بأن RSI بين 30 و70.

إشارة الخروج

تعمل الخروجات على ثلاث سكك: جني الأرباح الأولي عند 100 نقطة (1:2 نسبة مخاطرة-عائد مقابل وقف الخسارة الأولي 50 نقطة على تذكرة الأمر)، ومشاية الأرباح القائمة على القفل التصاعدي في ManageDynamicStopLoss التي تشد وقف الخسارة كل 30 نقطة من ذروة الربح غير المحقق (ناقصاً عازل 15 نقطة) وتشدد فقط، ومساعدات إعادة المحاولة القياسية TryClose/Modify. لا يوجد خروج من انعكاس الإشارة في مسار القرار المباشر — الخروج مدفوع بـTP أو SL، أو بالقفل التصاعدي.

وقف الخسارة

وقف الخسارة الأولي 50 نقطة على تذكرة الأمر لكل من الشراء والبيع. تشد مشاية الأرباح القائمة على القفل التصاعدي في ManageDynamicStopLoss هذا الوقف كل 30 نقطة من ذروة الربح غير المحقق (ناقص عازل 15 نقطة) وتشدد فقط — ولا ترخي أبداً وقفاً شدته بالفعل. يحظر غطاء السحب على مستوى الحساب بنسبة 10% في IsMarketConditionsOK الإدخالات الجديدة بمجرد انتهاكه.

جني الأرباح

جني الأرباح 100 نقطة على تذكرة الأمر — 1:2 بالضبط مقابل وقف الخسارة الأولي 50 نقطة. يجلس جني الأرباح على تذكرة الأمر بدلاً من أن يكون خروجاً منفصلاً، لذا ينفذ كإغلاق تذكرة واحدة عند الوسيط. مشاية الأرباح هي المسار الوحيد الذي يحقق به الإكسبرت ربحاً بسعر مختلف عن جني الأرباح الأولي — يحصل الفائزون الذين يتحركون أكثر من 30 نقطة على إيقافاتهم مشدودة لقفل 15 نقطة تحت كل خطوة 30 نقطة.

الأنسب لـ

EURUSD على M5 أو H1 فقط — لن يصمد غطاء السبريد 5 نقاط أمام سلبي M1 على وسيط يتسع، وفوق H1 تتوقف نافذة المتوسط المحدود بالتذبذب عن الاستجابة بشكل مفيد لتغيرات المدى داخل اليوم. الحد الأدنى الموصى به للرصيد 100 دولار مع تدرج 0.01 لوت. اقرنه بوسيط ECN سبريد خام (IC Markets أو Tickmill أو Vantage) بجولة تكة-إلى-تداول أقل من 100 مللي ثانية؛ وسيط dealing-desk بفروق 8+ نقطة حول الـrollover سيحظر معظم الإدخالات.

منطق الاستراتيجية

Pipsgrowth EX12044 MultiIndicatorConfluence — تحليل منطق الاستراتيجية (من كود .mq5)

العائلة: MultiIndicatorConfluence الماجيك: 22212044 الإصدار: 2.00

الوصف: Adaptive forex scalping EA combining adaptive moving average, RSI crossover/divergence, Heiken Ashi, and volatility filter for entry signals, with dynamic profit locking and additional position management. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

المؤشرات:

  • مؤشرات قياسية

الدوال الرئيسية:

  • UpdateAdaptiveIndicators()
  • CalculateAdaptiveVolatility()
  • CalculateAdaptiveMA()
  • CalculateRSI()
  • CalculateHeikenAshi()
  • CheckForEntry()
  • GetBuySignal()
  • GetSellSignal()
  • GetConfirmationSignal()
  • IsMarketConditionsOK()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX12044 MultiIndicatorConfluence — Execution Flow (from source analysis)
// Family: MultiIndicatorConfluence
// Adaptive forex scalping EA combining adaptive moving average, RSI crossover/divergence, Heiken Ashi, and volatility filter for entry signals, with dynamic profit locking and additional position management. 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)

ملف التحسين

الوسطاء المُحسّنون:
ExnessIC Markets
الرموز المُحسّنة:
EURUSD
الأطر الزمنية المُحسّنة:
M5H1

كيفية تثبيت الإكسبرت على MT5

  1. 1حمّل ملف .mq5 بالضغط على زر التحميل أعلاه
  2. 2افتح برنامج MetaTrader 5 على حاسوبك
  3. 3من القائمة العلوية اختر File → Open Data Folder
  4. 4انتقل إلى مجلد MQL5 → Experts والصق الملف هناك
  5. 5في MT5، انقر بالزر الأيمن على Expert Advisors في لوحة Navigator → Refresh
  6. 6اسحب الإكسبرت على رسم بياني يطابق الإطار الزمني الموصى به
  7. 7هيّء المعاملات وفقاً للجدول في هذه الصفحة
  8. 8فعّل Allow Algo Trading واضغط OK

معاملات الإكسبرت

المعاملالافتراضيالوصف
EnableTradingtrueEnable trading
EnableDebugfalseEnable debug logging
AllowBuystrueAllow opening buy orders
AllowSellstrueAllow opening sell orders
LotSize1.0Fixed lot size
MagicNumber22212044Magic number
InpTradeComment"Psgrowth.com Expert_12044"Trade comment
Slippage3Slippage in points
MaxSpread5.0Maximum spread in points
MaxDrawdownPercent10.0Maximum drawdown percentage
MaxRiskPerTrade2.0Maximum risk per trade %
MaxOpenTrades5Maximum open trades
StopLossPoints50.0Stop loss in points
TakeProfitPoints100.0Take profit in points
EnableDynamicLockProfittrueEnable dynamic profit locking
LockProfitEvery_X_Points30.0Step: every X points profit
LockMinusBuffer15.0Lock profit minus X point buffer
EnableDynamicProfitManagementDebugfalseEnable debug logging for dynamic profit management
AllowOnlyProfitableAdditionstrueOnly allow adding positions if existing trades are profitable
MinProfitInPointsPerTradeToAdd20.0Minimum profit required per existing trade in points
RequireToCheckForConfirmationBeforeAddingtrueRequire to check active confirmation before adding new positions
EnableAdditionalPositionManagementDebugfalseEnable debug logging for additional position management
AdaptiveMA_Period14Adaptive MA base period
AdaptiveMA_Sensitivity2.0Adaptive sensitivity multiplier
RSI_Period14RSI period
RSI_Oversold30.0RSI oversold level
RSI_Overbought70.0RSI overbought level
RSI_UseCrossoverSignalstrueUse RSI crossover signals
RSI_UseDivergenceSignalsfalseUse RSI divergence signals
EnableRSI_DebugfalseEnable RSI debug logging
UseHeikenAshitrueUse Heiken Ashi for smoother signals
UseVolatilityFiltertrueUse volatility filter for entries
VolatilityThreshold0.3Minimum volatility threshold in points
EnableIndicatorDebugfalseEnable indicator debug logging
UseSessionFilterfalseUse trading session filter
TradeLondonSessiontrueTrade during London session (8-16 GMT)
TradeNewYorkSessiontrueTrade during New York session (13-21 GMT)
TradeOverlapSessiontrueTrade during London/NY overlap (13-16 GMT)
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX12044.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX12044 EURUSD_v1_0_1 — adaptive scalping EA with AMA, RSI, Heiken Ashi and volatility filter, full 12-layer stack."

#include <Trade/Trade.mqh>
#include <Trade/PositionInfo.mqh>
#include <Trade/AccountInfo.mqh>

//--- Global objects
CTrade         trade;
CPositionInfo  position;
CAccountInfo   account;

//--- Input parameters
input group "=== BASIC SETTINGS ==="
input bool     EnableTrading = true;                    // Enable trading
input bool     EnableDebug = false;                     // Enable debug logging
input bool     AllowBuys = true;                        // Allow opening buy orders
input bool     AllowSells = true;                       // Allow opening sell orders
input double   LotSize = 1.0;                          // Fixed lot size
input int      MagicNumber = 22212044;                 // Magic number
input string   InpTradeComment = "Psgrowth.com Expert_12044"; // Trade comment
input int      Slippage = 3;                           // Slippage in points

input group "=== RISK MANAGEMENT ==="
input double   MaxSpread = 5.0;                        // Maximum spread in points
input double   MaxDrawdownPercent = 10.0;              // Maximum drawdown percentage
input double   MaxRiskPerTrade = 2.0;                  // Maximum risk per trade %
input int      MaxOpenTrades = 5;                      // Maximum open trades
input double   StopLossPoints = 50.0;                 // Stop loss in points
input double   TakeProfitPoints = 100.0;               // Take profit in points

input group "=== DYNAMIC PROFIT MANAGEMENT ==="
input bool     EnableDynamicLockProfit = true;         // Enable dynamic profit locking
input double   LockProfitEvery_X_Points = 30.0;        // Step: every X points profit
input double   LockMinusBuffer = 15.0;                 // Lock profit minus X point buffer
input bool     EnableDynamicProfitManagementDebug = false; // Enable debug logging for dynamic profit management

input group "=== Additional POSITION MANAGEMENT ==="
input bool     AllowOnlyProfitableAdditions = true;    // Only allow adding positions if existing trades are profitable
input double   MinProfitInPointsPerTradeToAdd = 20.0;  // Minimum profit required per existing trade in points
input bool     RequireToCheckForConfirmationBeforeAdding = true; // Require to check active confirmation before adding new positions
input bool     EnableAdditionalPositionManagementDebug = false; // Enable debug logging for additional position management

input group "=== ADAPTIVE INDICATORS ==="
input int      AdaptiveMA_Period = 14;                 // Adaptive MA base period
input double   AdaptiveMA_Sensitivity = 2.0;           // Adaptive sensitivity multiplier

input group "=== RSI SETTINGS (V1.1) ==="
input int      RSI_Period = 14;                        // RSI period
input double   RSI_Oversold = 30.0;                    // RSI oversold level
input double   RSI_Overbought = 70.0;                  // RSI overbought level
input bool     RSI_UseCrossoverSignals = true;         // Use RSI crossover signals
input bool     RSI_UseDivergenceSignals = false;       // Use RSI divergence signals
input bool     EnableRSI_Debug = false;                // Enable RSI debug logging

input group "=== ADDITIONAL INDICATORS ==="
input bool     UseHeikenAshi = true;                   // Use Heiken Ashi for smoother signals

الكود المصدري الكامل متاح عند التحميل

لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.

الوسوم:ex12044multiindicatorconfluencepipsgrowthfreemt5eurusd

تحذير صريح: لأغراض تعليمية فقط

تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.

وسطاء موصى بهم لهذا الإكسبرت

هذه الروبوتات تعمل على MT5 — استخدم وسيطاً موثوقاً بتنفيذ سريع وسبريد منخفض

مجتمع المستخدمين

سجّل دخولك للمشاركةتسجيل الدخول

لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.

اسم الملفPipsgrowth_com_EX12044.mq5
حجم الملف56.0 KB
الإصدارv2.00
PlatformMetaTrader 5
نوع الملف.mq5 Source
الاستراتيجيةأخرى
المخاطرةمخاطرة متوسطة
الأطر الزمنية
M5H1
أزواج العملات
EURUSD
الحد الأدنى للإيداع$100