P
PipsGrowth
متابعة الاتجاهمفتوح المصدر - مجاني

Pipsgrowth EX18009 TrendFollow — إكسبرت أدفايزر إكسبرت أدفايزر

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

Pipsgrowth EX18009 TrendFollow — Triple-EMA-Stack + Hull-MA Trigger Trend Rider — H1 triple EMA stack (21/50/200) directional bias + M15 inline Hull-MA s. إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

EX18009 هو رايدر اتجاه متعدد الإطارات مبني على تحيّز اتجاهي من الرسم البياني H1 ومحفز دخول على M15. ينبع التحيّز من مكدس EMA ثلاثي على H1 — مؤشرات iMA بفترات افتراضية 21 و50 و200 — ويُصنَّف على أنه صاعد فقط عندما يكون السريع > المتوسط > البطيء وتتابع أعمدة الإغلاق الأخيرة في حالة توسّع. المحفز هو متوسط هول المتحرك المحسوب داخليًا على إغلاق M15، تُحسب قيمته داخل الـ EA بمعادلة مبنية على WMA (هول(الفترة) = 2×WMA(فترة/2) - WMA(الفترة)) ويقرأ اتجاه ميله عبر آخر ثلاثة أعمدة. إشارة الشراء تتطلب معًا: STACK_BULL على H1 بالإضافة إلى HULL_BULL على M15، وإشارة البيع تحتاج STACK_BEAR مع HULL_BEAR. تُحسب الثقة من المسافة بين إغلاق M15 وهول كنسبة من ATR(14) مضافًا إليها هامش ADX فوق عتبة 22.0.

الإشارة لا تعمل منفردة. يقرأ الـ EA طبقة تأكيد قبل إرسال أي أمر. دالة ConfirmBuy() تتطلب أن يكون سعر العرض فوق EMA(50) لـ H1، وأن لا ينعكس المتوسط هبوطيًا عبر السعر، وأن يكون RSI(14) للشمعة السابقة في النطاق 45–78. دالة ConfirmSell() تعكس الاختبار على الجانب الهابط بنطاق RSI من 22–55. بعد التأكيد، يضع كود الدخول وقف الخسارة عند ask - ATR(14) × 2.0 وجني الأرباح عند ask + ATR(14) × 3.0، مما يعطي نسبة عائد إلى مخاطرة قدرها 1.5:1، ثم تقوم بوابة الدخول بترشيحها صارمًا مقابل InpMinRR = 1.2. لا يُرسَل أمر الشراء إلا إذا لم تكن هناك صفقة قائمة في نفس الاتجاه، ما لم يُفعَّل التراكم (يكون معطّلًا افتراضيًا) ويكون عدد الصفقات القائمة في نفس الاتجاه أقل من PYRAMID_MAX_LEVELS = 5.

حجم اللوت ثابت كسري محسوب على رأس المال الفعّال. تأخذ CalcLots() مسافة وقف الخسارة بالسعر، تحوّلها إلى تكات، وتحلّ الحجم الذي يخاطر بـ g_effectiveCap × 0.5%. رأس المال الفعّال هو الأصغر بين InpCapAmount (اضبطه على 0 لتعطيل) وبين حقوق الحساب الحية، مع عتبة دنيا صلبة قدرها 50$ ترفض NoTradeGates() أي دخول جديد تحتها بكود السبب CAPITAL_BELOW_FLOOR.

طبقة النظام (الريجيم) هي حارس البوابة لكل دخول. تعمل UpdateRegime() من ADX(14) ومن نسبة ATR المئوية على 100 شمعة ومن نسبة عرض بولنجر(20, 2.0). عندما يتجاوز ADX قيمة InpADXStrong = 30.0 يكون النظام STRONG_TREND؛ بين 22 و30 يكون WEAK_TREND؛ ضغط عرض بولنجر يحدد COMPRESS؛ عرض بولنجر متسع مع نسبة ATR عالية يحدد EXPAND؛ نسبة ATR المرتفعة وحدها تكون BREAKOUT؛ بقية الوقت يكون RANGE أو CHOPPY. تقبل RegimeAllowsEntry() الأربعة الأولى فقط وترفض الباقي.

إدارة المخاطر وتدفق الصفقات مسيّجة بمكدس متعدد الطبقات. قبل كل محاولة دخول، تتحقق NoTradeGates() من قفل الإيقاف، وعتبة رأس المال، ومؤقت التهدئة، وحد خسارة اليوم المحقق 3.0% من رأس المال الفعّال، وحد الأسبوع المحقق 6.0%، وسقف سبريد نسبي مع ATR (spread > ATR(14) × 30% مرفوض)، ونافذة وقت الخادم 0:00–21:00، ويوم الأسبوع (السبت/الأحد محظوران)، وعدد الصفقات المفتوحة مقابل InpMaxPositions = 5، والنظام، وعلامة وضع التداول للرمز. مؤقت التهدئة تُغذّيه TrackCooldownOnDeal(): عندما تتراكم ثلاث صفقات خاسرة متتالية في سجل هذا الـ EA، يُدفع g_cooldownUntil ست ساعات إلى المستقبل ويُرفض أي دخول حتى انتهاء المؤقت.

تُدار الصفقات المفتوحة في كل تيك. تقرر ManageOpen() أولاً ما إذا كان هول M15 قد انعكس إلى الميل المعاكس — يصبح ذلك إغلاقًا فوريًا (OPP_HULL_BUY / OPP_HULL_SELL). ثم تُجري اختبار تقاطع ستوكاستيك ذروة شراء/بيع على الشمعة المغلقة، واختبار ارتفاع التذبذب الذي يقارن ATR(14) الحالي بمتوسط قيم ATR العشرين السابقة مضروبًا في VOL_SPIKE_MULT = 2.6، واختبار تغيّر النظام الذي يُغلق الصفقات الرابحة عندما ينخفض النظام إلى CHOPPY أو RANGE أو COMPRESS. لا تعمل هذه المخارج الصلبة على صفقة خاسرة — تعمل فقط على الصفقات الرابحة حاليًا. للصفقات التي تنجو، يطبّق المدير وقف تعادل لمرة واحدة عند +1.0 × ATR(14) بهامش 0.1 × ATR(14)، ثم يُحرّك وقف الخسارة المترحّل الذي يبدأ عندما يتجاوز الربح 1.5 × ATR(14) ويمشي على مسافة 1.0 × ATR(14). يُطلَق إغلاق جزئي عندما يصل الربح غير المحقق إلى نصف مسافة جني الأرباح الأصلية: يُغلَق 50% من الصفقة عند TP1 بشرط أن يبقى الحجم المتبقي مساويًا أو أكبر من 1.5 مرة الحد الأدنى للوت عند الوسيط.

يوم الجمعة بعد الساعة 20:00 بتوقيت الخادم، يُسطّح الـ EA الكتاب عبر ShouldCloseForWeekend() لتجنب فجوات نهاية الأسبوع. يستخدم المحسّن في OnTester() معيارًا مخصصًا — (PROFIT × PROFIT_FACTOR) / (1 + BALANCE_DDREL_PERCENT) — ولا يُقيّم التشغيل إلا إذا نفّذ 30 صفقة على الأقل، فأي جلسة تحسين تنتهي ببيانات متفرقة تُرجع صفرًا وتُستبعد تلقائيًا من قائمة التحسين.

الإعدادات العملية الافتراضية هي USDJPY على إطار M15، بسحر 22218009 وتعليق Psgrowth.com Expert_18009. معاملات المخاطرة هي 0.5% لكل صفقة، وحدود سحب يومي 3% وأسبوعي 6%، وتهدئة 6 ساعات بعد ثلاث خسائر متتالية. يُكتشف وضع التعبئة تلقائيًا من علم SYMBOL_FILLING_MODE للرمز (يُفضّل FOK ثم IOC ثم RETURN). الإعداد الافتراضي InpDryRun = true يعني أن الـ EA يسجل الأوامر التي كان سيرسلها دون إرسالها فعليًا — اقلبه إلى false قبل التشغيل الحي. تُقرأ قيمة البيب والحد الأدنى للوت وحجم التيك من الرمز عند التهيئة، لذا فالـ EA قابل للنقل إلى أزواج FX رئيسية أخرى والمعادن دون إعادة ترجمة، لكن فترة هول وعتبة ADX كانتا معايرتين أصلًا لـ USDJPY وستقرآن بشكل مختلف على زوج أسرع أو أبطأ.

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

في كل تيك يُحدّث الـ EA تسعة مؤشرات (ATR/ADX/RSI/BB على إطار العمل بالإضافة إلى EMA(50) لـ H1 ومكدس EMA 21/50/200 على H1) ومتوسط هول محسوب داخليًا من مصفوفات CopyClose. تصنّف UpdateRegime() السوق الحالي إلى واحدة من سبع حالات من ADX ومن نسبة ATR(100) المئوية وعرض بولنجر(20, 2.0)، وترفض RegimeAllowsEntry() حالات RANGE/COMPRESS/CHOPPY مباشرة. تتطلب CoreSignal() توافق مكدس EMA على H1 وميل هول على M15 على الاتجاه، مع درجة ثقة مستمدة من المسافة بين إغلاق M15 وهول كنسبة من ATR مضافًا إليها هامش ADX فوق 22. تتطلب ConfirmBuy() وConfirmSell() بعد ذلك أن يدعم EMA(50) لـ H1 الصفقة، وأن يكون RSI(14) للشمعة السابقة داخل النطاق الاتجاهي، وأن تكون نسبة R:R الدنيا عند 1.2:1. تعمل ManageOpen() بالتوازي في كل تيك، فتطبّق وقف تعادل لمرة واحدة، ووقف خسارة متحرك بـ ATR، وإغلاق جزئي 50% عند نصف مسافة جني الأرباح، وأربعة محفزات خروج صلبة (انعكاس هول المعاكس، تقاطع ستوكاستيك ذروة شراء/بيع، ارتفاع تذبذب فوق 2.6× متوسط ATR، تدهور النظام) تعمل جميعها على الصفقات الرابحة فقط.

إشارة الدخول

يبدأ الشراء عندما يكون مكدس EMA(21/50/200) على H1 صاعدًا ومتوسعًا على الشمعة المغلقة، وأن يكون ميل هول(34) المحسوب داخليًا على M15 صاعدًا عبر آخر ثلاث شموع، وأن يكون سعر العرض فوق EMA(50) لـ H1 وأن يكون RSI(14) في النطاق 45–78. تعكس إشارات البيع الشروط على الجانب الهابط بنطاق RSI 22–55 ومكدس EMA هابط. يجب أن يتجاوز ADX(14) قيمة 22، وأن يكون النظام STRONG_TREND أو WEAK_TREND أو BREAKOUT أو EXPAND، وأن يبقى السبريد الحي أقل من 30% من ATR(14).

إشارة الخروج

تعمل المخارج فقط على الصفقات الرابحة: إغلاق عند انعكاس ميل هول M15 إلى الاتجاه المعاكس، أو تقاطع ستوكاستيك ذروة شراء/بيع على الشمعة المغلقة، أو ارتفاع ATR(14) فوق 2.6× متوسط ATR لـ 20 شمعة، أو انخفاض النظام إلى CHOPPY/RANGE/COMPRESS. الصفقات التي لا تُغلق بهذه المخارج الصلبة تنتقل إلى وقف تعادل لمرة واحدة عند +1.0×ATR(14) بهامش 0.1×ATR(14)، ثم يُحرّك وقف خسارة متحرك يبدأ عند +1.5×ATR(14) ربح ويمشي على مسافة 1.0×ATR(14). يوم الجمعة بعد الساعة 20:00 بتوقيت الخادم يُسطّح الـ EA الكتاب لتجنب فجوات نهاية الأسبوع.

وقف الخسارة

يُوضع وقف الخسارة الأولي عند الدخول - 2.0 × ATR(14) لصفقات الشراء والدخول + 2.0 × ATR(14) لصفقات البيع، ثم يُنقل إلى نقطة التعادل (الدخول ± 0.1 × ATR(14)) بمجرد أن يتجاوز الربح 1.0 × ATR(14). بعد ربح +1.5 × ATR(14) يتحرك الوقف للأمام على مسافة 1.0 × ATR(14)، مع احترام الحد الأدنى لـ SYMBOL_TRADE_STOPS_LEVEL لدى الوسيط.

جني الأرباح

جني الأرباح ثابت على بُعد 3.0 × ATR(14) من نقطة الدخول، مما يعطي نسبة عائد إلى مخاطرة 1.5:1 مقابل وقف 2.0 × ATR(14). يُؤخذ إغلاق جزئي بنسبة 50% عندما يصل الربح غير المحقق إلى نصف مسافة جني الأرباح الأصلية، ويُترك الباقي إما ليتحرّك بوقف متحرك أو ليصل إلى جني الأرباح الكامل. الحد الأدنى لنسبة العائد إلى المخاطرة 1.2:1 يُفحص صرامة قبل إرسال أي أمر.

الأنسب لـ

يُنشر بأفضل صورة على USDJPY M15 مع وسيط يعرض الزوج ضمن سقف سبريد قدره 0.3 × ATR(14) ويدعم تعبئة FOK أو IOC. الحد الأدنى الموصى به لحقوق الحساب 100$ مع إعداد المخاطرة 0.5% لكل صفقة، يعتبر الـ EA 50$ منها عتبة صلبة للصفقات الجديدة. تجعل نافذة 0:00–21:00 بتوقيت الخادم وتسطيح الجمعة عند 20:00 منه مناسبًا جدًا للحسابات التي تعمل وفق جدول تداخل آسيا/آسيا-لندن؛ الـ EA قابل للنقل إلى أزواج FX رئيسية أخرى والمعادن بإعادة الترجمة لكن فترة هول 34 وعتبة ADX 22 كانتا معايرتين أصلًا لـ USDJPY وستقرآن بشكل مختلف على زوج أسرع أو أبطأ.

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

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

العائلة: TrendFollow الماجيك: 22218009 الإصدار: 2.00

الوصف: Triple-EMA-Stack + Hull-MA Trigger Trend Rider — H1 triple EMA stack (21/50/200) directional bias + M15 inline Hull-MA slope cross trigger on CLOSED bar. ADX must be above threshold. Entries confirmed by HTF-EMA agreement, RSI not- extreme, and min R/R. Full regime layer (ADX+ATR-pctile+BB- width) gates entries and sizing/trail. Capital-allocation-cap, ATR-trail, BE, partial TP, pyramid OFF by default, stochastic/ volatility exit, opposite-Hull exit, daily/weekly loss limits, no-trade gates, broker-portable fills. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

المؤشرات:

  • ATR
  • ADX
  • RSI
  • BB
  • HTFema
  • Stoch
  • EmaFast
  • EmaMed
  • EmaSlow

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

  • NormPrice()
  • ClampVolume()
  • StopsLevelPrice()
  • RespectStopsBuySL()
  • RespectStopsSellSL()
  • LogFail()
  • CountPositions()
  • SumRealized()
  • WMA()
  • HullMAFromArr()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX18009 TrendFollow — Execution Flow (from source analysis)
// Family: TrendFollow
// Triple-EMA-Stack + Hull-MA Trigger Trend Rider — H1 triple EMA stack (21/50/200) directional bias + M15 inline Hull-MA slope cross trigger on CLOSED bar. ADX must be above threshold. Entries confirmed by HTF-EMA agreement, RSI not- extreme, and min R/R. Full regime layer (ADX+ATR-pctile+BB- width) gates entries and sizing/trail. Capital-allocation-cap, ATR-trail, BE, partial TP, pyramid OFF by default, stochastic/ volatility exit, opposite-Hull exit, daily/weekly loss limits, no-trade gates, broker-portable fills. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

ON_INIT:
    Create indicator handles: ATR, ADX, RSI, BB, HTFema, Stoch, EmaFast, EmaMed, EmaSlow
    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
الرموز المُحسّنة:
USDJPY
الأطر الزمنية المُحسّنة:
M15M5H1

كيفية تثبيت الإكسبرت على 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اسحب الإكسبرت على رسم H4 أو اليومي للحصول على أفضل النتائج
  7. 7حدد فترات EMA وعتبة ADX وحجم اللوت في نافذة الإعدادات
  8. 8فعّل Allow Algo Trading واضغط OK

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

المعاملالافتراضيالوصف
InpMagicNum22218009Magic number
InpTradeComment"Psgrowth.com Expert_18009"Trade comment
InpSlippagePts30Max slippage (points)
InpDryRuntrueDry-run (no live sends)
InpRiskPercent0.5Risk % per trade (of effective cap)
InpDailyLossPct3.0Daily loss limit %
InpWeeklyLossPct6.0Weekly loss limit %
InpMaxPositions5Max concurrent positions (pyramid cap)
InpCooldownLosses3Cooldown after N losses (count)
InpKillSwitchfalseKill switch (flatten+halt)
InpCapAmount0.0Capital cap amount (USD equity)
InpCapFloor50.0Capital floor (USD, block entries)
InpDirectionTRADE_BOTHTrade direction
InpEmaFast21H1 EMA Fast period
InpEmaMedium50H1 EMA Medium period
InpEmaSlow200H1 EMA Slow period
InpHullPeriod34M15 Hull MA period
InpAdxThreshold22.0ADX threshold for trend strength
InpADXStrong30.0ADX for StrongTrend regime
InpSLMultiplier2.0Stop loss (xATR)
InpTPMultiplier3.0Take profit (xATR)
InpMinRR1.2Minimum reward:risk ratio
InpPyramidEnablefalseEnable pyramiding (off by default)
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX18009.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX18009 TrendRider_USDJPY_Optimizable — Triple-EMA-stack + Hull-MA trend rider, 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>

//========================== TUNABLE CONSTANTS ============================
// (kept out of the input surface to satisfy the 12-22 input cap)
#define ADX_PERIOD          14      // ADX period
#define RSI_PERIOD          14      // RSI period
#define BB_PERIOD           20      // Bollinger period
#define BB_DEVIATION        2.0     // Bollinger deviation
#define ATR_PERIOD          14      // ATR period
#define ATR_PCT_LOOKBACK    100     // ATR-percentile lookback
#define HTF_TIMEFRAME       PERIOD_H1 // HTF timeframe for EMA-stack + EMA-confirm
#define HTF_EMA_PERIOD      50      // HTF EMA period
#define PYRAMID_MAX_LEVELS  5       // Pyramid hard cap
#define MAX_BARS_HOLD       0       // Time-based exit (0 = disabled)
#define BE_ATR_MULT         1.0     // Break-even trigger (xATR)
#define BE_BUFFER_ATR       0.1     // Break-even buffer (xATR)
#define TRAIL_ATR_MULT      1.5     // ATR trail start (xATR profit)
#define TRAIL_ATR_DIST      1.0     // ATR trail distance (xATR)
#define PARTIAL_TP_RATIO    0.50    // Partial TP fraction at TP1
#define SESSION_START_HOUR  0       // Session window start (broker server time)
#define SESSION_END_HOUR    21      // Session window end   (broker server time)
#define MAX_SPREAD_PCT      0.30    // Max spread as fraction of ATR (30%)
#define STOCH_K             14      // Stochastic %K
#define STOCH_D             3       // Stochastic %D
#define STOCH_SLOWING       3       // Stochastic slowing
#define STOCH_OVERBOUGHT    80.0    // Stochastic overbought
#define STOCH_OVERSOLD      20.0    // Stochastic oversold
#define VOL_SPIKE_MULT      2.6     // ATR-spike exit multiplier
#define WEEKEND_CLOSE_HOUR  20      // Friday close-all hour
#define STOCH_EXIT_ENABLE   true    // Stochastic-exit toggle
#define VOL_EXIT_ENABLE     true    // Volatility-spike-exit toggle

//+------------------------------------------------------------------+
//| ENUMERATIONS                                                     |
//+------------------------------------------------------------------+
enum ENUM_TRADE_DIRECTION
{
   TRADE_BUY_ONLY  = 0,   // Buy Only
   TRADE_SELL_ONLY = 1,   // Sell Only
   TRADE_BOTH      = 2    // Both Directions
};

enum ENUM_REGIME
{
   REG_STRONG_TREND = 0,  // StrongTrend
   REG_WEAK_TREND   = 1,  // WeakTrend
   REG_RANGE        = 2,  // Range
   REG_BREAKOUT     = 3,  // Breakout
   REG_COMPRESS     = 4,  // Compress

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

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

الوسوم:ex18009trendfollowpipsgrowthfreemt5usdjpy

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

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

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

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

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

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

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

اسم الملفPipsgrowth_com_EX18009.mq5
حجم الملف42.9 KB
الإصدارv2.00
PlatformMetaTrader 5
نوع الملف.mq5 Source
الاستراتيجيةمتابعة الاتجاه
المخاطرةمخاطرة متوسطة
الأطر الزمنية
M15M5H1
أزواج العملات
USDJPY
الحد الأدنى للإيداع$100