Pipsgrowth EX18042 TrendFollow — إكسبرت أدفايزر إكسبرت أدفايزر
إكسبرت أدفايزر MT5 مفتوح المصدر · XAUUSD · M5
Pipsgrowth EX18042 TrendFollow — Multi-indicator trend stacker. Three directional voters (Hull MA slope, SuperTrend state, RSI momentum zone) must unanim. إكسبرت أدفايزر MT5 مفتوح المصدر.
نظرة عامة
EX18042 مستشار آلي يكدّس مؤشرات الترند ويُصدر إشارة شراء أو بيع فقط عندما تتفق ثلاثة مؤشرات مستقلة على الاتجاه نفسه في الشمعة المغلقة السابقة. المؤشرات الثلاثة هي: متوسط هول (Hull) بفترة 21 مبني من متوسطين مرجحَين خطيًا (LWMA)، ومؤشر SuperTrend تكراري يُحسب على 100 شمعة باستخدام ATR بفترة 10 ومعامل 3.0، ومؤشر RSI بفترة 14 يُقيَّم بحدود غير متماثلة 55/45 بدلًا من 70/30 المعتادة. إذا أعاد أيٌّ منها صفرًا، يكتفي المستشار بالانتظار. قاعدة الإجماع هذه هي الخيار التصميمي المركزي: معظم العائلة يصوّت بالأغلبية، لكن EX18042 يطلب الإجماع الكامل.
طبقة التصويت ليست المرشّح الوحيد. قبل أن يُسأل الإجماع أصلًا، تقرأ ClassifyRegime() قيمة ADX بفترة 14 والنسبة المئوية لـ ATR(14) عبر 100 شمعة، ثم تقارن عرض بولنجر بفترة 20 الحالي بعرضه قبل ست شموع لتحديد أي من خمسة أنظمة يسود: ترند قوي (ADX >= 30 وATR ضمن الستينيات فما فوق)، ترند ضعيف (ADX >= 20)، انضغاط (عرض BB تقلّص إلى أقل من 85% من ست شموع قبل)، توسّع (عرض BB تجاوز 120% من ست شموع قبل)، أو نطاق (لا شيء مما سبق). النظامان الأولان فقط يجتازان RegimeAllowsEntry(). وإذا كان المخطط في انضغاط أو توسّع أو نطاق، فإن ManageOpenPositions تُغلق أي صفقة مفتوحة في أول تذكرة رابحة. يعتبر المستشار هذه الأنظمة الثلاثة "أوقف التداول فورًا إن كنتَ داخلها أصلًا".
تُحسب الإشارة على الشمعة المغلقة السابقة (shift = 1) لتجنّب التطلّع المستقبلي. عندما يتفق الثلاثة على الاتجاه، تستخرج SendEntry مسافة الوقف 2.0xATR(14) وجني الأرباح 3.0xATR(14)، بنسبة مخاطرة إلى عائد 1:1.5. تُحوَّل ميزانية المخاطرة (0.5% من رأس المال الفعّال) إلى حجم عقد في ComputeLots عبر قسمة الدولارات المعرضة للمخاطرة على قيمة التيك لكل لوت لكل وحدة سعر، مع تدوير الحجم إلى درجة حجم الوسيط. يُرفض الأمر إذا لم تكفَ الهامش الحر (فحص مسبق عبر OrderCalcMargin).
تُدار الصفقة المفتوحة على كل تيكر بصرف النظر عن بوابة عدم التداول. تتحقق ManageOpenPositions أولًا من الإغلاق الجزئي: عندما يصل معامل R للصفقة، المعرَّف بأنه (السعر الحالي − سعر الدخول) ÷ (2.0xATR عند الدخول)، إلى 1.5، تحاول إغلاق 50% من الصفقة عبر TryClosePartial_EX18042. تمنع علامة "PT1" داخل تعليق الصفقة تكرار الإغلاق الجزئي على نفس الصفقة. بعد 1.0R من الربح يُحرَّك الوقف إلى سعر الدخول زائد خمس نقاط (أدنى مسافة وقوف عند الوسيط)، أي نقل الصفقة إلى نقطة التعادل عمليًا. من هناك، يتبع وقف جرار 2.5xATR(14) السعر في اتجاه واحد فقط، للأمام، لا للخلف.
هناك مخرجان غير ميكانيكيان أيضًا. فحص زخم RSI على الشمعة المغلقة: تُغلق الصفقة الطويلة إذا نزل RSI تحت 45، والصفقة القصيرة إذا صعد فوق 55، نفس العتبات التي تحكم الدخول لكن بالعكس. يُفعَّل مخرج الإشارة المعاكسة إذا انقلب الإجماع إلى الاتجاه الآخر أثناء عمر الصفقة. وإذا انزلق مصنّف النظام إلى انضغاط أو توسّع أو نطاق، تُغلق الصفقة في أول تيكر رابح لتفادي الاحتفاظ بصفقة ترند في بيئة غير ترندية. إغلاق الجمعة (IsFridayCloseProximity(60)) يُسوِّي كل شيء قبل 60 دقيقة من إغلاق 22:00 بتوقيت السيرفر.
بوابة عدم التداول صارمة. مفتاح الإيقاف (InpKillSwitch)، عند ضبطه على true، يُسوّي كل الصفقات لهذا الرقم السحري ويرفض أي دخول جديد. علم التشغيل التجريبي (InpDryRun = true افتراضيًا) يجعل المستشار يُسجّل كل محاولة دخول دون إرسال أمر، مفيد لاختبار الإشارة خلفيًا دون التزام برأسمال. صف غطاء رأس المال InpCapitalCapAmount باقٍ في لوحة المدخلات كمرجع لكن مفتاح التشغيل/الإيقاف الذي كان يعتمد عليه (InpCapitalCapEnabled) أُزيل في الإصدار 2.00؛ أي أن الغطاء معطّل دائمًا ويعمل المستشار بكامل حقوق الملكية، خاضعًا للحد الأدنى 50 دولارًا. يُطبَّق حد الخسارة اليومي 3% عبر مسح سجل الصفقات المغلقة منذ 00:00 بتوقيت السيرفر وتعطيل التداول عند بلوغ العتبة. تعمل CheckDailyLossLimit على كل تيكر لكنها تقلب علمًا فقط؛ البوابة الفعلية في NoTradeFiltersPass عبر فحص trading_cap <= 0. نافذة الجلسة من 08:00 إلى 17:00 بتوقيت السيرفر. حد سبريد 50 نقطة (متغيّر بحسب الوسيط) يحجب الدخول عند اتساع الفارق. فحص جودة البيانات يرفض الأمر إن كان آخر بار أقدم من خمس دقائق.
تحديد حجم الصفقة قائم بالكامل على ATR ويحترم قيود الوسيط: يُقصَّر الوقف إلى stops_level، ويُدرَّج الحجم إلى volume_step، ويُفحص الهامش قبل الإرسال. نمط التعبئة يُكتشف تلقائيًا من SYMBOL_FILLING_MODE (يُفضَّل FOK ثم IOC ثم RETURN). تُعاد محاولة الأمر مرة واحدة عند REQUOTE أو TIMEOUT أو PRICE_CHANGED؛ يحاول TryClosePartial_EX18042 وTryModify_EX18042 حتى ثلاث مرات مع نوم 200 أو 100 مللي ثانية.
لا يوجد تدرّج هرمي افتراضيًا، لأن InpMaxOpenTrades يأتي 1. حارس الأمان الهرمي (IsPyramidSafe) لا يسمح بفتح صفقة إضافية إلا إذا كانت كل صفقة حالية لهذا الرقم السحري رابحة، فحتى رفع المدخل إلى 2 أو 3 لن يُحمِّل صفقة خاسرة. حارس الإدخال المكرر لكل بار (g_last_entry_bar_time) يمنع المستشار من إعادة الدخول على نفس الشمعة بعد فشل أمر.
ما يمكن توقّعه في الاختبار الخلفي: معيار OnTester هو gross_profit_factor * (net_profit / max_balance_dd)، مقيَّد بالصفر ومُصفَّر إذا كانت العينة أقل من 30 صفقة. يكافئ المعيار الربحية والانضباط في السحب معًا. علم InpDryRun = true يعني أن التداول الحقيقي يطلب من المستخدم قلبه، قضبان أمان متعمّدة لمستشار يحمّل 0.5% من رأس المال لكل صفقة مع حد يومي 3%.
البصمة المميّزة لبقيّة عائلة TrendFollow: EX18042 هو نسخة الإجماع-3 (هول عبر LWMA مزدوج + SuperTrend تكراري (10، 3.0) + RSI 55/45) مع مصنّف نظام من 5 حالات وجزئي 1.5R + جرار 2.5xATR وأرضية 50 دولارًا لرأس المال الفعّال، بدون حد خسارة أسبوعي، ونافذة جلسة 9 ساعات، وبدون cooldown. لا يوجد مضاعف ربح في OnTester ولا محدد HTF؛ طبقة النظام هي السياق الإطاري الوحيد الذي ترى كومة التداول.
تفاصيل الاستراتيجية
يُكدّس EX18042 ثلاثة مصوّتين مستقلين للترند ويطلب إجماعًا تامًا على الشمعة المغلقة: متوسط هول 21 مبني من LWMA مزدوج (ميل)، وSuperTrend تكراري 100 بار بمعاملات ATR 10/3.0 (حالة)، وRSI 14 يُقيَّم بحدود 55/45 (زخم). مصنّف نظام من 5 حالات مبني على ADX(14) ونسبة ATR عبر 100 شمعة مع فحص توسّع/انكماش عرض بولنجر يفلتر السياق القابل للتداول إلى ترند قوي وترند ضعيف فقط؛ الحالات الثلاث الأخرى (انضغاط، توسّع، نطاق) تحجب الدخول قسريًا وتُغلق أي صفقة مفتوحة في أول تيكر رابح. مخاطرة الصفقة 0.5% من رأس المال الفعّال مع جني أرباح 1.5R وجرار أمامي 2.5xATR(14)، فضلًا عن إغلاق جزئي عند 1.5R، ورافعة نقطة تعادل عند 1R، ومخرج تلاشي RSI، ومخرج إشارة معاكسة، وتسوية قبل 60 دقيقة من إغلاق الجمعة. نافذة الجلسة 08:00-17:00 بتوقيت السيرفر، وحد سبريد 50 نقطة، وحد خسارة يومي 3%، وأرضية رأس مال فعّال 50 دولارًا تُشكّل بوابة عدم التداول؛ علم InpDryRun = true الافتراضي يعني أن المستشار يُسجّل دون إرسال الأوامر حتى يُعطّل المستخدم التشغيل التجريبي.
شراء أو بيع فقط عندما يتفق ثلاثة مصوّتين مستقلين على الشمعة المغلقة السابقة: متوسط هول 21 يميل للأعلى (أو للأسفل)، و SuperTrend تكراري 100 بار بمعاملات ATR 10/3.0 يقف على الجانب نفسه، وRSI 14 يُغلق فوق 55 (أو تحت 45). يجب أن يكون النظام ترند قوي (ADX >= 30 ونسبة ATR >= 60) أو ترند ضعيف (ADX >= 20)؛ الانضغاط والتوسّع والنطاق تحجب الدخول قسريًا. حماية الإدخال المكرر: صفقة واحدة لكل شمعة.
إغلاق جزئي 50% عند 1.5R ربح؛ يُجرى النصف المتبقي خلف وقف جرار للأمام فقط 2.5xATR(14) يُفعَّل بعد رافعة نقطة التعادل عند 1R. تُغلق الصفقة قسريًا في أول تيكر رابح إذا انزلق النظام إلى انضغاط أو توسّع أو نطاق، أو إذا تلاشى زخم RSI (طويل إذا RSI < 45، قصير إذا RSI > 55)، أو إذا انقلب الإجماع إلى الاتجاه المقابل، أو قبل 60 دقيقة من إغلاق الجمعة 22:00 بتوقيت السيرفر.
الوقف الابتدائي = 2.0xATR(14)، مُقصَّر إلى stops_level لدى الوسيط ومُثبَّت إلى سعر الدخول زائد أو ناقص 5 نقاط بعد أن تحقق الصفقة 1R من الربح. الوقف الجرار = 2.5xATR(14) للأمام فقط.
جني أرباح 1.5R (3.0xATR(14)) موضوع على الأمر عند الدخول. يُغلق نصف الصفقة عند 1.5R كإغلاق جزئي؛ والنصف الباقي يتبع جرار 2.5xATR(14) الأمامي.
الحد الأدنى الموصى به للرصيد: 100 دولار (الأرضية 50 دولارًا لرأس المال الفعّال لدى المستشار؛ غطاء رأس المال معطّل دائمًا في الإصدار 2.00). الأفضل على وسيط XAUUSD بسبريد منخفض (حد 50 نقطة قابل للتحقيق على معظم حسابات ECN/Raw؛ الانحراف 20 نقطة محدد داخل كائن التداول). نافذة الجلسة الافتراضية 08:00-17:00 بتوقيت السيرفر تتزامن مع ساعات نشاط أوروبا والولايات المتحدة في معظم الوسطاء، وهي النافذة الوحيدة التي يفحص فيها المستشار فرص الدخول. شغّله على إطار 5 دقائق (M5) كما ضُبط المصدر.
منطق الاستراتيجية
Pipsgrowth EX18042 TrendFollow — تحليل منطق الاستراتيجية (من كود .mq5)
العائلة: TrendFollow
الماجيك: 22218042
الإصدار: 2.00
الوصف:
Multi-indicator trend stacker. Three directional voters (Hull MA slope, SuperTrend state, RSI momentum zone) must unanimously agree before entry. ADX and Bollinger width act as permission filters confirming a trending, volatile regime. Includes adaptive regime classifier, full no-trade filter suite, fixed-fractional sizing on effective capital, in-trade management (break-even, partial TP, ATR trail, momentum-decay, opposite-signal, session-close, regime-change exits), capital allocation cap, and broker-portable runtime symbol specs. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester
المؤشرات:
- مؤشرات قياسية
الدوال الرئيسية:
RefreshSymbolSpecs()NormPrice()NormVolume()RespectStopsLevel()ComputeEffectiveCapital()ResetDailyState()ComputeTradingCapitalToday()ATRPercentile()RegimeName()RegimeAllowsEntry()
// Pipsgrowth EX18042 TrendFollow — Execution Flow (from source analysis)
// Family: TrendFollow
// Multi-indicator trend stacker. Three directional voters (Hull MA slope, SuperTrend state, RSI momentum zone) must unanimously agree before entry. ADX and Bollinger width act as permission filters confirming a trending, volatile regime. Includes adaptive regime classifier, full no-trade filter suite, fixed-fractional sizing on effective capital, in-trade management (break-even, partial TP, ATR trail, momentum-decay, opposite-signal, session-close, regime-change exits), capital allocation cap, and broker-portable runtime symbol specs. 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)ملف التحسين
كيفية تثبيت الإكسبرت على 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
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| InpMagicNumber | 22218042 | Magic number (this EA's tag) |
| InpTradeComment | "Psgrowth.com Expert_18042" | Trade comment |
| InpCapitalCapAmount | 0.0 | Cap: REAL MONEY equity $ this EA commands (NOT leveraged notional) |
| InpCapitalCapFloor | 50.0 | Minimum effective capital required to trade ($) |
| InpRiskPercent | 0.5 | Risk per trade (% of EFFECTIVE CAPITAL) |
| InpDailyLossLimitPct | 3.0 | Daily loss limit (% of EFFECTIVE CAPITAL, this magic only) |
| InpMaxOpenTrades | 1 | Max concurrent open trades (this magic) |
| InpKillSwitch | false | Kill switch: flatten all (this magic) and stop trading |
| InpHMAPeriod | 21 | Hull MA period (bars) |
| InpST_ATR_Period | 10 | SuperTrend ATR period (bars) |
| InpST_Multiplier | 3.0 | SuperTrend ATR multiplier |
| InpRSIPeriod | 14 | RSI period (bars) |
| InpADXThreshold | 20 | ADX minimum for trending regime (>) |
| InpATRStopMult | 2.0 | Initial SL = mult * ATR (R-multiple reference) |
| InpBETriggerR | 1.0 | Move to break-even after N R of profit (R = initial risk) |
| InpPartialTPR | 1.5 | Partial TP at N R (close 50% of position) |
| InpTrailATRMult | 2.5 | ATR trailing stop multiplier (0 = off) |
| InpMaxSpreadPts | 50 | Max spread in POINTS (broker-portable) |
| InpSessionStart | "08:00" | Session start (HH:MM, broker server time) |
| InpSessionEnd | "17:00" | Session end (HH:MM, broker server time) |
| InpFridayFlatMin | 60 | Flatten this magic N minutes before Friday close (0 = off) |
| InpDryRun | true | Dry-run (true = log signals, send NO orders) |
| InpVerboseLog | false | Verbose per-tick logging |
#property copyright "Pipsgrowth.com"
#property link "https://pipsgrowth.com"
#property version "2.00"
#property strict
#property description "Pipsgrowth.com EX18042 XAUUSD M5 -- Hull+SuperTrend+RSI consensus trend stacker, 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>
CTrade m_trade;
CPositionInfo m_position;
CSymbolInfo m_symbol;
CAccountInfo m_account;
COrderInfo m_order;
CDealInfo m_deal;
//================== INPUTS ==================
input group "=== Identity ==="
input long InpMagicNumber = 22218042; // Magic number (this EA's tag)
input string InpTradeComment = "Psgrowth.com Expert_18042"; // Trade comment
input group "=== Risk & Sizing (incl. CAPITAL ALLOCATION CAP) ==="
// InpCapitalCapEnabled removed — use InpCapitalCapAmount=0 to disable // Capital Allocation Cap master on/off
input double InpCapitalCapAmount = 0.0; // Cap: REAL MONEY equity $ this EA commands (NOT leveraged notional)
input double InpCapitalCapFloor = 50.0; // Minimum effective capital required to trade ($)
input double InpRiskPercent = 0.5; // Risk per trade (% of EFFECTIVE CAPITAL)
input double InpDailyLossLimitPct = 3.0; // Daily loss limit (% of EFFECTIVE CAPITAL, this magic only)
input int InpMaxOpenTrades = 1; // Max concurrent open trades (this magic)
input bool InpKillSwitch = false; // Kill switch: flatten all (this magic) and stop trading
input group "=== Signal (Hull MA + SuperTrend + RSI consensus) ==="
input int InpHMAPeriod = 21; // Hull MA period (bars)
input int InpST_ATR_Period = 10; // SuperTrend ATR period (bars)
input double InpST_Multiplier = 3.0; // SuperTrend ATR multiplier
input int InpRSIPeriod = 14; // RSI period (bars)
input int InpADXThreshold = 20; // ADX minimum for trending regime (>)
input group "=== Trade Management & Exits ==="
input double InpATRStopMult = 2.0; // Initial SL = mult * ATR (R-multiple reference)
input double InpBETriggerR = 1.0; // Move to break-even after N R of profit (R = initial risk)
input double InpPartialTPR = 1.5; // Partial TP at N R (close 50% of position)
input double InpTrailATRMult = 2.5; // ATR trailing stop multiplier (0 = off)
input group "=== No-trade Filters ==="
input int InpMaxSpreadPts = 50; // Max spread in POINTS (broker-portable)
input group "=== Session / Timing ==="
input string InpSessionStart = "08:00"; // Session start (HH:MM, broker server time)
input string InpSessionEnd = "17:00"; // Session end (HH:MM, broker server time)
input int InpFridayFlatMin = 60; // Flatten this magic N minutes before Friday close (0 = off)
input group "=== Visuals / Dry-run ==="
input bool InpDryRun = true; // Dry-run (true = log signals, send NO orders)
input bool InpVerboseLog = false; // Verbose per-tick logging
//================== ENUMS ==================
// Regime labelsالكود المصدري الكامل متاح عند التحميل
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.
تحذير صريح: لأغراض تعليمية فقط
تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.
وسطاء موصى بهم لهذا الإكسبرت
هذه الروبوتات تعمل على 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 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.