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
المؤشرات:
ATRADXRSIBB- HTFema
- Stoch
EmaFastEmaMedEmaSlow
الدوال الرئيسية:
NormPrice()ClampVolume()StopsLevelPrice()RespectStopsBuySL()RespectStopsSellSL()LogFail()CountPositions()SumRealized()WMA()HullMAFromArr()
// 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)ملف التحسين
كيفية تثبيت الإكسبرت على 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
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| InpMagicNum | 22218009 | Magic number |
| InpTradeComment | "Psgrowth.com Expert_18009" | Trade comment |
| InpSlippagePts | 30 | Max slippage (points) |
| InpDryRun | true | Dry-run (no live sends) |
| InpRiskPercent | 0.5 | Risk % per trade (of effective cap) |
| InpDailyLossPct | 3.0 | Daily loss limit % |
| InpWeeklyLossPct | 6.0 | Weekly loss limit % |
| InpMaxPositions | 5 | Max concurrent positions (pyramid cap) |
| InpCooldownLosses | 3 | Cooldown after N losses (count) |
| InpKillSwitch | false | Kill switch (flatten+halt) |
| InpCapAmount | 0.0 | Capital cap amount (USD equity) |
| InpCapFloor | 50.0 | Capital floor (USD, block entries) |
| InpDirection | TRADE_BOTH | Trade direction |
| InpEmaFast | 21 | H1 EMA Fast period |
| InpEmaMedium | 50 | H1 EMA Medium period |
| InpEmaSlow | 200 | H1 EMA Slow period |
| InpHullPeriod | 34 | M15 Hull MA period |
| InpAdxThreshold | 22.0 | ADX threshold for trend strength |
| InpADXStrong | 30.0 | ADX for StrongTrend regime |
| InpSLMultiplier | 2.0 | Stop loss (xATR) |
| InpTPMultiplier | 3.0 | Take profit (xATR) |
| InpMinRR | 1.2 | Minimum reward:risk ratio |
| InpPyramidEnable | false | Enable pyramiding (off by default) |
#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الكود المصدري الكامل متاح عند التحميل
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.
تحذير صريح: لأغراض تعليمية فقط
تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.
وسطاء موصى بهم لهذا الإكسبرت
هذه الروبوتات تعمل على 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 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.