Pipsgrowth EX02013 Breakout — إكسبرت أدفايزر اختراق
إكسبرت أدفايزر MT5 مفتوح المصدر · XAUUSD، XAGUSD، EURUSD، USDJPY · H1
Pipsgrowth EX02013 Breakout — Professional Trend/Reversal EA using JMA + Donchian Breakout entry with pyramiding, profit lock trailing, and tightening. إكسبرت أدفايزر MT5 مفتوح المصدر.
نظرة عامة
إكس 02013 هو محرك اختراق مزدوج التأكيد مصمم للعمل على إطار الساعة H1 للأزواج XAUUSD و XAGUSD و EURUSD و USDJPY. لا يطارد Expert Advisor هذا مؤشراً واحداً، بل ينتظر حتى يتفق كسران هيكليان مستقلان قبل ضخ أي رأس مال. البوابة الأولى هي قناة دونشيان كلاسيكية على إطار زمني يختاره المستخدم (InpDonchianTF=4 يرمز إلى H1، الفترة 20، الإزاحة 1): لا يُفتح صفقة شراء إلا إذا أغلقت الشمعة السابقة فوق الحد العلوي للقناة، ولا تُفتح صفقة بيع إلا إذا أغلقت الشمعة السابقة تحت الحد السفلي. البوابة الثانية هي متوسط متحرك جوريك JMA يُحسب داخلياً عبر حلقة CalcJMA() بطول 14، ومرحلة 0، وقوة 0.45؛ يقارن GetJMASignal() قيمة JMA الحالية بقيمة الشمعة السابقة ويمنح إشارة شراء حين يكون المنحنى صاعداً، وإشارة بيع حين يكون هابطاً. يجب أن تشير البوابتان معاً في الاتجاه نفسه في نفس tick التقييم قبل أن يُرجع GetCombinedSignal() توجيهاً غير صفري — إن قالت دونشيان شراء لكن JMA ثابتة أو هابطة فلن تتم أي صفقة. تثبيت الإزاحة بـ 1 على كلتا الإشارتين يعني أن إكس 02013 يتفاعل فقط مع شموع مكتملة الإغلاق، وليس مع ارتفاعات الشمعة الجارية، مما يُلغي شريحة كبيرة من إشارات الاختراق الكاذب التي تعاني منها بوتات الإطارات الزمنية الأدنى.
ما يميز إكس 02013 عن بوت دونشيان التقليدي هو مكدس إدارة المراكز بعد الدخول. تُفتح الصفقة بوقف ثابت عند InpHardSL_Points=1000 نقطة وهدف ربح عند InpFixedTP_Points=2000 نقطة، أي بنسبة مخاطرة/عائد افتراضية 1:2. من هناك يتولى نظامان متتابعان للوقف المتحرك. الأول هو ManageProfitLock(): ما إن يبلغ الربح InpLock_StartDistance=500 نقطة، يبدأ الـ EA بسحب وقف الخسارة إلى سعر ناقص InpLock_BreathDistance=300 نقطة، لكن فقط حين يكون الوقف الجديد على الأقل InpLock_Step=50 نقطة أعمق في الربح من السابق — هذا يمنع رفض broker المتكرر لطلبات التعديل بسبب stops_level. الثاني هو ManageTightening(): حين يتجاوز الربح InpTighten_TriggerProfit=1500 نقطة، يتحول الـ EA إلى وضع أكثر إحكاماً بـ InpTighten_BreathDistance=150 نقطة و InpTighten_Step=20 نقطة، ليلتصق بالسعر بشكل أوثق. التضييق Tightening هو البديل الفعلي للخروج الجزئي: بدل إغلاق نصف الصفقة، يقفل معظم الربح غير المحقق ويترك الباقي يركض.
الهرمنة (Pyramiding) مفعّلة افتراضياً (InpEnablePyramiding=true) بسقف InpPyramid_MaxLevels=3 مراكز لكل اتجاه. شرطان مسبقان يحكمان كل إضافة هرمية: AreAllPositionsSecured() يتحقق أن كل مركز قائم في نفس الاتجاه قد نقل وقفه فوق نقطة التعادل بما لا يقل عن InpPyramid_SecureProfit=200 نقطة، و IsDistanceEnough() يشترط أن يكون الدخول الجديد على بعد InpPyramid_MinDistPoints=500 نقطة على الأقل من آخر سعر دخول. هذا المزيج يمنع الـ EA من الإضافة إلى عنقود خاسر أو تكديس الطلبات فوق بعضها حين يكون السوق متقطعاً. حساب حجم المركز قائم على المخاطرة عبر InpLots(): مع InpRiskPercent=0.5 يخاطر الـ EA بنسبة 0.5% من رصيد الحساب لكل صفقة، ثم يُقرّب اللوت إلى step الأداة، ويُطبّق الحد الأدنى، ويقص النتيجة عند الحد الأقصى للأداة وعند InpMaxLot=5.0. ضبط InpFixedLots على أي قيمة أكبر من صفر يُلغي حساب المخاطرة ويستخدم حجم ثابت، وهو خيار مفضل لحسابات الشركات الممولة التي تفضل sizing ثابت.
بوابة عدم التداول هي الأكبر في إكس 02013. يتداول الـ EA داخل نافذتين زمنيتين محددتين بتوقيت GMT: لندن من 7 إلى 16 ونيويورك من 12 إلى 21 (InpUseGMTSessions=true)، ويحظر عطلة نهاية الأسبوع عبر فحص day_of_week داخل InActiveSession_EX02013(). يُحوَّل وقت السيرفر إلى GMT عبر DetectGMTOffset_EX02013() الذي يمسح فروقات من -12 إلى +12 ويختار الذي يعطي ساعة يوم عمل بين 7 و21، مما يوفر محاذاة تلقائية مع broker دون تدخل يدوي. فلتر السبريد يرفض الدخول حين يتجاوز السبريد الحالي InpMaxSpreadPoints=200 نقطة، وهو إعداد متسامح مناسب لتقلبات سيولة XAUUSD. حدود الخسارة اليومية (InpDailyLossLimit) والأسبوعية (InpWeeklyLossLimit) وأدنى رصيد (InpEquityFloor) ونسبة الرصيد إلى الرصيد الأولي (InpMinEquityPct=70) ومفتاح InpMaxDDPct=20 للإيقاف الكامل كلها معطلة افتراضياً أو مضبوطة على قيم متساهلة — يفعّلها المستخدم حسب broker ومستوى المخاطرة لديه. سقف InpMaxTradesPerDay=20 يحد من نشاط الـ EA اليومي، ومعالج OnTradeTransaction يتتبع الخسائر المتتالية ليُفعّل فترة تهدئة (InpCooldownMinutes) عند بلوغ العتبة (InpMaxConsecLosses) التي يحددها المستخدم.
تنفيذ الأوامر مُحصّن ضد عواصف إعادة التسعير: TryBuy_EX02013() و TrySell_EX02013() يعيدان المحاولة حتى 3 مرات بفاصل 200 مللي ثانية على رموز TRADE_RETCODE_REQUOTE و TRADE_RETCODE_TIMEOUT و TRADE_RETCODE_PRICE_OFF و TRADE_RETCODE_PRICE_CHANGED، ويتحققان مسبقاً من الهامش عبر OrderCalcMargin() قبل الإرسال. تتم التعبئة بسعر ask/bid الحالي داخل حلقة إعادة المحاولة، فحتى بعد رفض price-changed يُعيد الـ EA التسعير على السعر الجديد. تعديلات المراكز تمر عبر TryModify_EX02013() الذي يكمّ الوقف الجديد إلى حجم tick الأداة قبل الإرسال ويعيد المحاولة 3 مرات أيضاً. دالة اللياقة OnTester() تجمع معامل الاسترداد مع معامل الربح (rf × pf) وتفرض بوابات: عدد الصفقات ≥ 10، و Drawdown ≤ InpMaxDDPct، والربح الصافي > 0، مما يمنع المُحسّن من اختيار مجموعات معطيات تبدو حادة في العينة الداخلية لكنها تُفجّر الحساب خارج العينة.
إكس 02013 عملياً يتصرف كصياد اختراق يحترم الاتجاه ويرفض الدخول حتى يتفق مقياسان مستقلان، وحين يدخل يُحكم إغلاق الأرباح عبر نظام التريلينج ذي المرحلتين. ليس scalper بدقات tick، وليس martingale، وليس شبكة — إنه EA اختراق H1 بقواعد هرمنة صريحة وإطار تريلينج منضبط بشكل غير معتاد. المدخل InpDryRun يتيح للمستخدم تجفيف كل إشارة دون إرسال أوامر، وهي الخطوة الموصى بها على رمز جديد للتأكد أن إطاري Donchian و JMA ينتجان إشارات متفقة عند تقاطع الجلسات المفضل لدى المتداول. المدخل InpKillSwitch هو زر طوارئ يغلق فوراً كل المراكز بالسحر 22202013 ويوقف أي دخول لاحق. كلاهما معطل افتراضياً، ويصل الـ EA جاهزاً للتداول على XAUUSD H1 بهندسة 1:2 افتراضية ونوافذ جلسات لندن/نيويورك مفعلة.
تفاصيل الاستراتيجية
يُشغّل إكس 02013 قناة دونشيان داخلية ومتوسط JMA داخلي بالتوازي، ويشترط أن يتفقا على الاتجاه على شمعة مكتملة (الإزاحة 1) قبل فتح أي صفقة. تقارن بوابة دونشيان إغلاق الشمعة السابقة بأعلى قمة للـ 20 شمعة السابقة على إطار InpDonchianTF؛ وتقارن بوابة JMA القيمة المُنعّمة الحالية بقيمة الشمعة السابقة، صعوداً مقابل هبوطاً. ما إن تُفتح الصفقة، يُطبّق الـ EA نظامي تريلينج متتابعين — يبدأ ManageProfitLock عند 500 نقطة ربح، ثم يتولى ManageTightening عند 1500 نقطة — وكلاهما يُكمّ الوقف الجديد إلى حجم tick الأداة ويدفعه للأمام بخطوات ثابتة. الهرمنة مفعلة افتراضياً حتى 3 مستويات، لكنها لا تنطلق إلا إذا كان كل مركز قائم في الاتجاه نفسه فوق نقطة التعادل وكان الدخول الجديد على بعد 500 نقطة على الأقل من آخر سعر دخول. كل أمر يمر عبر غلاف إعادة محاولة بثلاث محاولات يُعيد التسعير على requote/timeout/price-changed ويتحقق مسبقاً من الهامش عبر OrderCalcMargin، وبوابة الأمان تفرض نوافذ جلستي لندن ونيويورك، وحداً أقصى 20 صفقة يومياً، وأدنى رصيد 70%، ومفتاح إيقاف كامل عند Drawdown 20%.
يتطلب الدخول شراء أن يُغلق السعر السابق فوق الحد العلوي لقناة دونشيان وأن يكون منحنى JMA(14) صاعداً (jma[0] > jma[1]) في نفس التقييم. والدخول بيع هو المرآة — إغلاق تحت الحد السفلي مع انحدار JMA للأسفل. تُقيَّم كلتا الإشارتين على الإزاحة 1، فلا تُحتسب إلا الشموع المكتملة.
الخروج عبر الهدف الثابت عند 2000 نقطة (افتراضي 1:2)، أو عبر وقف متحرك ذي مرحلتين: ManageProfitLock يسحب وقف الخسارة خلف السعر ما إن يتجاوز الربح 500 نقطة، ثم يتولى ManageTightening عند 1500 نقطة ربح بفسحة 150 نقطة أكثر إحكاماً.
وقف خسارة ثابت عند InpHardSL_Points=1000 نقطة (10 نقاط على FX بخمس خانات أو 100 نقطة على XAUUSD بثلاث خانات) لحظة الدخول. بعد الدخول لا يُحرَّك وقف الخسارة إلا للأمام عبر ManageProfitLock أو ManageTightening — لا يتراجع أبداً.
جني أرباح ثابت عند InpFixedTP_Points=2000 افتراضياً (نسبة مخاطرة/عائد 1:2 مقابل وقف 1000 نقطة). اضبطه على 0 لتعطيل الهدف الثابت ودع نظام التريلينج يدير الخروج بالكامل.
الأفضل على H1 XAUUSD بمخاطرة 0.5% افتراضية لكل صفقة؛ كما يناسب متداولي XAGUSD و EURUSD و USDJPY الذين يريدون اختراق H1 مع تريلينج مدمج. الحد الأدنى للرصيد: 100 دولار. يحتاج الـ EA إلى نوافذ جلستي لندن 7-16 GMT ونيويورك 12-21 GMT للإعداد الافتراضي، ويستفيد من broker ECN/RAW بفارق سبريد منخفض — InpMaxSpreadPoints=200 متسامح لكن تغذية نظيفة تساعد هندسة 1:2 على التنفس.
منطق الاستراتيجية
Pipsgrowth EX02013 Breakout — تحليل منطق الاستراتيجية (من كود .mq5)
العائلة: Breakout
الماجيك: 22202013
الإصدار: 2.00
الوصف:
Professional Trend/Reversal EA using JMA + Donchian Breakout entry with pyramiding, profit lock trailing, and tightening management. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester
المؤشرات:
- مؤشرات قياسية
الدوال الرئيسية:
CloseAllPositions_EX02013()ManageProfitLock()ManageTightening()ManagePyramiding()AreAllPositionsSecured()IsDistanceEnough()OpenTrade()InpLots()CountTrades()GetDonchian()
// Pipsgrowth EX02013 Breakout — Execution Flow (from source analysis)
// Family: Breakout
// Professional Trend/Reversal EA using JMA + Donchian Breakout entry with pyramiding, profit lock trailing, and tightening 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)ملف التحسين
كيفية تثبيت الإكسبرت على MT5
- 1حمّل ملف .mq5 بالضغط على زر التحميل أعلاه
- 2افتح برنامج MetaTrader 5 على حاسوبك
- 3من القائمة العلوية اختر File → Open Data Folder
- 4انتقل إلى مجلد MQL5 → Experts والصق الملف هناك
- 5في MT5، انقر بالزر الأيمن على Expert Advisors في لوحة Navigator → Refresh
- 6اسحب الإكسبرت على رسم H1 أو H4
- 7حدد فترة رصد النطاق وهامش الاختراق وحجم اللوت في نافذة الإعدادات
- 8فعّل Allow Algo Trading واضغط OK
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| InpEquityFloor | 0.0 | Stop trading if equity drops below this |
| InpDailyLossLimit | 0.0 | Max daily loss in account currency (0=off) |
| InpWeeklyLossLimit | 0.0 | Max weekly loss in account currency (0=off) |
| InpCapitalCap | 0.0 | Stop trading if balance exceeds this (0=off) |
| InpMaxTradesPerDay | 20 | Max trades per day |
| InpCooldownMinutes | 0 | Cooldown after consecutive losses (minutes) |
| InpMaxConsecLosses | 0 | Stop trading after N consecutive losses (0=off) |
| InpSlippagePoints | 20.0 | Max slippage (points) |
| InpLog | false | Enable verbose logging |
| InpMinEquityPct | 70.0 | Min equity as % of initial balance to trade [0-100, step 1] |
| InpDryRun | false | Dry-run: log signals without executing trades |
| InpKillSwitch | false | Kill switch: close all positions and stop trading |
| InpMaxDDPct | 20.0 | Max drawdown % — stop trading if exceeded [1-50, step 0.5] |
| InpMaxLot | 5.0 | Max lot size cap [0.01-100, step 0.01] |
| InpDonchianTF | 4 | Donchian timeframe (1=M1,2=M5,3=M15,4=H1,5=H4,6=D1,7=W1,8=MN1) |
| InpJMA_TF | 4 | JMA timeframe (1=M1,2=M5,3=M15,4=H1,5=H4,6=D1,7=W1,8=MN1) |
| InpJMA_Power | 0.45 | 0.3-0.7 recommended |
| InpRSI_Upper | 70.0 | Filter: RSI max for Buy |
| InpRSI_Lower | 30.0 | Filter: RSI min for Sell |
| InpRiskPercent | 0.5 | Risk % per trade |
| InpFixedLots | 0.0 | If > 0, uses fixed lots instead of risk % |
| InpHardSL_Points | 1000 | Stop Loss in Points |
| InpFixedTP_Points | 2000 | Take Profit in Points (0 = None) |
| InpMagicNumber | 22202013 | Magic Number (222 + Expert ID) |
| InpTradeComment | "Psgrowth.com Expert_02013" | --- Trade Management --- |
| InpLock_StartDistance | 500 | Points profit to start locking |
| InpLock_BreathDistance | 300 | Distance (Points) to keep SL from Price |
| InpLock_Step | 50 | Move SL only if improved by this step |
| InpTighten_TriggerProfit | 1500 | Pionts profit to switch to tight mode |
| InpTighten_BreathDistance | 150 | Tighter Distance (Points) from Price |
| InpTighten_Step | 20 | Tighter Step |
| InpPyramid_MaxLevels | 3 | Max positions per direction |
| InpPyramid_MinDistPoints | 500 | Min distance from last entry |
| InpPyramid_SecureProfit | 200 | Existing trades must have SL > BreakEven + this |
| InpMaxSpreadPoints | 200 | Max Spread allowed (Points) |
#property copyright "Pipsgrowth.com"
#property link "https://pipsgrowth.com"
#property version "2.00"
#property strict
#property description "Pipsgrowth.com EX02013 dochin_is_complete JMA + Donchian Breakout with pyramiding and profit lock, full 12-layer stack."
#include <Trade/Trade.mqh>
//+------------------------------------------------------------------+
//| Global Objects |
//+------------------------------------------------------------------+
CTrade trade;
ulong g_magicNumber = 123456; // Will be set from input
//+------------------------------------------------------------------+
//| Hardening Globals |
//+------------------------------------------------------------------+
double g_initialBalance = 0;
double g_realizedToday = 0;
double g_realizedWeek = 0;
datetime g_dayStartTime = 0;
datetime g_weekStartTime = 0;
int g_gmtOffset = 3;
int g_dailyTrades = 0;
int g_consecutiveLosses = 0;
datetime g_cooldownUntil = 0;
//+------------------------------------------------------------------+
//| Hardening Inputs |
//+------------------------------------------------------------------+
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; // Stop trading if equity drops below this
input double InpDailyLossLimit = 0.0; // Max daily loss in account currency (0=off)
input double InpWeeklyLossLimit = 0.0; // Max weekly loss in account currency (0=off)
input double InpCapitalCap = 0.0; // Stop trading if balance exceeds this (0=off)
input group "=== Hardening Trade Safety ===";
input int InpMaxTradesPerDay = 20; // Max trades per day
input int InpCooldownMinutes = 0; // Cooldown after consecutive losses (minutes)
input int InpMaxConsecLosses = 0; // Stop trading after N consecutive losses (0=off)
input double InpSlippagePoints = 20.0; // Max slippage (points)
input bool InpLog = false; // Enable verbose logging
input double InpMinEquityPct = 70.0; // Min equity as % of initial balance to trade [0-100, step 1]
input bool InpDryRun = false; // Dry-run: log signals without executing trades
input bool InpKillSwitch = false; // Kill switch: close all positions and stop trading
input double InpMaxDDPct = 20.0; // Max drawdown % — stop trading if exceeded [1-50, step 0.5]
input double InpMaxLot = 5.0; // Max lot size cap [0.01-100, step 0.01]
//+------------------------------------------------------------------+
//| Input Parameters |
//+------------------------------------------------------------------+
// --- Signal Settings ---الكود المصدري الكامل متاح عند التحميل
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.
تحذير صريح: لأغراض تعليمية فقط
تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.
وسطاء موصى بهم لهذا الإكسبرت
هذه الروبوتات تعمل على MT5 — استخدم وسيطاً موثوقاً بتنفيذ سريع وسبريد منخفض
إكسبرتات مشابهة
عرض جميع الإكسبرتاتإكسبرتات أخرى بنفس استراتيجية الاختراق
Pipsgrowth EX02026 Breakout — إكسبرت أدفايزر اختراق
Pipsgrowth EX02026 Breakout — Donchian Channel breakout EA for XAUUSD M5 with RSI confirmation, average-speed filter, session filtering, trailing stop. إكسبرت أدفايزر MT5 مفتوح المصدر.
Pipsgrowth EX02001 Breakout — إكسبرت أدفايزر اختراق
Pipsgrowth EX02001 Breakout — Fractal Donchian high/low breakout on closed bar with RSI extreme filter. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-. إكسبرت أدفايزر MT5 مفتوح المصدر.
Pipsgrowth EX02027 Breakout — إكسبرت أدفايزر اختراق
Pipsgrowth EX02027 Breakout — Multi-symbol VWAP+KAMA Donchian/SuperTrend scalper with ADX regime switching between mean-reversion and breakout modes, . إكسبرت أدفايزر MT5 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.