P
PipsGrowth
شبكةمفتوح المصدر - مجاني

Pipsgrowth EX03002 Grid — إكسبرت أدفايزر شبكة

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

Pipsgrowth EX03002 Grid — Recovery grid EA for XAUUSD M5 that enters with RSI+MA trend filter, then adds martingale-scaled positions on adverse mo. إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

إكسبرت Pipsgrowth EX03002 Grid هو إكسبرت شبكي من نوع الاسترداد، مصمم حصريًا لتداول XAUUSD على الإطار الزمني M5. على عكس إكسبرات XAUUSD الأخرى التي تطارد الاختراقات أو تتداول ضد الفجوات، يعتمد هذا الإكسبرت فلسفة مختلفة: يفتح صفقة واحدة مفلترة بالاتجاه، ثم يضيف طبقات استرداد متدرجة ضد الحركة المعاكسة، ويخرج من السلة كاملة عند هدف مالي محدد بدلًا من وقف خسارة لكل صفقة على حدة.

لا تُفتح الإشارة الأولى إلا عندما يكون الحساب خاليًا من أي صفقة (PositionsTotal() == 0). يقرأ الإكسبرت قيمتين من الشمعة المغلقة السابقة (الإزاحة 1): مؤشر RSI لفترة 14، ومتوسط متحرك أسي EMA لفترة 100 على سعر الإغلاق. إشارة الشراء تنشط عند الإغلاق > EMA(100) && RSI(14) < 70، وإشارة البيع تنشط عند الشرط المعاكس الإغلاق < EMA(100) && RSI(14) > 30. حدود 70 و30 هي الحاجز الوحيد ضد التشبع — تمنع الإكسبرت من بدء صفقة جديدة في مناطق قصوى. لا توجد آلية اختراق، ولا تأكيد حجم، ولا مرشح إطار زمني أعلى.

الأمر الحاسم: الأوامر لا تحمل وقف خسارة ولا جني أرباح. تُستدعى دوال TryBuy_EX03002 وTrySell_EX03002 بالقيمتين sl=0 و tp=0. كل الخروج يمر عبر ManageBasketTP() التي تعمل عند كل تيكة. تحسب الدالة إجمالي الربح والخسارة (المحقق وغير المحقق) لجميع المراكز التي تحمل الرقم السحري 22203002، وتقارنه بهدف مالي مُشتق:

targetMoney = InpBaseLot * InpTakeProfit * (TickValue / TickSize * Point)

بالقيم الافتراضية (InpBaseLot = 0.01 و InpTakeProfit = 400)، يكون الهدف بضع دولارات فقط. فلسفة الإكسبرت هي إنهاء السلة عند أول ربح إجمالي، وليس السماح للصفقات الرابحة بالجري.

شبكة الاسترداد محجوزة خلف المفتاح InpEnableRecovery الذي يكون معطلاً افتراضيًا. في وضعه الافتراضي، يعمل EX03002 كإكسبرت اتجاه بسيط: إشارة واحدة، جني أرباح سلة، بدون توسع. عند تفعيل المفتاح، تتحول الاستراتيجية إلى شبكة مارتينغال. تتابع ManageRecovery() آخر صفقة شراء وأحدث صفقة بيع، وعند انتقال السعر بمقدار InpRecoveryStep (افتراضي 300 نقطة = 30 نقطة على وسيط 5 منازل) ضد آخر مركز، وقبل الوصول إلى InpMaxLayers (افتراضي 6)، يفتح الإكسبرت صفقة جديدة بحجم lastLot * InpMultiplier. مع InpMultiplier = 1.5، تصبح الأحجام 0.010.0150.02250.03380.05060.0759. عند الطبقة السادسة، يبلغ التعرض التراكمي نحو 0.20 لوت مقابل 0.01 لوت أساسي، أي تركيز 20× في اتجاه واحد. لكن هدف السلة لا يُعاد حسابه مع طبقات الاسترداد — يظل مرتبطًا بحساب اللوت الأساسي الأصلي.

الإطار الزمني M5 والزوج XAUUSD هما الإعدادان الوحيدان المدعومان. مرشح السبريد مضبوط على InpMaxSpread = 250 نقطة (25 نقطة على وسيط 5 منازل) — وهو تسامح واسع بشكل غير معتاد يتناسب مع سلوك الذهب في افتتاح نيويورك وأثناء الأخبار عالية التأثير. الانزلاق عند 3 نقاط، والتعبئة ORDER_FILLING_FOK. قبل إرسال الأمر، يتحقق OrderCalcMargin() من كفاية الهامش، مع ثلاث محاولات بفاصل 200 مللي ثانية عند إعادة التسعير أو انتهاء المهلة أو تغير السعر.

فلتر الجلسات مفعّل افتراضيًا (InpUseGMTSessions = true). تحظر InActiveSession_EX03002() يومي السبت والأحد تمامًا، ولا تقبل إلا جلسات لندن (7-16 بتوقيت GMT) ونيويورك (12-21 بتوقيت GMT). الفترتان تتداخلان من 12 إلى 16 GMT، وهي فترة السيولة الأعلى للذهب. تُحسب إزاحة GMT تلقائيًا عبر DetectGMTOffset_EX03002() التي تجرب قيم -12 إلى +12 وتسجل اليوم والساعة. تُستخدم هذه الدالة داخل IsSafeToTrade_EX03002()، وهي البوابة الكاملة لما قبل التداول. تفرض البوابة أيضًا أرضية لحقوق الملكية (InpEquityFloor افتراضي 0 → معطل)، وحد خسارة يومي (InpDailyLossLimit معطل)، وحد خسارة أسبوعي (InpWeeklyLossLimit معطل)، وغطاء رأس مال (InpCapitalCap معطل)، وحد 50 صفقة يومية، وفترة تهدئة بعد الخسائر المتتالية.

تراقب OnTradeTransaction() كل صفقة مغلقة تحمل الرقم السحري، وتتراكم في g_realizedToday و g_realizedWeek، وتزيد g_consecLosses عند الخسارة. بعد ثلاث خسائر متتالية (حد مبرمج يعمل حتى مع InpMaxConsecLosses = 0)، يفرض الإكسبرت تهدئة لمدة 30 دقيقة (InpCooldownMinutes) بضبط g_cooldownUntil. خلال التهدئة، ترفض IsSafeToTrade_EX03002() أي دخول جديد — لكن فحص جني أرباح السلة وتوسع شبكة الاسترداد يستمران، فيمكن إغلاق المراكز القائمة أو توسعتها.

دالة OnTester() هي (profit / maxDD) * (pf > 1 ? pf : 0)، مع بوابات صارمة: maxDD > 0 و trades >= 10. الصيغة تعاقب على السحب خطيًا، ولا تكافئ عامل الربح إلا فوق 1؛ تحته تصفر النتيجة. يدفع المحسن نحو إعدادات تنمو بأقل سحب ممكن، وهو ما يتفق مع فلسفة جني أرباح السلة.

تنبيه على خلل في المصدر: دالة TryClose_EX03002() (المستدعاة من CloseAll()) تحتوي على استدعاء ذاتي تكراري بدلًا من trade.PositionClose(ticket). اعتمادًا على محرك مطابقة الوسيط، قد لا تنجح عملية الإغلاق فعليًا. يجب التحقق من إطلاق السلة على حساب تجريبي قبل التشغيل الحي.

الملف الشخصي الافتراضي: XAUUSD M5، تصنيف مخاطرة مرتفع جدًا، حد أدنى للإيداع 100 دولار. الرقم المنخفض ممكن لأن حجم اللوت الأساسي 0.01 وهدف السلة مبني على هذا الحجم الصغير. يجب تشغيل Strategy Tester بـ 10 صفقات على الأقل قبل الوثوق بمنحنى الأسهم، ولا يُرفع InpEnableRecovery إلا بعد التأكد من أن جني أرباح السلة يعمل على نموذج تعبئة الوسيط.

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

في كل تيكة، يقوم EX03002 بتحديث سبريد الرمز وينسحب فورًا إذا تجاوز 250 نقطة. مع شمعة جديدة، يقرأ قيم RSI(14) و EMA(100) من الشمعة المغلقة السابقة، ويفتح — فقط إذا كان الحساب خاليًا — صفقة شراء أو بيع واحدة بحجم InpBaseLot بدون أي وقف على مستوى الأمر. تفحص ManageRecovery بعد ذلك المراكز المفتوحة عند كل تيكة، وإذا كان InpEnableRecovery مفعّلاً، تضيف طبقات شراء أو بيع جديدة كل InpRecoveryStep (300 نقطة) ضد آخر مركز، مع ضرب كل حجم جديد في InpMultiplier (1.5×) حتى InpMaxLayers (6). تعمل ManageBasketTP قبل الاسترداد، وتجمع إجمالي الربح والخسارة، وتطلق CloseAll بمجرد أن تتجاوز السلة الهدف المشتق. تفرض بوابة IsSafeToTrade_EX03002 الكاملة بعد ذلك الجلسة النشطة (لندن 7-16 ∪ نيويورك 12-21 بتوقيت GMT)، وأرضية حقوق الملكية، وحدود الخسارة اليومية والأسبوعية، وغطاء رأس المال، وحد الـ 50 صفقة اليومية، وفترة تهدئة 30 دقيقة تُفعل بعد ثلاث خسائر متتالية. جميع الحمايات من نوع الغطاء معطلة افتراضيًا، لذا يتطلب التشغيل الحي تحديد أرضية حقوق الملكية على الأقل.

إشارة الدخول

لا تُفتح الإشارة الأولى إلا عندما يكون الحساب خاليًا من أي صفقة. يقرأ الإكسبرت قيم الشمعة المغلقة السابقة (الإزاحة 1) لمؤشري RSI(14) و EMA(100) على سعر الإغلاق. إشارة الشراء تنشط عند الإغلاق > EMA(100) && RSI(14) < 70، وإشارة البيع تنشط عند الإغلاق < EMA(100) && RSI(14) > 30. تُرسل الأوامر بدون وقف خسارة لكل صفقة وبدون جني أرباح لكل صفقة — تتم كل عمليات الخروج من خلال جني أرباح السلة على مستوى الإكسبرت، لا على مستوى الأمر.

إشارة الخروج

تتم جميع عمليات الخروج من خلال ManageBasketTP() التي تعمل عند كل تيكة. تجمع الدالة إجمالي الربح والخسارة (المحقق وغير المحقق) لجميع المراكز المفتوحة على الرمز بالرقم السحري 22203002، ثم تُغلق السلة كاملة عبر CloseAll() بمجرد تجاوز هذا المجموع لقيمة InpBaseLot * InpTakeProfit * (TickValue / TickSize * Point). لا توجد آلية خروج لكل صفقة، ولا نقطة تعادل، ولا تتبع — الخروج الوحيد هو تخليص السلة.

وقف الخسارة

لا تحمل الأوامر أي وقف خسارة لكل صفقة (sl=0). الحماية الوحيدة هي بوابة IsSafeToTrade إلى جانب المدخلات الاختيارية InpEquityFloor / InpDailyLossLimit / InpWeeklyLossLimit / InpCapitalCap — وجميعها معطلة افتراضيًا. يجب على المتداول تحديد أرضية حقوق الملكية على الأقل قبل التشغيل الحي؛ فحركة قوية غير متوقعة في الذهب مع شبكة الاسترداد المفعلة قد تستنزف الحساب قبل أن يُطلق جني أرباح السلة.

جني الأرباح

لا يوجد جني أرباح لكل صفقة — جني أرباح السلة هو المخرج الوحيد. يُحسب الهدف من خلال InpBaseLot * InpTakeProfit * (TickValue / TickSize * Point)، وبالقيم الافتراضية يقع في نطاق بضع دولارات، وهو مصمم لتصفير السلة عند أدنى ربح إجمالي. لا يُعاد حساب الهدف مع إضافة طبقات الاسترداد، وهذا مقصود في التصميم.

الأنسب لـ

مصمم حصريًا لـ XAUUSD على الإطار الزمني M5، ومصنّف كمخاطرة مرتفعة جدًا. الحد الأدنى الموصى به للإيداع 100 دولار لأن حجم اللوت الأساسي 0.01 وجني أرباح السلة مبني على هذا الحجم الصغير. يجب تشغيله على وسيط ECN بسبريد منخفض مع تعبئة FOK ورافعة لا تقل عن 1:100 لاستيعاب شبكة الاسترداد بست طبقات؛ حسابات اللوت الصغير (الخطوة < 0.01) غير مدعومة. يجب إبقاء فلتر جلسات لندن ونيويورك مفعّلًا ما لم يقبل المتداول سبريد 25 نقطة خلال افتتاح آسيا. تستهدف الاستراتيجية المتداولين الذين يريدون خروج سلة ثابتًا وصغيرًا مع إمكانية طبقات مارتينغال، وليس أولئك الذين يبحثون عن وقف لكل صفقة أو منطق تتبع.

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

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

العائلة: Grid الماجيك: 22203002 الإصدار: 2.00

الوصف: Recovery grid EA for XAUUSD M5 that enters with RSI+MA trend filter, then adds martingale-scaled positions on adverse moves with a basket TP target. Recovery disabled by default

المؤشرات:

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

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

  • CheckEntry()
  • ManageRecovery()
  • ManageBasketTP()
  • CloseAll()
  • DetectGMTOffset_EX03002()
  • ServerToGMT_EX03002()
  • InActiveSession_EX03002()
  • UpdateDailyCounters_EX03002()
  • IsSafeToTrade_EX03002()
  • TryBuy_EX03002()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX03002 Grid — Execution Flow (from source analysis)
// Family: Grid
// Recovery grid EA for XAUUSD M5 that enters with RSI+MA trend filter, then adds martingale-scaled positions on adverse moves with a basket TP target. Recovery disabled by default

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اسحب الإكسبرت على رسم بياني — يُنصح بـ H1 أو H4 لروبوتات الشبكة
  7. 7حدد خطوة الشبكة (نقاط)، الحد الأقصى للأوامر، وحجم اللوت في نافذة الإعدادات
  8. 8فعّل Allow Algo Trading واضغط OK

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

المعاملالافتراضيالوصف
InpRSI14Trend RSI Period
InpMaTrend100Trend MA Period
InpBaseLot0.01Base Lot
InpTakeProfit400Take Profit (points) - Average TP
InpEnableRecoveryfalseEnable Recovery Grid (martingale)
InpRecoveryStep300Step to Add Position (points)
InpMultiplier1.5Martingale Multiplier
InpMaxLayers6Max Recovery Layers
InpMagicNumber22203002Magic Number
InpTradeComment"Psgrowth.com Expert_03002"Trade Comment
InpMaxSpread250Max Spread (points)
InpSlippage3Slippage
InpMaxConsecLosses0--- Hardening Globals
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX03002.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX03002 Recovery_XAUUSD_5M — RSI+MA trend entry with optional recovery grid, 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 "=== Signal Settings ==="
input int      InpRSI            = 14;       // Trend RSI Period
input int      InpMaTrend        = 100;      // Trend MA Period

input group "=== Money Management ==="
input double   InpBaseLot        = 0.01;     // Base Lot
input double   InpTakeProfit     = 400;      // Take Profit (points) - Average TP

input group "=== Recovery Settings ==="
input bool     InpEnableRecovery = false;   // Enable Recovery Grid (martingale)
input int      InpRecoveryStep   = 300;      // Step to Add Position (points)
input double   InpMultiplier     = 1.5;      // Martingale Multiplier
input int      InpMaxLayers      = 6;        // Max Recovery Layers

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

input group "=== Hardening GMT Sessions ==="
input bool     InpUseGMTSessions  = true;
input int      InpLondonStartGMT  = 7;
input int      InpLondonEndGMT    = 16;
input int      InpNewYorkStartGMT = 12;
input int      InpNewYorkEndGMT   = 21;

input group "=== Hardening Capital Protection ==="
input double   InpEquityFloor     = 0.0;
input double   InpDailyLossLimit  = 0.0;
input double   InpWeeklyLossLimit = 0.0;
input double   InpCapitalCap      = 0.0;

input group "=== Hardening Trade Safety ==="
input int      InpMaxTradesPerDay = 50;
input int      InpCooldownMinutes = 30;
input int      InpMaxConsecLosses = 0;

//--- Hardening Globals
double   g_initialBalance = 0;
double   g_realizedToday  = 0;
double   g_realizedWeek   = 0;
datetime g_dayStartTime   = 0;

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

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

الوسوم:ex03002gridpipsgrowthfreemt5xauusd

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

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

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

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

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

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

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

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