Pipsgrowth EX16068 Trend — إكسبرت أدفايزر متابعة اتجاه
إكسبرت أدفايزر MT5 مفتوح المصدر · XAUUSD · M5، H1
Pipsgrowth EX16068 Trend — Profit locker EA that moves SL to break-even+offset when a profit threshold is reached. Supports hard SL on new trades, . إكسبرت أدفايزر MT5 مفتوح المصدر.
نظرة عامة
Pipsgrowth EX16068 هو مدير مراكز أحادي الغرض ولا يفتح أي صفقات. صُمم ليُرفق على شارت يستضيف بالفعل الـ EA الذي يفتح الصفقات الفعلية، ليتولى إدارة جانب وقف الخسارة لتلك الصفقات بعد تفعيلها. عند كل تيكر، يقوم السكريبت بتكرار المرور على جميع المراكز المفتوحة في الطرفية، ويُصفّيها حسب الرمز والرقم السحري (Magic Number)، ثم يُجري عمليتين منفصلتين لإدارة الوقف على المراكز التي تجتاز الفلتر: وقف خسارة أولي (Hard SL) للصفقات التي لا تملك وقفًا حاليًا، وقف تراكمي لجني الأرباح (Profit Locker) للصفقات التي دخلت في منطقة ربح.
التمريرة الأولى هي وقف الخسارة الصلب (Hard SL). عند تفعيل UseHardSL وكون قيمة POSITION_SL للصفقة المختارة تساوي صفرًا، يحسب الـ EA مسافة الوقف انطلاقًا من HardSL_Value بالاعتماد على الوضع المحدد في HardSL_Mode. تتوفر ثلاثة أوضاع: في PROFIT_MODE_CURRENCY يقسم الـ EA قيمة HardSL_Value على حجم الصفقة ثم على SYMBOL_TRADE_TICK_VALUE ويضرب في SYMBOL_TRADE_TICK_SIZE ويقسم على _Point ليصل إلى مسافة سعرية تقابل ذلك المبلغ النقدي لو أُغلقت الصفقة عند الوقف. في PROFIT_MODE_PIPS تكون المسافة هي HardSL_Value مضروبة في 10 للرموز ذات 4 خانات وفي 1 للرموز ذات 3 أو 5 خانات، إذ يُعامل XAUUSD عند منزلتين عشريتين كنظام نقاط، بينما يُعامل EURUSD عند 5 خانات كنظام نقاط. أما في PROFIT_MODE_POINTS فتُستخدم القيمة كما هي. تُقيَّد النتيجة بنطاق دفاعي: أي مسافة نقاط تتجاوز 10 000 أو تنخفض تحت الصفر تُستبدل بـ 50 نقطة، ويُرفض أي وقف يقع عند الصفر أو تحته. يُسوى السعر لاحقًا إلى عدد خانات الرمز، وتُتحقق صلاحيته مقابل SYMBOL_TRADE_STOPS_LEVEL؛ فإذا كان الوقف المُحتسب أقرب إلى السوق من الحد الأدنى الذي يفرضه الوسيط، يتخطى الـ EA هذا الرمز بدلاً من إرسال طلب سيرفضه الوسيط.
التمريرة الثانية هي قفل الأرباح. عندما يكون EnableProtection مفعّلاً ويتجاوز ربح الصفقة المُقاس قيمة ProfitThreshold، يحسب الـ EA وقفًا جديدًا عند currentPrice ± SL_Offset، ويُحدد اتجاه الإشارة حسب نوع الصفقة: تُوضع الصفقات الشرائية تحت سعر الـ BID الحالي، والصفقات البيعية فوق سعر الـ ASK الحالي. يُقاس الإزاحة بنفس وحدات قياس الربح (ProfitMode)، أي أن إزاحة قدرها 0.50 دولار في وضع العملة وإزاحة قدرها 5 نقاط في وضع النقاط تنتجان سلوكين مختلفين جوهريًا. كما في وقف الخسارة الصلب، يستخدم وضع العملة حجم الصفقة وقيمة التيك لتحويل الدولارات إلى مسافة سعرية، ويضاعف وضع البيبات بعامل البيب المناسب، في حين يكون وضع النقاط مباشرًا. يُرسل السكريبت بعد ذلك طلب تعديل TRADE_ACTION_SLTP يُعيد من خلاله تأكيد قيمة POSITION_TP الحالية كما هي، مما يحافظ على مستوى جني الأرباح الذي حدده EA الدخول بدقة.
آلية القفل أحادية الاتجاه. بالنسبة للصفقات الشرائية لا يُطبَّق الوقف الجديد إلا إذا كان أعلى من القائم، أما البيعية فلا يُطبَّق إلا إذا كان أقل (أو إذا لم يكن هناك وقف أصلًا). لن يرخي الـ EA أبدًا وقف الخسارة عائدًا إلى سعر الدخول، وهذا هو الضمان الأساسي للقفل. تخضع المقارنة والإرسال لنفس فحص SYMBOL_TRADE_STOPS_LEVEL المستخدم في وقف الخسارة الصلب، لذا يحترم القفل الحد الأدنى للمسافة الذي يفرضه الوسيط، ويتخطى بصمت المراكز التي ستنتهكه.
يُضبط نطاق الرموز عبر ApplyMode. يحدد APPLY_MODE_CURRENT أن القفل يقتصر على رمز الشارت المُرفق عليه، وهو الإعداد المعتاد لمحفظة زوج واحد. أما APPLY_MODE_ALL فيوسّع القفل ليشمل كل الرموز في الحساب، وهو مفيد عندما تعمل شبكة من الـ EAs عبر عدة أدوات ويريد المتداول مديرًا واحدًا يتولى إدارة الوقوف. ثم يُضيّق فلتر الرقم السحري النطاق أكثر: لا تُعالَج إلا المراكز التي تساوي قيمة POSITION_MAGIC فيها الرقم MagicNumber (الافتراضي 22216068)، وتُرفق التعليقة Psgrowth.com Expert_16068 بكل تعديل وقف خاسر يُصدره الـ EA، مما يساعد في تدقيق السجل.
لا تؤدي دالة OnInit أي تهيئة سوى طباعة ملاحظة عند تعطيل الحماية. لا توجد مؤشرات، ولا مقابض بافر، ولا EventSetTimer، ولا أحداث مُجدوَلة — المنطق بأكمله يعيش داخل OnTick. يُعلن تعليق الترويسة في المصدر عن اثنتي عشرة طبقة (REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester) لكن الطبقة MANAGE فقط هي المُنفّذة فعليًا؛ أما البقية فهي عناصر وصفية نظرية لأن هذا الـ EA أداة مساعدة وليس استراتيجية.
في أسفل الملف توجد ثلاث دوال إعادة محاولة — TryClose_EX16068 وTryClosePartial_EX16068 وTryModify_EX16068 — تعكس النمط المستخدم في الـ EAs التداولية ضمن نفس المجموعة: ثلاث محاولات وفترات سكون 100–200 مللي ثانية عند TRADE_RETCODE_REQUOTE وTRADE_RETCODE_TIMEOUT وTRADE_RETCODE_PRICE_OFF وTRADE_RETCODE_PRICE_CHANGED. لا تُستدعى أي من هذه الدوال من OnTick؛ يستخدم المنطق الحي استدعاءات trade.OrderSend الخام داخل السطر. اعتبر هذه الدوال كودًا ميتًا متبقيًا من القالب، وليس شبكة أمان.
حالة استخدام عملية: يمكن لمتداول يشغّل استراتيجية واحدة على XAUUSD M5 برصيد 100 دولار أن يُرفق Pipsgrowth EX16068 على نفس الشارت مع ApplyMode = APPLY_MODE_CURRENT، ويُبقي الرقم السحري الافتراضي عند 22216068 ليطابق EA الإشارات، ويُعيّن HardSL_Value على 5.0 في وضع العملة لحجم لوت 0.01، ويختار ProfitThreshold = 1.0 وSL_Offset = 0.50 لقفل بمبلغ دولار واحد مع إزاحة نصف دولار. وعلى أزواج العملات الرئيسية يُعدَّل الـ EA بسهولة عند ضبط HardSL_Mode وProfitMode على PROFIT_MODE_PIPS، حيث يكون التعامل بـ 50 نقطة مسافة و5 نقاط إزاحة أسهل من حيث الإدراك الذهني من التعامل بمبالغ نقدية. أما في محفظة متعددة الرموز، فيُنقل إلى APPLY_MODE_ALL وتُوائم إما جميع EAs الدخول على نفس الرقم السحري، أو يُقبل بأن القفل لن يرى سوى جزء من المراكز.
ما لا يفعله هذا الـ EA: لا يفتح أوامر جديدة، ولا يحرك جني الأرباح، ولا يُغلق المراكز يدويًا، ولا يرخي وقف الخسارة بعد رفعه. منطق التتبع عتبة واحدة مع إزاحة واحدة — لا يوجد سلم تدريجي L1 إلى L5 ولا خروج قائم على الوقت. إذا انخفض ربح الصفقة تحت العتبة بعد رفع الوقف، لا يُسحب الوقف إلى الخلف؛ بل يبقى في آخر موضع انتقل إليه.
تفاصيل الاستراتيجية
في كل تيكر يُعدّد الـ EA مراكز الطرفية، ويُصفّيها حسب ApplyMode (الرمز الحالي أو الكل) وحسب MagicNumber (الافتراضي 22216068)، ثم يُجري تمريرتين على كل صفقة ناجية. تحوّل التمريرة الأولى HardSL_Value إلى مسافة سعرية باستخدام وحدة HardSL_Mode — وضع العملة يقسم على الحجم وقيمة التيك، ووضع البيبات يضرب في 10 (للرموز ذات 4 خانات) أو 1 (للرموز ذات 3 أو 5 خانات)، ووضع النقاط مباشر — وتُقيّد النتيجة بنطاق دفاعي (سقف 10 000 نقطة، احتياطي 50 نقطة، لا أسعار سالبة)، ويُرسل طلب TRADE_ACTION_SLTP إذا لم يكن لدى الصفقة وقف حالي. تقيس التمريرة الثانية الربح بوحدات ProfitMode، وما إن يتجاوز ProfitThreshold تحتسب currentPrice ± SL_Offset (الإشارة حسب نوع الصفقة) وترسل تعديل TRADE_ACTION_SLTP آخر؛ ولا تنطلق عملية الرفع إلا إذا كان الوقف الجديد أكثر تحفظًا من القائم — currentSL < newSL في الشراء، وcurrentSL > newSL || currentSL == 0 في البيع — ويُعاد التحقق من الوقف الجديد مقابل SYMBOL_TRADE_STOPS_LEVEL قبل الإرسال. تُسوّى كلتا التمريرتين السعر إلى عدد خانات الرمز، وتُعيدان إصدار POSITION_TP القائم كما هو، فيظل جني الأرباح الذي حدده EA الدخول محفوظًا عبر كل تعديل. تُقرأ قيمة جني الأرباح ووقف الخسارة الحالي في كل تيكر، مما يعني أن أي وقف يُحرّكه المتداول يدويًا بين التيكرات يُحترم. ثلاث دوال إعادة محاولة — TryClose_EX16068 وTryClosePartial_EX16068 وTryModify_EX16068 — معرّفة في أسفل الملف لكنها لا تُستدعى أبدًا؛ يستخدم المنطق الحي استدعاءات trade.OrderSend الخام داخل السطر.
Pipsgrowth EX16068 أداة مساعدة — ولا يُصدر إشارات دخول. يبدأ عمله بعد وجود الصفقة فعليًا: يفحص المراكز المفتوحة عند كل تيكر، ويُصفّيها حسب الرمز والرقم السحري، ثم إما أن يُرفق وقفًا صلبًا (إذا كان UseHardSL مفعّلاً وPOSITION_SL يساوي صفرًا) أو يرفع الوقف القائم تدريجيًا بمجرد أن يتجاوز الربح المُقاس قيمة ProfitThreshold بهامش قدره SL_Offset.
لا يُرسل الـ EA أبدًا أمر إغلاق. تتحقق المخارج حين يُفعّل الوسيط وقف الخسارة المُعدَّل؛ ولا يُرسل الـ EA سوى طلبات TRADE_ACTION_SLTP لرفع الوقف في اتجاه الربح. كل عملية رفع أحادية الاتجاه — في الشراء يجب أن يتجاوز الوقف الجديد القائم، وفي البيع يجب أن يكون أقل — وأي تعديل يقع داخل SYMBOL_TRADE_STOPS_LEVEL للرمز يُتخطى بصمت.
منطق من مرحلتين: يُركَّب وقف ابتدائي صلب عند تفعيل UseHardSL وعدم وجود وقف سابق للصفقة، على مسافة HardSL_Value خلف سعر الدخول بالوضع المحدد في HardSL_Mode (عملة، بيبات، أو نقاط). ما إن يبلغ الربح المُقاس ProfitThreshold حتى يُرفع الوقف إلى currentPrice ± SL_Offset (بنفس وحدات ProfitMode) ولا يتحرك عائدًا إلى الخلف بعد ذلك؛ وتتحقق كلتا المرحلتان من السعر الناتج مقابل SYMBOL_TRADE_STOPS_LEVEL ويتخطى عند الرفض.
لا يضع الـ EA مستويات جني الأرباح ولا يُعدّلها ولا يزيلها. كل طلب TRADE_ACTION_SLTP يُرسله يُعيد التأكيد على قيمة POSITION_TP الحالية نصًا، لذا يظل جني الأرباح تحت سيطرة الـ EA أو الإجراء اليدوي الذي فتح الصفقة، ويُحفظ كما هو عبر كل عملية رفع للوقف.
المتداولون الذين يشغّلون EA واحدة على XAUUSD بين M5 وH1 برصيد ابتدائي 100 دولار (مخاطرة متوسطة) ويرغبون في فصل منطق الإشارات عن إدارة الوقف — يُرفق Pipsgrowth EX16068 على نفس الشارت، ويُضبط ApplyMode = APPLY_MODE_CURRENT، وتُوائم قيمة Magic مع EA الدخول ليرى القفل الصفقات. الإعداد الافتراضي (HardSL_Value = 5.0 عملة، ProfitThreshold = 1.0، SL_Offset = 0.50) مُعَدّ للوت 0.01 على الذهب؛ أما على أزواج العملات الرئيسية فيُنقل HardSL_Mode وProfitMode إلى PROFIT_MODE_PIPS وتكون قيم 50 و5 بيبات أكثر طبيعية. ولمحافظ متعددة الرموز يُستخدم APPLY_MODE_ALL ويُنصح بتوسيع العتبة لتفادي الانطلاق على ارتفاعات صغيرة عبر عدة مراكز صغيرة.
منطق الاستراتيجية
Pipsgrowth EX16068 Trend — تحليل منطق الاستراتيجية (من كود .mq5)
العائلة: Trend
الماجيك: 22216068
الإصدار: 2.00
الوصف:
Profit locker EA that moves SL to break-even+offset when a profit threshold is reached. Supports hard SL on new trades, multi-symbol protection, and profit measurement in currency, pips or points. Filters positions by magic number. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester
المؤشرات:
- مؤشرات قياسية
الدوال الرئيسية:
TryClose_EX16068()TryClosePartial_EX16068()TryModify_EX16068()
// Pipsgrowth EX16068 Trend — Execution Flow (from source analysis)
// Family: Trend
// Profit locker EA that moves SL to break-even+offset when a profit threshold is reached. Supports hard SL on new trades, multi-symbol protection, and profit measurement in currency, pips or points. Filters positions by magic number. 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
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| EnableProtection | true | Master switch |
| MagicNumber | 22216068 | Magic number |
| InpTradeComment | "Psgrowth.com Expert_16068" | Trade comment |
| UseHardSL | true | Enable Hard SL on new trades |
| HardSL_Value | 5.0 | Hard SL distance (units per HardSL_Mode) |
| ApplyMode | APPLY_MODE_CURRENT | Protect current symbol or all |
| HardSL_Mode | PROFIT_MODE_CURRENCY | Hard SL mode (currency/pips/points) |
| ProfitThreshold | 1.0 | X: profit level (units per ProfitMode) |
| ProfitMode | PROFIT_MODE_CURRENCY | Which mode to use |
| SL_Offset | 0.50 | Y: buffer in same units as profit |
#property copyright "Pipsgrowth.com"
#property link "https://pipsgrowth.com"
#property version "2.00"
#property strict
#property description "Pipsgrowth.com EX16068 ProfitLocker — Break-even+offset SL manager, full 12-layer stack."
#include <Trade/Trade.mqh>
CTrade trade;
//--- Input groups and parameters
input group "=== Identity ==="
input bool EnableProtection = true; // Master switch
input long MagicNumber = 22216068; // Magic number
input string InpTradeComment = "Psgrowth.com Expert_16068"; // Trade comment
input group "=== Hard SL Settings ==="
input bool UseHardSL = true; // Enable Hard SL on new trades
input double HardSL_Value = 5.0; // Hard SL distance (units per HardSL_Mode)
//--- Symbol selection
input group "=== Symbol Selection ==="
enum ENUM_APPLY_MODE
{
APPLY_MODE_CURRENT = 0, // Only on chart’s symbol
APPLY_MODE_ALL = 1 // On all symbols
};
input ENUM_APPLY_MODE ApplyMode = APPLY_MODE_CURRENT; // Protect current symbol or all
//--- Profit measurement
input group "=== Profit Measurement ==="
enum ENUM_PROFIT_MODE
{
PROFIT_MODE_CURRENCY = 0, // in account currency
PROFIT_MODE_PIPS = 1, // in pips
PROFIT_MODE_POINTS = 2 // in points
};
input ENUM_PROFIT_MODE HardSL_Mode = PROFIT_MODE_CURRENCY; // Hard SL mode (currency/pips/points)
input group "=== Profit Threshold ==="
input double ProfitThreshold = 1.0; // X: profit level (units per ProfitMode)
input ENUM_PROFIT_MODE ProfitMode = PROFIT_MODE_CURRENCY; // Which mode to use
//--- Stop-loss offset (uses same units as ProfitMode)
input group "=== Stop Loss Offset ==="
input double SL_Offset = 0.50; // Y: buffer in same units as profit
//+------------------------------------------------------------------+
//| Expert initialization |
//+------------------------------------------------------------------+
int OnInit()
{
if(!EnableProtection)
Print("ProfitLocker disabled on init.");
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert deinitialization |الكود المصدري الكامل متاح عند التحميل
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.
تحذير صريح: لأغراض تعليمية فقط
تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.
وسطاء موصى بهم لهذا الإكسبرت
هذه الروبوتات تعمل على 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 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.