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

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

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

Pipsgrowth EX12009 MultiIndicatorConfluence — Dual-MACD plus Stochastic confluence EA. A fast MACD catches pullback crossovers while a slow MACD confirms the higher-t. إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

Pipsgrowth EX12009 يشغّل إطارين زمنيين لمؤشر MACD ومؤشر ستوكاستيك بالتوازي على نفس شارت XAUUSD M5، ولا يفتح صفقة إلا عندما تتفق المؤشرات الثلاثة معاً. يحدد الـ MACD البطيء (34, 144) الاتجاه العام للترند؛ ويُستخدم الـ MACD السريع (13, 21) كمقياس للارتداد؛ ويؤكد الستوكاستيك (7, 3, 3, SMA, STO_LOWHIGH) نقطة الانعكاس. دالة CheckSignal() هي المكان الوحيد الذي تُتخذ فيه قرارات الدخول، وتعمل مرة واحدة لكل شمعة مغلقة من خلال بوابة static datetime lastBar مع iTime، فلا يعيد الـ EA التقييم داخل الشمعة الواحدة.

تتطلب إشارة الشراء تحقق خمسة شروط في الشمعة نفسها: أن يكون الـ MACD البطيء موجباً (M2 > 0، أي أن الترند على الإطار الأعلى صاعد)، وأن يكون الـ MACD السريع سالباً (M1 < 0، أي أن السعر ارتد تحت خط الصفر للـ MACD السريع)، وأن يكون خط الستوكاستيك الرئيسي في منطقة تشبع بيعي تحت 20، وأن يتقاطع الستوكاستيك صعوداً مع خط الإشارة (الرئيسي في الشمعة 1 فوق الإشارة في الشمعة 1، مع كون الرئيسي في الشمعة 2 عند أو تحت الإشارة في الشمعة 2). تعكس إشارة البيع هذه الشروط معكوسة: MACD بطيء سالب، MACD سريع موجب، ستوكاستيك رئيسي فوق 80، وتقاطع هبوطي مع خط الإشارة. لا يوجد فلتر ADX، ولا فلتر حجم، ولا تأكيد على إطار زمني أعلى — الدخول هو اتفاق تقني بحت بين ثلاثة مؤشرات.

تحديد حجم الصفقة مبني على نسبة المخاطرة. دالة CalculateLotSize() تأخذ قيمة التيك وحجم التيك والبوينت من الوسيط، وتحسب riskPerLot = stopLossPoints * (tickValue / (tickSize / point))، ثم تقسم balance * riskPercent على ذلك، وتُقرّب الناتج إلى LotsStep للأسفل، وتُقصّره ضمن حدود الحد الأدنى والأعلى للرمز. مع الإعدادات الافتراضية (مخاطرة 1% ووقف 400 نقطة على حساب XAUUSD بقيمة 1,000 دولار) يصبح حجم اللوت تقريباً 0.02. ضبط InpRiskPercent = 0 يُفعّل اللوط الثابت InpFixedLot = 0.01. هذا الـ EA يخاطر بـ 1% من الرصيد افتراضياً — أكثر تحفظاً من نسبة 2% الشائعة في عائلة EX10 — ووقف 400 نقطة على الذهب يعني أن كل صفقة خاسرة تُكلّف حوالي 0.80 دولار لكل 0.01 لوط.

وقف الخسارة ثابت عند InpStopLoss = 400 نقطة (4.00 وحدة سعر على XAUUSD) وجني الأرباح عند InpTakeProfit = 1200 نقطة (12.00 وحدة سعر)، ما يعطي نسبة مخاطرة إلى عائد 1:3 على الأمر الأولي. الإعداد الافتراضي هو بذلك تكوين 'اترك الرابحين يركضون': الـ EA يفترض أسوأ حالة 0.80 دولار وأفضل حالة 2.40 دولار على 0.01 لوط. يُطبَّق الوقف والهدف على كل أمر عند الفتح من خلال trade.Buy(lot, _Symbol, ask, sl, tp, comment) وtrade.Sell(lot, _Symbol, bid, sl, tp, comment).

التريلينغ هو المكان الذي يدير فيه الـ EA الأرباح فعلياً. دالة ManageProfitLock() تعمل عند كل تيكت، وتمشي على المراكز المفتوحة بالعكس، ولكل مركز يتبع الرقم السحري للـ EA تتحقق ما إذا كان الربح العائم قد تجاوز InpTrailStart = 300 نقطة (3.00 وحدات سعر). عند تحقق ذلك، يُسحب الوقف إلى currentBid - InpTrailDistance = 150 نقطة (1.50 وحدة سعر تحت السعر). الشرط هو newSL > position.StopLoss()، فالوقف لا يتحرك إلا في اتجاه الربح — لا يتراجع أبداً. التريلينغ أمامي فقط ويُطبَّق من خلال TryModify_EX12009() التي تُعيد محاولة التعديل حتى 3 مرات بفاصل 100 مللي ثانية على رموز REQUOTE وTIMEOUT فقط — ولا تُعيد المحاولة على PRICE_CHANGED عمداً لأن التعديل بعد تغير السعر عادةً ما يكون قديماً ويجب إعادة حسابه من السعر الجديد.

الهرمة (Pyramiding) مفعّلة افتراضياً (InpEnablePyramid = true) وهي طريقة التحجيم الوحيدة للـ EA. يُسمح بحد أقصى InpMaxPositions = 3 مراكز لكل اتجاه، لكن لا يُفتح مركز جديد إلا إذا أعادت IsGridSafe() القيمة true. دالة IsGridSafe() تمشي على المراكز المفتوحة وتطلب أن يكون كل مركز قائم في نفس الاتجاه رابحاً بـ InpMinProfitPoints = 300 نقطة على الأقل (3.00 وحدات سعر على الذهب). هذه ليست شبكة — إنها 'تحجيم داخل الرابحين'. لا يمكن أبداً المتوسط على مركز خاسر. الفحص يعمل عند كل شمعة إشارة، فإذا كان المركز تحت الماء، لا يقوم الـ EA بالهرمة حتى يعود إلى 300 نقطة ربح.

فلتر السبريد حده 250 نقطة (2.50 وحدة سعر على XAUUSD). للمقارنة، معظم EAs في عائلتي EX10 وEX12 تضع حد السبريد عند 60 أو 35 نقطة. الحد الواسع متعمد: سبريد الذهب على وسطاء التجزئة يتجاوز 100 نقطة بشكل روتيني عند إغلاق نيويورك وفتح الجلسة الآسيوية، والفلتر الأكثر صرامة سيحجب معظم يوم التداول. حد الـ 250 نقطة هو عتبة 'لا تتداول أثناء الأخبار'، وليس 'تداول فقط بسيولة ضيقة'. الانزلاق مضبوط على 3 نقاط، ووضع تعبئة الأمر مبرمج إلى ORDER_FILLING_FOK في OnInit — على عكس EX10013 وEX12007 اللذين يمشيان FOK > IOC > RETURN انطلاقاً من SYMBOL_FILLING_MODE، هذا الـ EA يلتزم بـ FOK فقط.

المساعدات TryClose_EX12009 وTryClosePartial_EX12009 وTryModify_EX12009 كلها تُعيد المحاولة حتى 3 مرات بفاصل 200 مللي ثانية (إغلاق) و100 مللي ثانية (تعديل) على رموز REQUOTE وTIMEOUT وPRICE_OFF وPRICE_CHANGED للإغلاق، لكن مساعد التعديل يُعيد المحاولة فقط على REQUOTE وTIMEOUT. الملف نظيف من أي حالة إضافية: لا يوجد مسح OnTradeTransaction لتاريخ الصفقات، ولا حدود خسارة يومية أو أسبوعية، ولا سقف رأسمال، ولا فلتر جلسة، ولا تعتيم أخبار، ولا مصنف ترند. دالة CountPositions() ذات المواقع الخمسة تعدّ ببساطة صفقات الشراء والبيع حسب الرقم السحري.

يعلن الهيدر '12 طبقة: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester'. من بينها، SIGNAL وENTRY وMANAGE وRISK وSIZING وSCALING فقط هي المنفّذة فعلياً في الكود. لا يوجد مصنف ترند، ولا طبقة تأكيد منفصلة beyond تقاطع الستوكاستيك، ولا سقف رأسمال، ولا تعتيم أخبار، ولا دالة OnTester(). صياغة '12 طبقة' هي كلام طموح، وليست وصفاً لسلوك التشغيل. على من يشغّل مُحسّن MT5 أن يتوقع اختيار OnTester() الافتراضي (أقصى قيمة مخصصة خام)، وليس صيغة (net * pf) / (1 + dd) الشائعة في EAs أخرى من العائلة.

ما يمكن توقعه في الباك تيست على XAUUSD M5: الـ EA يأخذ صفقات قليلة نسبياً — اتفاق الشروط الخمسة على الذهب نادر — وعندما تحدث، نسبة 1:3 تعني أن الرابح أكبر بثلاث مرات من الخاسر. التريلينغ يبدأ عند 3 وحدات سعر ربح، وهي بعيدة بما يكفي عن الوقف البالغ 4 وحدات حتى لا يوقف ارتداد عادي المركز. الهرمة على الرابح ستضيف طبقة أو اثنتين في ترند قوي، كل طبقة منها تتطلب أن تكون الطبقات القائمة رابحة بـ 300 نقطة قبل الإضافة. يجب أن تكون الانخفاضات محدودة بمخاطرة 1% لكل صفقة مضروبة في 3 مراكز متزامنة كحد أقصى، لذا فإن أسوأ حالة اندفاع ضد الطبقات الثلاث هي حوالي 3% من الرصيد.

هذا EA نظيف ومنخفض التعقيد لقيادة الترند بالارتداد مصمم لـ XAUUSD M5. لا يدّعي أنه مفاهيم smart money أو order blocks أو ذكاء اصطناعي؛ إنه اتفاق تقني بين ثلاثة مؤشرات مع إدارة مخاطرة منضبطة، ونسبة 1:3، ووقف تريلينغ أمامي فقط، وقاعدة تحجيم داخل الرابحين بثلاث طبقات. مناسب للمتداولين الذين يريدون دخول ارتداد واضح وحتمي على الذهب مع تحجيم مدمج وحد سبريد واسع بما يكفي للتداول فعلياً على وسطاء التجزئة بدلاً من التوقف طوال اليوم.

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

عند كل تيكت يفحص الـ EA السبريد مقابل حد 250 نقطة ويُشغّل ManageProfitLock() لسحب الوقف على المراكز الرابحة؛ عند شمعة جديدة تستدعي CheckSignal() آخر شمعتين مغلقتين من MACD البطيء (34, 144) وMACD السريع (13, 21) والستوكاستيك (7, 3, 3)، ولا تنطلق إلا عندما تتفق المؤشرات الثلاثة. تمر الأوامر الجديدة بـ CalculateLotSize() لتحديد حجم الصفقة بـ 1% من الرصيد، وتُحجَّم المراكز القائمة عبر IsGridSafe() فقط التي تطلب أن يكون كل مركز في نفس الاتجاه رابحاً بـ 300 نقطة على الأقل — فلا متوسط في الخاسر أبداً. نسبة 1:3 ثابتة عند الفتح؛ لا يتحرك إلا الوقف بعد ذلك، وإلى الأمام فقط. لا يوجد مصنف ترند، ولا فلتر جلسة، ولا تعتيم أخبار، ولا سقف خسارة يومي، ولا سقف رأسمال — الاستراتيجية اتفاق خالص بين ثلاثة مؤشرات بلا أي بوابات إضافية.

إشارة الدخول

تتطلب صفقات الشراء أن يكون الـ MACD البطيء (34, 144) موجباً (ترند الإطار الأعلى صاعد)، وأن يكون الـ MACD السريع (13, 21) سالباً (السعر ارتد تحت خط الصفر السريع)، وأن يكون خط الستوكاستيك الرئيسي في تشبع بيعي تحت 20، وأن يحدث تقاطع صعودي بين الرئيسي والإشارة في الشمعة نفسها. تعكس صفقات البيع هذه الشروط معكوسة: MACD بطيء سالب، MACD سريع موجب، ستوكاستيك رئيسي فوق 80، وتقاطع هبوطي. تُقيَّم الإشارات مرة واحدة لكل شمعة مغلقة — CheckSignal() لا يُعاد تشغيلها داخل الشمعة.

إشارة الخروج

لا يوجد خروج بوقت ثابت، ولا خروج بانعكاس الإشارة، ولا إغلاق لمركز معاكس — يعتمد الـ EA على تحقق جني الأرباح الأولي عند 1200 نقطة، أو تحقق وقف الخسارة عند 400 نقطة، أو قيام التريلينغ بسحب المركز إلى نقطة التعادل فأكثر. التريلينغ لا يتفعّل إلا بعد 300 نقطة ربح عائم ولا يتراجع أبداً. الهرمة ليست آلية خروج؛ تُغلق المراكز فردياً وفق وقف الخسارة أو جني الأرباح أو التريلينغ.

وقف الخسارة

كل صفقة تُفتح بوقف خسارة ثابت 400 نقطة (4.00 وحدات سعر على XAUUSD)، يُطبَّق عند الفتح عبر trade.Buy/Sell ولا يتوسّع أبداً. لا يتحرك الوقف إلا إلى الأمام عبر منطق التريلينغ بعد أن يحقق المركز 300 نقطة ربح عائم، حيث يُسحب إلى 150 نقطة تحت السعر ولا يتراجع. لا يوجد سقف تراجع على مستوى الحساب ككل.

جني الأرباح

جني الأرباح ثابت عند 1200 نقطة لكل مركز (12.00 وحدة سعر على XAUUSD، 120 نقطة بمصطلحات MT4)، ما يعطي نسبة مخاطرة إلى عائد 1:3 مقابل وقف 400 نقطة. يُضبط الهدف عند فتح الأمر عبر trade.Buy/Sell ولا يُعدَّل أو يُتابَع. في الترندات القوية، قد يُغلق وقف التريلينغ بعض المراكز قبل الوصول إلى الهدف، لكن التوقع الافتراضي هو أن معظم المراكز الرابحة تصل إلى هدف 1:3 قبل أن يتدخل التريلينغ.

الأنسب لـ

الحد الأدنى الموصى به للرصيد: 100 دولار (مع العودة إلى 0.01 لوط ثابت)، أو 500 دولار لاستيعاب أسوأ حالة تراجع 3% من هرمة ثلاثية داخل الرابحين. حد سبريد 250 نقطة (2.50 دولار على XAUUSD) وتحمل انزلاق 3 نقطة يجعلان هذا الـ EA متوافقاً مع معظم وسطاء التجزئة ECN/STP بشرط أن تبقى العمولات دون 7 دولارات لكل لوط ذهاباً وإياباً. الأفضل تشغيله على XAUUSD M5 خلال تداخل لندن ونيويورك (13:00–17:00 UTC بتوقيت السيرفر) عندما تكون قراءات تشبع الستوكاستيك عند 20/80 أكثر احتمالاً لإنتاج انعكاسات حقيقية؛ حد السبريد الواسع يعني أن الـ EA يمكن أن يعمل أيضاً خلال الجلسة الآسيوية دون أن يُصفى، مع أن تكرار الصفقات سينخفض. تحقق من أن الوسيط يدعم ORDER_FILLING_FOK (معظم حسابات ECN تدعمه).

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

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

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

الوصف: Dual-MACD plus Stochastic confluence EA. A fast MACD catches pullback crossovers while a slow MACD confirms the higher-timeframe trend. Stochastic must be oversold/overbought and cross its signal line. Risk-based sizing, trailing, safe pyramiding and spread filter. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

المؤشرات:

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

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

  • CheckSignal()
  • OpenBuy()
  • OpenSell()
  • ManageProfitLock()
  • IsGridSafe()
  • CalculateLotSize()
  • CountPositions()
  • TryClose_EX12009()
  • TryClosePartial_EX12009()
  • TryModify_EX12009()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX12009 MultiIndicatorConfluence — Execution Flow (from source analysis)
// Family: MultiIndicatorConfluence
// Dual-MACD plus Stochastic confluence EA. A fast MACD catches pullback crossovers while a slow MACD confirms the higher-timeframe trend. Stochastic must be oversold/overbought and cross its signal line. Risk-based sizing, trailing, safe pyramiding and spread filter. 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
الرموز المُحسّنة:
XAUUSD
الأطر الزمنية المُحسّنة:
M5

كيفية تثبيت الإكسبرت على 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

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

المعاملالافتراضيالوصف
InpM1Fast13MACD 1 Fast
InpM1Slow21MACD 1 Slow
InpM2Fast34MACD 2 Fast (Filter)
InpM2Slow144MACD 2 Slow (Filter)
InpStoK7Stochastic K
InpStoD3Stochastic D
InpStoSlow3Stochastic Slowing
InpRiskPercent1.0Risk Percent per Trade
InpFixedLot0.01Fixed Lot (if Risk=0)
InpStopLoss400Stop Loss (points)
InpTakeProfit1200Take Profit (points)
InpMagicNumber22212009Magic Number
InpTradeComment"Psgrowth.com Expert_12009"Trade Comment
InpMaxSpread250Max Spread (points)
InpSlippage3Slippage
InpEnableTrailtrueEnable Trailing Stop
InpTrailStart300Trail Start Distance (points)
InpTrailStep100Trail Step (points)
InpTrailDistance150Distance behind price (points)
InpEnablePyramidtrueEnable Pyramiding
InpMaxPositions3Max Open Positions
InpMinProfitPoints300Min Profit (points) to Add Next
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX12009.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX12009 MACDStoch_XAUUSD_5M — dual-MACD + Stochastic confluence, full 12-layer stack."

#include <Trade\Trade.mqh>
#include <Trade\PositionInfo.mqh>
#include <Trade\SymbolInfo.mqh>
#include <Trade\AccountInfo.mqh>

CTrade         trade;
CPositionInfo  position;
CSymbolInfo    mysymbol;
CAccountInfo   account;

//--- Input Groups
input group "=== Indicator Settings ==="
input int      InpM1Fast         = 13;       // MACD 1 Fast
input int      InpM1Slow         = 21;       // MACD 1 Slow
input int      InpM2Fast         = 34;       // MACD 2 Fast (Filter)
input int      InpM2Slow         = 144;      // MACD 2 Slow (Filter)
input int      InpStoK           = 7;        // Stochastic K
input int      InpStoD           = 3;        // Stochastic D
input int      InpStoSlow        = 3;        // Stochastic Slowing

input group "=== Money Management ==="
input double   InpRiskPercent    = 1.0;      // Risk Percent per Trade
input double   InpFixedLot       = 0.01;     // Fixed Lot (if Risk=0)
input int      InpStopLoss       = 400;      // Stop Loss (points)
input int      InpTakeProfit     = 1200;     // Take Profit (points)

input group "=== Trade Management ==="
input int      InpMagicNumber    = 22212009;                      // Magic Number
input string   InpTradeComment   = "Psgrowth.com Expert_12009"; // Trade Comment
input int      InpMaxSpread      = 250;      // Max Spread (points)
input int      InpSlippage       = 3;        // Slippage

input group "=== Profit Lock / Trailing ==="
input bool     InpEnableTrail    = true;     // Enable Trailing Stop
input int      InpTrailStart     = 300;      // Trail Start Distance (points)
input int      InpTrailStep      = 100;      // Trail Step (points)
input int      InpTrailDistance  = 150;      // Distance behind price (points)

input group "=== Pyramiding / Scaling ==="
input bool     InpEnablePyramid  = true;     // Enable Pyramiding
input int      InpMaxPositions   = 3;        // Max Open Positions
input int      InpMinProfitPoints= 300;      // Min Profit (points) to Add Next

//--- Handles
int    hM1;
int    hM2;
int    hSto;

//--- Global Buffers
double bufM1[];
double bufM2[];
double bufStoM[];
double bufStoS[];

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

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

الوسوم:ex12009multiindicatorconfluencepipsgrowthfreemt5xauusd

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

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

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

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

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

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

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

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