P
PipsGrowth
متابعة الاتجاهمفتوح المصدر - مجاني

Pipsgrowth EX16024 Trend — إكسبرت أدفايزر متابعة اتجاه

إكسبرت أدفايزر MT5 مفتوح المصدر · XAUUSD · M5، H1

Pipsgrowth EX16024 Trend — Candlestick pattern EA that detects Bullish and Bearish Engulfing formations, confirms with CCI oscillator and a trend M. إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

إكس 16024 مبني حول حدث سوقي واحد محدد بدقة: الشمعة الابتلاعية (الانغلفينج) الصاعدة أو الهابطة. يفحص المستشار آخر شمعتين مغلقتين، ويتحقق ما إذا كانت الشمعة الأحدث قد ابتلعت الشمعة التي قبلها بالكامل، ثم يستخدم هذه الحقيقة الهندسية — وليس تقاطع متوسطين متحركين أو عتبة زخم — كمصدر أولي للإشارة. قبل كل ذلك، يجب أن يكون جسم الشمعة السابقة أكبر من متوسط أحجام الأجسام في آخر 12 شمعة (عبر InpAverBodyPeriod)، لذا فإن أي ابتلاع صغير يأتي بعد شريط سعري مسطح يُرفض. هذا الفلتر هو ما يجعل هذا نمط ابتلاع حقيقي وليس مصادفة على فتيل رفيع.

التعرف على النمط يوجد داخل CheckPattern(). الابتلاع الصاعد يتطلب Open(2) > Close(2) (أي أن الشمعة السابقة هابطة) و Close(1) − Open(1) > AvgBody(1) (الشمعة الأحدث صاعدة وكبيرة بما يكفي) و Open(1) < Close(2) (افتتاح الأحدث تحت إغلاق السابق — هندسة الابتلاع). الابتلاع الهابط يعكس هذه الشروط. ثم يُضاف فلتر السياق: لا يُحتسب الابتلاع الصاعد إلا إذا كان MidOpenClose(2) < CloseAvg(2) — أي أن نقطة منتصف الشمعة السابقة تحت المتوسط المتحرك البسيط لـ 5 فترات، بمعنى أن السوق في اتجاه هابط قصير المدى. الابتلاع الهابط لا يُحتسب إلا في سياق صاعد. فترة المتوسط هي InpMAPeriod = 5 على PRICE_CLOSE؛ ودالة CloseAvg() تقرأ CopyBuffer من ExtTrendMAHandle. هذا البوابة السياقية هي ما يفصل إكس 16024 عن أي كاشف ابتلاع ساذج — تجبر النمط على أن يكون انعكاسًا في اتجاه الاتجاه السابق، وليس استمرارًا.

بعد اكتشاف النمط، تقرأ CheckConfirmation() قيمة مؤشر CCI عند الشمعة 1 بفترة InpPeriodCCI = 37 ونوع سعر يحدده InpPrice (الإغلاق افتراضيًا عبر MapAppliedPriceInt). يحتاج النمط الصاعد CCI(1) < -50 للتأكيد — يجب أن تكون أحدث شمعة قد دفعت المؤشر إلى النصف السفلي من النطاق المعتاد ±100. يحتاج النمط الهابط CCI(1) > 50. هذا اللاتناظر مهم: المستشار يستخدم CCI كفلتر إذن، لا كمسبب أولي. النمط هو المحفز، وCCI هو الخانق.

مقبضا المؤشر الأصليان يُعلنان في OnInit() على الشكل: ExtIndicatorHandle = iCCI(_Symbol, _Period, InpPeriodCCI, g_InpPrice) و ExtTrendMAHandle = iMA(_Symbol, _Period, InpMAPeriod, 0, MODE_SMA, PRICE_CLOSE). لا يوجد ATR، ولا ADX، ولا ستوكاستيك، ولا بولنجر، ولا حجم — فقط المقبضان. هذا يجعل سطح المؤشرات رقيقًا بشكل غير معتاد لمستشار يدّعي 12 طبقة: الإشارة هندسة، والنظام هو متوسط متحرك واحد، والتأكيد هو CCI واحد.

تنفيذ الأوامر يمر عبر PositionOpen() التي تبني وقف الخسارة وجني الأرباح مع safeguard صغير لكنه مهم: إذا كان السبريد الحالي أوسع من InpSL * point، يستبدل المست顾问 السبريد نفسه كمسافة وقف (السعر ناقص السبريد في الشراء، السعر زائد السبريد في البيع)، ويطبع تحذيرًا. نفس المنطق مطبق على جني الأرباح. هذا حارس رفض من الوسيط — بدونه، إرسال وقف 200 نقطة بينما السبريد 250 نقطة سيُرفض. نفس InpLot = 0.1 يُستخدم لكل دخول، بلا تحديد حجم بنسبة مخاطرة ولا تحجيم متعلق بالرصيد. السحر 22216024 يُضبط عبر InpMagicNumber ويُوسم في التعليق بـ Psgrowth.com Expert_16024.

تأتي المخارج من ثلاثة مصادر مستقلة وتُقيَّم بالترتيب. أولًا، CheckCloseSignal() تبحث عن تقاطع CCI داخل نطاق ±80: يُغلق المركز الطويل عندما (CCI(1) < 80 && CCI(2) > 80) أو (CCI(1) < -80 && CCI(2) > -80)، أي أن المؤشر قد انعكس من منطقة متطرفة؛ ويُغلق القصير في النسخة المعكوسة. ثانيًا، SL/TP الثابت عند 200 نقطة لكل منهما — هندسة مخاطرة إلى عائد 1:1. ثالثًا، وقف زمني صارم: InpDuration = 10 أعمدة. دالة BarsHold(open_time) تستدعي CopyRates(_Symbol, _Period, open_time, TimeCurrent(), bars) وتعد الأعمدة بين وقت الفتح والآن. بعد 10 أعمدة على M5، هذا يقارب 50 دقيقة — المست顾问 سيغلق المركز بصرف النظر عن الربح أو الخسارة. لا يوجد وقف متحرك، ولا نقطة تعادل، ولا إغلاق جزئي.

معالج التيك OnTick() يدير خط أنابيب من أربع مراحل في كل تيكة واردة. المرحلة 1 تحدّث الحالة فقط عند شريط جديد (محمي بـ static datetime next_bar_open)، وداخلها تستدعي CheckState() كلًا من CheckPattern() وCheckConfirmation() وCheckCloseSignal() بالتسلسل. المرحلة 2 تفتح مركزًا فقط إذا كان ExtSignalOpen مضبوطًا ولا يوجد مركز في ذلك الاتجاه. المرحلة 3 تغلق بناءً على إشارة إغلاق. المرحلة 4 تجبر الإغلاق لأي مركز انتهت صلاحيته الزمنية. هذا النهج المرحلي يعني أن المست顾问 لا يقيّم منطق الإشارة في منتصف الشريط ولا يعيد فتح مركز لديه.

ثلاث دوال مساعدة لإعادة المحاولة في أسفل الملف: TryClose_EX16024 وTryClosePartial_EX16024 وTryModify_EX16024. كل منها تكرر حتى ثلاث مرات على retcode عابر وتُعيد إرسال الطلب. فقط TryClose_EX16024 مدمج فعليًا في مسارات الإغلاق الحية في CloseBySignal() وCloseByTime(). أما TryClosePartial_EX16024 وTryModify_EX16024 فمعرّفتان لكن لا تُستدعَيان — شفرة ميتة، على الرغم من ادعاء المستشار دعم طبقتي MANAGE وEXIT.

نقطة صغيرة لكنها مرئية في المصدر: دالة MapAppliedPriceInt() معرّفة مرتين، بشكل متطابق، في السطور 41–54 و 62–75. المترجم يقبلها لأن التعريف الثاني يطغى على الأول داخل كتلته، لكن التكرار حقيقي ويستحق الملاحظة. لا توجد مسارات شفرة ميتة أخرى؛ فحص النمط والتأكيد والمخارج كلها قابلة للوصول.

بالمقارنة مع ادعاء الـ 12 طبقة، المحاسبة الصادقة أقرب إلى 8: REGIME (فلتر SMA5SIGNAL (هندسة الابتلاع)، ENTRY (أمر سوق بناءً على إشارة مؤكدة)، CONFIRM (عتبة CCI ±50)، NO-TRADE (حارس شريط جديد + خروج بالمدة)، RISK (SL ثابت 200 نقطة مع أمان تجاوز السبريد)، SIZING (لوت ثابت 0.1EXIT (تقاطع CCI + الوقت + SL/TP). الأربع الأخريات — CAPITAL CAP وMANAGE وSCALING وOnTester — غير مدمجة. لا يوجد سقف تراجع عالمي، ولا وقف على حقوق الملكية، ولا حد خسارة يومية؛ ولا يوجد متحرك، ولا نقطة تعادل، ولا جزئي؛ ولا يوجد مارتنغال أو هرمي؛ والملف لا يحتوي على دالة OnTester() لتحسين معاملات الباك تيست.

عمليًا: انشر إكس 16024 على وسيط XAUUSD بسبريد منخفض، واضبط الإطار الزمني على M5، واترك المدخلات على قيمها الافتراضية (SMA بفترة 5، CCI بفترة 37، متوسط جسم بفترة 12، SL/TP 200/200، وقف زمني 10 أعمدة، لوت 0.10)، وتوقع أن يكون المست顾问 انتقائيًا — حالات الابتلاع التي تفشل في فلتر الاتجاه أو تأكيد CCI لا تُتاجر بها، وصفقات M5 بعمر 10 أعمدة قصيرة العمر. اللوت الثابت 0.10 يعني أن تحديد الحجم لا يتكيف مع حجم الحساب؛ الحد الأدنى للإيداع 100 دولار هو الأرضية، لكن حساب 500 دولار يوفر هامشًا أكبر قبل أن تأكل حسابات 1:1 SL/TP التراجع.

تفاصيل الاستراتيجية

يدير المستشار خط أنابيب من أربع مراحل في كل تيكة. المرحلة 1 محروسة بـ static datetime next_bar_open: تُحدَّث الحالة فقط عند شريط جديد، حيث تستدعي CheckState() CheckPattern() للبحث عن ابتلاع صاعد أو هابط، ثم CheckConfirmation() لتطلب أن يكون CCI(1) خارج نطاق ±50 في اتجاه النمط، ثم CheckCloseSignal() لرصد ارتداد CCI من منطقة متطرفة. المرحلة 2 تفتح أمر سوق فقط إذا كانت الإشارة مضبوطة ولا يوجد مركز في ذلك الاتجاه. المرحلة 3 تغلق بناءً على إشارة إغلاق، والمرحلة 4 تجبر الإغلاق لأي مركز انتهى وقته الزمني 10 أعمدة على M5. مقبضا المؤشر الأصليان يقومان بالعمل — iCCI(_Symbol, _Period, InpPeriodCCI, g_InpPrice) و iMA(_Symbol, _Period, InpMAPeriod, 0, MODE_SMA, PRICE_CLOSE) — وكلاهما يُحرَّر في OnDeinit. منطق النمط في CheckPattern() يعيد أيضًا استخدام MidOpenClose(i) = (Open(i)+Close(i))/2 و AvgBody(1) = sum(|Open(i)-Close(i)|)/12 لقياس وتوجيه الابتلاع نسبة إلى التاريخ الحديث.

إشارة الدخول

يُسجَّل الابتلاع الصاعد عندما تكون الشمعة السابقة هابطة ويكون جسم الشمعة الأحدث أكبر من متوسط أحجام الأجسام في آخر 12 شمعة ويفتح الأحدث تحت إغلاق السابق — لكن فقط إذا كانت نقطة منتصف الشمعة السابقة تحت المتوسط المتحرك البسيط لـ 5 فترات (سياق اتجاه هابط). ثم تُؤكد الإشارة عبر CCI(1) < -50. إعداد البيع يعكس هذه الشروط بعتبة تأكيد +50.

إشارة الخروج

يُغلق المركز الطويل بجني الأرباح الثابت 200 نقطة، أو بوقف الخسارة 200 نقطة، أو بوقف زمني 10 أعمدة على M5 (≈50 دقيقة)، أو بإشارة تقاطع CCI في CheckCloseSignal() عندما يعود CCI(1) داخل نطاق ±80 من منطقة متطرفة. القصير يُغلق بتقاطع معكوس أو بنفس الحدود الصلبة. لا يوجد متحرك، ولا نقطة تعادل، ولا إغلاق جزئي.

وقف الخسارة

كل دخول يحمل وقف خسارة ثابت 200 نقطة مرفق بأمر الوسيط. إذا كان السبريد الحالي أوسع من 200 نقطة، تستبدل PositionOpen() السبريد نفسه كمسافة وقف وتطبع تحذيرًا، مما يمنع رفض الوسيط لوقف ضيق جدًا في سوق السبريد الواسع.

جني الأرباح

جني الأرباح ثابت عند 200 نقطة، مما ينتج هندسة مخاطرة إلى عائد 1:1 مقابل وقف الخسارة 200 نقطة. ينطبق نفس أمان تجاوز السبريد — إذا كان السبريد أوسع من 200 نقطة، يُطوى جني الأرباح إلى سعر ± السبريد بدلاً من أن يُرفض.

الأنسب لـ

الأفضل نشره على XAUUSD M5 مع وسيط ECN أو RAW بسبريد منخفض — حسابات 200 نقطة SL/TP تفترض سبريدًا نموذجيًا أقل من نقطة، وأمان تجاوز السبريد يعتمد على وسيط يسمح بوقف ضيق عندما تكون السبريدات عادية. الحد الأدنى الموصى به لحجم الحساب هو 100 دولار لتجاوز رياضيات 1:1 SL على لوت 0.10، لكن 500 دولار أو أكثر أكثر راحة نظرًا لغياب أي وقف على حقوق الملكية أو حد خسارة يومية. الوقف الزمني 10 أعمدة على M5 يعني أن المستشار غير مصمم للاحتفاظ عبر تداخل لندن–نيويورك على H1 — إذا أردت صفقة أطول، انتقل إلى H1 بنسخة موازية.

منطق الاستراتيجية

Pipsgrowth EX16024 Trend — تحليل منطق الاستراتيجية (من كود .mq5)

العائلة: Trend الماجيك: 22216024 الإصدار: 2.00

الوصف: Candlestick pattern EA that detects Bullish and Bearish Engulfing formations, confirms with CCI oscillator and a trend MA filter, and enters with fixed 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()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX16024 Trend — Execution Flow (from source analysis)
// Family: Trend
// Candlestick pattern EA that detects Bullish and Bearish Engulfing formations, confirms with CCI oscillator and a trend MA filter, and enters with fixed 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)

ملف التحسين

الوسطاء المُحسّنون:
ExnessIC Markets
الرموز المُحسّنة:
XAUUSD
الأطر الزمنية المُحسّنة:
M5H1

كيفية تثبيت الإكسبرت على MT5

  1. 1حمّل ملف .mq5 بالضغط على زر التحميل أعلاه
  2. 2افتح برنامج MetaTrader 5 على حاسوبك
  3. 3من القائمة العلوية اختر File → Open Data Folder
  4. 4انتقل إلى مجلد MQL5 → Experts والصق الملف هناك
  5. 5في MT5، انقر بالزر الأيمن على Expert Advisors في لوحة Navigator → Refresh
  6. 6اسحب الإكسبرت على رسم H4 أو اليومي للحصول على أفضل النتائج
  7. 7حدد فترات EMA وعتبة ADX وحجم اللوت في نافذة الإعدادات
  8. 8فعّل Allow Algo Trading واضغط OK

معاملات الإكسبرت

المعاملالافتراضيالوصف
InpAverBodyPeriod12period for calculating average candlestick size
InpMAPeriod5Trend MA period
InpPeriodCCI37CCI period
InpPrice1Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) // price type
InpDuration10position holding time in bars
InpSL200Stop Loss in points
InpTP200Take Profit in points
InpSlippage10slippage in points
InpLot0.1lot
InpMagicNumber22216024Magic Number
InpTradeComment"Psgrowth.com Expert_16024"Trade Comment
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX16024.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX16024 BullishBearish_Engulfing_CCI — Engulfing pattern with CCI confirmation, 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
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_InpPrice = PRICE_CLOSE;
input group "=== STRATEGY PARAMETERS ==="
input int  InpAverBodyPeriod=12;    // period for calculating average candlestick size
input int  InpMAPeriod      =5;     // Trend MA period
input int  InpPeriodCCI     =37;    // CCI period
input int InpPrice = 1; // Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted) // price type

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_InpPrice = PRICE_CLOSE;
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 double InpLot   =0.1;         // lot

الكود المصدري الكامل متاح عند التحميل

لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.

الوسوم:ex16024trendpipsgrowthfreemt5xauusd

تحذير صريح: لأغراض تعليمية فقط

تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.

وسطاء موصى بهم لهذا الإكسبرت

هذه الروبوتات تعمل على MT5 — استخدم وسيطاً موثوقاً بتنفيذ سريع وسبريد منخفض

مجتمع المستخدمين

سجّل دخولك للمشاركةتسجيل الدخول

لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.

اسم الملفPipsgrowth_com_EX16024.mq5
حجم الملف28.5 KB
الإصدارv2.00
PlatformMetaTrader 5
نوع الملف.mq5 Source
الاستراتيجيةمتابعة الاتجاه
المخاطرةمخاطرة متوسطة
الأطر الزمنية
M5H1
أزواج العملات
XAUUSD
الحد الأدنى للإيداع$100