Pipsgrowth EX02017 Breakout — إكسبرت أدفايزر اختراق
إكسبرت أدفايزر MT5 مفتوح المصدر · XAUUSD · M15
Pipsgrowth EX02017 Breakout — Gold scalping strategy trading breakouts of Williams fractals with ATR-based stop loss and take profit, spread filter, a. إكسبرت أدفايزر MT5 مفتوح المصدر.
نظرة عامة
Pipsgrowth EX02017 هو سكالبير اختراق يعتمد على فراكتالات ويليامز، مصمم خصيصاً لزوج XAUUSD على إطار M15. يراقب Expert Advisor آخر فراكتال علوي وسفلي مؤكد — وهي نقاط البيفوت المحلية التي تتشكل عندما يكون لشمعة M15 جارتان أدنى من الأعلى على كل جانب (للفراكتال العلوي)، أو جارتان أعلى من الأسفل على كل جانب (للفراكتال السفلي) — وينتظر أن يتجاوز إغلاق الشمعة المغلقة مستوى الفراكتال بمقدار لا يقل عن FractalBuffer نقطة (5 نقاط افتراضياً). يجب أن يحدث الاختراق على شمعة مغلقة؛ الاختراقات على التيك الحي لا تكفي.
طبقة الإشارة مقصودة البساطة. لا يوجد مصنف نظام ADX، ولا EMA متعدد الأطر الزمنية، ولا SuperTrend، ولا قناة Gaussian. فقط مؤشر iFractals على PERIOD_M15 ومؤشر iATR(14) لحساب حجم الوقف. يحدّث EA مخازن الفراكتال وATR في الدالة RefreshIndicators() عند كل شمعة M15 جديدة، ويفحص نافذة 30 شمعة للعثور على أحدث قيمة فراكتال علوي وسفلي غير فارغة، ثم يحدّث متغيرين عامين — lastFractalHigh وlastFractalLow — تستشيرهما دالة OnTick().
عند تفعيل إشارة الشراء، يستدعي EA الدالة OpenPosition(ORDER_TYPE_BUY). تحسب الدالة حجم اللوت عبر CalculatePositionSize(): إذا كانت UseMoneyManagement مفعّلة، فإنها تخاطر بنسبة RiskPercent من رصيد الحساب (2.0% افتراضياً)، وتقسم على قيمة النقطة للرمز، وتقرّب إلى أقرب خطوة لوت للأسفل. إذا كانت إدارة الأموال معطلة، تعود إلى FixedLotSize (0.01 افتراضياً). مسافة الوقف هي الحد الأقصى بين ثلاثة أشياء: currentATR * 1.5، وStopLossPips * pipSize (15 نقطة افتراضياً)، وminDist * 1.5 حيث minDist هو stops_level الخاص بالوسيط معبراً عنه بوحدات السعر (مع احتياطي 10 نقاط). يعني هذا التصميم المعتمد على الحد الأدنى أن EA يوسّع وقفه في جلسات الذهب المتقلبة ويضيّقه في الجلسات الهادئة، لكنه لا ينخفض أبداً عن المرجع الثابت 15 نقطة ولا عن مسافة الوقف الدنيا للوسيط.
مسافة جني الأرباح هي max(SL * 2, minDist * 1.5)، مما يعطي نسبة مخاطرة إلى عائد 1:2، مع حماية minDist حتى لا يضع EA جني الأرباح داخل منطقة الوقف الدنيا للوسيط. يتم تطبيع مستويات الوقف وجني الأرباح عبر NormalizePrice_EX02017 التي تقرّب إلى حجم التيك للرمز. قبل الإرسال، يستدعي EA OrderCalcMargin للتأكد من أن الحساب يستطيع تمويل الأمر، ثم يرسل عبر غلاف CTrade بالرقم السحري 22202017 وانزلاق 3 نقاط. إذا أعاد الوسيط REQUOTE أو TIMEOUT أو PRICE_OFF أو PRICE_CHANGED، يعيد EA المحاولة حتى 3 مرات بفاصل 200 مللي ثانية.
تتم إدارة المخاطر على مستوى الحساب وليس على مستوى الصفقة. لا يوجد trailing stop، ولا رatchet لنقطة التعادل، ولا إغلاق جزئي — تُحفظ الصفقة إلى SL أو TP الثابت، وEA لا يفتح سوى صفقة واحدة في كل مرة (يقطع CountPositions() >= 1 منطق الدخول). يتولى مكدس الحماية العمل بعد بدء التداول. تراقب OnTradeTransaction إضافة الصفقات بالرقم السحري لـ EA، وتجمع ربح الصفقة + السواب + العمولة، وتحدّث g_realizedToday وg_realizedWeek. عندما تصل خسارة اليوم المحققة إلى InpDailyLossLimitPct من الرصيد الابتدائي (5% افتراضياً)، تحظر IsSafeToTrade_EX02017 جميع الإدخالات الجديدة. عندما يتجاوز g_consecLosses قيمة InpMaxConsecLosses (5 افتراضياً)، يتم تعيين cooldown: g_cooldownUntil = TimeCurrent() + InpCooldownHours * 3600 (4 ساعات)، ويتوقف EA حتى مرور الموعد النهائي.
بوابة الجلسة جدار صلب. تستدعي DetectGMTOffset_EX02017 في OnInit وتمشي الفوارق من -12 إلى +12 GMT، وتسجّل كل واحدة منها حسب يوم الأسبوع (الإثنين-الجمعة +10) والساعة (7-21 +5)، ثم تثبّت النتيجة الأفضل كـ g_gmtOffset. مع الإعدادات الافتراضية، تكون InpUseGMTSessions مفعّلة، وInpLondonStartGMT/InpLondonEndGMT تحدد 7-16 GMT، وInpNewYorkStartGMT/InpNewYorkEndGMT تحدد 12-21 GMT. تتحقق InActiveSession_EX02017 مما إذا كانت ساعة GMT الحالية تقع داخل أي من النافذتين. يحظر حارس السوق المفتوح أيضاً يوم السبت، والأحد قبل الساعة 22 GMT، والجمعة من الساعة 22 GMT فصاعداً. تستعلم IsNewsTime_EX02017 من التقويم الاقتصادي MQL5 عبر CalendarValueHistory عن الأحداث في نافذة ±InpNewsBufferMinutes (30 دقيقة)، وتحظر الإدخالات إذا وقع أي حدث عالي الأهمية في هذا النطاق.
حماية رأس المال قابلة للتكوين لكن غير نشطة افتراضياً. InpCapAmount تساوي 0.0 افتراضياً، مما يعطّل الحد الأقصى. عند ضبطها فوق الصفر، يكون رأس المال الفعال هو min(InpCapAmount, equity)، وإذا انخفض رأس المال الفعال تحت InpCapFloor (1000.0)، يرفض EA التداول. مفتاح الإيقاف هو InpMinEquityPct (70.0% من الرصيد الابتدائي): إذا انخفضت equity تحت 70% من اللقطة المأخوذة في OnInit، تحظر IsSafeToTrade_EX02017 الإدخالات.
معيار المُختبر في OnTester() هو profit * profitFactor / maxDD، مع بوابات profitFactor في (0, 1000]، وmaxDD > 0، و10 صفقات على الأقل. لاحظ أن البوابات هنا أكثر تساهلاً من بقية عائلة EX02 — الحد الأدنى لعدد الصفقات هو 10 بدلاً من 30، مما يعكس الطبيعة منخفضة التردد لـEA يعمل بإطار M15 وصفقة واحدة في كل مرة.
عملياً، هذا هو «اختراق ذهب مضبوط ونُسي»: مدخلات بسيطة، إشارة واحدة قائمة على الفراكتال على M15، SL/TP ثابت، ومكدس حماية يحمي الحساب بدلاً من إدارة الصفقات المفتوحة بشكل دقيق. مناسب للمتداولين الذين يريدون تطبيق ويليامز فراكتال نظيفاً دون مكدس التأكيد متعدد الطبقات الذي تجلبه EAs الـEX02 الأكثر تعقيداً.
تفاصيل الاستراتيجية
عند كل شمعة M15 جديدة يحدّث EA مخازن iFractals وiATR(14)، ويمشي في نافذة 30 شمعة للعثور على أحدث قيمة فراكتال علوي وسفلي غير فارغة، ويخزنهما في lastFractalHigh وlastFractalLow. ثم يقارن منطق الدخول إغلاق الشمعة السابقة مع هذه المستويات مع إضافة FractalBuffer (5 نقاط)؛ تتفعّل إشارة شراء عندما يخترق الإغلاق الفراكتال العلوي زائد المخزن، وإشارة بيع على العكس. يمر الأمر عبر OrderCalcMargin، ويُملأ عبر وضع FOK/IOC/RETURN المكتشف تلقائياً من GetAllowedFilling، وتتم إعادة المحاولة حتى 3 مرات على رموز requote أو timeout أو price-off أو price-changed. إدارة المراكز على مستوى الحساب فقط: تجمع OnTradeTransaction الأرباح والخسائر اليومية والأسبوعية، وتفرض سقف InpDailyLossLimitPct للخسارة اليومية وcooldown لـInpCooldownHours بعد InpMaxConsecLosses، بينما تستخدم بوابة الجلسة DetectGMTOffset_EX02017 مع CalendarValueHistory لإبقاء الإدخالات داخل نافذة لندن-نيويورك وبعيداً عن الأخبار عالية الأهمية.
تتفعّل إشارة الشراء عندما يتجاوز إغلاق شمعة M15 مغلقة آخر فراكتال علوي مؤكد من ويليامز زائد FractalBuffer البالغ 5 نقاط؛ وتتفعّل إشارة البيع المعاكسة عندما ينخفض الإغلاق تحت آخر فراكتال سفلي ناقص المخزن المؤقت. يأخذ EA صفقة واحدة فقط في المرة، ويحجمها لتخاطر بنسبة RiskPercent (2.0% افتراضياً) من رصيد الحساب، ولا يدخل إلا عندما يكون السبريد الفوري تحت MaxSpreadPips (25 نقطة).
تُحفظ الصفقات إلى SL أو TP الثابت — لا يوجد trailing stop، ولا نقطة تعادل، ولا إغلاق جزئي. يفرض EA الخروج فقط على مستوى شكل الصفقة (صفقة واحدة، ثم خمول حتى الاختراق التالي). تأتي المخارج على مستوى الحساب من مكدس الحماية: cooldown لمدة 4 ساعات بعد InpMaxConsecLosses (5) خسائر متتالية، وحظر ليوم كامل عند تحقق InpDailyLossLimitPct (5%) من الرصيد الابتدائي، وحظر وقت الأخبار للأحداث عالية الأهمية خلال InpNewsBufferMinutes (30 دقيقة).
مسافة وقف الخسارة هي الحد الأقصى بين ATR(14) × 1.5، والمرجع الثابت 15 نقطة (StopLossPips)، و1.5 × minDist (stops_level الخاص بالوسيط مع احتياطي 10 نقاط)، مما يوسّع الوقف في الجلسات المتقلبة ويضعه عند الحد الأدنى الثابت أو حد الوسيط الأدنى. يتم تطبيع المستوى إلى حجم التيك عبر NormalizePrice_EX02017، والتحقق منه مقابل stops_level للوسيط قبل إرسال الأمر.
مسافة جني الأرباح هي الحد الأقصى بين SL × 2 و1.5 × minDist، مما يعطي نسبة مخاطرة إلى عائد 1:2 في كل صفقة. يتم أيضاً تطبيع TP إلى حجم التيك والتحقق منه مقابل stops_level للوسيط حتى لا يقع داخل منطقة الوقف الدنيا.
مناسب للمتداولين الذين يشغّلون XAUUSD على إطار M15 مع وسيط ECN أو RAW بسبريد منخفض (يحظر EA الإدخالات عندما يتجاوز السبريد 25 نقطة) وبحد أدنى للرصيد 100 دولار، نظراً للمخاطرة الافتراضية 2% لكل صفقة. تفترض بوابة جلسة لندن-نيويورك ومرشح الأخبار ±30 دقيقة وسيطاً يمكن تحويل توقيت خادمه بشكل موثوق إلى GMT — يتولى الاكتشاف التلقائي في DetectGMTOffset_EX02017 التعامل مع معظم إعدادات توقيت الخادم، لكن تحقّق من النتيجة في سجل Strategy Tester قبل التشغيل الحي. تجعل وضعية «صفقة واحدة، احتفظ إلى SL/TP» هذا EA منخفض المتابعة على الشاشة: مناسب تماماً للمتداولين الذين يريدون تعرضاً لاختراقات فراكتال ويليامز دون مراقبة الشارت.
منطق الاستراتيجية
Pipsgrowth EX02017 Breakout — تحليل منطق الاستراتيجية (من كود .mq5)
العائلة: Breakout
الماجيك: 22202017
الإصدار: 2.00
الوصف:
Gold scalping strategy trading breakouts of Williams fractals with ATR-based stop loss and take profit, spread filter, and money management. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester
المؤشرات:
- مؤشرات قياسية
الدوال الرئيسية:
SafePositionModify()RefreshIndicators()OpenPosition()CalculatePositionSize()IsNewBar()GetPipSize()CheckFilters()CountPositions()DetectGMTOffset_EX02017()ServerToGMT_EX02017()
// Pipsgrowth EX02017 Breakout — Execution Flow (from source analysis)
// Family: Breakout
// Gold scalping strategy trading breakouts of Williams fractals with ATR-based stop loss and take profit, spread filter, and money 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
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| FractalBuffer | 5 | Pips buffer above/below fractal |
| InpNewYorkEndGMT | 21 | --- Hardening: Capital Protection --- |
| InpCapAmount | 0.0 | Capital cap amount (0=disabled, effective capital = min(capAmount, equity)) |
| InpMinEquityPct | 70.0 | --- Hardening: Trade Safety --- |
#property copyright "Pipsgrowth.com"
#property link "https://pipsgrowth.com"
#property version "2.00"
#property strict
#property description "Pipsgrowth.com EX02017 GoldScalper_FractalBreak_HighLowBreak — Williams fractal breakout scalper, full 12-layer stack."
#include <Trade\Trade.mqh>
input group "=== Risk Management ==="
input bool UseMoneyManagement = true;
input double RiskPercent = 2.0;
input double FixedLotSize = 0.01;
input group "=== Trade Settings ==="
input int StopLossPips = 15;
input int Slippage = 3;
input int MagicNumber = 22202017;
input string InpTradeComment = "Psgrowth.com Expert_02017";
input int FractalBuffer = 5; // Pips buffer above/below fractal
input group "=== Filters ==="
input bool UseSpreadFilter = true;
input double MaxSpreadPips = 25.0;
CTrade trade;
int handleFractals, handleATR;
datetime lastBarTime = 0;
double currentATR;
double lastFractalHigh = 0, lastFractalLow = 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 ===";
input bool InpUseGMTSessions = true;
input int InpLondonStartGMT = 7;
input int InpLondonEndGMT = 16;
input int InpNewYorkStartGMT = 12;
input int InpNewYorkEndGMT = 21;
// --- Hardening: Capital Protection ---
input group "=== Capital Protection ===";
input double InpCapAmount = 0.0; // Capital cap amount (0=disabled, effective capital = min(capAmount, equity))
input double InpCapFloor = 1000.0;
input double InpMinEquityPct = 70.0;
// --- Hardening: Trade Safety ---
input group "=== Trade Safety ===";
input int InpMaxTradesPerDay = 10;
input int InpMaxConsecLosses = 5;
input int InpCooldownHours = 4;
input double InpDailyLossLimitPct = 5.0;الكود المصدري الكامل متاح عند التحميل
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.
تحذير صريح: لأغراض تعليمية فقط
تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.
وسطاء موصى بهم لهذا الإكسبرت
هذه الروبوتات تعمل على 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 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.