P
PipsGrowth
أخرىمفتوح المصدر - مجاني

Pipsgrowth EX17028 Volatility — إكسبرت أدفايزر تقلب

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

Pipsgrowth EX17028 Volatility — Refactored Gaussian Band breakout EA with whipsaw filter, RSI system, Bollinger Bands system, and trading sessions. Uses. إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

EX17028 (GB166_Refactored) هو روبوت تداول يعتمد على اختراق النطاقات، يصطاد حالات الخروج من خط غاوسي الأوسط بعد شمعتين داخليتين، ويفلترها بخمسة بوابات مستقلة قبل إرسال أي أمر. الخط الأوسط بحد ذاته هو مجرد متوسط متحرك أسي لفترة 10 على الإطار الزمني للعمل (M5 افتراضيًا، مع تعيين Timeframe=0 في الكود إلى PERIOD_H1 ما لم يضبطه المتداول على 1-7)، يُغلَّف بهامش قدره ±0.85 × ATR(14). اسم "Gauss" في هذا الروبوت هو تسمية فقط، وليس نواة غاوسية حقيقية — التنعيم هو متوسط متحرك أسي بسيط، ويتتبع عرض النطاق التذبذب الحالي بدلًا من عدد نقاط ثابت. يتطلب الدخول الطويل أن تغلق الشمعة الحالية فوق النطاق العلوي، مع إغلاق كلتا الشمعتين السابقتين داخل النطاق — وهو هيكل الاختراق الكلاسيكي «شمعتان داخلتان ثم خروج». تنطبق قواعد متماثلة على الجانب القصير مقابل النطاق السفلي. يجب على كل اختراق مرشح أن يجتاز خمس بوابات إضافية: بوابة الجلسة، وبوابة القفز الزائف (whipsaw)، وبوابة RSI، وبوابة بولنجر باندز، وبوابة الشمعة القوية.

تشغل بوابة الجلسة ثلاث نوافذ GMT قابلة للتهيئة (افتراضيًا 0-8، 8-16، 16-24) تغطي مجتمعةً يومًا كاملًا مدته 24 ساعة، مع معالجة InSession() للفواصل الزمنية العابرة لمنتصف الليل. مع UseTradingSessions=false يتم تجاوز البوابة تمامًا، مما يترك للمتداول حرية ترك الروبوت يعمل على مدار الساعة. بوابة القفز الزائف هي الطبقة الدفاعية الأكثر تميزًا. تمشي CheckWhipsaw() عبر آخر خمس شموع مكتملة وترفض الصفقة إذا (أ) كان نطاق ATR مضغوطًا مقارنة بمتوسط ATR، أو (ب) أكثر من 60% من الشموع تقلبت في الاتجاه، أو (ج) أكثر من 60% من الشموع لها ذيول أكبر من 1.5 ضعف الجسم، أو (د) صافي الحركة عبر فترة النظر أقل من 15% من متوسط ATR، أو اختياريًا (هـ) سلسلة الحجم نفسها تظهر تقلبات كبيرة جدًا. يتم تشغيل فحص الحجم الاختياري عبر RequireVolumeBias، وهو معطل افتراضيًا لإبقاء الروبوت متسامحًا مع الوسطاء الذين ينشرون بيانات حجم الصفقات بشكل متقطع.

تستخدم بوابة RSI مؤشر RSI لفترة 14 (يُنشأ المؤشر عند الاستخدام الأول) وتطلب قيمة داخل النطاق المحايد بدقة — RSI_NeutralLower=40 إلى RSI_NeutralUpper=60 افتراضيًا. كما تؤهل القيم فوق مستوى التشبع الشرائي (70) أو أقل من مستوى التشبع البيعي (30) لرفض الصفقة، لكن عمليًا قيد النطاق المحايد هو الملزم. تشغل بوابة بولنجر باندز مؤشر iBands(20, 2.0) وتقيس المسافة الطبيعية المعيارية للسعر الحالي من النطاق الأوسط كـ |السعر − الأوسط| / (العلوي − السفلي)، وترفض الصفقة إذا كانت هذه المسافة أقل من BB_MiddleBandFilter=0.5. يكتشف كاشف الضغط الاختياري (BB_UseSqueezeDetection، مفعّل افتراضيًا) مقارنة عرض النطاق الحالي بمتوسط عرض النطاق لـ 20 شمعة، ويرفض الصفقة إذا كان العرض الحالي أقل من 50% من المتوسط — وهو مرشح تقلص التذبذب المنخفض الكلاسيكي. تحتفظ بوابة الشمعة القوية بالصفقة على شمعة مهيمنة بالجسم: يجب أن يكون الجسم / الشمعة ≥ 0.6.

بافتراض اجتياز جميع البوابات الخمس، يجب أن يجتاز الاختراق أيضًا فحصَين لتأكيد الاتجاه: يجب أن يكون السعر على الجانب الصحيح من المتوسط المتحرك الأسي (50) للإطار الزمني الأعلى، H4 افتراضيًا، وأن يتفق ميل خط غاوسي (bands.gaussNow > bands.gaussPrev للشراء، والعكس للبيع). يجب أن يكون الاختراق كبيرًا بما فيه الكفاية — يجب أن يتجاوز الفرق بين السعر والخط الأوسط breakDistance × ATR، حيث يكون breakDistance افتراضيًا 0.3 ويمكن لـ AutoTuneFilters() تجاوزه ديناميكيًا بناءً على السبريد الحالي. بمجرد توافق كل شيء، تستدعي CheckAndTradeBreakout() CloseOpposite() لتسوية أي مركز مضاد للإشارة الجديدة، ثم تطلق أمرًا سوقيًا عبر غلاف CTrade بسحر 22217028 وتعليق "Psgrowth.com Expert_17028".

تعمل إدارة المراكز في كل tick داخل ManagePosition(). المخارج الأكثر حدة هي عبور خط غاوسي: إذا انخفض السعر الحالي لمركز شراء إلى ما دون الخط الأوسط، يُغلق المركز فورًا بافتراض فشل الاختراق، والعكس صحيح للبيع. تتابع trailing stop، عند UseTrailingStop=true، تحريك الوقف عند ATR_MultiplierSL × ATR (افتراضي 1.2) خلف bid/ask ولا يتحرك إلا للأمام. تنقل خطوة التعادل، عند UseBreakeven=true، الوقف إلى سعر الدخول بمجرد أن يتجاوز الربح غير المحقق 1.2 × ATR. يقسم قفل الربح الديناميكي، عند EnableDynamicLockProfit=true، الربح المفتوح الحالي على LockProfitEvery_X_Dollars (افتراضي 2 دولار) ويرفع الوقف إلى الدخول ± stepCount × 2 دولار ناقص LockMinusBuffer (افتراضي 1 دولار)، مما يعطي درجًا يحجز ربحًا جزئيًا عند كل عتبة 2 دولار. الـ TP ثابت 160 نقطة من الدخول (FixedTP_Points)، مستقل عن ATR — يفضل الروبوت بساطة هدف الربح الثابت على الهدف المتدرج مع التذبذب. جانب المخاطرة متعمد بنفس القدر: وقف الخسارة لكل صفقة هو أكبر من ATR × 1.2 و HardSL_Points=120، وتضاف مسافة stop-level للوسيط فوق ذلك عبر SLBuy = ask − 1.2 × ATR و SLSell = bid + 1.2 × ATR. لا يوجد تحديد حجم قائم على نسبة المخاطرة في هذا الروبوت — Lots=0.1 حجم ثابت مشفر، والشبكة الوحيدة هي قاطع دائرة MaxDrawdownPercent=10% الذي يوقف معالج OnTick عندما يتجاوز (الرصيد − equity)/الرصيد العتبة. إن OneTradeOnly و AllowOnlyProfitableAdditions=MinProfitPerTradeToAdd=5 دولارات مفاتيح تشغيلية تشكل مدى عدوانية الروبوت في تكديس المراكز في اتجاه واحد، مع قيد أن التركيب يتطلب أن تكون السلة الحالية موجبة صافية بما لا يقل عن 5 دولارات.

في الاختبار الخلفي، توقع أن يتداول الروبوت بشكل غير متكرر — يعني رزمة البوابات المدمجة أن الجلسة النموذجية ترى عددًا قليلًا من الإشارات، وليس تيارًا مستمرًا. يعني هيكل «شمعتان داخليتان ثم خروج» أن أقوى الدخول يأتي بعد تهدئات هادئة، وهو بالضبط النظام الذي تم تصميم فحوصات ضغط BB والقفز الزائف لتصفية تداوله. توقع منحنى مسطح طويل تتبعها دفعات قصيرة من إضافات equity عند توسع التذبذب الذي يكسر النطاق. ينتج TP الثابت 160 نقطة مع SL الديناميكي 1.2 × ATR نسبة مخاطرة/مكافأة تبلغ حوالي 0.85:1 افتراضيًا على جانب أرضية SL، لكن عمليًا يحصد درج قفل الربح الديناميكي أكثر من TP 160 نقطة في الاتجاهات ويعود إلى TP 160 نقطة في الاختراقات الصاخبة.

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

في كل tick، يشغل OnTick() خط أنابيب تصفية من خمس مراحل: قاطع دائرة تراجع 10%، ومرشح جلسة GMT بثلاث نوافذ، وفحص قفز زائف لخمس شموع يضغط تقلبات اتجاه ATR، ونسب الذيول، والإزاحة الصافية، وبوابة منطقة محايدة RSI لفترة 14 (40-60)، وبوابة مسافة وضغط بولنجر باندز (مسافة طبيعية معيارية ≥ 0.5 وعرض النطاق فوق نصف متوسط 20 شمعة). يجب على الإشارات الناجية بعد ذلك أن تشكل اختراق «شمعتان داخلتان ثم خروج» لمغلف EMA(10) ± 0.85 × ATR(14)، مع شمعة مهيمنة بالجسم، ومسافة كسر أدنى قدرها 0.3 × ATR، والسعر على الجانب الصحيح من H4 EMA(50)، وميل غاوسي في اتجاه الصفقة. تستدعي CheckAndTradeBreakout() CloseOpposite() وتطلق أمر السوق عبر CTrade؛ ثم تشغل ManagePosition() trailing stop عند 1.2 × ATR، والتعادل عند ربح 1.2 × ATR، ودرج قفل الربح الديناميكي، وTP الثابت 160 نقطة، وخروج تقاطع خط غاوسي الفوري. تمر جميع تعديلات الأوامر عبر TryModify_EX17028 مع ما يصل إلى ثلاث محاولات إعادة على requote/timeout.

إشارة الدخول

يتم تشغيل صفقة شراء عندما تغلق الشمعة الحالية فوق نطاق غاوسي العلوي (EMA(10) + 0.85 × ATR(14)) بعد إغلاق شمعتين سابقتين داخل النطاق، مع جسم شمعة قوي (≥ 60% من الشمعة)، و RSI لفترة 14 داخل النطاق المحايد 40-60، ومسافة طبيعية معيارية من بولنجر باندز من النطاق الأوسط ≥ 0.5، ولا نمط قفز زائف عبر آخر 5 شموع، والسعر فوق H4 EMA(50)، وميل غاوسي يشير لأعلى مع اختراق يتجاوز 0.3 × ATR. الجانب القصير متماثل مقابل النطاق السفلي. يجب أن تجتاز جميع البوابات الخمس في نفس tick.

إشارة الخروج

تُغلق المراكز عندما يعبر السعر خط غاوسي الأوسط من الجانب المربح (خروج فوري)، أو عندما يرفع trailing stop أو درج قفل الربح الديناميكي الوقف إلى مستوى السعر، أو عندما يتم ضرب TP الثابت 160 نقطة، أو عندما يوقف قاطع دائرة التراجع بنسبة 10% معالج OnTick لبقية الجلسة. تعمل CloseOpposite() أيضًا على تسوية أي مركز في الاتجاه المعاكس عند صدور إشارة جديدة في الاتجاه الآخر.

وقف الخسارة

وقف الخسارة لكل صفقة هو أكبر من ATR(14) × 1.2 و 120 نقطة (HardSL_Points)، مع إضافة مسافة stop-level للوسيط فوق ذلك. بعد أن يتجاوز الربح غير المحقق 1.2 × ATR ينتقل الوقف إلى نقطة التعادل. ثم يرفع درج قفل الربح الديناميكي الوقف بمقدار 2 دولار ناقص عازل 1 دولار لكل 2 دولار ربح إضافي، حتى تُغلق الصفقة عبر خروج تقاطع غاوسي أو TP 160 نقطة.

جني الأرباح

160 نقطة ثابتة (FixedTP_Points) من سعر الدخول، دون تحجيم معتمد على ATR. الـ TP مسافة ثابتة مستقلة عن النظام، مقترنة بـ SL المتغير ودرج قفل الربح الديناميكي بحيث تميل الصفقات الرابحة إلى حصاد أكثر من هدف 160 نقطة في أيام الاتجاه.

الأنسب لـ

XAUUSD M5 افتراضيًا، لكن مدخل Timeframe يقبل 1-7 (M1 إلى D1) ويشير رأس الكود إلى أن الروبوت محمول على الأزواج الرئيسية لـ FX والمعادن. يعمل مرشح القفز الزائف لـ 5 شموع، وبوابة RSI 40-60، وكاشف ضغط BB بأفضل شكل على الذهب السريع الذي يعود إلى المتوسط حيث تتراجع الاختراقات بشكل متكرر — تشغيله على شمعة 5 دقائق يحافظ على أرضية الضوضاء منخفضة. الحد الأدنى الموصى به للرصيد: 100 دولار، مع مخاطرة محدودة بـ 0.1 لوت لكل أمر وقاطع دائرة تراجع 10% من equity. يحافظ وسيط ECN أو RAW-spread على جودة اختراق عالية، لأن عرض النطاق حساس لأرضية السبريد. تغطي نوافذ GMT الافتراضية 0-8 / 8-16 / 16-24 يومًا كاملًا مدته 24 ساعة، لذا فإن ترك الروبوت يعمل على مدار الساعة مقبول؛ يمكن للمتداول الذي يريد التركيز على جلسة محددة ضبط UseTradingSessions=true وتشديد النوافذ.

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

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

العائلة: Volatility الماجيك: 22217028 الإصدار: 2.00

الوصف: Refactored Gaussian Band breakout EA with whipsaw filter, RSI system, Bollinger Bands system, and trading sessions. Uses auto-tuning filters, ATR-based SL, fixed TP, trailing stop, breakeven, dynamic lock profit, and drawdown control. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

المؤشرات:

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

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

  • GetBuffer()
  • GaussianFilter()
  • GetATR()
  • GetEMA_HTF()
  • PositionExists()
  • CloseOpposite()
  • CountOpenTrades()
  • AllPositionsHaveMinProfit()
  • AutoTuneFilters()
  • GetCurrentATR()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX17028 Volatility — Execution Flow (from source analysis)
// Family: Volatility
// Refactored Gaussian Band breakout EA with whipsaw filter, RSI system, Bollinger Bands system, and trading sessions. Uses auto-tuning filters, ATR-based SL, fixed TP, trailing stop, breakeven, dynamic lock profit, and drawdown control. 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)

ملف التحسين

الوسطاء المُحسّنون:
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اسحب الإكسبرت على رسم بياني يطابق الإطار الزمني الموصى به
  7. 7هيّء المعاملات وفقاً للجدول في هذه الصفحة
  8. 8فعّل Allow Algo Trading واضغط OK

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

المعاملالافتراضيالوصف
InpMagicNumber22217028Magic Number
InpTradeComment"Psgrowth.com Expert_17028"Trade Comment
Timeframe0Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1)
TrendFilterTF6Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1)
MaxATR0.0maximum ATR allowed (0 = no max filter)
AllowBuyTradestruenew: enable long entries
AllowSellTradestruenew: enable short entries
LockMinusBuffer1.0Gaussian Bands Settings
RequireVolumeBiasfalseRSI Settings
RSI_AppliedPrice1Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted)
RSI_NeutralLower40.0Bollinger Bands Settings
BB_AppliedPrice1Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted)
UseTradingSessionsfalseenable session filter
TradeSession1StartHour0session#1 start (0–23)
TradeSession1EndHour8session#1 end (0–23)
TradeSession2StartHour8session#2 start
TradeSession2EndHour16session#2 end
TradeSession3StartHour16session#3 start
TradeSession3EndHour24session#3 end
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX17028.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX17028 GB166_Refactored — Refactored Gaussian Band breakout with RSI, BB, and session filters, full 12-layer stack."
#include <Trade\Trade.mqh>
CTrade trade;

//-------------------- INPUT PARAMETERS -----------------------------//
ENUM_TIMEFRAMES MapTimeframeInt(int tf)
{
   switch(tf)
   {
      case 1: return PERIOD_M1;
      case 2: return PERIOD_M5;
      case 3: return PERIOD_M15;
      case 4: return PERIOD_M30;
      case 5: return PERIOD_H1;
      case 6: return PERIOD_H4;
      case 7: return PERIOD_D1;
      default: return PERIOD_H1;
   }
}
ENUM_APPLIED_PRICE MapAppliedPriceInt(int ap)
{
   switch(ap)
   {
      case 1: return PRICE_CLOSE;
      case 2: return PRICE_OPEN;
      case 3: return PRICE_HIGH;
      case 4: return PRICE_LOW;
      case 5: return PRICE_MEDIAN;
      case 6: return PRICE_TYPICAL;
      case 7: return PRICE_WEIGHTED;
      default: return PRICE_CLOSE;
   }
}
ENUM_TIMEFRAMES g_Timeframe = PERIOD_H1;
ENUM_TIMEFRAMES g_TrendFilterTF = PERIOD_H1;
ENUM_APPLIED_PRICE g_RSI_AppliedPrice = PRICE_CLOSE;
ENUM_APPLIED_PRICE g_BB_AppliedPrice = PRICE_CLOSE;
input group "=== Identity ==="
input int    InpMagicNumber             = 22217028;   // Magic Number
input string InpTradeComment            = "Psgrowth.com Expert_17028"; // Trade Comment

ENUM_TIMEFRAMES MapTimeframeInt(int tf)
{
   switch(tf)
   {
      case 1: return PERIOD_M1;
      case 2: return PERIOD_M5;
      case 3: return PERIOD_M15;
      case 4: return PERIOD_M30;
      case 5: return PERIOD_H1;
      case 6: return PERIOD_H4;
      case 7: return PERIOD_D1;
      default: return PERIOD_H1;
   }
}
ENUM_APPLIED_PRICE MapAppliedPriceInt(int ap)

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

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

الوسوم:ex17028volatilitypipsgrowthfreemt5xauusd

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

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

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

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

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

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

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

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