Pipsgrowth EX16048 Trend — إكسبرت أدفايزر متابعة اتجاه
إكسبرت أدفايزر MT5 مفتوح المصدر · XAUUSD · M5، H1
Pipsgrowth EX16048 Trend — Morning/Evening Star-Doji pattern EA confirmed by MFI indicator. Detects candlestick patterns, confirms with MFI, opens . إكسبرت أدفايزر MT5 مفتوح المصدر.
نظرة عامة
إكس 16048 من بيبس جروث يقف عند نقطة التقاء بين أنماط الانعكاس اليابانية الكلاسيكية ومرشح وحيد لتدفق الأموال. في كل شريط جديد، يفحص المستشار آخر ثلاث شموع عبر الدالة CheckPattern() بحثاً عن أحد أربعة أشكال: نجمة المساء الدوجي، نجمة المساء، نجمة الصباح الدوجي، نجمة الصباح. تتطابق الشروط الهندسية لكل نمط مع التعريف الكلاسيكي — شمعة صاعدة أو هابطة طويلة (الجسم أكبر من متوسط الجسم لـ 12 شمعة، InpAverBodyPeriod=12)، شمعة دوجي أو قريبة من الدوجي في المنتصف (الجسم أقل من 10% من متوسط الجسم لأنماط الدوجي وأقل من 50% لأنماط النجمة)، فجوة سعرية تقلب الاتجاه، ثم شمعة تأكيد تغلق خلف منتصف الشمعة الوسطى على جانب الانعكاس. حيث ينتهي إطار عمل نجمة الصباح/المساء، يتدخل مؤشر MFI. يُنشأ المؤشر في OnInit() عبر iMFI(_Symbol, _Period, 37, VOLUME_TICK) ويُخزَّن في ExtIndicatorHandle. يستخدم MFI لفترة 37 حجم التيك كمدخل خام، فيمزج حركة السعر ببيانات المشاركة بدلاً من فروق السعر الخالصة. متوسط الجسم لـ 12 شمعة هو القيمة المرجعية الوحيدة المتعلقة بالشموع التي يحسبها المستشار عبر AvgBody().
تُرجع الدالة CheckPattern() النمط وقيمة ExtSignalOpen (إشارة شراء أو بيع) دون التزام بالصفقة. الدالة CheckConfirmation() هي البوابة: تسحب MFI(1)، قيمة MFI لأحدث شمعة مكتملة، ولا تضع ExtConfirmed=true إلا إذا كان MFI(1) تحت 40 للشراء (منطقة تشبع بيعي) أو فوق 60 للبيع (منطقة تشبع شرائي). إذا تم اكتشاف النمط لكن MFI على الجانب الخاطئ من العتبة، يُخفّض المستشار عمداً ExtSignalOpen إلى SIGNAL_NOT ويتخطى الصفقة لذلك الشريط. الإعداد الهندسي للنمط ضروري لكنه غير كافٍ — تُعتبر نجمة الصباح في شريط لا يزال فيه تدفق الأموال يدفع الصعود نمطاً، لكنها ليست إشارة. الاستراتيجية إذن محرك كشف رباعي الأنماط ملفوفاً بتصويت من مذبذب وحيد، ودور المؤشر هو تأكيد غير متماثل: لا يُطلب منه أن يتفق مع اتجاه النمط، بل يُطلب منه أن يتفق مع مستوى استنفاد الشمعة.
يعكس جانب الخروج فلسفة الدخول. عندما لا توجد إشارة دخول، تقرأ الدالة CheckCloseSignal() قيمتي MFI لشمعتين وتراقب تقاطع خط 70 أو 30 من الجهة المقابلة. تُغلق الصفقة الطويلة عند تقاطع هبوطي لـ MFI عبر 70 (MFI(1)<70 AND MFI(2)>70) أو تقاطع صعودي عبر 30 (MFI(1)<30 AND MFI(2)>30). تُغلق صفقة البيع على المرآة. هذه العتبات أكثر صرامة من عتبات الدخول (60/40) بعشر نقاط، وهو تعزيز مقصود — يخرج المستشار عند حركة مذبذب أقل تطرفاً من التي طلبها للدخول، لتغلق الصفقة قبل أن يرتد المذبذب بالكامل إلى الحياد. يوقف زمني لـ 10 أشرطة (InpDuration=10) يغلق أي صفقة لم تُوقف بالخسارة ولم تأخذ الربح ولم تُقلب بإشارة تقاطع MFI. تحسب الدالة BarsHold() عدد الأشرطة المكتملة منذ وقت فتح الصفقة بقراءة تاريخ MqlRates وهي الدالة الوحيدة التي تلمس البعد الزمني beyond الحارس الثابت datetime next_bar_open في بداية OnTick.
تتميز إدارة المخاطر على جانب الفتح بأنها دفاعية بشكل غير معتاد. تطبق الدالة PositionOpen() في إكس 16048 شبكة أمان احتياطية للفارق السعري لا توفرها عادةً أوامر الوقف لدى الوسيط. إذا كان الفارق السعري الحالي، المقاس كـ ExtSymbolInfo.Ask() − ExtSymbolInfo.Bid() ويُعبر عنه بالنقاط، أكبر من أو يساوي InpSL (افتراضياً 200 نقطة) لجانب الشراء، يتجاوز المستشار مسافة الوقف المُكوَّنة ويضع وقف الخسارة عند السعر − الفارق. ينطبق نفس المنطق بشكل متماثل على جانب جني الأرباح: إذا كان الفارق أوسع من InpTP، يُطوى جني الأرباح إلى مسافة فارق واحد من سعر الدخول. المنطق هو منع إيقاف الصفقة فوراً بسبب الفارق السعري لحظة فتحها في سوق متسع. يستخدم أمر الشراء ExtSymbolInfo.Ask() ويستخدم أمر البيع ExtSymbolInfo.Bid()؛ كلاهما يُقرب إلى عدد الأرقام العشرية للرمز. لا يوجد وقف متابع، ولا منطق نقطة تعادل، ولا مسار إغلاق جزئي: تنتقل الصفقات من الفتح إلى إما وقف الخسارة، أو جني الأرباح، أو تقاطع MFI، أو خروج زمني لـ 10 أشرطة. يحمل المستشار صفقة واحدة فقط في أي اتجاه في وقت واحد (تُفحص PositionExist() قبل كل فتح)، فلا يوجد منطق دخول متدرج أو شبكة.
على جانب المخاطر، يأتي إكس 16048 بلوت ثابت 0.1 (InpLot=0.1) دون أي حساب نسبة من الرصيد أو مخاطرة لكل صفقة. المخاطرة لكل صفقة عند وقف 200 نقطة ولوت 0.1 ثابتة إذن من حيث الدولار مقابل أي رمز تُربط به — على XAUUSD بحجم النقطة المعتاد تقع في نطاق الآحاد من الدولارات؛ على أزواج العملات الرئيسية عند نفس الـ 200 نقطة تكون تقريباً 20 دولار لكل نقطة مضروبة في قيمة النقطة للوت. الرقم السحري 22216048 (InpMagicNumber) وسلسلة التعليق Psgrowth.com Expert_16048 (InpTradeComment) توسمان كل تذكرة ليتفاعل المستشار فقط مع صفقاته الخاصة خلال فحص الإغلاق في CloseBySignal() وفحص الوقت في CloseByTime(). تسامح الانزلاق 10 نقاط (InpSlippage)، يُضبط عبر ExtTrade.SetDeviationInPoints() عند التهيئة. لا يوجد وقف للرصيد، ولا سقف خسارة يومية، ولا بوابة أقصى تراجع على مستوى المستشار؛ حماية مستوى الحساب هي مسؤولية المنصة.
مكدس المؤشرات متعمد الحد الأدنى. MFI هو المقبض الأصلي الوحيد، وفترة 37 على الجانب الأبطأ من الافتراضي المعتاد لـ MFI بين 10-20، مما يُخمّد الضوضاء على أشرطة M5 بتكلفة بضعة أشرطة إضافية من تأخر التأكيد. متوسط الجسم لـ 12 شمعة (InpAverBodyPeriod) لهندسة النمط أيضاً على الجانب الأبطأ — معظم مراجع النجمة/الدوجي في كتب MQL تستخدم 5-10 أشرطة. يعني هذا المزيج أن المستشار محافظ على كلا المحورين: يطلب نمط انعكاس مُشكَّل جيداً مقابل خط أساس أطول للجسم، ثم يطلب من MFI الموافقة على أن الشمعة المعنية في منطقة استنفاد. توقعات الاختبار الخلفي: هذا نظام منخفض التردد ومنخفض التراجع. سينتج XAUUSD على M5 إشارات من رقم واحد أسبوعياً على الشريط الهادئ ومجموعتين أو ثلاث عندما تتسع التقلبات. نسبة المخاطرة/العائد 1:1 (200/200) تعني أن نسبة فوز 50% هي نقطة التعادل بعد الفارق، والوقف الزمني سيغلق الصفقات الهامشية التي تنجرف. شغّله على أزواج العملات الرئيسية على H1 كفحص سلامة — اقتران الإطار الزمني M5/H1 في قائمة الرموز المنشورة للمستشار يشير إلى أزواج العملات الرئيسية والمعادن/الذهب كهدف قابل للنقل. مطالبة الطبقات الاثني عشر في رأس الملف طموحة: الطبقات المفعّلة فعلياً هي الإشارة (فحوصات الأنماط الأربعة)، التأكيد (عتبة MFI)، عدم التداول (حارس شريط جديد + صفقة واحدة)، المخاطرة+الحجم (لوت ثابت)، الدخول (أمر سوق)، الخروج (وقف خسارة/ربح/وقت 10 أشرطة/تقاطع MFI). OnTester، كشف النظام، سقف رأس المال، الإغلاق الجزئي، التحجيم، والوقف المتابع معلنة في الرأس لكنها غير منفذة في هذه البنية.
ما يمكن توقعه في جلسة حقيقية: يطبع المستشار "Pattern not detected" على معظم الأشرطة الجديدة ولا يُسجّل سطر إشارة إلا عند وجود شمعة تأكيد أيضاً. تعليق الصفقة يجعل تصفية تاريخ الاستراتيجية الخاصة في تبويب الصفقات بالترمنال أمراً سهلاً. نظراً لأن PositionExist() يحظر الدخول الجديد أثناء وجود صفقة في ذلك الاتجاه، يمكن أن يظل المستشار نقدياً لفترات طويلة. الخروج الزمني يعني أن الصفقة القديمة لا يمكنها البقاء خلال عطلة نهاية الأسبوع ما لم تسمح قواعد التمديد أو الانتهاء لدى الوسيط بذلك؛ الوقف الزمني لـ 10 أشرطة هو الحد الأقصى للمدة بغض النظر عن الوسيط.
تفاصيل الاستراتيجية
يقرأ إكس 16048 مقبض مؤشر واحد، iMFI(37, VOLUME_TICK)، ومتوسط جسم واحد لـ 12 شمعة محسوب محلياً من مصفوفات الفتح/الإغلاق. في كل شريط جديد، يُفعّل الحارس الثابت datetime next_bar_open الدالة CheckState() التي تستدعي CheckPattern() لتقييم أشكال نجمة الصباح/المساء الدوجي الأربعة من آخر ثلاث شموع، ثم CheckConfirmation() لحجب الإشارة إذا كان MFI(1) تحت 40 (شراء) أو فوق 60 (بيع). المرحلة 2 من OnTick تفتح أمر السوق إذا تم ضبط ExtSignalOpen ولم توجد صفقة في ذلك الاتجاه؛ المرحلة 3 تغلق أي صفقة مفتوحة عندما تكتشف CheckCloseSignal() تقاطع MFI عند 30/70 من الجانب المقابل؛ المرحلة 4 تغلق أي صفقة وصل عدّ BarsHold() فيها إلى InpDuration=10. يُضبط وقف الخسارة/جني الأرباح 200/200 على أمر الفتح، مع احتياطي للفارق يطوي وقف الخسارة أو جني الأرباح إلى مسافة فارق واحد كلما كان الفارق الحي أوسع من المسافة المكوّنة.
يكشف أحد أنماط الانعكاس اليابانية الأربعة عبر آخر ثلاث شموع — نجمة المساء الدوجي، نجمة المساء، نجمة الصباح الدوجي، نجمة الصباح — حيث تكون الشمعة الوسطى دوجي (الجسم أقل من 10% من متوسط الجسم لـ 12 شمعة) أو جسم صغير (الجسم أقل من 50% من المتوسط) وتغلق الشمعة الثالثة خلف منتصف الشمعة الأولى. لا يُلتزم بالصفقة عند اكتشاف النمط إلا إذا كان MFI(1) لمدة 37 على مدخلات حجم التيك تحت 40 (شراء) أو فوق 60 (بيع)؛ وإلا تُحجب الإشارة. يحمل المستشار صفقة واحدة كحد أقصى لكل اتجاه، لذا يُحظر الدخول الثاني في نفس الاتجاه أثناء فتح الأولى.
تعمل ثلاثة مخارج مستقلة في OnTick. وقف الخسارة/جني الأرباح على جانب الوسيط عند 200/200 نقطة (1:1) هو الخروج الأساسي. تُغلق الدالة CheckCloseSignal() الصفقة الطويلة عندما ينخفض MFI(1) تحت 70 بعد أن كان MFI(2) فوق 70، أو عندما يرتفع MFI(1) فوق 30 بعد أن كان MFI(2) تحت 30؛ الجانب القصير يعكس ذلك عند تقاطع 30/70. يوقف زمني لـ 10 أشرطة (InpDuration) يغلق قسرياً أي صفقة لا تزال مفتوحة عبر BarsHold() التي تقرأ تاريخ MqlRates بين وقت الفتح والوقت الحالي.
تُفتح كل صفقة بوقف خسارة على جانب الوسيط عند 200 نقطة (InpSL=200)، ما لم يكن الفارق السعري الحالي أوسع من 200 نقطة، وفي هذه الحالة يطوي المستشار الوقف إلى مسافة فارق واحد من سعر الدخول (السعر − الفارق للشراء، السعر + الفارق للبيع) لتجنب الإيقاف بسبب الفارق ذاته. لا يوجد وقف متابع، ولا نقطة تعادل، ولا سقف على مستوى الرصيد أو خسارة يومية.
تُفتح كل صفقة بجني أرباح على جانب الوسيط عند 200 نقطة (InpTP=200)، مع نفس شبكة الأمان الاحتيارية للفارق: إذا كان الفارق أوسع من 200 نقطة، يُطوى جني الأرباح إلى مسافة فارق واحد من سعر الدخول. الافتراضي 200/200 يعطي نسبة مخاطرة/عائد 1:1 ثابتة، مع تقاطع MFI للمؤشر والوقف الزمني لـ 10 أشرطة يعملان كخرجين أبكر عندما يملي المذبذب أو المدة ذلك.
يُفضّل تشغيله على XAUUSD M5 لأعلى كثافة إشارات، أو على أزواج العملات الرئيسية (EURUSD، GBPUSD، USDJPY) على H1 لشريط أبطأ بنفس الهندسة. الرصيد الموصى به 300 دولار أو أكثر لحجم اللوت الثابت 0.1 عند وقف الخسارة 200 نقطة؛ المستشار لا يحجم حسب الرصيد لذا الحسابات تحت 300 دولار سترى مخاطرة نسبية أعلى لكل صفقة. استخدم وسيطاً قياسياً أو ECN بفارق سعري منخفض، لأن شبكة الأمان الاحتياطية للفارق في PositionOpen() لا تُفعّل إلا عندما يكون الفارق ≥ 200 نقطة ومعظم فروق الذهب في التجزئة تقل كثيراً عن ذلك. توفر جلسات لندن ونيويورك أنظف أشرطة انعكاس على M5، لكن المستشار لا يصفي حسب الجلسة، لذا سيعمل 24/5 إذا تُرك مرفقاً.
منطق الاستراتيجية
Pipsgrowth EX16048 Trend — تحليل منطق الاستراتيجية (من كود .mq5)
العائلة: Trend
الماجيك: 22216048
الإصدار: 2.00
الوصف:
Morning/Evening Star-Doji pattern EA confirmed by MFI indicator. Detects candlestick patterns, confirms with MFI, opens positions with SL/TP and time-based exit. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester
المؤشرات:
- مؤشرات قياسية
الدوال الرئيسية:
CheckState()PositionOpen()CloseBySignal()CloseByTime()PositionExist()PositionExpiredByTimeExist()BarsHold()Open()Close()Low()
// Pipsgrowth EX16048 Trend — Execution Flow (from source analysis)
// Family: Trend
// Morning/Evening Star-Doji pattern EA confirmed by MFI indicator. Detects candlestick patterns, confirms with MFI, opens positions with SL/TP and time-based exit. 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
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| InpAverBodyPeriod | 12 | period for calculating average candlestick size |
| InpPeriodMFI | 37 | MFI period |
| InpVolume | VOLUME_TICK | volume type |
| InpDuration | 10 | position holding time in bars |
| InpSL | 200 | Stop Loss in points |
| InpTP | 200 | Take Profit in points |
| InpSlippage | 10 | slippage in points |
| InpLot | 0.1 | lot |
| InpMagicNumber | 22216048 | Magic Number |
| InpTradeComment | "Psgrowth.com Expert_16048" | Trade Comment |
#property copyright "Pipsgrowth.com"
#property link "https://pipsgrowth.com"
#property version "2.00"
#property strict
#property description "Pipsgrowth.com EX16048 MorningEvening_StarDoji_MFI — Star-Doji pattern with MFI confirm, full 12-layer stack."
#include <Trade\Trade.mqh>
#include <Trade\SymbolInfo.mqh>
#define SIGNAL_BUY 1 // Buy signal
#define SIGNAL_NOT 0 // no trading signal
#define SIGNAL_SELL -1 // Sell signal
#define CLOSE_LONG 2 // signal to close Long
#define CLOSE_SHORT -2 // signal to close Short
//--- Input parameters
input group "=== Indicator Settings ==="
input int InpAverBodyPeriod=12; // period for calculating average candlestick size
input int InpPeriodMFI =37; // MFI period
input ENUM_APPLIED_VOLUME InpVolume=VOLUME_TICK; // volume type
//--- trade parameters
input group "=== Trade Parameters ==="
input uint InpDuration=10; // position holding time in bars
input uint InpSL =200; // Stop Loss in points
input uint InpTP =200; // Take Profit in points
input uint InpSlippage=10; // slippage in points
//--- money management parameters
input group "=== Money Management ==="
input double InpLot=0.1; // lot
//--- Expert ID
input group "=== Identity ==="
input long InpMagicNumber=22216048; // Magic Number
input string InpTradeComment="Psgrowth.com Expert_16048"; // Trade Comment
//--- global variables
int ExtAvgBodyPeriod; // average candlestick calculation period
int ExtSignalOpen =0; // Buy/Sell signal
int ExtSignalClose =0; // signal to close a position
string ExtPatternInfo =""; // current pattern information
string ExtDirection =""; // position opening direction
bool ExtPatternDetected=false; // pattern detected
bool ExtConfirmed =false; // pattern confirmed
bool ExtCloseByTime =true; // requires closing by time
bool ExtCheckPassed =true; // status checking error
//--- indicator handle
int ExtIndicatorHandle=INVALID_HANDLE;
//--- service objects
CTrade ExtTrade;
CSymbolInfo ExtSymbolInfo;
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
Print("InpSL=", InpSL);
Print("InpTP=", InpTP);
//--- set parameters for trading operations
الكود المصدري الكامل متاح عند التحميل
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.
تحذير صريح: لأغراض تعليمية فقط
تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.
وسطاء موصى بهم لهذا الإكسبرت
هذه الروبوتات تعمل على 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 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.