Pipsgrowth EX16100 Trend — إكسبرت أدفايزر متابعة اتجاه
إكسبرت أدفايزر MT5 مفتوح المصدر · XAUUSD · M5
Pipsgrowth EX16100 Trend — Modular Expert Advisor System refactored for XAUUSD 5M with Hull MA, Heiken Ashi filter, trend EMA and RSI confirmation.. إكسبرت أدفايزر MT5 مفتوح المصدر.
نظرة عامة
Pipsgrowth EX16100 Trend هو محرك توافق من أربع طبقات مصمم لزوج XAUUSD على الإطار الزمني M5. يبني المستشارة إشارة شراء أو بيع فقط عندما تتفق أربع طبقات تقنية مستقلة في الاتجاه نفسه، ثم يفرض هذا التوافق عبر إغلاق عكسي صريح، وأقواس حماية بنقاط ثابتة، وحجم لوت تلقائي يحسب المخاطرة كنسبة مئوية محددة من رصيد الحساب. النتيجة هي استراتيجية M5 لأداة واحدة تتجاهل معظم الشارت ولا تطلق الصفقة إلا عند تقاطع الاتجاه والزمخم والسلاسة وتأكيد الشمعة الملساء.
تتركز كومة الإشارات حول متوسط هول المتحرك المخصص المحسوب في الفئة CHullCalculator التي تربط مقبضي LWMA — واحد عند الفترة الكاملة 55 وواحد عند نصف الفترة (55/2.0 = 27) — ثم تحسب خطوة التنعيم النهائية WMA(sqrt(55)) يدوياً فوق مصفوفة الفروق 2 * wma_half - wma_full. القيمة الأساسية المستخدمة هي PRICE_CLOSE. المحفز الاتجاهي هو الميل: hullCurr > hullPrev يفعّل تحيز الشراء، وhullCurr < hullPrev يفعّل تحيز البيع. ما يحرك الدخول هو تقاطع الميل وليس تقاطع السعر.
يجب أن تتفق ثلاثة مرشحات تأكيد مع ميل هول لكي يتصرف المستشارة. أولاً، مرشح اتجاه مبني من مقبض iMA(200, MODE_EMA, PRICE_CLOSE) واحد يمنع دخولات الشراء عندما يتداول الإغلاق دون المتوسط 200، ويمنع دخولات البيع عندما يتداول الإغلاق فوقه — أي أن المستشارة يرفض ببساطة معاكسة الاتجاه السائد. ثانياً، مرشح RSI بفترة 14 يرفض دخولات الشراء عندما يكون RSI(14) عند مستوى InpRSIUpper أو أعلى منه (70 افتراضياً)، ويرفض دخولات البيع عندما يكون RSI(14) عند مستوى InpRSILower أو أدنى منه (30 افتراضياً)؛ ويمكن تعطيل كليهما. ثالثاً، مرشح هيكن آشي مكتفي ذاتياً في الفئة CHeikenAshi يقرأ الشمعتين السابقتين من سجل الأسعار، ويحسب HA_Close = (O+H+L+C)/4 للشمعة الحالية، ويبذر HA_Open من (prevOpen+prevClose)/2، ويشترط شمعة هيكن صاعدة (HA_Close > HA_Open) لعمليات الشراء وشمعة هابطة لعمليات البيع. يجب أن تطلق الطبقات الثلاث جميعها في الشمعة نفسها التي يفعّل فيها ميل هول حتى تُقبل الصفقة، لذا تُجمع الطبقات الأربع بعلامة AND في signalBuy وsignalSell.
تنقسم إدارة الصفقات بين GetLotSize وIsPyramidSafe وCountPositions وClosePositions وCheckExit() الفارغة كقالب. يستخدم GetLotSize افتراضياً اللوت التلقائي: يقرأ رصيد الحساب، ويضربه في InpRiskPercent (1.0% افتراضياً)، ويقسم على قيمة الخسارة لكل لوت (slPoints * _Point / tickSize * tickValue)، ويقصر النتيجة على InpMaxLotSize (5.0 لوت) قبل تطبيعها إلى خطوة اللوت لدى الوسيط. الاحتياط الثابت هو InpLots = 0.01. تستخدم أوامر القوسين مسافات ثابتة: InpStopLoss = 500 نقطة وInpTakeProfit = 1000 نقطة، مما يعطي نسبة مخاطرة إلى عائد 1:2 على كل دخول دون أي تتبع وقف، أو ترقية لنقطة التعادل، أو مسار إغلاق جزئي. تقوم دالة المساعدة TryClose_EX16100 بإعادة محاولة 3 محاولات (بفاصل 200 مللي ثانية) عند إعادة التسعير أو انتهاء المهلة أو تغير السعر، وهي دالة المساعدة الوحيدة الموصولة بموقع استدعاء حي — TryClosePartial_EX16100 وTryModify_EX16100 معرّفتان لكن لم تُستدعيا أبداً، لذا تظلان كوداً ميتاً.
منطق الانعكاس صريح: عندما تطلق إشارة شراء ومركز بيع مفتوح، يستدعي المستشارة أولاً ClosePositions(POSITION_TYPE_SELL) لتصفية مراكز البيع، ثم يفتح الصفقة الطويلة الجديدة. وينطبق المسار المعاكس على إشارات البيع. تسمح طبقة الهرمة بتراكم ما يصل إلى InpMaxOpenPositions = 5 مراكز في الاتجاه نفسه، لكن IsPyramidSafe يرفض الإضافة إلى صفقة خاسرة — posInfo.Profit() <= 0 يعيد false — ويشترط أيضاً أن يكون وقف المركز القائم عند سعر الفتح أو أفضل، أي عند نقطة التعادل بالفعل، قبل السماح بالإضافة الجديدة. يجلس المدخل InpMinProfitPoints = 100 في مجموعة المخاطر نفسها كمرجع للقراءة فقط؛ والبوابة الفعلية هي فحص Profit() > 0 وموقع الوقف داخل IsPyramidSafe، وليس إضافة قائمة على المسافة.
تعمل بوابة زمنية أولاً في OnTick. مع تفعيل InpUseTimeFilter، يسمح IsTradingTime بالدخول فقط عندما يقع ساعة الوسيط الحالية داخل النافذة 8 إلى 12 أو النافذة 14 إلى 20، معبراً عنها بتوقيت الخادم. خارج هذه الأقواس يقصر المستشارة بقية المنطق. مع تعطيل المرشح، يقيّم المستشارة الإشارات عند كل تيكت. لاحظ أن CheckExit() حالياً دالة لا تفعل شيئاً — لا يوجد وقف متحرك حي، ولا ترقية لنقطة التعادل، ولا خروج قائم على الوقت؛ الطرق الوحيدة لإغلاق المركز هي وقف الخسارة، وجني الأرباح، وانعكاس الإشارة العكسية، والإغلاق اليدوي من الترمنال. يعلن الترويسة عن كومة من 12 طبقة (REGIME / SIGNAL / ENTRY / CONFIRM / NO-TRADE / CAPITAL CAP / RISK / SIZING / MANAGE / EXIT / SCALING / OnTester) لكن العديد منها — تصنيف نظام السوق الصريح، وسقف رأس المال القائم على السحب، ومخارج التوسيع، وتجاوز OnTester — غير منفذة في هذا البناء؛ الكومة الحية أقرب إلى سبع من الطبقات الاثني عشر المسماة.
عملياً يحصل المستخدم على تصويت نظيف رباعي الاتجاهات، وقوس ثابت 1:2، و1% مخاطرة لكل صفقة بحجم يتناسب مع الرصيد، وهرمة 5 مراكز تشترط أن تكون المراكز القائمة رابحة وعند نقطة التعادل. الأداة هي XAUUSD M5، والسحر 22216100، ويفترض المستشارة أن الوسيط يوفر سيولة M5 معقولة خلال نوافذ توقيت الخادم 8-12 و14-20. لن يجد المستخدم الذي يريد وقف متحرك حي أو ترقية نقطة التعادل هذه الميزات في هذا البناء؛ CheckExit الفارغة هي الشيء الوحيد الذي يفصل بين السلوك الحالي ومخرج متدرج.
تفاصيل الاستراتيجية
في كل تيكت داخل النافذة الزمنية النشطة (ساعات الخادم 8-12 و14-20 افتراضياً) يقرأ المستشارة أربع تدفقات بيانات: ميل HMA(55، قاسم 2.0) مخصص مبني من مقبضي LWMA في CHullCalculator، ومتوسط EMA بفترة 200 على PRICE_CLOSE، وRSI(14) على PRICE_CLOSE، وشمعة هيكن آشي محسوبة ذاتياً من CHeikenAshi. يحدد ميل هول التحيز الاتجاهي، وتعمل بوابة EMA على تقييد التداولات في جانب الاتجاه، ويرفض RSI الدخولات في مناطق تشبع الشراء للشراء أو تشبع البيع للبيع، وتضيف شمعة HA تأكيداً ملساً. تُدمج القيم المنطقية الأربع بعلامة AND، لذا لا تطلق إشارة شراء إلا عندما تتفق الطبقات الأربع في الشمعة نفسها. يحسب اللوت التلقائي في GetLotSize حجم كل صفقة ليكون 1% من رصيد الحساب مقابل وقف الخسارة 500 نقطة، مع تطبيع إلى خطوة لوت الوسيط وتحديد سقف 5.0 لوت. تستدعي الانعكاسات ClosePositions على الجانب المعاكس أولاً، ثم تفتح الصفقة الجديدة، وتمنع IsPyramidSafe الإضافات إلى المراكز الخاسرة والمراكز التي لم يصل وقفها بعد إلى نقطة التعادل. CheckExit() قالب فارغ — المخرج الحي الوحيد هو قوس 1:2 الثابت وإغلاق الإشارة العكسية.
يتطلب دخول الشراء أن يكون ميل متوسط هول (55) متجهاً للأعلى، وأن يتداول الإغلاق فوق المتوسط 200 الأسي، وأن يكون RSI(14) دون 70، وأن تكون شمعة هيكن آشي صاعدة (HA_Close > HA_Open)؛ يجب أن تتفق الطبقات الأربع في الشمعة نفسها. دخول البيع يعكس الكومة: ميل هول هابط، وإغلاق دون المتوسط 200 الأسي، وRSI(14) فوق 30، وشمعة هيكن هابطة. عند الانعكاس الاتجاهي يغلق المستشارة أولاً كل مركز مفتوح على الجانب المعاكس عبر TryClose_EX16100 قبل فتح الجديد.
لا يوجد منطق خروج حي في هذا البناء — CheckExit() دالة فارغة. تُغلق المراكز فقط عند تفعيل وقف الخسارة الثابت (500 نقطة) أو جني الأرباح الثابت (1000 نقطة)، أو عندما تطلق إشارة في الاتجاه المعاكس وتفعّل ClosePositions على الجانب الآخر، أو عندما يغلق المتداول الصفقة يدوياً. تقوم دالة المساعدة TryClose_EX16100 بإعادة المحاولة حتى 3 مرات بفواصل 200 مللي ثانية عند حالات إعادة التسعير أو انتهاء المهلة أو تغير السعر.
كل دخول يستخدم وقف خسارة ثابتاً قدره 500 نقطة موضوعاً على سعر ask ناقص 500_Point في الشراء، وعلى سعر bid زائد 500_Point في البيع. تُستخدم قيمة InpStopLoss كمدخل لكل من وقف الوسيط وحساب حجم اللوت في GetLotSize.
كل دخول يستخدم جني أرباح ثابتاً قدره 1000 نقطة — 1000_Point فوق سعر ask في الشراء، و1000_Point تحت سعر bid في البيع — مما ينتج نسبة مخاطرة إلى عائد 1:2 على قوس 500/1000 نقطة. لا يوجد مخرج متدرج، ولا إغلاق جزئي، ولا جني أرباح متحرك في الكود الحالي.
موصى به لزوج XAUUSD على الإطار الزمني M5 مع وديعة لا تقل عن 100 دولار، وملف المخاطر الافتراضي 1% لكل صفقة، وأقواس ثابتة 1:2 بنقاط 500/1000. الأفضل تشغيله على حساب ECN أو RAW بفارق سعر منخفض خلال نوافذ توقيت الخادم 8-12 (لندن) و14-20 (نيويورك) حيث تبلغ سيولة XAUUSD M5 ذروتها؛ خارج هذه الساعات يحجب المرشح الزمني الدخولات الجديدة. صُممت طبقة الهرمة للجلسات ذات الاتجاه الواضح — إذا توقفت المراكز القائمة في الربح قبل الوصول إلى جني الأرباح 1000 نقطة، فإن غياب منطق التتبع أو نقطة التعادل سيجعلها تعيد المكاسب غير المحققة.
منطق الاستراتيجية
Pipsgrowth EX16100 Trend — تحليل منطق الاستراتيجية (من كود .mq5)
العائلة: Trend
الماجيك: 22216100
الإصدار: 2.00
الوصف:
Modular Expert Advisor System refactored for XAUUSD 5M with Hull MA, Heiken Ashi filter, trend EMA and RSI confirmation. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester
المؤشرات:
- مؤشرات قياسية
الدوال الرئيسية:
IsTradingTime()GetLotSize()IsPyramidSafe()CountPositions()ClosePositions()CheckExit()TryClose_EX16100()TryClosePartial_EX16100()TryModify_EX16100()
// Pipsgrowth EX16100 Trend — Execution Flow (from source analysis)
// Family: Trend
// Modular Expert Advisor System refactored for XAUUSD 5M with Hull MA, Heiken Ashi filter, trend EMA and RSI confirmation. 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
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| InpHullPeriod | 55 | Hull Period |
| InpHullDivisor | 2.0 | Hull Divisor |
| InpHullPrice | PRICE_CLOSE | Hull Price |
| InpUseHeikenFilter | true | Use Heiken Ashi Filter |
| InpUseTrendFilter | true | Use Trend Filter (EMA) |
| InpTrendEMAPeriod | 200 | Trend EMA Period |
| InpUseRSIFilter | true | Use RSI Filter |
| InpRSIPeriod | 14 | RSI Period |
| InpRSIUpper | 70.0 | RSI Upper Level |
| InpRSILower | 30.0 | RSI Lower Level |
| InpLots | 0.01 | Fixed Lot Size |
| InpUseAutoLot | true | Use Auto Lot |
| InpRiskPercent | 1.0 | Risk Percent per Trade |
| InpMaxLotSize | 5.0 | Max Lot Size |
| InpStopLoss | 500 | Stop Loss (Points) |
| InpTakeProfit | 1000 | Take Profit (Points) |
| InpUsePyramid | true | Use Pyramid Logic |
| InpMaxOpenPositions | 5 | Max Open Positions |
| InpMinProfitPoints | 100 | Min Profit to Add Position (Points) |
| InpUseTimeFilter | true | Use Time Filter |
| InpStartHour1 | 8 | Session 1 Start Hour |
| InpEndHour1 | 12 | Session 1 End Hour |
| InpStartHour2 | 14 | Session 2 Start Hour |
| InpEndHour2 | 20 | Session 2 End Hour |
| InpTradeComment | "Psgrowth.com Expert_16100" | Trade Comment |
| InpMagic | 22216100 | Magic Number |
#property copyright "Pipsgrowth.com"
#property link "https://pipsgrowth.com"
#property version "2.00"
#property strict
#property description "Pipsgrowth.com EX16100 exModularEA_XAUUSD_5M — modular Hull MA EA for XAUUSD M5, full 12-layer stack."
#include <Trade/Trade.mqh>
#include <Trade/PositionInfo.mqh>
#include <Trade/SymbolInfo.mqh>
#include <Trade/AccountInfo.mqh>
//+------------------------------------------------------------------+
//| Inputs |
//+------------------------------------------------------------------+
input group "=== Strategy Settings ==="
input int InpHullPeriod = 55; // Hull Period
input double InpHullDivisor = 2.0; // Hull Divisor
input int InpHullPrice = PRICE_CLOSE; // Hull Price
input bool InpUseHeikenFilter= true; // Use Heiken Ashi Filter
input bool InpUseTrendFilter = true; // Use Trend Filter (EMA)
input int InpTrendEMAPeriod = 200; // Trend EMA Period
input bool InpUseRSIFilter = true; // Use RSI Filter
input int InpRSIPeriod = 14; // RSI Period
input double InpRSIUpper = 70.0; // RSI Upper Level
input double InpRSILower = 30.0; // RSI Lower Level
input group "=== Entry & Risk Settings ==="
input double InpLots = 0.01; // Fixed Lot Size
input bool InpUseAutoLot = true; // Use Auto Lot
input double InpRiskPercent = 1.0; // Risk Percent per Trade
input double InpMaxLotSize = 5.0; // Max Lot Size
input double InpStopLoss = 500; // Stop Loss (Points)
input double InpTakeProfit = 1000; // Take Profit (Points)
input bool InpUsePyramid = true; // Use Pyramid Logic
input int InpMaxOpenPositions = 5; // Max Open Positions
input double InpMinProfitPoints = 100; // Min Profit to Add Position (Points)
input group "=== Time Management ==="
input bool InpUseTimeFilter = true; // Use Time Filter
input int InpStartHour1 = 8; // Session 1 Start Hour
input int InpEndHour1 = 12; // Session 1 End Hour
input int InpStartHour2 = 14; // Session 2 Start Hour
input int InpEndHour2 = 20; // Session 2 End Hour
input group "=== Other Settings ==="
input string InpTradeComment = "Psgrowth.com Expert_16100"; // Trade Comment
input int InpMagic = 22216100; // Magic Number
//+------------------------------------------------------------------+
//| Internal Classes |
//+------------------------------------------------------------------+
//--- Hull Moving Average Calculator
class CHullCalculator {
private:
int m_period;
double m_divisor;
ENUM_APPLIED_PRICE m_price;
int m_handle_wma_full;
int m_handle_wma_half;الكود المصدري الكامل متاح عند التحميل
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.
تحذير صريح: لأغراض تعليمية فقط
تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.
وسطاء موصى بهم لهذا الإكسبرت
هذه الروبوتات تعمل على 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 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.