Pipsgrowth EX07013 MA — إكسبرت أدفايزر إكسبرت أدفايزر
إكسبرت أدفايزر MT5 مفتوح المصدر · XAUUSD · M5، H1
Pipsgrowth EX07013 MA — MA crossover EA with RSI confirmation, ATR-based stop loss, ADX trend filter, signal clustering for best entry selection. إكسبرت أدفايزر MT5 مفتوح المصدر.
نظرة عامة
Pipsgrowth EX07013 هو مستشار خبير يعتمد على تقاطع المتوسطات المتحركة، لكنه يضيف طبقة تتجاوز ما تفعله معظم أنظمة التقاطع التقليدية: لا يطلق الصفقة فوراً عند أول تقاطع يراه. بدل ذلك، يراقب السوق خلال نافذة قصيرة من الشموع (ClusterWindowBars، الافتراضي 3)، يجمع كل مرشح تقاطع يظهر داخل هذه النافذة، يُقيّم كل واحد منها بأربعة عوامل، ولا يفتح صفقة إلا على أقوى إشارة في المجموعة. بقية النظام مبنية حول هذا القرار الوحيد: مؤشرات بسيطة، صفقة واحدة لكل رمز، ووقف متحرك يتقدم في اتجاه الصفقة فقط.
مجموعة المؤشرات صغيرة لكنها مكتملة. يقرأ EX07013 متوسطاً سريعاً ومتوسطاً بطيئاً — بفترات افتراضية 10 و 30، وكلاهما متوسط بسيط على سعر الإغلاق — ويراقب تقاطعهما. على الشمعة التي ينتقل فيها المتوسط السريع من تحت البطيء إلى فوقه، يعتبر المرشد أن هذا مرشح شراء؛ النمط المعاكس مرشح بيع. مؤشر RSI بفترة 14 يؤكد الاتجاه: مرشح الشراء يكون صالحاً فقط عندما يكون RSI أعلى من RSILevelBuy (افتراضي 50.0)، ومرشح البيع فقط عندما يكون RSI أدنى من RSILevelSell (افتراضي 50.0). مؤشر ADX بفترة 14، ومُفعّل افتراضياً، يعمل كحاجز للصفقة بأكملها: يجب أن يكون ADX عند ADXLevel أو أعلى منه (افتراضي 25.0) وغير صفر، لذا تُستبعد الأسواق العرضية أو المتقطعة تلقائياً. مؤشر ATR بفترة 14، يُستخدم فقط عندما يكون UseATRStopLoss مفعّلاً (افتراضياً كذلك)، يحدد مسافة وقف الخسارة.
دالة التقييم رباعية العوامل هي الميزة المميزة. عند اكتشاف تقاطع على شمعة مغلقة، يسجل EX07013 مرشح إشارة يحتوي على قيمة RSI للشمعة، وقيمة ADX، ونسبة جسم الشمعة (|إغلاق-افتتاح| / (أعلى-أدنى))، وحجم التداول. تُحسب النقاط كالتالي: للشراء (rsi-50)/50، للبيع (50-rsi)/50؛ زائد (adx-20)/30؛ زائد نسبة جسم الشمعة؛ زائد حجم التداول/1000. النقاط محدودة لكنها تراكمية — تقاطع نظيف مع RSI عند 70، ADX عند 40، شمعة كاملة الجسم، وحجم تداول مرتفع س يتفوق على تقاطع هامشي يحدث في ظروف خفيفة. بمجرد انتهاء نافذة المجموعة (بعد مرور ClusterWindowBars شمعة)، تستدعي HandleSignalClustering() الدالة FindBestSignalIdx() لإرجاع المرشح الأعلى نقاطاً، ثم تُستدعى OpenPosition() لذلك المرشح. تُهمل جميع المرشحين الآخرين. هذا ما يمنع المستشار من إطلاق صفقتين على تقاطع صاخب، وما يجعله مختلفاً نوعياً عن نظام 10/30 التقليدي: التقاطع ضروري لكنه غير كافٍ.
إدارة الصفقات متعمدة البساطة. يحتفظ المستشار بمركز واحد كحد أقصى لكل رمز ورقم سحري (22207013). عند وصول إشارة صالحة جديدة، تبحث FindOurPosition() عن مركز قائم على هذا الرمز بنفس الرقم السحري؛ إذا وُجد مركز بالاتجاه المعاكس، تُستدعى ClosePosition() أولاً، وبعدها فقط تنفذ OpenPosition() الأمر الجديد. لا يوجد تدرّج، لا تحوط، لا إضافة إلى الصفقة — يصف المصدر البنية كطبقات اثنتي عشرة (REGIME و SIGNAL و ENTRY و CONFIRM و NO-TRADE و CAPITAL CAP و RISK و SIZING و MANAGE و EXIT و SCALING و OnTester)، لكن في هذا المستشار تُختزل طبقتا SCALING و CAPITAL CAP إلى معامل حجم ثابت (Lots، افتراضي 0.1). أنت تحدد الحجم؛ المستشار لا يعيد التحجيم لكل صفقة.
الوقف والهدف قابلان للتكوين بوضعين. مع UseATRStopLoss=true، يُوضع وقف الخسارة عند الدخول ± ATR(14) × ATRMultiplier، افتراضي 2.0 — أي في سوق ATR قيمته 200 نقطة، يكون الوقف 400 نقطة. مع تعطيله، يعود الوقف إلى StopLoss ثابت بالنقاط (افتراضي 100). مدخل جني الأرباح نقاط ثابتة (افتراضي 100)، مستقل عن مضاعف ATR، ما يعني أن نسبة المخاطرة إلى العائد المحققة هي ما يمنحك إياه الوقف المعتمد على ATR. وقف الخسارة المتحرك مستقل: TrailingStop (افتراضي 50 نقطة) تطبقه ApplyTrailingStop() على كل تكة، ويتحرك دائماً في اتجاه الصفقة فقط. للصفقة الطويلة، يُعدَّل الوقف إلى سعر العرض − TrailingStop × نقطة بمجرد أن يتقدم سعر العرض TrailingStop × نقطة على الأقل بعد سعر الدخول؛ للصفقة القصيرة، الانعكاس. لا يتراجع الوقف أبداً. إذا أُغلقت الصفقة من نفسها (تحقيق جني الأرباح أو وقف الوسيط)، لا تفعل ApplyTrailingStop() شيئاً في التكة التالية.
معالجة إعادة المحاولة متينة في طبقة واجهة التداول. تستخدم OpenPosition دوال CTrade.Buy() و CTrade.Sell() مع الرقم السحري والانزلاق (5 نقاط افتراضياً) المُعدّين مسبقاً في OnInit. تمر عمليات الإغلاق عبر TryClose_EX07013() بثلاث محاولات بفاصل 200 مللي ثانية على أخطاء REQUOTE و TIMEOUT و PRICE_OFF و PRICE_CHANGED. تمر تعديلات وقف الخسارة المتحرك عبر TryModify_EX07013() بثلاث محاولات بفاصل 100 مللي ثانية على REQUOTE و TIMEOUT. الدالة المساعدة TryClosePartial_EX07013() معرّفة في المصدر لكنها لا تُستدعى من OnTick — الإغلاقات الجزئية ليست جزءاً من السلوك التشغيلي. يُضبط وضع التعبئة تلقائياً عبر SetTypeFillingBySymbol() في OnInit، فيتكيف المستشار مع سياسة FOK أو IOC أو RETURN التي يعرضها الوسيط.
ما لا يفعله EX07013 توضيحي بقدر ما يفعله. لا يوجد مرشح انحياز للإطار الزمني الأعلى (بوابة ADX-25 هي الأقرب لذلك وتعمل على الإطار الزمني الحالي). لا يوجد مرشح أخبار، لا مرشح جلسة، لا قطع حسب وقت معين، ولا إغلاق يوم الجمعة. لا يوجد حد خسارة يومي، لا حارس لمنحنى الأسهم، لا سقف تراجع، ولا مارتينجال. المخاطرة على مستوى الصفقة هي ما يمنحك إياه حاصل ضرب Lots في مسافة الوقف. للمتداولين الذين يريدون هذه الشبكات الأمنية، المستشار أساس نظيف للبناء فوقه؛ أما من يريدها مدمجة، فهذا ليس الملف المناسب.
في الاختبار التاريخي، توقع أن تُطلق المجموعات نادراً على M5 وأكثر تكراراً على H1. مصطلح الحجم في دالة التقييم يعني أن الجلسات ذات التدفق العالي من التكّات (تداخل لندن + نيويورك على العملات الأجنبية، جلسة الولايات المتحدة على XAUUSD) ستفوق على الساعات الهادئة، لذا يميل المستشار إلى تركيز الدخول في أكثر الساعات نشاطاً. بوابات RSI عند 50/50 متعمدة الخفة — تؤكد الاتجاه، لا الإرهاق — لذا هذا ليس نظام انعكاس متوسط. إنه نظام اتجاه مع مرشح جودة مُلحق به.
تفاصيل الاستراتيجية
في كل تكة، يبني EX07013 قيم مؤشراته من جديد: iMA(10) SMA، iMA(30) SMA، iRSI(14)، iADX(14)، و iATR(14) عند تفعيل وقف ATR — لا يوجد تخزين لمقابض المؤشرات، فكل استدعاء للدالة ينشئ مقبضه ويقرأ منه. ثم تعمل HandleSignalClustering(): تراقب الشمعة السابقة بحثاً عن تقاطع متوسطات مغلق، وعند حدوثه تسجل مرشح إشارة يحمل قيمة RSI و ADX و نسبة جسم الشمعة و حجم التداول لتلك الشمعة. تتراكم المجموعة حتى 10 مرشحين عبر نافذة 3 شموع. عند إغلاق النافذة، تُرجع FindBestSignalIdx() المرشح الأعلى نقاطاً وفق الدرجة المركبة، وتُستدعى OpenPosition() لذلك المرشح وحده — تُهمل البقية. إذا كان هناك مركز مفتوح بالاتجاه المعاكس، تُستدعى ClosePosition() أولاً. تعمل ApplyTrailingStop() في كل تكة بشكل مستقل عن المجموعة: تحرك وقف الخسارة إلى الأمام بمجرد أن يتحرك السعر 50 نقطة في الربح، بترس أمامي فقط. تُعالَج إعادة محاولة الأوامر على REQUOTE و TIMEOUT و PRICE_OFF و PRICE_CHANGED عبر TryClose_EX07013 (3 محاولات بفاصل 200 مللي ثانية)، و TryClosePartial_EX07013 (3 محاولات بفاصل 200 مللي ثانية، معرّفة لكن غير مستخدمة)، و TryModify_EX07013 (3 محاولات بفاصل 100 مللي ثانية).
يدخل EX07013 عند تقاطع متوسط بسيط 10/30 حيث ينتقل المتوسط السريع فوق المتوسط البطيء (شراء) أو تحته (بيع) على الشمعة المكتملة، مع تأكيد RSI بفترة 14 فوق 50 للشراء أو تحت 50 للبيع، واشتراط أن يكون ADX بفترة 14 عند 25 أو أعلى لاستبعاد الأسواق العرضية. تجمع طبقة تجميع الإشارات كل تقاطع يظهر ضمن نافذة 3 شموع، تُقيّم كل مرشح بأربعة عوامل (اتجاه RSI + قوة ADX + نسبة جسم الشمعة + حجم التداول مقسوماً على 1000)، وتطلق الصفقة فقط على المرشح الأعلى نقاطاً. يحتفظ المستشار بمركز واحد لكل رمز ويغلق أي مركز معاكس قبل فتح الجديد.
يخرج EX07013 بشكل أساسي عند إشارة تقاطع متوسطات معاكسة (يُغلق المركز القائم قبل فتح الجديد)، مع كون الخروج الثانوي هو جني الأرباح على بُعد TakeProfit نقطة من الدخول (افتراضي 100). يوفر وقف الخسارة المعتمد على ATR مسار الخروج الثالث، وتعمل ApplyTrailingStop() على تقديم الوقف في اتجاه الصفقة فقط بزيادات 50 نقطة بمجرد أن يتحرك السعر بهذا القدر لصالح الصفقة.
يُضبط وقف الخسارة عند ATR(14) × ATRMultiplier (افتراضي 2.0) من سعر الدخول عندما يكون UseATRStopLoss مفعّلاً؛ مع تعطيله يعود المستشار إلى StopLoss ثابت بالنقاط (افتراضي 100). يتحرك وقف الخسارة المتحرك عند 50 نقطة (TrailingStop الافتراضي) في اتجاه الصفقة فقط، ولا يتراجع أبداً، ولا يُحرّك إلا بعد أن يتحرك السعر TrailingStop نقطة على الأقل لصالح الصفقة. لا يوجد سقف تراجع على مستوى المحفظة، ولا حد خسارة يومي، ولا وقف مرتبط بالأسهم في المصدر — المخاطرة على مستوى الصفقة فقط.
جني الأرباح هو مدخل TakeProfit ثابت بالنقاط (افتراضي 100) يُقاس من سعر الدخول، مستقل عن مضاعف ATR. مع وقف ATR الافتراضي 2.0× وهدف 100 نقطة، تكون نسبة المخاطرة إلى العائد المحققة هي ما تنتجه هاتان المسافتان على الرمز المتداول — لا يوجد فرض لنسبة في الكود، ولا يُؤخذ إغلاق جزئي عند TP1.
الأنسب للـ XAUUSD على M5 أو H1 مع حد أدنى للإيداع 100 دولار لدى وسيط ECN فروقات ضيقة — الوقف المعتمد على ATR يتمدد مع التذبذب، ونافذة المجموعة تفضل الجلسات النشطة، و حجم 0.1 افتراضي يناسب حساباً صغيراً. غياب حد الخسارة اليومي أو وقف الأسهم على مستوى الحساب يعني أنه يناسب المتداول الذي يدير تعرضه بنفسه خارجياً، ويفضل التحكم في المخاطرة لكل صفقة، ويرتاح لغياب مرشحات الأخبار والجلسات. عطّل مدخل تجميع الإشارات للعودة إلى سلوك تقاطع المتوسطات البسيط، أو ارفع ClusterWindowBars إلى 5+ لاختيار دخول أكثر تحفظاً على الرموز الأكثر صخباً.
منطق الاستراتيجية
Pipsgrowth EX07013 MA — تحليل منطق الاستراتيجية (من كود .mq5)
العائلة: MA
الماجيك: 22207013
الإصدار: 2.00
الوصف:
MA crossover EA with RSI confirmation, ATR-based stop loss, ADX trend filter, signal clustering for best entry selection, and trailing stop across a 12-layer architecture. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester
المؤشرات:
- مؤشرات قياسية
الدوال الرئيسية:
FindOurPosition()ClosePosition()OpenPosition()ApplyTrailingStop()ModifyStopLoss()GetMA()GetRSI()GetATR()GetADX()CalculateSignalScore()
// Pipsgrowth EX07013 MA — Execution Flow (from source analysis)
// Family: MA
// MA crossover EA with RSI confirmation, ATR-based stop loss, ADX trend filter, signal clustering for best entry selection, and trailing stop across a 12-layer architecture. 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
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| FastMAPrice | 1 | Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) |
| SlowMAPrice | 1 | Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) |
| RSILevelBuy | 50.0 | RSI must be above this for a buy |
| RSILevelSell | 50.0 | RSI must be below this for a sell |
| RSIAppliedPrice | 1 | Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) |
| ATRMultiplier | 2.0 | --- input parameters for ADX Filter |
| ADXLevel | 25.0 | Minimum ADX value to consider market trending |
| Slippage | 5 | Slippage |
| InpMagicNumber | 22207013 | Magic Number |
| InpTradeComment | "Psgrowth.com Expert_07013" | Trade Comment |
| ClusterWindowBars | 3 | Number of bars in a cluster |
#property copyright "Pipsgrowth.com"
#property link "https://pipsgrowth.com"
#property version "2.00"
#property strict
#property description "Pipsgrowth.com EX07013 MA_Cross_EA — MA cross with RSI/ADX filter and signal clustering, full 12-layer stack."
#include <Trade\\Trade.mqh> // Include CTrade
//--- input parameters for Fast MA
ENUM_APPLIED_PRICE MapAppliedPriceInt(int ap)
{
switch(ap)
{
case 1: return PRICE_CLOSE;
case 2: return PRICE_OPEN;
case 3: return PRICE_HIGH;
case 4: return PRICE_LOW;
case 5: return PRICE_MEDIAN;
case 6: return PRICE_TYPICAL;
case 7: return PRICE_WEIGHTED;
default: return PRICE_CLOSE;
}
}
ENUM_APPLIED_PRICE g_FastMAPrice = PRICE_CLOSE;
ENUM_APPLIED_PRICE g_SlowMAPrice = PRICE_CLOSE;
ENUM_APPLIED_PRICE g_RSIAppliedPrice = PRICE_CLOSE;
input group "=== Fast MA Settings ==="
input int FastMAPeriod = 10;
input int FastMAShift = 0;
input ENUM_MA_METHOD FastMAMethod= MODE_SMA;
input int FastMAPrice = 1; // Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted)
//--- input parameters for Slow MA
ENUM_APPLIED_PRICE MapAppliedPriceInt(int ap)
{
switch(ap)
{
case 1: return PRICE_CLOSE;
case 2: return PRICE_OPEN;
case 3: return PRICE_HIGH;
case 4: return PRICE_LOW;
case 5: return PRICE_MEDIAN;
case 6: return PRICE_TYPICAL;
case 7: return PRICE_WEIGHTED;
default: return PRICE_CLOSE;
}
}
ENUM_APPLIED_PRICE g_FastMAPrice = PRICE_CLOSE;
ENUM_APPLIED_PRICE g_SlowMAPrice = PRICE_CLOSE;
ENUM_APPLIED_PRICE g_RSIAppliedPrice = PRICE_CLOSE;
input group "=== Slow MA Settings ==="
input int SlowMAPeriod = 30;
input int SlowMAShift = 0;
input ENUM_MA_METHOD SlowMAMethod= MODE_SMA;
input int SlowMAPrice = 1; // Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted)
//--- input parameters for RSI Confirmation
ENUM_APPLIED_PRICE MapAppliedPriceInt(int ap)
{
switch(ap)الكود المصدري الكامل متاح عند التحميل
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.
تحذير صريح: لأغراض تعليمية فقط
تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.
وسطاء موصى بهم لهذا الإكسبرت
هذه الروبوتات تعمل على 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 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.