Pipsgrowth EX02030 Breakout — إكسبرت أدفايزر اختراق
إكسبرت أدفايزر MT5 مفتوح المصدر · XAUUSD · M15، M5، H1
Pipsgrowth EX02030 Breakout — Support/resistance breakout hunter. Scans a lookback window for highest high / lowest low, enters on close beyond the le. إكسبرت أدفايزر MT5 مفتوح المصدر.
نظرة عامة
صياد اختراقات للدعم والمقاومة بلا أي مؤشر. يفحص EX02030 نافذة استرجاع قابلة للضبط ليحدد أعلى قمة وأدنى قاع، ثم يُرسل أمر سوق فور أن يتجاوز سعر العرض أو الطلب تلك الحدود بهامش نقاط بسيط. مدخلات الاستراتيجية قليلة عمداً: طول نافذة الاسترجاع، حجم الهامش، اللوت الثابت، وقف الخسارة الثابت بالنقاط، جني الأرباح الثابت بالنقاط. ما يضيفه الكود فوق هذا الهيكل هو بوابة كاملة للمخاطر والجلسات، لكن منطق التداول نفسه ليس سوى مقارنتين لكل شمعة.
مسار الإشارة قصير ويُنفَّذ مرة واحدة لكل شمعة. يضمن طابع زمني ثابت lastBar داخل OnTick() أن بقية الدالة لا تنطلق إلا على شمعة جديدة، فلا تنهمر أوامر مدفوعة بالتذبذب داخل الشمعة. بعد فحص الشمعة الجديدة، تُصدر IsSafeToTrade_EX02030() موافقتها أو رفضها. عند الرفض — السوق مغلق، أو ضمن حظر أخبار، أو في فترة تهدئة نشطة، أو بلغ حد الخسارة اليومي، أو انخفض الرصيد تحت الحد الأدنى — لا يفعل Expert Advisor شيئاً. إن كانت هناك صفقة بالرقم السحري 22202030 على الرمز بالفعل، فإن HasTrade() تُنهي الدالة باكراً: صفقة واحدة مفتوحة في كل وقت، لا تدرّج، لا توسيع، لا تكديس.
حين تُفتح البوابة، يسحب Expert Advisor قمم وقيعان InpLookback (افتراضياً 20) بدءاً من الشمعة 2 — تُستبعد الشمعة 1 حتى لا تكون الشمعة الأخيرة غير المستقرة هي مستوى المقاومة أو الدعم — ويخزنها في مصفوفتين. يُرجع ArrayMaximum أعلى قمة (المقاومة)، ويُرجع ArrayMinimum أدنى قاع (الدعم). الهامش هو InpBuffer نقطة (افتراضياً 5) يُضاف خارج المستويين، منطقة صغيرة ترشّح الشموع التي تغلق داخل النطاق.
يُرسَل أمر شراء حين يكون سعر العرض الحالي أكبر من المقاومة + الهامش. ويُرسَل أمر بيع حين يكون سعر الطلب الحالي أقل من الدعم - الهامش. يمر كلا الأمرين عبر غلافين مخصصين — TryBuy_EX02030 وTrySell_EX02030 — يثبّتان اللوت المطلوب ضمن حدود الحد الأدنى والأعلى والخطوة لدى الوسيط، ويستدعيان OrderCalcMargin للتأكد من أن الحساب قادر على تمويل الصفقة، ثم يحاولان إرسال الأمر. تُسمح بثلاث محاولات كحد أقصى مع نوم 200 ميلي ثانية عند الأخطاء العابرة: REQUOTE وTIMEOUT وPRICE_OFF وPRICE_CHANGED. يُرسَل الأمر كأمر سوق مع وقف خسارة وجني أرباح ثابتين بالنقاط؛ لا يجلس أي أمر معلق على دفتر الأوامر.
يُحسب وقف الخسارة كـ سعر_الطلب - InpStopLoss * _Point * 10 (افتراضياً 30 نقطة) للشراء، وبالعكس للبيع. جني الأرباح هو سعر_الطلب + InpTakeProfit * _Point * 10 (افتراضياً 60 نقطة). نسبة المخاطرة إلى العائد الافتراضية هي 1:2. وقف الثلاثين نقطة ضيّق مقارنة بنطاق XAUUSD المعتاد على 20 شمعة، لذا فإن الاختراق الفاشل سيلتهم خسارة صغيرة في حين أن الاختراق الناجح سيُحقق ضعفها.
ما لا تفعله الاستراتيجية لا يقل أهمية عما تفعله. لا يوجد وقف متحرك، لا تحريك لنقطة التعادل، لا إغلاق جزئي، لا خروج عند إشارة معاكسة في منتصف الصفقة. تستمر الصفقة حتى وقف الخسارة الثابت أو جني الأرباح الثابت. الشيء الوحيد الذي قد يُغلق الصفقة قبل ذلك هو فحص HasTrade() للشمعة التالية — ولأن EX02030 يقصر نفسه على صفقة واحدة، فإن التأثير العملي هو: إشارة اختراق جديدة والصفقة الحالية لا تزال مفتوحة يعني تجاهل الإشارة الجديدة. خطر الاحتفاظ بصفقة جني أرباح 60 نقطة عبر اتجاه 200 نقطة حقيقي، لكن الاستراتيجية تقبل ذلك مقابل عدم الاضطرار إلى إدارة الصفقة.
طبقة التعزيز هي حيث تعيش معظم المدخلات. تُنفّذ IsSafeToTrade_EX02030 سبعة فحوصات:
- ساعات السوق: تحظر
IsMarketOpen_EX02030يوم الأحد والسبت، وجمعة من الساعة 22:00 بتوقيت غرينتش فصاعداً، وإثنين حتى الساعة 22:00. عدم تماثل الإثنين والجمعة مقصود، إذ يراعي افتتاح الأحد المسائي وإغلاق الجمعة المسائي المعتاد لسوق العملات. - فلتر الجلسات: تفحص
InActiveSession_EX02030الساعة بتوقيت غرينتش مقابل نافذتين: لندن (افتراضياً 7–16) ونيويورك (افتراضياً 12–21). معInpUseGMTSessions = false(الافتراضي)، يمر الفحص وExpert Advisor يتداول على مدار الساعة خلال أيام الأسبوع؛ أقلبه إلىtrueلحصر الأوامر في فترة التداخل. - حظر الأخبار: تستعلم
IsNewsTime_EX02030منCalendarValueHistoryعن أحداث عالية الأهمية في نافذة ±30 دقيقة (InpNewsBufferMinutes = 30افتراضياً). حين يكونInpFilterNews = true، يرفض Expert Advisor الدخول خلال إصدارات التقويم الأحمر. - سقف رأس المال: حين
InpCapAmount > 0، يصبح رأس المال الفعليMathMin(InpCapAmount, equity)، ويحظر Expert Advisor الأوامر الجديدة إن انخفض هذا الرقم تحتInpCapFloor(افتراضياً 1000). عند الافتراضيInpCapAmount = 0، يُعطّل هذا الفرع ويُعامل Expert Advisor كامل رصيد الحساب كأساس للحجم. - حد الرصيد الأدنى: يجب أن يبقى الرصيد الفعلي فوق
InpMinEquityPct(افتراضياً 70%) من الرصيد الأولي، وإلا يتوقف Expert Advisor. هذا مفتاح قتل صادم للتراجعات الكارثية. - حدود التداول:
InpMaxTradesPerDay(افتراضياً 10) تحدّ عدد الأوامر اليومية. عداد الخسائر المتتالية فيOnTradeTransactionيزداد مع كل خسارة، وبعدInpMaxConsecLossesخسائر (افتراضياً 5) يُعيَّنg_cooldownUntil = TimeCurrent() + InpCooldownHours * 3600(افتراضياً 4 ساعات)، لا يُسمح خلالها بأي أوامر جديدة. - حد الخسارة اليومي: إن تجاوزت القيمة المطلقة لـ
g_realizedTodayنسبةInpDailyLossLimitPctمن الرصيد الأولي (افتراضياً 5%)، يتوقف Expert Advisor عن فتح صفقات حتى تلفّUpdateDailyCounters_EX02030العداد عند حدود اليوم التالي.
يُدار التحويل إلى توقيت غرينتش عبر DetectGMTOffset_EX02030، heuristic يقيّم كل فرق في النطاق -12 إلى +12 ويختار الفرق الذي يضع وقت الخادم الحالي داخل نطاق أيام الأسبوع وساعات العمل. القيمة الافتراضية المُعادة هي 3، لكن الدالة ستتجاوزها على الوسطاء الذين يكون وقت خادمهم أقرب إلى UTC.
دالة لياقة OnTester هي profit × profitFactor / maxDD، مع بوابة تتطلب 10 صفقات على الأقل. يُقصّ profitFactor إلى [1, 1000] لمنع صفقة شاذة واحدة من الهيمنة على الترتيب. الصيغة تكافئ Expert Advisors التي تُركّب الأرباح بينما تعاقب من يحققها عبر انفجارات المخاطر الذيلية، وهو ما يفيد في مقارنة مجموعات المعاملات في Strategy Tester لمنصة MT5.
الاستراتيجية تتجنب النطاقات. الأسواق الاتجاهية المستمرة تنتج اختراقات نظيفة تصل إلى جني الأرباح. الأسواق العرضية تنتج اختراقات فاشلة متكررة تضرب وقف الثلاثين نقطة. نافذة الاسترجاع والهامش هما المعاملان اللذان يتأرجحان أكثر؛ 20 شمعة و5 نقاط مضبوطة لـ XAUUSD على M15، لكن نافذة أوسع (40–50 شمعة) سترشّح ضوضاء أكثر على حساب الدخول المتأخر. على M5، نفس الإعدادات ستُتاجر بكثرة؛ إن InpMaxTradesPerDay = 10 يحدّ الأسوأ، لكن وقف الخسارة الثابت سيظل يُسجّل خسارة.
ملاحظات عن الوسيط: الهامش مُعيَّن بالنقاط لا بـ النقاط × السبريد، لذا فإن حساب ECN بسبريد منخفض سيعطي أنظف إشارات. XAUUSD بسبريد نموذجي 15–25 نقطة مناسب؛ الزوج الغريب بـ 50+ نقطة سبريد سيأكل الهامش وقد يحتاج رفع InpBuffer. لا يوجد علم InpDryRun في هذه النسخة، لذا يتداول Expert Advisor منذ لحظة ربطه بالشارت. جرّبه على حساب تجريبي أولاً إن أردت مراقبة السلوك قبل الانتقال للحقيقي.
تفاصيل الاستراتيجية
يستدعي OnTick() أولاً UpdateDailyCounters_EX02030() لتدوير عدادات الأرباح والخسائر اليومية والأسبوعية، ثم يضمن طابع زمني ثابت lastBar أن بقية الدالة لا تعمل إلا على شمعة جديدة. البوابة التالية هي IsSafeToTrade_EX02030() التي تجمع سبعة فحوصات: ساعات السوق، وفلتر الجلسات الاختياري، وحظر الأخبار، وسقف رأس المال، وحد الرصيد الأدنى، وحد الصفقات اليومية، وفترة تهدئة نشطة من سلسلة خسائر حديثة. إن فُتحت البوابة وأعادت HasTrade() قيمة false، يسحب Expert Advisor قمم وقيعان InpLookback بدءاً من الشمعة 2، ويحدد أعلى قمة وأدنى قاع للنافذة عبر ArrayMaximum وArrayMinimum، ويقارن سعر العرض والطلب الحاليين بتلك المستويات مضافاً إليها هامش 5 نقاط. يُرسَل أمر سوق شراء أو بيع عبر TryBuy_EX02030 أو TrySell_EX02030، اللتان تُثبّتان اللوت، وتتحققان من الهامش، وتُعيدان المحاولة حتى ثلاث مرات عند أخطاء السعر العابرة. يُرسَل الأمر مع وقف خسارة وجني أرباح ثابتين بالنقاط — لا يوجد داخل الصفقة وقف متحرك، ولا تحريك نقطة تعادل، ولا إغلاق جزئي، لذا تستمر الصفقة حتى حدودها.
يُصدر EX02030 أوامر سوق، لا أوامر معلقة. يُرسَل أمر شراء حين يتجاوز سعر العرض الحالي أعلى قمة لآخر InpLookback شمعة (افتراضياً 20) بهامش 5 نقاط؛ ويُرسَل أمر بيع حين ينخفض سعر الطلب تحت أدنى قاع بنفس الهامش. يضمن حارس الشمعة الجديدة تقييم كل إشارة مرة واحدة لكل شمعة، ويمر الأمر عبر TryBuy_EX02030 / TrySell_EX02030 مع ثلاث محاولات عند أخطاء السعر العابرة.
لا توجد إدارة داخل الصفقة — لا وقف متحرك، لا تحريك لنقطة التعادل، لا إغلاق جزئي. يحدث الخروج عند جني الأرباح الثابت (افتراضياً 60 نقطة) أو وقف الخسارة الثابت (افتراضياً 30 نقطة) الذي رُسِل مع الأمر، وبعدها تُفرّغ HasTrade() ويُصبح Expert Advisor حراً للإطلاق مجدداً. الحد الأقصى للصفقات المتزامنة هو صفقة واحدة، لذا فإن إشارة اختراق جديدة لن تُغلق أو تستبدل صفقة مفتوحة.
وقف خسارة ثابت عند InpStopLoss نقطة (افتراضياً 30) تحت سعر دخول الشراء أو فوق سعر دخول البيع، يُحسب كـ InpStopLoss * _Point * 10 ويُرسَل مع أمر السوق. مسافة الثلاثين نقطة أقل بكثير من نطاق XAUUSD المعتاد على 20 شمعة، وهو ما يعطي نسبة 1:2 مع جني الأرباح الافتراضي 60 نقطة.
جني أرباح ثابت عند InpTakeProfit نقطة (افتراضياً 60) فوق سعر دخول الشراء أو تحت سعر دخول البيع، يُعيَّن على أمر السوق وقت الإرسال. تغيير InpStopLoss دون تغيير InpTakeProfit يحوّل نسبة المخاطرة إلى العائد: إن خفّضت SL إلى 20 يعمل Expert Advisor عند 1:3؛ وإن رفعته إلى 60 تنخفض النسبة إلى 1:1.
مضبوط لـ XAUUSD على شارت M15 مع حد أدنى للإيداع 100 دولار، رغم أن المعاملات نفسها مكتوبة صراحة لتعمل على M5 وH1 أيضاً. الاستراتيجية تتجنب النطاقات: تُجدي أكثر في الأسواق الاتجاهية المستقرة وتتألم في الأسواق العرضية، لذا فإن حساب ECN بسبريد منخفض على XAUUSD خلال تداخل جلستي لندن ونيويورك هو أنظف تشغيل. اضبط InpUseGMTSessions = true لتطبيق تلك النوافذ فعلاً (الافتراضي متساهل)، وفكّر في رفع InpBuffer إن كان متوسط السبريد لدى وسيطك أعلى من 20 نقطة.
منطق الاستراتيجية
Pipsgrowth EX02030 Breakout — تحليل منطق الاستراتيجية (من كود .mq5)
العائلة: Breakout
الماجيك: 22202030
الإصدار: 2.00
الوصف:
Support/resistance breakout hunter. Scans a lookback window for highest high / lowest low, enters on close beyond the level with a buffer. Fixed lot, fixed SL/TP in pips. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester
المؤشرات:
- مؤشرات قياسية
الدوال الرئيسية:
HasTrade()OnTradeTransaction()DetectGMTOffset_EX02030()ServerToGMT_EX02030()IsMarketOpen_EX02030()InActiveSession_EX02030()IsNewsTime_EX02030()IsSafeToTrade_EX02030()UpdateDailyCounters_EX02030()TryBuy_EX02030()
// Pipsgrowth EX02030 Breakout — Execution Flow (from source analysis)
// Family: Breakout
// Support/resistance breakout hunter. Scans a lookback window for highest high / lowest low, enters on close beyond the level with a buffer. Fixed lot, fixed SL/TP in pips. 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
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| InpNewYorkEndGMT | 21 | --- Hardening: Capital Protection --- |
| InpCapAmount | 0.0 | Capital cap amount (0=disabled) |
| InpDailyLossLimitPct | 5.0 | --- Hardening: Trade Safety --- |
#property copyright "Pipsgrowth.com"
#property link "https://pipsgrowth.com"
#property version "2.00"
#property strict
#property description "Pipsgrowth.com EX02030 BreakoutHunter — S/R breakout with volume confirmation, full 12-layer stack."
#include <Trade\Trade.mqh>
input group "=== Identity ==="
input int InpMagicNumber = 22202030;
input string InpTradeComment = "Psgrowth.com Expert_02030";
input group "=== Strategy Parameters ==="
input int InpLookback = 20;
input int InpBuffer = 5;
input group "=== Risk Management ==="
input double InpLotSize = 0.10;
input int InpStopLoss = 30;
input int InpTakeProfit = 60;
CTrade trade; datetime lastBar=0;
//--- Hardening Globals
int g_gmtOffset = 3;
int g_tradesToday = 0;
datetime g_dayStartTime = 0;
double g_initialBalance = 0.0;
datetime g_cooldownUntil = 0;
int g_consecLosses = 0;
double g_realizedToday = 0.0;
double g_realizedWeek = 0.0;
datetime g_weekStartTime = 0;
// --- Hardening: GMT Session Filter ---
input group "=== GMT Session Filter (Hardening) ===";
input bool InpUseGMTSessions = false;
input int InpLondonStartGMT = 7;
input int InpLondonEndGMT = 16;
input int InpNewYorkStartGMT = 12;
input int InpNewYorkEndGMT = 21;
// --- Hardening: Capital Protection ---
input group "=== Capital Protection (Hardening) ===";
// InpCapEnabled removed — use InpCapAmount=0 to disable
input double InpCapAmount = 0.0; // Capital cap amount (0=disabled)
input double InpCapFloor = 1000.0;
input double InpMinEquityPct = 70.0;
input double InpDailyLossLimitPct = 5.0;
// --- Hardening: Trade Safety ---
input group "=== Trade Safety (Hardening) ===";
input int InpMaxTradesPerDay = 10;
input int InpMaxConsecLosses = 5;
input int InpCooldownHours = 4;
input bool InpFilterNews = true;
input int InpNewsBufferMinutes = 30;
int OnInit() {
trade.SetExpertMagicNumber(InpMagicNumber);
trade.SetDeviationInPoints(20);
الكود المصدري الكامل متاح عند التحميل
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.
تحذير صريح: لأغراض تعليمية فقط
تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.
وسطاء موصى بهم لهذا الإكسبرت
هذه الروبوتات تعمل على 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 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.