P
PipsGrowth
سكالبينجمفتوح المصدر - مجاني

Pipsgrowth EX14001 Scalper — إكسبرت أدفايزر إكسبرت أدفايزر

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

Pipsgrowth EX14001 Scalper — Inline dual Hull-MA (fast/slow) slope-color consensus signal. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPIT. إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

إكس 14001 سكالبر هو خبير آلي لتداول الاتجاه يعتمد على إغلاق الشمعة، مبني حول توافق مؤشر هول Moving Average المحسوب داخلياً على إطار زمني قابل للتكوين (H4 افتراضياً). إدارة المراكز محافظة بطبيعتها: مخاطرة 0.5% لكل صفقة، ونسبة مكافأة إلى مخاطرة لا تقل عن 1.5:1 على جني الأرباح، ووقف خسارة متحرك يعتمد على ATR(14) يشد خلف السعر، ووقف عند التعادل يُفعَّل مرة واحدة عند +100 نقطة ربح. النظام يقرأ كمتبع اتجاه بطيء ومتعمد، لا كخبير يلتقط التيكات؛ يُسمح بمركز واحد فقط لكل رمز، ولا يتم إرسال أي صفقة جديدة قبل اجتياز فحص من تسع بوابات.

مؤشر هول يُحسب داخل الكود بدلاً من استدعاء iCustom. الدالة HullMAAt(period, tf, shift) تنفذ صيغة آلان هول الكلاسيكية: Hull(n) = LWMA(2 × LWMA(n/2) − LWMA(n), sqrt(n))، حيث تجلب CopyClose سلسلة الإغلاقات من الإطار الزمني المختار ثم تُجري المتوسط المرجح الخطي على طول الفترة المطلوبة. يتم أخذ عينتين من هول لكل تقييم: هول سريع عند InpHullFastPeriod = 65 شمعة، وهول بطيء عند InpHullSlowPeriod = 90 شمعة، كل منهما على انزياحين من الشموع المغلقة (1 و2). اتجاه الإشارة يُستمد من ميل كل منهما: الاتجاه السريع إشارة(hf1 − hf2) والاتجاه البطيء إشارة(hs1 − hs2)، مع نطاق ميت مساوٍ لنقطة واحدة. لا تُطلق إشارة إلا إذا كان كلا الميلين غير صفريين ويشيران إلى الاتجاه نفسه؛ اختلافهما أو استواء أحدهما يعني لا صفقة. تُرجع الدالة أيضاً قيمة ثقة بين 20 و100 مرتبطة بحجم الميل البطيء نسبة إلى السريع.

فوق الإشارة يأتي مصنف نظام السوق بسبع حالات. ClassifyRegime() تسحب 50 شمعة من ATR(14) لحساب النسبة المئوية لـ ATR، و50 شمعة من عرض بولنجر (الفترة 20، الانحراف 2.0) للنسبة المئوية لعرض النطاق، وتقرأ ADX(14). الخرج تسمية ENUM_REGIME: ADX ≥ 25 تعني REG_STRONG_TREND، ADX ≥ 18 تعني REG_WEAK_TREND، نسبة ATR ≥ 80 أو نسبة عرض بولنجر ≥ 75 تعني REG_EXPAND، نسبة عرض بولنجر ≥ 60 تعني REG_BREAKOUT، نسبة ATR ≤ 25 مع نسبة عرض بولنجر ≤ 20 تعني REG_COMPRESS، ADX < 15 تعني REG_CHOPPY، والباقي في REG_RANGE. حالتان فقط — CHOPPY وCOMPRESS — تحظران الدخول كلياً؛ الباقي مسموح. هذا يعني أن الخبير يتجنب عمداً فترات الازدحام أو تلاشي التذبذب، ولا يدخل إلا حين يكون ADX على الأقل 18 أو حين يكون نطاق بولنجر في حالة توسع.

طبقة التأكيد تشترط موافقة المتوسط المتحرك الأسي 50 على الإطار الزمني الأكبر. ConfirmHTF() تقرأ الشمعة المغلقة من الإطار الأكبر (D1 افتراضياً عبر InpHTFtf = 7) وتتحقق من أن إغلاق الشمعة على الجانب الصحيح من المتوسط: أعلى للإشارة الشرائية، وأدنى للبيعية. إشارة شراء تطلق على توافق H4 لكن إغلاق يومي تحت EMA50 تُسقط فوراً. يُؤخذ المتوسط من الشمعة المغلقة فقط (انزياح 1)، لا من الشمعة قيد التشكيل.

سير الطلب يمر عبر فحص NoTradeReason() من تسع بوابات قبل إرسال أي تذكرة. البوابات بالترتيب: InpKillSwitch مفعَّل، ثم الأسهم تحت InpCapitalCapFloor (50 افتراضياً)، ثم بلوغ عدد المراكز المفتوحة إلى InpMaxConcurrentTrades (1)، ثم بلوغ 100 صفقة في اليوم، ثم g_consec_lossesInpCooldownAfterLosses (3)، ثم خسارة اليوم المحققة ≥ InpMaxDailyLossPct (3%) من رأس المال الفعال، ثم خسارة الأسبوع ≥ InpMaxWeeklyLossPct (6%)، ثم فروق السعر أكبر من max(30 نقطة، مستوى الإيقاف لدى الوسيط × 2)، وأخيراً نظام CHOPPY أو COMPRESS. بعد ذلك فلتر الجلسة يطلب أن يكون وقت الخادم بين 07:00 و21:30، مع قطع إضافي عند الجمعة 21:00 لتجنب إغلاق نهاية الأسبوع.

التقييم قائم على المخاطرة. CalcLot() تأخذ مسافة وقف الخسارة (ATR(14) × InpATRStopMult = 2.5) وتحولها إلى حجم لوت بحيث المخاطرة لكل صفقة تساوي InpRiskPercent (0.5%) من رأس المال الفعال. يُقرب اللوت إلى حد الخطوة لدى الوسيط، ويُحصر ضمن الحد الأدنى والأعلى، وتُعاد معايرته عبر OrderCalcMargin() قبل الإرسال. إن كانت InpCapitalCapAmount أكبر من صفر، يصبح رأس المال الفعال min(cap, equity) — أي تقييم من رأس مال ثابت بدلاً من الرصيد الكامل.

منطق الخروج يعمل عند كل إغلاق شمعة على إطار الإشارة بصرف النظر عن النظر في دخول جديد. وقف التعادل يُفعَّل مرة واحدة: عند ربح ≥ InpBreakevenPoints (100 نقطة)، يُنقل وقف الخسارة إلى سعر الفتح + 5 نقاط ولا يُعاد تعيينه. الإيقاف المتحرك بـ ATR، الذي يتحكم به InpTrailATRMult (2.0)، يسحب الوقف خلف السعر فقط حين يكون المركز في ربح بمسافة لا تقل عن مسافة الإيقاف؛ إن كانت عينة ATR غير صالحة، يُتخطى الإيقاف لتلك الشمعة. الخروج من الإشارة المعاكسة هو الذراع الثالثة: إذا انعكس توافق هول على شمعة جديدة، تُغلق جميع المراكز الحية في الاتجاه المعاكس عبر TryClose_EX14001()، التي تحاول الإغلاق ثلاث مرات مع نوم 200ms عند REQUOTE / TIMEOUT / PRICE_OFF / PRICE_CHANGED. TryModify_EX14001() تتبع نفس النمط لتعديلات SL/TP لكن فقط عند REQUOTE / TIMEOUT (نوم 100ms).

طبقة الأوامر محافظة بطبيعتها. trade.SetDeviationInPoints(50) يحد الانزلاق بـ 50 نقطة على الأمر السوقي، ويحاول الفتح إعادة واحدة عند REQUOTE أو TIMEOUT. وضع التعبئة يُختار تلقائياً عبر SetTypeFillingBySymbol. أعلام غطاء رأس المال، مفتاح الإيقاف، والتشغيل الجاف كلها مدخلات للمشغل — InpCapitalCapAmount افتراضياً 0.0 (بدون غطاء)، InpKillSwitch افتراضياً false، وInpDryRun افتراضياً false. يستحق InpDryRun الانتباه: عند تفعيله، يسجل الخبير الأمر الذي كان سيرسله (بالسعر الكامل، SL، TP، ATR، اللوتات) دون إرسال تذكرة فعلية — مفيد لاختبار توقيت الشمعة الجديدة على حساب حقيقي قبل المخاطرة برأس المال.

اختبار خلفي بإعدادات EX14001 الافتراضية — إطار إشارة H4، إطار D1، XAUUSD، رسم بياني M15، مخاطرة 0.5%، مضاعف وقف 2.5، نسبة RR 1.5 — سينتج عدد صفقات منخفضاً مقارنة بسكالبر التيكات. شكل منحنى الأسهم يعتمد أكثر على ما إذا كان توافق H4 مع موافقة D1 يطلق إشارة على الشمعة التاريخية منه على ألفا السكالبنج الدقيق؛ لذا يقضي الخبير معظم الوقت في وضع محايد. هذا تصميم مقصود: محرك اتجاه مشروط بالنظام، وليس شبكة محايدة للسوق. شغّله على وسيط ECN بفارق أقل من 30 نقطة على الذهب، بـ 500 دولار على الأقل لإعطاء التقييم 0.5% مساحة للتنفس عبر فترات التهدئة، وتوقع رقعات مسطحة طويلة تتخللها انفجارات قصيرة حين تتطابق H4 وD1 أخيراً.

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

عند كل إغلاق شمعة على إطار الإشارة، تسحب ClassifyRegime() 50 شمعة من ATR(14) وعرض بولنجر لتصنف السوق في إحدى سبع حالات — اتجاه قوي، اتجاه ضعيف، توسع، اختراق، انضغاط، تقطع، أو نطاق — وحالات CHOPPY وCOMPRESS تحظر الدخول. ثم تأخذ الدالة HullMAAt() عينتين من هول محسوب داخلياً (الفترة 65 سريع، 90 بطيء) عند انزياحين لكل منهما، ببناء الصيغة الكلاسيكية LWMA(2×LWMA(n/2) − LWMA(n), sqrt(n)) مباشرة من سلسلة الإغلاقات؛ لا تُطلق إشارة إلا حين يتوافق كلا ميلي هول على الاتجاه ولا يكون أي منهما مسطحاً. يجب على الإشارة بعد ذلك اجتياز تأكيد الشمعة اليومية EMA(50) على الإطار الأكبر، وفحص NoTradeReason() من تسع بوابات (مفتاح الإيقاف، حد رأس المال، حد المراكز، حدود الخسارة اليومية والأسبوعية، تهدئة 3 صفقات، حد فروق السعر، نافذة الجلسة، قطع الجمعة، وحظر نظام CHOPPY/COMPRESS)، وفحص مسبق للهامش عبر OrderCalcMargin() قبل أن يرسل trade.PositionOpen() التذكرة مع حد انزلاق 50 نقطة. بعد الفتح، تُشغِّل ManageExits() وقف التعادل لمرة واحدة عند +100 نقطة، والإيقاف المتحرك ATR، وإغلاق الإشارة المعاكس — كل تعديل ملفوف في حلقة ثلاث محاولات مع إعادة REQUOTE/TIMEOUT فقط لتغييرات SL/TP.

إشارة الدخول

تطلق إشارة شراء حين يميل كل من هول السريع (الفترة 65) وهول البطيء (الفترة 90) صعوداً عبر شمعتين مغلقتين على إطار الإشارة، وإشارة بيع حين يميل كلاهما هبوطاً — الاختلاف أو الميل المسطح يعني لا إشارة. يجب على الإشارة بعد ذلك اجتياز مصنف النظام بسبع حالات (CHOPPY وCOMPRESS تحظران الدخول) وفلتر الإطار الأعلى المتوسط الأسي 50 (D1 افتراضياً، يجب أن يغلق الشمعة على الجانب الصحيح من المتوسط). التقييم قائم على المخاطرة عند InpRiskPercent = 0.5% من رأس المال الفعال، مع حساب اللوت من مسافة وقف الخسارة ATR(14) × 2.5.

إشارة الخروج

تخرج المراكز عند انعكاس توافق هول الثنائي إلى الاتجاه المعاكس، أو عند تفعيل وقف التعادل مرة واحدة عند +100 نقطة ربح ليقفل المخاطرة عند سعر الفتح + 5 نقاط، أو عبر إيقاف متحرك بـ ATR(14) عند مضاعف 2.0 يسحب خلف السعر فقط حين يكون في ربح يتجاوز مسافة الإيقاف. تُقيَّم الثلاثة عند كل إغلاق شمعة داخل ManageExits()، مع ثلاث محاولات إعادة على REQUOTE / TIMEOUT / PRICE_OFF / PRICE_CHANGED عبر TryClose_EX14001() وTryModify_EX14001().

وقف الخسارة

ATR(14) × InpATRStopMult = 2.5 افتراضياً (على XAUUSD عادةً 60-90 نقطة حسب النظام)، يُحصر ضمن الحد الأدنى لمستوى الإيقاف لدى الوسيط عبر ClampStop() ويُرسل كوقف جانب الخادم عند كل دخول. يُشد وقف الخسارة لاحقاً عبر وقف التعادل والإيقاف المتحرك ATR لكن لا يُعاد توسيعه أبداً.

جني الأرباح

مسافة وقف الخسارة × InpMinRR = 1.5 افتراضياً، فوقف 75 نقطة يحمل TP عند نحو 112 نقطة. يُضبط عند الدخول كجني أرباح ثابت جانب الخادم ولا يُعدَّل بعد ذلك — ManageExits() تحرك وقف الخسارة فقط، لا جني الأرباح.

الأنسب لـ

الحد الأدنى للرصيد الموصى به 100 دولار مع المخاطرة الافتراضية 0.5% لكل صفقة، لكن الخبير يتدرج خطياً مع رأس المال حتى القيمة المضبوطة في InpCapitalCapAmount. الأفضل تشغيله على XAUUSD M15 مع إطار الإشارة H4 وفلتر الإطار الأعلى D1 الافتراضي، على وسيط ECN أو بفارق خام بفارق أقل من 30 نقطة على الذهب، وفقط خلال نافذة 07:00-21:30 بتوقيت الخادم (ساعات لندن ونيويورك). لا تتجاوز حدود الخسارة اليومية 3% أو الأسبوعية 6% أو فترة التهدئة 3 صفقات — هذه هي ما يحافظ على المحرك المشروط بالنظام من النزيف حين ينكسر توافق H4/D1.

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

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

العائلة: Scalper الماجيك: 22214001 الإصدار: 2.00

الوصف: Inline dual Hull-MA (fast/slow) slope-color consensus signal. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

المؤشرات:

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

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

  • LWMA_seg()
  • HullMAAt()
  • ResetDayWeekTracking()
  • RefreshRealizedPnL()
  • EffectiveCapital()
  • HullSignal()
  • ConfirmHTF()
  • NoTradeReason()
  • CalcLot()
  • ClampStop()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX14001 Scalper — Execution Flow (from source analysis)
// Family: Scalper
// Inline dual Hull-MA (fast/slow) slope-color consensus signal. 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
الأطر الزمنية المُحسّنة:
M15M5M30

كيفية تثبيت الإكسبرت على 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اسحب الإكسبرت من Navigator وأفلته على أي رسم بياني (يُنصح بـ M1 أو M5)
  7. 7في نافذة الإعدادات، فعّل Allow Algo Trading وحدد حجم اللوت
  8. 8اضغط OK — سيبدأ الإكسبرت بالتداول تلقائياً

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

المعاملالافتراضيالوصف
InpMagicNumber22214001Magic number (unique per EA)
InpTradeComment"Psgrowth.com Expert_14001"Order comment
InpDryRunfalseDry-run: skip real order sends (default OFF)
InpKillSwitchfalseEmergency kill switch (blocks new entries)
InpCapitalCapAmount0.0Cap amount ($, real money equity)
InpCapitalCapFloor50.0Floor: block new entries below this ($)
InpRiskPercent0.5Risk per trade (% of effective capital)
InpMaxDailyLossPct3.0Max daily loss (% of effective capital)
InpMaxWeeklyLossPct6.0Max weekly loss (% of effective capital)
InpMaxConcurrentTrades1Max concurrent positions (this EA/symbol)
InpCooldownAfterLosses3Cooldown after N consecutive losses (bars)
InpHullFastPeriod65Fast Hull period
InpHullSlowPeriod90Slow Hull period
InpSignalTF6Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Signal timeframe
InpHTFtf7Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // HTF EMA agreement timeframe
InpATRPeriod14ATR period (regime + stops)
InpADXPeriod14ADX period (regime)
InpATRStopMult2.5ATR multiplier for SL
InpMinRR1.5Minimum reward:risk ratio
InpBreakevenPoints100Move to BE after N profit points
InpTrailATRMult2.0ATR trailing multiplier (0=off)
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX14001.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX14001 GUNEA Optimized — dual Hull-MA trend scalper, full 12-layer stack."

#include <Trade\Trade.mqh>
#include <Trade\PositionInfo.mqh>
#include <Trade\SymbolInfo.mqh>
#include <Trade\AccountInfo.mqh>
#include <Trade\OrderInfo.mqh>
#include <Trade\DealInfo.mqh>

//================== IDENTITY & SAFETY =================
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_InpSignalTF = PERIOD_H1;
ENUM_TIMEFRAMES g_InpHTFtf = PERIOD_H1;
input group "=== Identity & Safety ==="
input int    InpMagicNumber      = 22214001;      // Magic number (unique per EA)
input string InpTradeComment     = "Psgrowth.com Expert_14001"; // Order comment
input bool   InpDryRun           = false;          // Dry-run: skip real order sends (default OFF)
input bool   InpKillSwitch       = false;         // Emergency kill switch (blocks new entries)

//================== CAPITAL ALLOCATION CAP =================
input group "=== Capital Allocation Cap ==="
// InpCapitalCapEnabled removed — use InpCapitalCapAmount=0 to disable         // Enable capital cap (REAL money, not notional)
input double InpCapitalCapAmount  = 0.0;        // Cap amount ($, real money equity)
input double InpCapitalCapFloor   = 50.0;         // Floor: block new entries below this ($)

//================== RISK =================
input group "=== Risk Management ==="
input double InpRiskPercent       = 0.5;          // Risk per trade (% of effective capital)

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

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

الوسوم:ex14001scalperpipsgrowthfreemt5xauusd

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

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

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

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

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

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

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

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