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

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

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

Pipsgrowth EX18011 TrendFollow — ADX/ATR-pct/BB-width regime gate -> 4-vote trend-stack signal (EMA-stack side + MACD hist + RSI side + ADX-DI) on the la. إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

Pipsgrowth EX18011 TrendStackingEA هو محرك توافق اتجاهي من 4 أصوات لا يطلق إشارة إلا عندما تتوافق مؤشرات زخم مستقلة كافية على نفس الاتجاه في شمعة مغلقة. عتبة التصويت الافتراضية هي 3 من 4 أصوات محتملة (InpSignalVotes = 3). الأصوات الأربعة تأتي من: (1) كومة EMA الثلاثية (EMA-21 فوق EMA-50 فوق EMA-200 لتصويت شراء، وعكسها للبيع)، (2) اتجاه هيستوجرام MACD (الهيستوجرام فوق الصفر وصاعد، أو تحت الصفر وهابط)، (3) RSI-14 على الجانب الصاعد من عتبتي InpRSIBullZone / InpRSIBearZone (52/48 افتراضياً)، (4) ADX-14 مع DI+ فوق DI- (أو العكس). جميع الإشارات الفرعية الأربع تقرأ الشمعة الأخيرة المغلقة فقط، وليست الشمعة الحية، لذا فإن الـ EA لا يعيد رسم إشاراته.

يتم تصفية الإشارة بواسطة مصنف نظام سوق من 6 حالات. تقرأ DetectRegime() قيمة ADX، ومرتبة مئينية لـ ATR على 100 شمعة، ونسبة عرض Bollinger Bands على 50 شمعة. الاتجاه القوي يُفعَّل فوق ADX 30، والاتجاه الضعيف فوق ADX 20، والانضغاط عندما تكون المئينية ATR تحت 30% وعرض BB تحت 0.75x متوسطه على 50 شمعة، والتوسع عندما تكون المئينية فوق 70% أو عرض BB يتجاوز 1.30x متوسطه، والاختراق عندما تتحرك شمعة واحدة أكثر من 10% نسبة إلى إغلاق سابق. تُحظر الدخول في حالتي REG_RANGE و REG_COMPRESS؛ ويُسمح به في الحالات الأربع الأخرى. هذا هو البوابة التي تمنع الـ EA من الشراء في التردد المسطح وملاحقة الأسواق الهادئة.

تتطلب التأكيدات ثلاثة شروط بعد تصويت الاتجاه. أولاً، يجب أن تتفق EMA-50 على الإطار H1 مع اتجاه الصفقة (السعر يجب أن يغلق فوقها للشراء، وتحت للبيع) عندما يكون InpRequireHTF = true. ثانياً، يجب أن يكون توقيت الشمعة داخل النافذة الزمنية 07:00 إلى 20:00 بتوقيت الخادم وخارج عطلات نهاية الأسبوع. ثالثاً، يجب أن يكون السبريد الحي تحت InpMaxSpreadPts = 50 نقطة نسبة إلى المتوسط المتحرك لـ 100 تيكت، بسقف 3x بالنسبة للمتوسط الحديث. توجد أيضاً نافذة أخبار ثابتة عند الساعة 12:30 بتوقيت الخادم ±30 دقيقة توقف الدخولات حول افتتاح الجلسة الأمريكية.

يُحسب حجم المخاطرة من g_effCapital، وهو min(InpCapitalCapAmount, equity) إذا تم تعيين سقف رأس المال، وإلا فال equity كاملة، مطروحاً منها الأرباح المحققة اليوم. نسبة المخاطرة الافتراضية 0.5% (InpRiskPercent = 0.5) تُطبَّق على رأس المال الفعال وتُقسم على المخاطرة لكل لوت عند مسافة الوقف. أرضية InpCapitalCapFloor = 50 تمنع أي دخول جديد تحت 50 دولار من رأس المال الفعال. خسارة اليوم محدودة بـ 3% من رأس المال الفعال، وخسارة الأسبوع بـ 6%. بعد 3 خسائر متتالية يدخل الـ EA في فترة تهدئة لعدد InpSignalTF من الشموع. الحد الأقصى للصفقات المتزامنة على نفس الزوج-magic هو 1 افتراضياً، مما يبقي الاستراتيجية ذات تعرض واحد لكل رمز.

إدارة المراكز لها ثلاث آليات تقدم، كلها قابلة للتفعيل عبر مجموعة EXIT/MANAGE. بمجرد وصول الربح إلى 1R، تنقل دالة التعادل الوقف إلى سعر الدخول + 5 نقاط (DEF_BE_OFFSET_PIPS = 5.0) بشكل لمرة واحدة. عند نفس عتبة 1R، يتم تفعيل إغلاق جزئي بنسبة 50% من حجم الصفقة مرة واحدة لكل تذكرة. بعد ذلك، يبدأ وقف الـ ATR المتحرك عند 2.5x ATR (DEF_TRAIL_ATR_MULT = 2.5) ويتقدم للأمام فقط بخطوات 5 نقاط، حتى لا يتم انتهاك قيود مستوى الوقف عند الوسيط. جني الأرباح يُضبط عند 2.0R من الدخول (DEF_TP_RR = 2.0) ولا يُحرَّك أبداً. نسبة R/R دنيا قدرها 1.2 (DEF_MIN_RR = 1.2) مفروضة في طبقة الإشارة، حتى لا يأخذ الـ EA إلا الصفقات التي يتجاوز فيها العائد المتوقع عند وقف ATR الحد الأدنى من النسبة.

الهرمية مبرمجة لكنها معطلة افتراضياً (InpPyramidOn = false). عند تفعيلها، يمكن للـ EA إضافة حتى 3 صفقات (DEF_PYRAMID_MAX = 3) على نفس الزوج-magic، لكن فقط إذا كانت كل صفقة موجودة في ربح وكان السعر قد تحرك على الأقل 1.5x ATR بعد آخر دخول. حارس الدخول المكرر لكل شمعة في CanEnterNewBar() مع MarkEntered() يضمن فتح صفقة جديدة واحدة فقط لكل شمعة إشارة.

الافتراضات التشغيلية تطابق بقية العائلة. InpDryRun = true يجعل الـ EA يسجل الأوامر المقصودة في السجل بدلاً من إرسالها؛ هذه هي الطريقة الأكثر أماناً للتحقق من الإعدادات على رمز جديد. المفتاح الرئيسي InpKillSwitch يوقف جميع الدخولات إذا تم تشغيله. تمر عمليات إرسال الأوامر عبر OpenTrade() مع حلقة من محاولتين وفترة تراجع 500ms عند requote/سعر متغير/timeout. تمر التعديلات والإغلاقات الجزئية عبر TryModify_EX18011 و TryClosePartial_EX18011 و TryClose_EX18011، كل منها يعيد المحاولة حتى 3 مرات بـ 200ms أو 100ms تراجع حسب كود الإرجاع.

الاختبار الخلفي في MT5 Strategy Tester يتأثر بدالة لياقة OnTester() مخصصة. تُرجع (netProfit * profitFactor) / (1 + relativeDrawdownPercent)، مع حد أدنى 30 صفقة حتى لا تنتج فترات العينات القصيرة درجات قابلة للتحسين. السلوك المتوقع في walk-forward: مرشح نظام 6 حالات يقطع حوالي 40% من إشارات الاتجاه في الفترات المسطحة، وتوافق 4 أصوات يقطع كذلك نسبة الإنذارات الكاذبة، و 1:2 نسبة مخاطرة-مكافأة مع إغلاق جزئي 50% ووقف متحرك يسمح للصفقات القوية بالاستمرار عندما يبقى النظام في حالة اتجاه.

في التشغيل الحي يُظهر الـ EA نفس السلوك كما في المصدر: تردد دخول محافظ (في الغالب 1-2 صفقة فقط في الجلسة على إطار 5 دقائق لـ XAUUSD)، حدود مخاطرة صارمة، وانتقالات نظام مرئية في السجل. الحد الأدنى للرصيد الموصى به هو 100 دولار، لكن نموذج رأس المال الفعال يعني أن أرضية 50 دولار و0.5% مخاطرة لكل صفقة تحافظ على السحب محدوداً حتى على الحسابات الصغيرة. شغّل الـ EA على إطار 5 دقائق أو 30 دقيقة (الافتراضي InpSignalTF = 4 هو M30)، مع وسيط ECN أو سبريد منخفض، وعطّل InpDryRun فقط بعد التحقق من الإعداد الحي في Strategy Tester.

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

مع كل تيكت يحدّث الـ EA الرمز ويتتبع أرباح اليوم والأسبوع المحققة، ثم يكرر على المراكز المفتوحة لتطبيق التعادل، والإغلاق الجزئي 50%، ووقف ATR المتحرك. عند شمعة جديدة من إطار الإشارة المُكوَّن يستدعي DetectRegime() لتصنيف السوق إلى إحدى 6 حالات، ثم NoTradeBlock() للتحقق من أرضية رأس المال، وفترة التهدئة، وحدود خسارة اليوم/الأسبوع، وإذن التداول في Terminal، ونافذة أخبار 12:30، ثم يجمع 4 أصوات اتجاه في TrendSignal() (كومة EMA، هيستوجرام MACD، جانب RSI، ADX/DI). إذا اتفق InpSignalVotes صوت على الأقل وConfirmOK() اجتاز فحوصات H1-EMA، والجلسة، والسبريد، يُحجم الصفقة من رأس المال الفعال وتُرسل عبر OpenTrade(). التدفق الكامل يُسجَّل في أول شمعة من كل كتلة، لذا انتقالات النظام وأعطال التأكيد مرئية في السجل دون الحاجة إلى الرسم البياني.

إشارة الدخول

يُطلق EX18011 دخول شراء أو بيع عندما يتفق 3 من 4 أصوات اتجاه على شمعة مغلقة: جانب كومة EMA(21) > EMA(50) > EMA(200)، اتجاه هيستوجرام MACD، RSI(14) مقابل InpRSIBullZone/InpRSIBearZone، و ADX(14) DI+ مقابل DI-. يتطلب التأكيد اتفاق EMA(50) على H1، وأن يكون توقيت الشمعة داخل النافذة 07:00-20:00 بتوقيت الخادم في يوم عمل، والسبريد تحت 50 نقطة نسبة إلى متوسط 100 تيكت متحرك، ونظام سوق ليس RANGE أو COMPRESS. يجب أن تتجاوز نسبة R/R المتوقعة 1.2.

إشارة الخروج

الخروج متعدد الطبقات: جني الأرباح ثابت عند 2R من الدخول ولا يُحرَّك. عند ربح 1R، ينقل التعادل الوقف إلى سعر الدخول +5 نقاط ويُفعَّل إغلاق جزئي بنسبة 50% مرة واحدة لكل تذكرة. بعد ذلك يتولى وقف ATR المتحرك عند 2.5x ATR مع خطوات 5 نقاط. يمكن للهرمية (معطلة افتراضياً) إضافة حتى 3 صفقات عندما تكون كل صفقة موجودة في ربح وكان السعر قد تحرك 1.5x ATR على الأقل بعد آخر دخول.

وقف الخسارة

الوقف الابتدائي 2.0x ATR(14) على إطار الإشارة، مع أرضية StopsLevelPrice لإرضاء الحد الأدنى لمسافة الوقف عند الوسيط، وبديل PipsToPrice(50) إذا لم تتوفر بيانات ATR. تنقل دالة التعادل الوقف إلى سعر الدخول +5 نقاط عندما يصل الربح إلى 1R بشكل لمرة واحدة، ثم يقوم وقف ATR المتحرك (2.5x ATR، خطوات 5 نقاط) بتقديم الوقف للأمام لبقية الصفقة.

جني الأرباح

يُضبط جني الأرباح عند 2.0x مسافة المخاطرة الابتدائية (1:2 R/R) ولا يُحرَّك أبداً، لذا فإن العائد المتوقع لا يقل عن ضعف الوقف الابتدائي. تُفرض نسبة R/R دنيا قدرها 1.2 قبل إرسال الأمر، ويؤمن الإغلاق الجزئي عند 1R نصف الصفقة قبل أن يتولى الوقف المتحرك.

الأنسب لـ

يُنشر بشكل أفضل على XAUUSD و الأزواج الرئيسية للفوركس (EURUSD، GBPUSD، USDJPY) على إطار 5 دقائق إلى ساعة مع إطار الإشارة الافتراضي M30، على وسيط ECN أو سبريد منخفض حيث لا يتم انتهاك سقف السبريد 50 نقطة وسقف المتوسط المتحرك 3x باستمرار. الحد الأدنى للرصيد الموصى به هو 100 دولار، مع أرضية رأس مال فعال 50 دولار مدمجة في الـ EA؛ نسبة المخاطرة الافتراضية 0.5% لكل صفقة تعمل لحسابات شركات الدعم، لكن يجب خفضها إلى 0.25% للحسابات أقل من 500 دولار. شغّله في يوم عمل بين الساعة 07:00 و 20:00 بتوقيت الخادم، وأبقِ InpDryRun = true لأول 24-48 ساعة من أي رمز جديد.

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

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

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

الوصف: ADX/ATR-pct/BB-width regime gate -> 4-vote trend-stack signal (EMA-stack side + MACD hist + RSI side + ADX-DI) on the last CLOSED bar, confirmed by HTF-EMA(50), min R/R, session & spread. In-trade: BE @R, 50% partial, ATR trail, regime exit. Pyramid after profit, default OFF. Capital-allocation-cap is applied to every risk dollar computation. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

المؤشرات:

  • ADX
  • ATR
  • BB
  • Fast
  • Slow
  • Trnd
  • RSI
  • MACD
  • HTF

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

  • NormPrice()
  • NormVol()
  • PipsToPrice()
  • StopsLevelPrice()
  • InSession()
  • EffectiveCapital()
  • TodayRealized()
  • TrackRealizedStamps()
  • WeekRealized()
  • CountOpenThis()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX18011 TrendFollow — Execution Flow (from source analysis)
// Family: TrendFollow
// ADX/ATR-pct/BB-width regime gate -> 4-vote trend-stack signal (EMA-stack side + MACD hist + RSI side + ADX-DI) on the last CLOSED bar, confirmed by HTF-EMA(50), min R/R, session & spread. In-trade: BE @R, 50% partial, ATR trail, regime exit. Pyramid after profit, default OFF. Capital-allocation-cap is applied to every risk dollar computation. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

ON_INIT:
    Create indicator handles: ADX, ATR, BB, Fast, Slow, Trnd, RSI, MACD, HTF
    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
الأطر الزمنية المُحسّنة:
M5H1

كيفية تثبيت الإكسبرت على 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

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

المعاملالافتراضيالوصف
InpMagic22218011Magic number (222+expert id)
InpComment"Psgrowth.com Expert_18011"Trade comment
InpSignalTF4Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Signal timeframe
InpSignalVotes3Min trend votes to fire (1..4)
InpRiskPercent0.5Risk per trade (%) of effective capital
InpDailyLossLimit3.0Max daily loss (%) of effective capital
InpWeeklyLossLimit6.0Max weekly loss (%) of effective capital
InpMaxConcurrent1Max concurrent positions (this symbol+magic)
InpCooldownLosses3Cooldown after N consecutive losses (bars)
InpSlippagePts30Order slippage (points)
InpUseATRSLtrueATR-based SL (else pips)
InpCapitalCapAmount0.0Cap amount (real-money equity $)
InpCapitalCapFloor50.0Floor: block new entries below
InpRSIBullZone52.0RSI bullish side threshold
InpRSIBearZone48.0RSI bearish side threshold
InpADXMin20.0Min ADX to count vote
InpRequireHTFtrueRequire HTF-EMA agreement
InpMaxSpreadPts50.0Max spread (points)
InpUseSessiontrueUse session filter
InpUseBreakEventrueUse break-even at R
InpUsePartialtrue50% partial at TP1
InpUseATRTrailtrueATR trailing
InpPyramidOnfalsePyramid after profit (default OFF)
InpDryRuntrueDry-run (no live orders)
InpKillSwitchfalseMaster kill switch
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX18011.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX18011 TrendStackingEA — 4-vote trend consensus, regime gate, capital cap, 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>

//============================ CONSTANTS ============================
#define DEF_FAST_MA          21
#define DEF_SLOW_MA          50
#define DEF_TREND_MA         200
#define DEF_RSI_PERIOD       14
#define DEF_MACD_FAST        12
#define DEF_MACD_SLOW        26
#define DEF_MACD_SIGNAL      9
#define DEF_ADX_PERIOD       14
#define DEF_ATR_PERIOD       14
#define DEF_BB_PERIOD        20
#define DEF_BB_DEV           2.0
#define DEF_ATR_PCT_BARS     100
#define DEF_HTF_TF           PERIOD_H1
#define DEF_HTF_EMA_PERIOD   50
#define DEF_REGIME_STRONG_ADX 30.0
#define DEF_REGIME_WEAK_ADX  20.0
#define DEF_REGIME_EXPAND    1.30
#define DEF_REGIME_COMPRESS  0.75
#define DEF_BREAKOUT_RATIO   1.10
#define DEF_ATR_SL_MULT      2.0
#define DEF_TP_RR            2.0
#define DEF_BE_OFFSET_PIPS   5.0
#define DEF_TRAIL_ATR_MULT   2.5
#define DEF_TRAIL_STEP_PIPS  5.0
#define DEF_PARTIAL1_R       1.0
#define DEF_PARTIAL1_PCT     50.0
#define DEF_PYRAMID_SPACING_ATR 1.5
#define DEF_PYRAMID_MAX         3
#define DEF_MIN_RR              1.2
#define DEF_MAX_SPREAD_MULT     3.0
#define DEF_SESSION_START       "07:00"
#define DEF_SESSION_END         "20:00"
#define DEF_NEWS_BLOCK_MIN      30
#define DEF_SLIP_RETRY_MS       500
#define DEF_PARTIAL_MIN_PCT     30.0

enum ENUM_REGIME
{
   REG_STRONG_TREND,   // StrongTrend
   REG_WEAK_TREND,     // WeakTrend
   REG_RANGE,          // Range
   REG_COMPRESS,       // Compress
   REG_EXPAND,         // Expand
   REG_BREAKOUT        // Breakout
};

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

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

الوسوم:ex18011trendfollowpipsgrowthfreemt5xauusd

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

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

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

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

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

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

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

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