Pipsgrowth EX16074 Trend — إكسبرت أدفايزر متابعة اتجاه
إكسبرت أدفايزر MT5 مفتوح المصدر · XAUUSD · M5، H1
Pipsgrowth EX16074 Trend — Sidus trend-following EA using Alligator and RSI. Entry signals fire when Alligator lines separate by a configurable del. إكسبرت أدفايزر MT5 مفتوح المصدر.
نظرة عامة
إكسبرت Pipsgrowth EX16074 ينتمي إلى عائلة Sidus من متابعات الاتجاه ويعمل على مكدس مؤشرين فقط: مؤشر Bill Williams' Alligator (ثلاثة متوسطات متحركة ممهدة) وقراءة واحدة لمؤشر RSI(14). بدلاً من انتظار خطوط التمساح الثلاثة حتى 'تفتح' أو 'تغلق' أفواهها بطريقة قاطعة، يقيس هذا التطبيق مدى ابتعاد كل خط عن قيمته السابقة ويشترط أن تتحرك الخطوط الثلاثة كلها في الاتجاه نفسه بأكثر من قيمة قابلة للضبط قبل أن يلتزم برأس المال. ثم يعمل RSI كبوابة تصويت زخم: لا يفتح الإكسبرت الصفقة إلا إذا كانت قراءة RSI السابقة على الجانب الخاطئ من مستوى 50 وأصبحت القراءة الأخيرة على الجانب الصحيح، وهذا يمنعه من اللحاق بآخر موجة في التحرك أو من إطلاق إشارة على شمعة دوجي تخدع التقاطع للحظة.
في كل شمعة جديدة (يحتفظ الكود بطابع زمني ثابت PrevBars ويعيد ضبطه داخل كتلة التداول حتى لا تحدث إعادة دخول على نفس الشمعة) يسحب المحرك بافرات Alligator لآخر شمعتين مغلقتين بالإضافة إلى البافر الرئيسي لمؤشر RSI(14). إعدادات التمساح هي إعدادات Williams الافتراضية — الفك (13, 8)، الأسنان (8, 5)، الشفاه (5, 3)، كلها متوسط ممهد (SMMA) — لكن كل فترة وإزاحة مكشوفة كمدخل، فيمكن للمتداول تمديد المؤشر أو ضغطه دون إعادة ترجمة. السعر المطبق الافتراضي هو الوسيط (5) للتمساح و الإغلاق (1) لمؤشر RSI؛ وكلاهما قابل للاختيار من قبل المستخدم.
حتى تنطلق إشارة الدخول للشراء، يجب أن تتوافر ثلاثة شروط على نفس الشمعة الجديدة: قراءة RSI السابقة تحت 50، وقراءة RSI الأخيرة فوق 50، وأن يكون ميل كل خط من خطوط التمساح — المعرَّف في الكود على أنه Jaw[1] - Jaw[2] و Teeth[1] - Teeth[2] و Lips[1] - Lips[2] — أكبر من InpDelta (0.00030 افتراضياً) في الاتجاه الموجب. إشارة البيع هي المرآة التامة: كان RSI فوق 50 في الشمعة السابقة وأصبح تحت 50 في الشمعة الأخيرة، وكل ميل من ميول التمساح أكثر سلبية من -InpDelta. لا يوجد مرشح ADX ولا فحص حجم ولا تأكيد من إطار زمني أعلى — تُفتح الصفقة عند افتتاح الشمعة التي تلي شمعة الإشارة، وهي نفس الشمعة التي أغلقت التقاطع.
وقف الخسارة ميكانيكي ومرتبط بالشمعة السابقة. للشراء، يُضبط وقف الخسارة على Low[1] - InpOffset (3 نقاط) — أي أسفل فتيل الشمعة السابقة بقليل. للبيع، يُضبط على High[1] + InpOffset. جني الأرباح هو المدخل الثابت InpTakeProfit وقيمته الافتراضية 75 نقطة. لوقف الخسارة المعتمد على التأرجح ملف سلوكي محدد: فهو يتنفس مع التذبذب لأنه كلما اتسعت الشمعة السابقة ابتعد وقف الخسارة للخلف، لكنه يعني أيضاً أن مسافة الوقف تتفاوت تفاوتاً كبيراً من إشارة إلى أخرى — إشارة تُطلق في صباح هادئ قد تحمل وقفاً بعرض 5 نقاط، في حين أن إشارة تُطلق بعد شمعة انعكاسية عريضة قد تحمل وقفاً بعرض 60 نقطة. ضبط InpTakeProfit = 0 يحوّل الإكسبرت إلى نظام وقف متحرك صرف يخرج فقط عبر قفزة التتبع أو عبر إغلاق الاتجاه المعاكس الاختياري.
بعد فتح الصفقة، تعمل دالة Trailing() على كل تيك، وليس فقط على الشموع الجديدة. تتحقق من السعر الحالي مقارنة بسعر الفتح؛ وبمجرد أن يتحرك السعر بأكثر من ExtTrailingStop + ExtTrailingStep (5 + 15 = 20 نقطة افتراضياً) في الربح، يُرفع وقف الخسارة إلى currentPrice - ExtTrailingStop. تمنع معاملة 'step' الإكسبرت من إصدار سلسلة متواصلة من طلبات التعديل أثناء صعود بطيء — يجب أن يتحرك السعر 15 نقطة إضافية قبل القفزة التالية. توجد حماية ضد تخفيف وقف الخسارة على صفقة خاسرة: if(m_position.StopLoss() < newSL) — بمجرد رفع وقف الخسارة على صفقة شراء، لا يمكن إنزاله مرة أخرى على نفس الصفقة. للبيع المنطق معكوس. يُعاد إصدار التتبع دائماً دون لمس حقل جني الأرباح، لذا يظل جني الأرباح الأصلي عند 75 نقطة نشطاً بالتوازي حتى يصل إليه السعر.
العلامة الاختيارية InpOpposite (معطلة افتراضياً) تغلق الصفقات على الاتجاه المعاكس عند إطلاق إشارة جديدة. هذا مفيد إذا أردت أن يكون الإكسبرت صافياً صفرياً عند انعكاسات الاتجاه، لكن في الأسواق المتذبذبة حيث يذبذب التمساح، قد تنطلق إشارات شراء وبيع متعاقبة في وقت قريب وقد يأكل الإكسبرت الفارق السعري مرتين. افتراضياً، يكدّس الإكسبرت الصفقة الجديدة فوق القائمة، تاركاً صفقة شراء وصفقة بيع مفتوحتين في نفس الوقت — وهذه ميزة في اتجاه قوي وفخ في نطاق ضيق. القرار ثنائي والمتداول يتحمل تبعاته.
إدارة رأس المال والمخاطر متعمدة البساطة. InpLots = 0.1 مدخل ثابت دون حساب نسبة مخاطرة، ودون سقوف مخاطرة لكل صفقة، ودون قاطع خسارة يومي، ودون حد أدنى لرصيد الأسهم. على المتداول الذي يكيِّف الإكسبرت على حجم حسابه تعديل حجم اللوت يدوياً، وتتحقق دالة CheckVolumeValue() من اللوت مقابل SYMBOL_VOLUME_MIN / MAX / STEP عند التهيئة. وتعيد m_trade.CheckVolume() التحقق قبل كل OrderSend. تلتف ثلاث دوال مساعدة للمحاولة — TryClose_EX16074 و TryClosePartial_EX16074 و TryModify_EX16074 — حول كل عملية تداول بما يصل إلى ثلاث محاولات وتنام 100–200 مللي ثانية عند إعادة التسعير أو انتهاء المهلة أو تغير السعر. هامش الانزلاق هو 10 نقاط.
يوصي الترويسة بالإطار M5 (نطاق العمل M5–H1) وتذكر العملات الرئيسية بالإضافة إلى الذهب/المعادن. الإكسبرت بلا وضع إطار زمني متعدد — يتداول على أي رسم بياني يُلقى عليه. لا يوجد مرشح أخبار ولا بوابة جلسة ولا مرشح يوم من الأسبوع. دالة OnTradeTransaction() متروكة فارغة. دالة لياقة OnTester غير منفذة، لذا سيستخدم تحسين Strategy Tester إعداد المنصة الافتراضي.
ما يمكن توقعه في الباك تيست. إشارة Sidus متفرقة — تنتظر أن تتباعد خطوط التمساح فعلاً بمقدار غير تافه، وهذا يحدث عادة 2–4 مرات في يوم التداول على الرسم البياني لخمس دقائق. تتراوح نسبة الربح على نسخة مضبوطة بدقة بين 35–50% لأن الوقف معتمد على التأرجح وغالباً ما يكون أوسع من جني الأرباح في الإشارة الأولى، لكن الوقف المتحرك يحوّل قسماً من تلك الصفقات القريبة من التعادل إلى أرباح أكبر حين يمتد الاتجاه. يبلغ السحب ذروته خلال المرحلة الجانبية الحتمية التي تتسطح فيها خطوط التمساح ويكتفي الإكسبرت بالانتظار؛ وعندما يعود الاتجاه يسترد السحب عبر الإشارة التالية. إن InpDelta هو أهم مقبض ضبط: أنزله (مثلاً 0.00010) لأخذ مزيد من الإشارات في الاتجاهات الخفيفة، وارفعه (مثلاً 0.00060) لانتظار تحركات كاملة القوة. رفعه فوق 0.00100 يُسكت الإكسبرت تماماً على فروقات أسعار الفوركس retail.
تفاصيل الاستراتيجية
يقرأ EX16074 مؤشر Bill Williams' Alligator (الفك 13/8، الأسنان 8/5، الشفاه 5/3، SMMA، سعر الوسيط) ومؤشر RSI(14) على الإغلاق، ثم يتحقق عند كل شمعة جديدة من ميل كل خط من خطوط التمساح — الفرق بين قيمته السابقة وتلك التي قبلها — مقابل InpDelta القابل للضبط من المستخدم (0.00030 افتراضياً). يقرأ أيضاً قيمتي RSI ويلتمس تقاطع خط 50. لا تنطلق الصفقة إلا عندما يتفق كل ميل من ميول التمساح على الاتجاه ويؤكد تقاطع RSI ذلك الاتجاه، فتُتجاهل شمعة صاعدة واحدة داخل تمساح مسطح كما يُتجاهل تقاطع هبوطي وحيد لـ RSI داخل تمساح صاعد. تستدعي دوال OpenBuy و OpenSell m_trade.CheckVolume قبل OrderSend، وتُطبّع السعر ووقف الخسارة وجني الأرباح، وتُسجل تفاصيل retcode كاملة. تضمن بوابة PrevBars الثابتة إشارة واحدة لكل شمعة جديدة، وترفع قفزة وقف الخسارة المتحرك في دالة Trailing() وقف الخسارة في اتجاه واحد كل 20 نقطة من الربح الجديد (مسافة 5 نقاط، خطوة 15 نقطة) دون أن ترخيه أبداً على نفس الصفقة.
تنطلق إشارة الشراء عند افتتاح شمعة جديدة عندما تكون قراءة RSI(14) السابقة تحت 50، والقراءة الأخيرة فوق 50، وكان ميل كل خط من خطوط التمساح (الفك، الأسنان، الشفاه — الشمعة [1] ناقص الشمعة [2]) أكبر من InpDelta في الاتجاه الموجب. إشارة البيع هي المرآة حيث تكون كل الميول أكثر سلبية من -InpDelta ويكون تقاطع RSI تحت 50. تمنع حماية PrevBars الثابتة إعادة الدخول على نفس الشمعة، فلا يمكن للإكسبرت أن يطلق أكثر من إشارة واحدة لكل شمعة جديدة.
يتم الخروج عبر قفزة وقف الخسارة المتحرك في دالة Trailing(): بمجرد أن يتحرك السعر بأكثر من InpTrailingStop + InpTrailingStep (5 + 15 = 20 نقطة افتراضياً) في الربح، يُضيق وقف الخسارة إلى currentPrice - InpTrailingStop، ثم يقفز كل InpTrailingStep إضافية. يظل جني الأرباح الأصلي عند 75 نقطة نشطاً بالتوازي ما لم يغلق وقف الخسارة المتحرك الصفقة أولاً. اختيارياً، يتيح تفعيل InpOpposite للإكسبرت إغلاق أي صفقة على الاتجاه المعاكس عند إطلاق إشارة جديدة، وهذا مفيد لإبقاء المحفظة صافية مسطحة عند انعكاسات الاتجاه لكنه قد يتأرجح في الأسواق المتذبذبة.
يُضبط وقف الخسارة الأولي عند Extremum الشمعة السابقة ناقصاً أو زائداً InpOffset (3 نقاط): Low[1] - InpOffset للشراء، High[1] + InpOffset للبيع. يرفض الإكسبرت الإشارة كلياً إذا كان وقف الخسارة الناتج على الجانب الخاطئ من سعر العرض/الطلب الحالي (فحص أمان ضد أوامر الوقف المعكوسة). بعد الدخول، تحرك قفزة وقف الخسارة المتحرك في دالة Trailing() الوقف في اتجاه واحد عند الربح ولا ترخيه أبداً على نفس الصفقة.
جني أرباح ثابت عند InpTakeProfit (75 نقطة افتراضياً)، يُطبق على شكل Ask + 75point للشراء و Bid - 75point للبيع. ضبط InpTakeProfit على 0 يعطل جني الأرباح كلياً ويحوّل الصفقة إلى نظام وقف متحرك صرف يخرج فقط عندما تمسك القفزة المتحركة الحركة أو عند تفعيل إغلاق الاتجاه المعاكس الاختياري.
مصمم لرسوم XAUUSD البيانية M5 أو H1 عند وسطاء فروق أسعارهم ضيقة على الذهب (حسابات ECN/RAW نموذجية حيث يكون فرق سعر الذهب تحت 30 نقطة). الحد الأدنى للرصيد الموصى به: 100 دولار مع InpLots عند 0.1. يناسب ملف المخاطرة MEDIUM متداول التأرجح المرتاح للاحتفاظ بصفقة عبر وقف الخسارة العريض الذي تتركه شمعة الانعكاس، وبوابة دخول الشمعة الجديدة تعني أن الإكسبرت لا يتصرف إلا عند إغلاق الشمعة السابقة — لا يوجد تداول ضوضاء داخل الشمعة. الأفضل إقرانه بجلسة غير اتجاهية (تداخل لندن + نيويورك) حتى يكون للتمساح الحجم الكافي للتباعد فعلاً.
منطق الاستراتيجية
Pipsgrowth EX16074 Trend — تحليل منطق الاستراتيجية (من كود .mq5)
العائلة: Trend
الماجيك: 22216074
الإصدار: 2.00
الوصف:
Sidus trend-following EA using Alligator and RSI. Entry signals fire when Alligator lines separate by a configurable delta and RSI confirms direction. SL from recent swing high/ low with offset, trailing stop, and opposite-position closing
المؤشرات:
- مؤشرات قياسية
الدوال الرئيسية:
OnTradeTransaction()RefreshRates()CheckVolumeValue()iAlligatorGetArray()iRSIGetArray()OpenBuy()OpenSell()PrintResultTrade()ClosePositions()Trailing()
// Pipsgrowth EX16074 Trend — Execution Flow (from source analysis)
// Family: Trend
// Sidus trend-following EA using Alligator and RSI. Entry signals fire when Alligator lines separate by a configurable delta and RSI confirms direction. SL from recent swing high/ low with offset, trailing stop, and opposite-position closing
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
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| m_magic | 22216074 | Magic number |
| InpLots | 0.1 | Lots |
| InpOffset | 3 | Offset (SL Buy: Low#1-Offset; SL Sell: High#1+Offset) (in pips) |
| InpTakeProfit | 75 | Take Profit (in pips) |
| InpTrailingStop | 5 | Trailing Stop (in pips) |
| InpTrailingStep | 15 | Trailing Step (in pips) |
| InpDelta | 0.00003 | Delta between Alligator lines (#1 - #2) |
| InpOpposite | false | Closing Opposite Positions |
| Inp_jaw_period | 13 | Alligator: period of the Jaw line |
| Inp_jaw_shift | 8 | Alligator: shift of the Jaw line |
| Inp_teeth_period | 8 | Alligator: period of the Teeth line |
| Inp_teeth_shift | 5 | Alligator: shift of the Teeth line |
| Inp_lips_period | 5 | Alligator: period of the Lips line |
| Inp_lips_shift | 3 | Alligator: shift of the Lips line |
| Inp_MA_method | MODE_SMMA | Alligator: method of averaging |
| Inp_applied_price | 5 | Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted)// Alligator: type of price |
| Inp_RSI_ma_period | 14 | RSI: period of averaging |
| Inp_RSI_applied_price | 1 | Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) // RSI: type of price |
#property copyright "Pipsgrowth.com"
#property link "https://pipsgrowth.com"
#property version "2.00"
#property strict
#property description "Pipsgrowth.com EX16074 Sidus — Alligator + RSI trend follower, full 12-layer stack."
//---
//---
#include <Trade\PositionInfo.mqh>
#include <Trade\Trade.mqh>
#include <Trade\SymbolInfo.mqh>
CPositionInfo m_position; // trade position object
CTrade m_trade; // trading object
CSymbolInfo m_symbol; // symbol info object
//--- input parameters
sinput const string GroupIdentity="";//=== Identity ===
input ulong m_magic = 22216074; // Magic number
input string InpTradeComment = "Psgrowth.com Expert_16074";
sinput const string GroupTrading="";//=== Trading ===
input double InpLots = 0.1; // Lots
input ushort InpOffset = 3; // Offset (SL Buy: Low#1-Offset; SL Sell: High#1+Offset) (in pips)
input ushort InpTakeProfit = 75; // Take Profit (in pips)
input ushort InpTrailingStop = 5; // Trailing Stop (in pips)
input ushort InpTrailingStep = 15; // Trailing Step (in pips)
input double InpDelta = 0.00003; // Delta between Alligator lines (#1 - #2)
input bool InpOpposite = false; // Closing Opposite Positions
sinput const string GroupAlligator="";//=== Alligator ===
input int Inp_jaw_period = 13; // Alligator: period of the Jaw line
input int Inp_jaw_shift = 8; // Alligator: shift of the Jaw line
input int Inp_teeth_period = 8; // Alligator: period of the Teeth line
input int Inp_teeth_shift = 5; // Alligator: shift of the Teeth line
input int Inp_lips_period = 5; // Alligator: period of the Lips line
input int Inp_lips_shift = 3; // Alligator: shift of the Lips line
input ENUM_MA_METHOD Inp_MA_method = MODE_SMMA; // Alligator: method of averaging
input int Inp_applied_price = 5; // Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted)// Alligator: type of price
sinput const string GroupRSI="";//=== RSI ===
input int Inp_RSI_ma_period = 14; // RSI: period of averaging
input int Inp_RSI_applied_price = 1; // Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) // RSI: type of price
//---
ulong m_slippage=10; // slippage
double ExtOffset=0.0;
double ExtTakeProfit=0.0;
double ExtTrailingStop=0.0;
double ExtTrailingStep=0.0;
int handle_iAlligator; // variable for storing the handle of the iAlligator indicator
int handle_iRSI; // variable for storing the handle of the iRSI indicator
double m_adjusted_point; // point value adjusted for 3 or 5 points
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
g_Inp_applied_price = MapAppliedPriceInt(Inp_applied_price);
g_Inp_RSI_applied_price = MapAppliedPriceInt(Inp_RSI_applied_price);
if(InpTrailingStop!=0 && InpTrailingStep==0)
{
string text=(TerminalInfoString(TERMINAL_LANGUAGE)=="Russian")?الكود المصدري الكامل متاح عند التحميل
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.
تحذير صريح: لأغراض تعليمية فقط
تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.
وسطاء موصى بهم لهذا الإكسبرت
هذه الروبوتات تعمل على 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 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.