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
المؤشرات:
ADXATRBB- Fast
- Slow
- Trnd
RSIMACDHTF
الدوال الرئيسية:
NormPrice()NormVol()PipsToPrice()StopsLevelPrice()InSession()EffectiveCapital()TodayRealized()TrackRealizedStamps()WeekRealized()CountOpenThis()
// 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)ملف التحسين
كيفية تثبيت الإكسبرت على MT5
- 1حمّل ملف .mq5 بالضغط على زر التحميل أعلاه
- 2افتح برنامج MetaTrader 5 على حاسوبك
- 3من القائمة العلوية اختر File → Open Data Folder
- 4انتقل إلى مجلد MQL5 → Experts والصق الملف هناك
- 5في MT5، انقر بالزر الأيمن على Expert Advisors في لوحة Navigator → Refresh
- 6اسحب الإكسبرت على رسم H4 أو اليومي للحصول على أفضل النتائج
- 7حدد فترات EMA وعتبة ADX وحجم اللوت في نافذة الإعدادات
- 8فعّل Allow Algo Trading واضغط OK
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| InpMagic | 22218011 | Magic number (222+expert id) |
| InpComment | "Psgrowth.com Expert_18011" | Trade comment |
| InpSignalTF | 4 | Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Signal timeframe |
| InpSignalVotes | 3 | Min trend votes to fire (1..4) |
| InpRiskPercent | 0.5 | Risk per trade (%) of effective capital |
| InpDailyLossLimit | 3.0 | Max daily loss (%) of effective capital |
| InpWeeklyLossLimit | 6.0 | Max weekly loss (%) of effective capital |
| InpMaxConcurrent | 1 | Max concurrent positions (this symbol+magic) |
| InpCooldownLosses | 3 | Cooldown after N consecutive losses (bars) |
| InpSlippagePts | 30 | Order slippage (points) |
| InpUseATRSL | true | ATR-based SL (else pips) |
| InpCapitalCapAmount | 0.0 | Cap amount (real-money equity $) |
| InpCapitalCapFloor | 50.0 | Floor: block new entries below |
| InpRSIBullZone | 52.0 | RSI bullish side threshold |
| InpRSIBearZone | 48.0 | RSI bearish side threshold |
| InpADXMin | 20.0 | Min ADX to count vote |
| InpRequireHTF | true | Require HTF-EMA agreement |
| InpMaxSpreadPts | 50.0 | Max spread (points) |
| InpUseSession | true | Use session filter |
| InpUseBreakEven | true | Use break-even at R |
| InpUsePartial | true | 50% partial at TP1 |
| InpUseATRTrail | true | ATR trailing |
| InpPyramidOn | false | Pyramid after profit (default OFF) |
| InpDryRun | true | Dry-run (no live orders) |
| InpKillSwitch | false | Master kill switch |
#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
};
الكود المصدري الكامل متاح عند التحميل
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.
تحذير صريح: لأغراض تعليمية فقط
تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.
وسطاء موصى بهم لهذا الإكسبرت
هذه الروبوتات تعمل على MT5 — استخدم وسيطاً موثوقاً بتنفيذ سريع وسبريد منخفض
إكسبرتات مشابهة
عرض جميع الإكسبرتاتإكسبرتات أخرى بنفس استراتيجية متابعة الاتجاه
Pipsgrowth EX16080 Trend — إكسبرت أدفايزر متابعة اتجاه
Pipsgrowth EX16080 Trend — EURUSD triple-EMA trend follower — trades EMA20/50 cross with EMA200 filter on H4, ATR-based SL/TP, risk-percent sizing . إكسبرت أدفايزر MT5 مفتوح المصدر.
Pipsgrowth EX16081 Trend — إكسبرت أدفايزر متابعة اتجاه
Pipsgrowth EX16081 Trend — Gold trend EA catching major XAUUSD trends using EMA 50/ 200 crossover on H4 with daily structure swing high/low and Fib. إكسبرت أدفايزر MT5 مفتوح المصدر.
Pipsgrowth EX16033 Trend — إكسبرت أدفايزر متابعة اتجاه
Pipsgrowth EX16033 Trend — Price-action scalping EA using distance-based grid entries with net-take-profit targeting and optional lot multiplier. 1. إكسبرت أدفايزر MT5 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.