Pipsgrowth EX17007 Volatility — إكسبرت أدفايزر تقلب
إكسبرت أدفايزر MT5 مفتوح المصدر · XAUUSD · M15، M5
Pipsgrowth EX17007 Volatility — Gold scalping strategy using ATR burst detection with range breakout confirmation. Enters on ATR expansion + price break. إكسبرت أدفايزر MT5 مفتوح المصدر.
نظرة عامة
اكس 17007 هو مضارب متخصص في الذهب يطارد انفجارات التذبذب على إطار 15 دقيقة ويحوّلها إلى اختراقات بولينجر أو إعادة دخول ارتدادية. الاسم يشرح نفسه: يطلق EA إشارة التداول عندما يرتفع متوسط المدى الحقيقي (ATR) لفترة 14 فوق متوسطه لمدة 20 شمعة بمضاعف قابل للتعديل (افتراضياً 1.3)، ثم يبحث عن محفز اتجاهي — عادة اختراق حافة البولنجر مع تقاطع خط 50 في مؤشر RSI، أو كبديل ذلك اختراق بولنجر مع تقاطع المتوسطات EMA(9)/EMA(21)، أو ارتداد إلى المتوسط السريع داخل اتجاه قائم بين EMA(9) و EMA(21). لا يعتمد الاكس 17007 على إشارة واحدة؛ فهو يفعّل ثلاث طرق دخول مستقلة قابلة للتبديل، وتحصل الطريقة الأعلى ثقة على أولوية التنفيذ عند كل شمعة M15 جديدة.
سلسلة الأولويات الثلاث
يرتب GetSignal() أوضاع الدخول حسب الثقة وليس حسب السرعة. الوضع 1 (انفجار ATR، UseATRBurstEntry) يشترط تحقق ثلاثة شروط في وقت واحد: ATR أكبر من ATR_MA(20) × 1.3، والشمعة M15 السابقة أغلقت خارج حافة بولنجر، ومؤشر RSI(14) قطع خط 50 المنتصف في اتجاه الصفقة. إذا فشل أي شرط، ينتقل الاكس 17007 إلى الوضع 2 (اختراق بولنجر، UseBreakoutEntry) الذي يتطلب إغلاقاً يتجاوز الحافة بهامش نقطتين، ومحاذاة EMA(9) أعلى من EMA(21) للشراء، أو العكس للبيع. إن فشل ذلك أيضاً، ينتظر الوضع 3 (الارتداد، UsePullbackEntry) شمعة تغلق عائدة عبر المتوسط السريع داخل اتجاه فعّال بين EMA(9) و EMA(21). هذا يعني أن سلوك الاكس 17007 يتغير جوهرياً بحسب الأوضاع التي يفعّلها المتداول — إيقاف الوضع 1 يحول الاكس 17007 إلى مضارب اختراق أبطأ وأقل تكراراً؛ تفعيل الأوضاع الثلاثة يولد أكبر عدد صفقات مع أكبر تكرار في التعرض.
مجموعة المؤشرات
تغذي خمسة مؤشرات كل قرار. قراءة ATR(14) تُمهد على مدار 20 شمعة لبناء خط الأساس للانفجار. بولنجر (20 فترة، انحراف 2.0، إغلاق) توفر سكك الاختراق وشروط التمدد. يُقرأ RSI(14) في الشمعة الحالية والسابقة لاكتشاف تقاطع 50. يوفر EMA(9) و EMA(21) فلتر الاتجاه. جميعها مرتبطة بإطار M15 في OnInit() وتُحرر في OnDeinit(). دالة GetPipSize() ترجع 10 * _Point في وسطاء 3 و 5 خانات، و _Point في غيرهم، وهو ما يجعل تحويلات النقاط إلى أسعار آمنة عبر أوضاع تسعير الذهب المعتادة ذات العشريتين والثلاث.
تحديد حجم الصفقة وإدارة المخاطر
مع تفعيل UseMoneyManagement (الإعداد الافتراضي)، تحسب كل صفقة 1.5% من الرصيد الحالي. تحوّل CalculatePositionSize() ذلك إلى لوتات بقسمة مبلغ المخاطرة (الرصيد × 0.015) على حاصل ضرب مسافة وقف الخسارة بالنقاط وقيمة النقطة لكل لوت. تُقرّب النتيجة إلى درجة حجم اللوت لدى الوسيط وتُقص إلى حدود اللوت المتاحة. يتبع ذلك تحقق من الهامش: إذا استهلكت الصفقة المحسوبة أكثر من 90% من الهامش الحر، يُخفض الحجم تناسبياً. عند إيقاف UseMoneyManagement، يستخدم الاكس 17007 FixedLotSize=0.01 بصرف النظر عن مسافة وقف الخسارة، وهو إعداد تشخيصي مفيد لاختبارات الخلفية لكنه ليس إعداداً إنتاجياً.
وقف الخسارة وجني الأرباح
وقف الخسارة تكيفي، مرتبط بالـ ATR الحالي: المسافة هي الحد الأقصى بين (ATR الحالي × 2.0)، و (StopLossPips × حجم النقطة، 15 نقطة افتراضياً)، و (1.5 × مستوى الإيقاف لدى الوسيط). هذا يعني في فترات التذبذب المنخفض يسود الحد الأدنى، وفي فترات التذبذب المرتفع يسود ربط ATR، وفي كلتا الحالتين يحترم الإيقاف الحد الأدنى من المسافة لدى الوسيط. جني الأرباح ثابت بنسبة مخاطرة إلى عائد 1:2 — أي ضعف مسافة وقف الخسارة تماماً من نقطة الدخول. لا توجد طبقة جني أرباح جزئي، ولا جني أرباح سلة، ولا خروج قائم على الزمن في المصدر؛ الإيقاف المتحرك هو الآلية الوحيدة التي تعدّل مخرج الصفقة المفتوحة.
الإيقاف المتحرك
تعمل ManageOpenPositions() عند كل تيك (قبل بوابة الشمعة الجديدة)، وعندما تكون الصفقة في ربح يتجاوز TrailingStartPips (12 نقطة افتراضياً)، يُرفع الإيقاف إلى السعر الحالي ناقص/زائد TrailingStartPips. لا يتحرك الإيقاف إلا في الاتجاه الملائم وفقط عندما يتجاوز التحرك TrailingStepPips (5 نقاط) — حركة حقيقية لا ضوضاء حجمها بمقدار نقطة. تتحقق SafePositionModify() من كل تعديل مقابل الحد الأدنى من مسافة الإيقاف لدى الوسيط قبل إرساله، وتعيد TryModify_EX17007() المحاولة حتى 3 مرات عند requote أو timeout مع نوم 100ms.
الهرمنة (Pyramiding)
السلوك الافتراضي هو فتح صفقة واحدة في كل مرة، لكن UsePyramiding يمكن تشغيله. عند التفعيل، تسمح CanOpenPosition() بفتح حتى MaxOpenPositions (3) صفقات في الاتجاه نفسه، كل واحدة على بعد PyramidDistPips (20) على الأقل من السابقة. فحص المسافة بالنقاط وليس بالـ ATR، لذا يمكن أن ينتج عن نظام ATR ضيق إضافات متراصة، بينما نظام ATR المتسع يوزعها طبيعياً.
الفلاتر والسلامة
تعمل ثلاث بوابات قبل التداول عند كل شمعة M15 جديدة. UseTimeFilter يقيد الإشارات إلى نافذة وقت الخادم بين StartTime (08:00) و EndTime (17:00)، وهي التي تلتقط جلسات لندن ونيويورك المبكرة — حيث يشهد الذهب أعلى مدى يومي وأنظف اختراقات. UseSpreadFilter يرفض الشموع التي يتجاوز فيها الفارق MaxSpreadPips (25 نقطة)، وهو معايرة للذهب حيث يتراوح الفارق عادة بين 10 و 30. تتحقق CheckDailyLimits() من مقارنة الرصيد الحالي بالرصيد في بداية اليوم التقويمي وتعطل الإشارات الجديدة إذا كان الربح/الخسارة اليومي أقل من -30 دولاراً، لكنها لا تغلق تلقائياً الصفقات القائمة.
ماذا تتوقع من اختبار الخلفية
مزيج ثلاث طرق دخول قابلة للتبديل ونسبة ثابتة 1:2 يعني أن ملف الاكس 17007 يعتمد بشدة على الأوضاع التي يفعّلها المستخدم. انفجار ATR فقط ينتج أقل الإشارات وأعلاها ثقة. الارتداد فقط أكثر نشاطاً ويتابع الاتجاه بشكل أفضل. تفعيل الثلاثة يولد أعلى عدد صفقات وأكثر تعرض مكرر. لأن وقف الخسارة يتكيف مع ATR، ستتدرج مخاطرة الصفقة بالنقاط مع ظروف السوق؛ وإعداد 1.5% يحافظ على ثبات المخاطرة الدولارية، لكن التعرض لكل نقطة يرتفع وينخفض مع التذبذب. شغّل Strategy Tester في وضع "كل تيك" أو "كل تيك بناءً على تيكات حقيقية"، وليس "أسعار الفتح فقط"، لأن الإيقاف المتحرك وتعديلات الأوامر تعتمد على تطور السعر تيك بتك.
تفاصيل الاستراتيجية
تُرفق خمسة مؤشرات — ATR(14)، بولنجر (20، 2.0، إغلاق)، RSI(14)، EMA(9)، EMA(21) — على إطار M15 في OnInit() وتُحدّث عند كل شمعة جديدة. يرتب GetSignal() ثلاث طرق دخول مستقلة حسب الثقة: بوابة انفجار ATR التي تشترط ATR الحالي أكبر من 1.3 × متوسطه لمدة 20 شمعة مع اختراق حافة بولنجر وتقاطع RSI(14) لمستوى 50؛ بوابة اختراق بولنجر التي تتطلب إغلاقاً يتجاوز الحافة مع محاذاة EMA(9) فوق EMA(21)؛ وبوابة ارتداد تنتظر شمعة تغلق عائدة عبر EMA(9) داخل اتجاه فعّال. تحوّل CalculatePositionSize() مخاطرة 1.5% من الرصيد إلى لوتات (مع العودة إلى 0.01 ثابت عند إيقاف UseMoneyManagement) وتطبق سقف 90% من الهامش الحر. يُحدد جني الأرباح 1:2 ووقف الخسارة المرتبط بالـ ATR عند فتح الأمر، ثم تعمل ManageOpenPositions() عند كل تيك لرفع الإيقاف عبر SafePositionModify() بمجرد أن يتجاوز الربح 12 نقطة، بخطوة كل 5 نقاط. تعطل CheckDailyLimits() الإشارات الجديدة إذا كان اليوم أقل من -30 دولاراً من سحب الرصيد لكنها لا تُغلق الصفقات القائمة.
يفتح الاكس 17007 إشارة على أي من ثلاث طرق دخول مستقلة: انفجار ATR(14) فوق 1.3 × متوسط 20 شمعة متزامن مع اختراق حافة بولنجر وتقاطع RSI(14) لمستوى 50، أو اختراق بولنجر مع محاذاة اتجاه EMA(9) فوق EMA(21)، أو ارتداد إلى EMA(9) داخل اتجاه قائم بين EMA(9) و EMA(21). كل وضع قابل للتبديل، وعند تفعيل الثلاثة تأخذ الطريقة الأعلى ثقة (انفجار ATR) الأولوية. تُنفذ الصفقات عند افتتاح شمعة M15 التي تلي شمعة الإشارة.
لا يوجد خروج من إشارة معاكسة ولا إغلاق قائم على الزمن في الاكس 17007؛ يعتمد الاكس 17007 كلياً على جني الأرباح الأولي الثابت والإيقاف المتحرك. تدير ManageOpenPositions() رفع وقف الخسارة إلى الأمام بمجرد أن يتجاوز الربح TrailingStartPips (12 نقطة)، ثم تحركه كل TrailingStepPips (5 نقاط) من حركة سعر إضافية، وفقط في الاتجاه الملائم. يُحدد جني الأرباح بنسبة 1:2 عند فتح الأمر ولا يُعدّل أبداً.
وقف الخسارة تكيفي ومرتبط بالـ ATR: مسافة الإيقاف هي الحد الأقصى بين (ATR الحالي × 2.0)، و (StopLossPips × حجم النقطة، 15 نقطة افتراضياً)، و 1.5 × مستوى الإيقاف لدى الوسيط. تنطبق صيغة الإيقاف نفسها على جميع أنواع الإشارات (انفجار ATR، اختراق بولنجر، ارتداد)؛ ولا يوجد حد سحب equity عالمي أو سقف خسارة سلة بخلاف بوابة الربح/الخسارة اليومي البالغة -30 دولاراً.
جني الأرباح نسبة ثابتة 1:2، يحدد بالضبط عند ضعف مسافة وقف الخسارة من نقطة الدخول عند فتح الأمر. لا يوجد جني أرباح جزئي، ولا جني أرباح سلة، ولا تعديل لجني الأرباح من منطق الإيقاف المتحرك — يترك الاكس 17007 جني الأرباح الأصلي دون مساس ما لم يُقرب الإيقاف المتحرك منه.
الحد الأدنى للرصيد الموصى به هو 100 دولار (أو ما يعادله بالذهب)، والذي يحوّله إعداد المخاطرة 1.5% إلى مخاطرة تقارب 1.50 دولار للصفقة بالإعدادات الافتراضية. صُمم الاكس 17007 للذهب XAUUSD على إطار M15 (ويعمل أيضاً على M5)؛ ويستهدف نافذة جلستي لندن ونيويورك المبكرة من 08:00 إلى 17:00 بتوقيت الخادم، حيث ينتج الذهب أنظف انفجارات ATR واختراقات حافة. متطلبات الوسيط: تنفيذ XAUUSD بفارق منخفض (فلتر الفارق 25 نقطة معايرة لفوارق الذهب المعتادة بين 10 و 30 نقطة)، حساب تحوطي أو تجميعي، ودرجة لوت 0.01. مستوى المخاطرة متوسط بالنظر إلى مخاطرة 1.5% لكل صفقة ونسبة 1:2.
منطق الاستراتيجية
Pipsgrowth EX17007 Volatility — تحليل منطق الاستراتيجية (من كود .mq5)
العائلة: Volatility
الماجيك: 22217007
الإصدار: 2.00
الوصف:
Gold scalping strategy using ATR burst detection with range breakout confirmation. Enters on ATR expansion + price breakout + RSI cross, with tiered TP, trailing stop, time- based exit and dynamic position sizing. Full 12-layer stack. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester
المؤشرات:
- مؤشرات قياسية
الدوال الرئيسية:
SafePositionModify()RefreshIndicators()GetSignal()CanOpenPosition()OpenPosition()CalculatePositionSize()ManageOpenPositions()IsNewBar()GetPipSize()CheckDailyLimits()
// Pipsgrowth EX17007 Volatility — Execution Flow (from source analysis)
// Family: Volatility
// Gold scalping strategy using ATR burst detection with range breakout confirmation. Enters on ATR expansion + price breakout + RSI cross, with tiered TP, trailing stop, time- based exit and dynamic position sizing. Full 12-layer stack. 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اسحب الإكسبرت على رسم بياني يطابق الإطار الزمني الموصى به
- 7هيّء المعاملات وفقاً للجدول في هذه الصفحة
- 8فعّل Allow Algo Trading واضغط OK
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| UseMoneyManagement | true | Use Dynamic Risk % |
| RiskPercent | 1.5 | Risk Percent per Trade |
| FixedLotSize | 0.01 | Fixed Lot Size (if MM false) |
| MaxDailyLossUSD | 30.0 | Max Daily Loss ($) |
| ATR_Period | 14 | ATR Period |
| ATR_MA_Period | 20 | ATR MA Period |
| ATRBurstMultiplier | 1.3 | ATR Spike Multiplier |
| UseATRBurstEntry | true | Use ATR Burst Entry |
| UseBreakoutEntry | true | Use Bollinger Breakout Entry |
| UsePullbackEntry | true | Use Pullback Entry |
| RSI_Period | 14 | RSI Period |
| BB_Period | 20 | Bollinger Period |
| BB_Deviation | 2.0 | Bollinger Deviation |
| FastEMA_Period | 9 | Fast EMA Period |
| SlowEMA_Period | 21 | Slow EMA Period |
| StopLossPips | 15 | Min Stop Loss (pips) |
| SL_ATR_Multiplier | 2.0 | SL ATR Multiplier |
| Slippage | 3 | Max Slippage (points) |
| InpMagicNumber | 22217007 | Magic Number (222 + Expert ID) |
| InpTradeComment | "Psgrowth.com Expert_17007" | Trade Comment |
| UseTrailingStop | true | Use Trailing Stop |
| TrailingStartPips | 12 | Trailing Start (pips) |
| TrailingStepPips | 5 | Trailing Step (pips) |
| UsePyramiding | false | Use Pyramiding |
| MaxOpenPositions | 3 | Max Open Positions |
| PyramidDistPips | 20 | Distance between entries (pips) |
| UseSpreadFilter | true | Use Spread Filter |
| MaxSpreadPips | 25.0 | Max Spread (pips) - XAUUSD typically 10-30 |
| UseTimeFilter | true | Use Time Filter |
| StartTime | "08:00" | Start Time (HH:MM) |
| EndTime | "17:00" | End Time (HH:MM) |
#property copyright "Pipsgrowth.com"
#property link "https://pipsgrowth.com"
#property version "2.00"
#property strict
#property description "Pipsgrowth.com EX17007 GoldScalper_ATRBurst_RangeBreakout — ATR burst range breakout gold scalper, full 12-layer stack."
#include <Trade\Trade.mqh>
//+------------------------------------------------------------------+
//| Inputs |
//+------------------------------------------------------------------+
input group "=== Risk Management ==="
input bool UseMoneyManagement = true; // Use Dynamic Risk %
input double RiskPercent = 1.5; // Risk Percent per Trade
input double FixedLotSize = 0.01; // Fixed Lot Size (if MM false)
input double MaxDailyLossUSD = 30.0; // Max Daily Loss ($)
input group "=== ATR Settings ==="
input int ATR_Period = 14; // ATR Period
input int ATR_MA_Period = 20; // ATR MA Period
input double ATRBurstMultiplier = 1.3; // ATR Spike Multiplier
input group "=== Entry Settings ==="
input bool UseATRBurstEntry = true; // Use ATR Burst Entry
input bool UseBreakoutEntry = true; // Use Bollinger Breakout Entry
input bool UsePullbackEntry = true; // Use Pullback Entry
input int RSI_Period = 14; // RSI Period
input group "=== Bollinger Bands ==="
input int BB_Period = 20; // Bollinger Period
input double BB_Deviation = 2.0; // Bollinger Deviation
input group "=== EMA Settings ==="
input int FastEMA_Period = 9; // Fast EMA Period
input int SlowEMA_Period = 21; // Slow EMA Period
input group "=== Trade Settings ==="
input int StopLossPips = 15; // Min Stop Loss (pips)
input double SL_ATR_Multiplier = 2.0; // SL ATR Multiplier
input int Slippage = 3; // Max Slippage (points)
input int InpMagicNumber = 22217007; // Magic Number (222 + Expert ID)
input string InpTradeComment = "Psgrowth.com Expert_17007"; // Trade Comment
input group "=== Trailing Stop ==="
input bool UseTrailingStop = true; // Use Trailing Stop
input int TrailingStartPips = 12; // Trailing Start (pips)
input int TrailingStepPips = 5; // Trailing Step (pips)
input group "=== Pyramiding ==="
input bool UsePyramiding = false; // Use Pyramiding
input int MaxOpenPositions = 3; // Max Open Positions
input int PyramidDistPips = 20; // Distance between entries (pips)
input group "=== Filters ==="
input bool UseSpreadFilter = true; // Use Spread Filter
input double MaxSpreadPips = 25.0; // Max Spread (pips) - XAUUSD typically 10-30
input bool UseTimeFilter = true; // Use Time Filter
input string StartTime = "08:00"; // Start Time (HH:MM)
input string EndTime = "17:00"; // End Time (HH:MM)
الكود المصدري الكامل متاح عند التحميل
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.
تحذير صريح: لأغراض تعليمية فقط
تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.
وسطاء موصى بهم لهذا الإكسبرت
هذه الروبوتات تعمل على MT5 — استخدم وسيطاً موثوقاً بتنفيذ سريع وسبريد منخفض
إكسبرتات مشابهة
عرض جميع الإكسبرتاتإكسبرتات أخرى بنفس استراتيجية أخرى
Pipsgrowth EX01007 Adaptive — إكسبرت أدفايزر تكييفي
Pipsgrowth EX01007 Adaptive — Adaptive signal scorer EA combining EMA crossover, RSI, Heiken Ashi, Bollinger Bands, ATR and volume spike detection int. إكسبرت أدفايزر MT5 مفتوح المصدر.
Pipsgrowth EX01019 Adaptive — إكسبرت أدفايزر تكييفي
Pipsgrowth EX01019 Adaptive — Self-adaptive market regime EA that auto-detects trending, ranging, volatile, quiet and breakout conditions. Switches be. إكسبرت أدفايزر MT5 مفتوح المصدر.
Pipsgrowth EX15029 SMC-OrderBlock — إكسبرت أدفايزر إكسبرت أدفايزر
Pipsgrowth EX15029 SMC-OrderBlock — Smart Money Concepts breakout EA — detects order blocks, CHOCH and liquidity sweeps using EMA cross + structure break, A. إكسبرت أدفايزر MT5 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.