Pipsgrowth EX12061 MultiIndicatorConfluence — إكسبرت أدفايزر إكسبرت أدفايزر
إكسبرت أدفايزر MT5 مفتوح المصدر · XAUUSD · M5، H1
Pipsgrowth EX12061 MultiIndicatorConfluence — Secure Momentum Pyramid variant using EMA crossover with ADX strength filter. Pyramids into trends with step-based entri. إكسبرت أدفايزر MT5 مفتوح المصدر.
نظرة عامة
إن Pipsgrowth EX12061 MultiIndicatorConfluence — الذي يحمل تسمية «Secure Momentum Pyramid» (الهرم اللحظي الآمن) على لوحة المعلومات المرسومة على الشارت — هو روبوت تراكم يتبع الاتجاه مبني على مجموعة صغيرة من الحراسات المتعمدة. الإشارة الأساسية هي اتجاه تقاطع المتوسطَين المتحركين الأسّيين مدمجاً مع عتبة قوة لمؤشر ADX، ومنطق إدارة الصفقات يعامل كل دخول كعنصر في سلة موحّدة لا كصفقة مستقلة. لا يوجد هدف ربح لكل صفقة، ولا وقف خسارة لكل صفقة، ولا إعادة تحميل مارتينجال افتراضياً؛ الحجم الوحيد الذي يتدرّج هو ذلك الذي يفعّله المستخدم صراحةً برفع LotMultiplier فوق 1.0. القيمة الافتراضية 1.0 تُبقي حجم كل صفقة مساوياً لـ InitialLot (0.01)، وهي النسخة التي يجب على معظم المتداولين اعتمادها كإعداد إنتاجي.
تبدأ شجرة القرار في دالة OnTick(). ثلاثة مؤشرات تُنشأ في OnInit() عبر iMA / iADX القياسية: handle_ema_fast للمتوسط EMA(20) على PRICE_CLOSE، وhandle_ema_slow للمتوسط EMA(50) على PRICE_CLOSE، وhandle_adx لمؤشر ADX(14). في كل تيكت ينسخ الروبوت آخر ثلاث قراءات من كل مخزن مؤقت. المقارنتان الحاسمتان هما: المتوسط السريع مع البطيء (لاتجاه الترند)، والخط الرئيسي لـ ADX مع ADX_Threshold (الافتراضي 22). عندما يكون السريع > البطيء وADX > 22 يكون النظام «صاعداً قوياً»؛ وعندما يكون السريع < البطيء وADX > 22 يكون النظام «هابطاً قوياً»؛ في أي حالة أخرى لا يقيّم الروبوت دخولاً على هذا الجانب. التسمية مهمة: ADX > 22 هو البوّابة التي تفصل بين اتجاه حقيقي وبين تقبيل متوسطات في نطاق جانبي، لذلك هذا الروبوت صامت عمداً في النطاقات العرضية وسيبقى خالياً من الصفقات خلال معظم فترات التماسك.
الدخول الأول في كل اتجاه له قاعدة خاصة. عندما يكون النظام صاعداً قوياً ولا توجد أي صفقات شراء مفتوحة، يتحقق الروبوت مما إذا كان سعر ASK الحالي يقع ضمن 200 نقطة فوق المتوسط السريع أو 100 نقطة تحته (السطر 192). على XAUUSD بنقطة = 0.01، هذا يعني منطقة بعرض 2 دولار فوق المتوسط ودولار واحد تحته؛ على الأزواج الرئيسية بخمس خانات يعني 2 نقطة فوق ونقطة واحدة تحت. الشرط يُقرأ «ASK <= EMA_سريع + 200pt AND ASK >= EMA_سريع - 100pt» — وهي حزمة ارتداد ضيقة متعمّدة، لا إشارة اختراق. النسخة المعاكسة تنطلق للبيع على سعر BID. هذا هو الخيار التصميمي الأكثر تمييزاً للاستراتيجية: الدخول الأول يتطلب أن يأتي السعر إلى المتوسط لا أن يطارد حركة هروب. الاتجاه الذي لا يرتد أبداً إلى المتوسط لن يحصل على دخول أول، وهذه ميزة — تعني أن الروبوت يدخل بعد أن تلهث الزخم لا في قمة اندفاع عمودي.
التّراكم الهرمي هو النصف الثاني من الاستراتيجية، وتتحكم به بوّابتان مستقلتان. الأولى هي ArePositionsSecure() التي تمرّ على PositionsTotal بالعكس وتتحقق أن كل صفقة قائمة في اتجاه الترند قد وصل وقف خسارتها إلى سعر الدخول أو تجاوزه (sl >= openPrice للشراء، sl <= openPrice للبيع، وsl ≠ 0 للبيع). إن بقيت ولو صفقة واحدة في الهرم معرّضة للخطر، تُرجع الدالة false ولا ينطلق أي إضافة هرمية — وهذا هو معنى «الآمن» في اسم الاستراتيجية. البوّابة الثانية هي فحص مسافة السعر: يجب أن يكون سعر ASK الحالي (أو BID للبيع) قد ابتعد بمقدار PyramidStepPoints على الأقل (الافتراضي 300، أي 30 نقطة على خمس خانات أو 3 دولارات على XAUUSD عند نقطة 0.01) عن GetLastOpenPrice() في اتجاه الترند. فقط عندما يجتاز الشرطان معاً يحسب الروبوت الحجم التالي عبر CalculateLot() ويستدعي trade.Buy() أو trade.Sell() بـ SL=0 وTP=0. مُساعد تحديد الحجم محافظ: يستخدم InitialLot مباشرة عندما LotMultiplier == 1.0 (الافتراضي)، ولا يطبّق الصيغة InitialLot × multiplier^existingCount إلا عندما يرفع المستخدم المضاعف صراحة فوق 1.0. وحتى في تلك الحالة، تُقرّب النتيجة لأسفل إلى خطوة حجم الرمز وتُقصّ ضمن حدود min/max لدى الوسيط، فلا يستطيع مضاعف 1.5 مضبوط بشكل خاطئ أن يدفع حساب ميكرو بحجم 0.01 إلى حجم 0.05 أو 0.10 عن غير قصد.
جانب إدارة الصفقات هو ما يحوّل الهرم إلى «مؤمَّن». تعمل ManagePositions() في كل تيكت وتمرّ على الصفقات المفتوحة بترتيب تذكرة عكسي؛ لكل تذكرة ذات magic يطابق 22212061 تتحقق مما إذا كان السعر قد تحرّك 50 نقطة في الربح ولا يزال الوقف خلف سعر الدخول. إن تحقق الشرطان لصفقة شراء، تُستدعى TryModify_EX12061() بـ SL جديد = openPrice؛ والنسخة المعاكسة للبيع. تمرّ عملية التعديل من خلال غلاف إعادة محاولة بثلاث محاولات ينام 100 مللي ثانية عند رموز REQUOTE أو TIMEOUT ويتنازل عن أي رمز خطأ آخر — لا توجد معالجة قوية لإعادة التسعير تتجاوز ذلك، فالوسيط الذي يُرجع INVALID_STOPS سيترك الصفقة دون تعديل. بمجرد أن يصل الوقف إلى نقطة التعادل، تُعتبر الصفقة «مؤمَّنة» بمصطلحات الاستراتيجية وتتحوّل بوّابة ArePositionsSecure إلى true، وهذا ما يُطلق إضافة الهرمية التالية.
تحدث الخروج حصرياً على مستوى السلة. في كل تيكت، قبل ManagePositions وCheckEntryLogic، يستدعي الروبوت CalculateTotalProfit() التي تجمع POSITION_PROFIT لكل تذكرة بنفس الـ magic. إن وصل الإجمالي إلى BasketTakeProfit (الافتراضي 10 دولارات)، تُستدعى CloseAll(POSITION_TYPE_BUY) وCloseAll(POSITION_TYPE_SELL) الواحدة تلو الأخرى، وتُرجع الدالة مبكراً — لن تُقيَّم أي دخولات جديدة في ذلك التيكت. وإن هبط الإجمالي إلى -BasketStopLoss (الافتراضي -5 دولارات، ولا يُفحص إلا عندما BasketStopLoss > 0)، تنطلق نفس الـ CloseAll المزدوجة. لأن السلة تُقاس بدولارات الحساب لا بالنقاط، فإن كومة من صفقتين أو ثلاث XAUUSD بحجم 0.01 تكفي لإطلاق هدف الـ 10 دولارات على تحرّك دولارين إلى ثلاثة دولارات لكل صفقة، بينما كومة من صفقتين أو ثلاث EURUSD بحجم 0.01 ستحتاج إلى تحرّك أكبر بكثير للوصول إلى نفس العتبة — الإطار بالدولار يعني أن الروبوت حساس لاختيار الأداة وحجم اللوت.
غلاف CTrade مضبوط للتنفيذ السريع: trade.SetDeviationInPoints(50) يسمح بانزلاق يصل إلى 5 نقاط عند الدخول، وtrade.SetTypeFilling(ORDER_FILLING_IOC) يعطّل أوامر المعلّقة. اختيار IOC منسجم مع فلسفة السلة — فالتنفيذ الجزئي والأوامر المعلّقة تشوّه رياضيات ربح السلة. على الجانب البصري، يرسم الروبوت علامتي سعر على الجانب الأيمن ("DotFast" بالأصفر و"DotSlow" بالأزرق الفاتح) ولوحة معلومات صغيرة بقياس 220×130 بخلفية سوداء وإطار ذهبي في الزاوية العلوية اليمنى تعرض صافي الربح/الخسارة واتجاه الترند وقيمة ADX مع ملصق قوي/ضعيف وعدد صفقات الشراء والبيع الحيّة. تتحدّث اللوحة في كل تيكت وتتلوّن بالأخضر/الأحمر بحسب إشارة totalProfit.
الشكل العملي للاستراتيجية: المتداول الذي يريد السلوك المقصود يترك LotMultiplier عند 1.0، وBasketTakeProfit عند 10 دولارات، وBasketStopLoss عند 5 دولارات، وEMA_Fast / EMA_Slow / ADX_Period / ADX_Threshold عند 20/50/14/22. قيمة PyramidStepPoints عند 300 تعطي تباعد 30 نقطة بين الإضافات على خمس خانات (أو 3 نقاط على تغذية ذهب بـ 0.0001). يقضي الروبوت معظم وقته خاملاً، يأخذ أول صفقة حين يلامس ارتداد السعر المتوسط، يؤمّنها بعد تحرّك 50 نقطة، ثم يكدّس صفقة أو اثنتين إضافيتين على استمرار الزخم. سيُغلق TP السلة أو SL السلة كل الكومة في نفس التيكت. أكبر تحفّظ سلوكي هو أن BasketStopLoss أرضية قاطعة: أي سحب -5 دولارات على السلة سيُصفّي كل شيء فوراً، لذا على من يختبر الروبوت على حسابات ضيّقة إمّا رفع قيمة SL السلة أو توقّع تكرار حالات إغلاق السلة في الأيام المتقلّبة حيث بوّابة ADX > 22 تتأرجح تشغيلاً وإطفاءً.
تفاصيل الاستراتيجية
في كل تيكت يسحب الروبوت ثلاث قراءات من مخازن EMA(20) وEMA(50) وADX(14)، ثم يُشغّل شجرة قرار من مرور واحد: نظام صاعد = السريع > البطيء وADX > 22، نظام هابط = السريع < البطيء وADX > 22، لا دخولات خارج ذلك. أوّل صفقة في كل اتجاه تنطلق فقط عندما يقع ASK/BID ضمن ±200/-100 نقطة من المتوسط السريع — دخول ارتداد إلى المتوسط لا اختراق. تعتمد الإضافات اللاحقة على بوّابة ArePositionsSecure (كل صفقة سابقة في ذلك الاتجاه يجب أن يكون SL ≥ openPrice) وبوّابة مسافة السعر (≥ 300 نقطة بعد آخر تنفيذ)، والشرطان معاً ينتجان هرماً مؤمَّناً لا إعادة تحميل مارتينجال. تمرّ ManagePositions() على PositionsTotal بالعكس وتنقل الوقف إلى openPrice بعد أن يتجاوز الربح 50 نقطة، وهي التعديل الوحيد على الصفقة الجارية. تعمل فحوص السلة قبل إدارة الصفقات ودخولاتها في كل تيكت، لذا فإن ربح 10 دولارات أو خسارة 5 دولارات ينهيان الكتاب كله فوراً عبر CloseAll على الجانبين.
اتجاه تقاطع EMA(20)/EMA(50) مع ADX(14) > 22 يشكّل بوابة النظام: تفتح صفقات الشراء عندما يكون النظام صاعداً قوياً ويقع السعر ضمن 200 نقطة فوق أو 100 نقطة تحت المتوسط السريع (دخول ارتداد إلى المتوسط لا اختراق). بعد أوّل صفقة، تُضاف الصفقات التالية هرمياً فقط عندما تُرجع ArePositionsSecure() القيمة true (أي أن كل صفقة قائمة في ذلك الاتجاه وصلت وقفها إلى نقطة التعادل أو تجاوزتها) وابتعد السعر بمقدار PyramidStepPoints على الأقل (الافتراضي 300) في اتجاه الترند. النتيجة تراكم متدرّج يُضاف على استمرارية مؤكدة، لا على تعويض خسارة.
الخرج قائم على السلة لا على الصفقة الفردية. عندما يصل CalculateTotalProfit (مجموع كل صفقة مفتوحة بـ magic 22212061) إلى +BasketTakeProfit (الافتراضي 10 دولارات) يستدعي الروبوت CloseAll على الجانبين ويطبع رسالة إغلاق TP السلة؛ وإن هبط الإجمالي إلى -BasketStopLoss (الافتراضي -5 دولارات، ولا يُفحص إلا عندما BasketStopLoss > 0) تنطلق نفس الـ CloseAll المزدوجة مع سجل إغلاق SL السلة. لا يوجد TP لكل صفقة — الطريقة الوحيدة لإغلاق صفقة منفردة هي أن يُنقل وقفها إلى نقطة التعادل (بعد أن تشدّ ManagePositions الـ SL إلى openPrice) ثم يُضرب، أو أن تشارك في إغلاق السلة.
لا يُرفق وقف خسارة لكل صفقة عند الدخول — يُمرَّر كل من SL وTP بقيمة 0 إلى trade.Buy / trade.Sell. تشدّ ManagePositions() الوقف إلى openPrice بمجرد أن يتحرّك السعر 50 نقطة في الربح، وهذا ما يقلب ArePositionsSecure() إلى true ويُطلق الإضافة الهرمية التالية. سقف الخطر الحقيقي هو وقف السلة: -BasketStopLoss (الافتراضي -5 دولارات على كل صفقات الروبوت) يُغلق الجانبين قسراً في نفس التيكت إن ضُرب.
لا يوجد TP لكل صفقة — تُرسَل الدخولات بـ TP=0 ولا توجد قيمة TP محسوبة في أي مكان في المصدر. جني الأرباح يحدث حصرياً على مستوى السلة: عندما يتجاوز إجمالي الربح/الخسارة لكل الصفقات المفتوحة +BasketTakeProfit (الافتراضي 10 دولارات) يستدعي الروبوت CloseAll على الجانبين. ولأن الإضافات الهرمية تتم على فواصل PyramidStepPoints (الافتراضي 300)، فإن TP السلة يعمل عملياً كهدف لكامل السلسلة.
مُصمَّم لزوج XAUUSD على إطار M5 أو H1 برصيد أدنى موصى به 100 دولار، والمصدر قابل للحمل على أزواج العملات الرئيسية والمعادن الأخرى. لأن السلة قائمة على الدولار (TP 10 دولارات / SL 5 دولارات افتراضياً)، فإن حساب ECN أو RAW بفارق سعر منخفض هو بيئة التنفيذ الصحيحة — الكتب ذات الفروقات الواسعة في الوسطاء البحريين ستلتهم السلة بالانزلاق قبل أن يُضرب TP، ووضع التنفيذ IOC يتطلب حساباً يدعم التنفيذ الفوري أو الإلغاء. استخدم الروبوت فقط على الأدوات التي تستطيع تحمّل صفقات ميكرو بحجم 0.01؛ قيمة LotMultiplier الافتراضية 1.0 تجعل كل مستوى هرمي بالحجم ذاته للدخول الأول، وPyramidStepPoints (300) مضبوط للأزواج الرئيسية بخمس خانات أو XAUUSD بنقطة 0.01.
منطق الاستراتيجية
Pipsgrowth EX12061 MultiIndicatorConfluence — تحليل منطق الاستراتيجية (من كود .mq5)
العائلة: MultiIndicatorConfluence
الماجيك: 22212061
الإصدار: 2.00
الوصف:
Secure Momentum Pyramid variant using EMA crossover with ADX strength filter. Pyramids into trends with step-based entries, basket TP/SL management, and position securing. Martingale lot multiplier disabled by default (set to 1.0). 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester
المؤشرات:
- مؤشرات قياسية
الدوال الرئيسية:
CalculateLot()CalculateTotalProfit()CountPositions()GetLastOpenPrice()ArePositionsSecure()CloseAll()ManagePositions()CheckEntryLogic()UpdateDashboard()CreateDashboard()
// Pipsgrowth EX12061 MultiIndicatorConfluence — Execution Flow (from source analysis)
// Family: MultiIndicatorConfluence
// Secure Momentum Pyramid variant using EMA crossover with ADX strength filter. Pyramids into trends with step-based entries, basket TP/SL management, and position securing. Martingale lot multiplier disabled by default (set to 1.0). 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اسحب الإكسبرت على رسم بياني يطابق الإطار الزمني الموصى به
- 7هيّء المعاملات وفقاً للجدول في هذه الصفحة
- 8فعّل Allow Algo Trading واضغط OK
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| InitialLot | 0.01 | Starting Lot Size |
| LotMultiplier | 1.0 | Lot Multiplier (1.0 = fixed lot, >1.0 = martingale) |
| BasketTakeProfit | 10.0 | Target Profit to Close All ($) |
| BasketStopLoss | 5.0 | Emergency Stop Loss ($) |
| EMA_Fast | 20 | Fast EMA |
| EMA_Slow | 50 | Slow EMA |
| ADX_Period | 14 | ADX Period |
| ADX_Threshold | 22 | ADX Strength |
| PyramidStepPoints | 300 | Points to move before adding position |
| MagicNumber | 22212061 | Magic number |
| InpTradeComment | "Psgrowth.com Expert_12061" | Trade comment |
| ShowDashboard | true | --- Global Variables --- |
#property copyright "Pipsgrowth.com"
#property link "https://pipsgrowth.com"
#property version "2.00"
#property strict
#property description "Pipsgrowth.com EX12061 G4_7 variant — Secure Momentum Pyramid with EMA+ADX, full 12-layer stack."
#include <Trade\Trade.mqh>
//--- Input Parameters ---
input group "=== Risk Management ==="
input double InitialLot = 0.01; // Starting Lot Size
input double LotMultiplier = 1.0; // Lot Multiplier (1.0 = fixed lot, >1.0 = martingale)
input double BasketTakeProfit = 10.0; // Target Profit to Close All ($)
input double BasketStopLoss = 5.0; // Emergency Stop Loss ($)
input group "=== Strategy Settings ==="
input int EMA_Fast = 20; // Fast EMA
input int EMA_Slow = 50; // Slow EMA
input int ADX_Period = 14; // ADX Period
input int ADX_Threshold = 22; // ADX Strength
input int PyramidStepPoints = 300; // Points to move before adding position
input group "=== Identity ==="
input int MagicNumber = 22212061; // Magic number
input string InpTradeComment = "Psgrowth.com Expert_12061"; // Trade comment
input group "=== Visuals ==="
input color BullishColor = clrLime;
input color BearishColor = clrRed;
input bool ShowDashboard = true;
//--- Global Variables ---
CTrade trade;
int handle_ema_fast;
int handle_ema_slow;
int handle_adx;
double EMA_Fast_Buffer[];
double EMA_Slow_Buffer[];
double ADX_Buffer[];
//+------------------------------------------------------------------+
//| Helper Functions (Declared First to fix errors) |
//+------------------------------------------------------------------+
double CalculateLot(int existingCount);
double CalculateTotalProfit();
int CountPositions(ENUM_POSITION_TYPE type);
double GetLastOpenPrice(ENUM_POSITION_TYPE type);
bool ArePositionsSecure(ENUM_POSITION_TYPE type);
void CloseAll(ENUM_POSITION_TYPE type);
void ManagePositions();
void CheckEntryLogic(double currentTotalProfit);
void UpdateDashboard(double profit, double adx, double emaF, double emaS);
void CreateDashboard();
void DrawTrendLines();
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
الكود المصدري الكامل متاح عند التحميل
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.
تحذير صريح: لأغراض تعليمية فقط
تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.
وسطاء موصى بهم لهذا الإكسبرت
هذه الروبوتات تعمل على MT5 — استخدم وسيطاً موثوقاً بتنفيذ سريع وسبريد منخفض
إكسبرتات مشابهة
عرض جميع الإكسبرتاتإكسبرتات أخرى بنفس استراتيجية أخرى
Pipsgrowth EX01007 Adaptive — إكسبرت أدفايزر تكييفي
Pipsgrowth EX01007 Adaptive — Adaptive signal scorer EA combining EMA crossover, RSI, Heiken Ashi, Bollinger Bands, ATR and volume spike detection int. إكسبرت أدفايزر MT5 مفتوح المصدر.
Pipsgrowth EX01019 Adaptive — إكسبرت أدفايزر تكييفي
Pipsgrowth EX01019 Adaptive — Self-adaptive market regime EA that auto-detects trending, ranging, volatile, quiet and breakout conditions. Switches be. إكسبرت أدفايزر MT5 مفتوح المصدر.
Pipsgrowth EX15029 SMC-OrderBlock — إكسبرت أدفايزر إكسبرت أدفايزر
Pipsgrowth EX15029 SMC-OrderBlock — Smart Money Concepts breakout EA — detects order blocks, CHOCH and liquidity sweeps using EMA cross + structure break, A. إكسبرت أدفايزر MT5 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.