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

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

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

Pipsgrowth EX16093 Trend — Chart-in-chart utility EA that embeds a sub-chart with editable symbol/period, scale controls and show/hide toggle. No t. إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

Pipsgrowth EX16093 ليس خبيراً استراتيجياً (Expert Advisor) بالمعنى التنفيذي. الملف mq5 يُسلَّم بدون أي معالج OnTick، وبدون أي مؤشر handle، وبدون أي مسار كود يُرسل أمراً في السوق أو يعلّق أمراً معلقاً أو يعدّل صفقة مفتوحة. ما يفعله فعلاً هو بناء مخطط فرعي تفاعلي كامل (picture-in-picture) فوق أي رمز تُرفقه عليه — ثمانية كائنات مسمّاة على المخطط، وخمسة أزرار تبديل، وحقلا نص قابلان للتعديل، وعنصر OBJ_CHART عامل يعرض رمزاً وإطاراً زمنياً من اختيارك داخل نفس النافذة. هذه الأداة تنتمي إلى مخطط المحلل، لا إلى حساب التنفيذ.

تبدأ واجهة التحكم بحقلين من نوع OBJ_EDIT باسم PIPSymbol وPIPPeriod، يُرسمان في الزاوية العلوية اليسرى من المخطط المضيف. افتراضياً يرثان الرمز الذي أُرفق عليه الخبير والإطار الزمني الذي يعمل عليه المخطط — PIPSetParams() تلتقط Symbol() وPeriod() وتحفظهما في curr_symbol وcurr_period داخل OnInit، ثم تستدعي PeriodToStr() لتحويل enum الإطار إلى كوده المختصر ("M5"، "H1"، "D1"، "W1"، "MN1") ليُعرض للمستخدم. انقر على حقل الرمز، واكتب أي ورقة مالية يوفرها وسيطك — "EURUSD" أو "XAUUSD" أو "US100" أو "BTCUSD" — وعند حدث OBJECT_ENDEDIT تقرأ OnChartEvent السلسلة الجديدة عبر ObjectGetString، وتكتبها على OBJPROP_SYMBOL لكائن المخطط، ثم تعيد قراءة كائن المخطط للتأكد أن الوسيط قبل الرمز. أي شيء تكتبه يُعاد صداه إلى الحقل النصي، فتظهر الأخطاء الإملائية فوراً. حقل الإطار الزمني يعمل بالمبدأ نفسه: اكتب "M15" أو "H4" أو "240" وتمرّر OnChartEvent السلسلة عبر StrToPeriod()، وهو تبديل ثلاثون فرعاً يربط كل كود نصي أو رقمي تفهمه MQL5 بثابت ENUM_TIMEFRAMES المناسب. إن لم تُحلَّل السلسلة، ترجع الدالة false ويُترك الإطار السابق كما هو — لا توجد رسالة خطأ، والمخطط ببساطة لا يتغير.

يجلس خمسة كائنات OBJ_BUTTON يمين حقل الإطار، كل واحد بارتفاع 18 بكسل بخط Arial 10pt على خلفية فولاذية زرقاء مطابقة لحقول النص. الأولان مفاتيح تبديل: PIPDatesButton يقلب محور التاريخ في المخطط الفرعي تشغيلاً وإيقافاً (تُقرأ الحالة المنطقية عبر ObjectGetInteger(OBJPROP_STATE) وتُكتب إلى OBJPROP_DATE_SCALE)، وPIPPricesButton يفعل نفس الشيء مع محور الأسعار. التاليان زوج تكبير: PIPPlusButton يزيد المتغير المحلي scale (بحد أقصى 5) ويدفعه إلى OBJPROP_CHART_SCALE؛ وPIPMinusButton ينقصه (بحد أدنى 0). كل نقرة تفرض أيضاً إرجاع حالة الزر ذاته إلى 0 لأن حقل الحالة يُستخدم عداد نقرات لا حالة محتجزة. الزر الخامس، PIPHideButton، يطوي المخطط المضمَّن — تستدعي PIPHideChart() التي تضبط إحداثيات المخطط x/y إلى -1 وكلا البُعدين إلى 0، فتنقله فعلياً خارج اللوحة القابلة للرسم. النقرة الثانية تُعيده: show = 1 - show يقلب العلم المحلي، وPIPSetParams() تعمل مجدداً بإحداثيات xdist/ydist/xsize/ysize المحفوظة، فيظهر المخطط الفرعي في مكانه الأصلي بالضبط. ملصق زر الإخفاء مجرد شرطة سفلية "_" — أقل بصمة بصرية ممكنة.

تُنشأ الكائنات الثمانية كلها داخل PIPCreate() في OnInit، وتُنسَّق في PIPSetParams()، وتُحذف دفعة واحدة عبر PIPDelete() داخل OnDeinit. الأبعاد مقيَّدة بحد أدنى 250×100 تحسباً لإدخال المستخدم قيماً غير منطقية، والموضع يؤخذ مباشرة من مدخلات XPosition/YPosition (الافتراضي 10، 10). شريط التحكم ارتفاعه 20 بكسل؛ ويُرتَّب المخطط ذاته على بعد 20 بكسل تحته، محتلاً مستطيل XSize × YSize بالكامل (افتراضي 450×300). الثابتان البصريان الوحيدان القابلان لإعادة التلوين هما TextColor (افتراضي clrWhite) وBGColor (افتراضي clrSteelBlue) — وكلاهما يغذّي OBJPROP_COLOR وOBJPROP_BGCOLOR لكل حقل نص وزر وحقل تحرير، فيظهر شريط الأدوات كشريط متناسق واحد.

لأن شيئاً في التشغيل لا يتفعّل على تيكت، لا يوجد نموذج مخاطر، ولا غلاف أوامر، ولا تتبّع صفقات، ولا انضباط رقم سحري يمكن الحديث عنه. المدخلان InpMagicNumber = 22216093 وInpTradeComment = "Psgrowth.com Expert_16093" مُعلَنَان في مجموعة === Identity === القياسية ليطابق الملف مخطط ترويسة الـ EA المعتمَد في كتالوج PipsGrowth، لكن لا تقرأهما أي دالة في mq5. المساعدات الثلاث لإعادة المحاولة TryClose_EX16093 وTryClosePartial_EX16093 وTryModify_EX16093 مبنيّة على غرار ما تبقى من الكتالوج لمعالجة requote/timeout/price-change، لكنها أيضاً لا تُستدعى من التشغيل — الخبير لا يفتح صفقات، فلا شيء ليُغلق، ولا شيء ليُعدَّل جزئياً، ولا شيء ليُعدَّل أصلاً. استيراد #include <Trade\Trade.mqh> موجود فقط لأن المساعدات تشير إلى CTrade.

عملياً، الخبير أداة سياق متعدد الإطارات. أرفقه على مخطط تداولك، غيّر حقل الرمز إلى الورقة المالية المرتبطة التي تريد مراقبتها (DXY تحت مخطط EURUSD، US10Y تحت NAS100، الذهب تحت الفضة)، وعدّل زاوية النافذة ليملأ المخطط الفرعي المساحة الميتة فوق مؤشراتك. يتيح لك حقل الإطار وضع رؤية إطار زمني أعلى داخل مخطط تداول بإطار زمني أدنى دون تبديل النوافذ — سير عمل شائع: التداول على M5 مع مخطط سياق H1 مدمج، أو تشغيل رؤية انحياز يومي داخل مخطط تنفذ 30 دقيقة. مفاتيح تواريخ/أسعار ومفاتيح +/- للتكبير تمنحك ضبطاً بصرياً سريعاً دون مغادرة لوحة المفاتيح. زر الإخفاء يصفّي الشاشة لحظياً عندما تريد رؤية المخطط الأساسي دون عائق، ويُعيد كل شيء بنفس الأبعاد بنقرة أخرى. ولأن الخبير لا يفتح صفقات، يمكن أن يجلس على حساب تجريبي أو حي، أو حساب سنت أو حساب تحدي شركة تمويل، بدون أي خطر تنفيذ عرضي — ولأن OnTick فارغة، الحمل على المعالج وعلى تيكت الوسيط قريب من الصفر.

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

تبني PIPCreate() ثمانية كائنات مسمّاة على المخطط داخل OnInit — حقلين من نوع OBJ_EDIT لسلسلة الرمز والإطار، وخمسة أزرار OBJ_BUTTON لتبديل التواريخ/الأسعار/التكبير/الإخفاء، وعنصر OBJ_CHART فرعي واحد. ثم تختم PIPSetParams() الموضع والحجم واللون وخصائص OBJPROP_SYMBOL/PERIOD/CHART_SCALE على كل كائن اعتماداً على القيم المدخلة في XPosition/YPosition/XSize/YSize والألوان TextColor/BGColor. تستمع OnChartEvent لحدث OBJECT_ENDEDIT على حقلي النص وتقرأ السلسلة الجديدة عبر ObjectGetString، ثم تكتبها إلى OBJPROP_SYMBOL لكائن المخطط (أو تحلّلها عبر StrToPeriod وتدفع ENUM_TIMEFRAMES إلى OBJPROP_PERIOD)، قبل استدعاء ChartRedraw(). كل زر من الأزرار الخمسة يتفعّل عند CHARTEVENT_OBJECT_CLICK: مفاتيح التواريخ والأسعار تقلب قيمتي OBJPROP_DATE_SCALE وOBJPROP_PRICE_SCALE المنطقيتين، وزرا +/- يزيدان أو ينقصان متغير scale المحلي (محدود بين 0 و5) ويدفعانه إلى OBJPROP_CHART_SCALE، وزر الإخفاء إما يستدعي PIPHideChart() (التي تنقل المخطط الفرعي خارج اللوحة عند -1,-1 بحجم صفر) أو يعيد تشغيل PIPSetParams() لاستعادته. تستدعي OnDeinit الدالة PIPDelete() لإزالة كل كائن مسمّى فلا يبقى شيء يتيم على المخطط عند إزالة الخبير.

إشارة الدخول

هذا الخبير أداة مخطط فرعي مرئية ولا يحتوي أي منطق دخول. لا توجد دالة OnTick، ولا حزمة مؤشرات، ولا أي مسار كود يُرسل أمراً في السوق أو يعلّق أمر معلق أو يفعّل أمر معلّق. يجب تصنيفه كأداة تحليل لا كاستراتيجية.

إشارة الخروج

لا يوجد منطق خروج لأنه لا يوجد منطق دخول. الخبير بلا OnTick، وبلا تكرار على صفقات، وبلا أي استدعاءات غلاف تداول، فلا شيء يُغلق في أي ظرف — لا يدوياً ولا تلقائياً.

وقف الخسارة

لا ينطبق. الخبير لا يفتح صفقات أبداً، فلا يُركَّب أي وقف خسارة لكل صفقة. كما لا يوجد حد سحب عام، ولا أرضية حقوق، ولا قاتل طوارئ — التشغيل أداة مخطط سلبية بلا صلاحية تنفيذ.

جني الأرباح

لا ينطبق. الخبير لا يفتح صفقات أبداً، فلا يُربط أي هدف جني أرباح. لا توجد سلالم إغلاق جزئي، ولا أهداف سلة، ولا مؤقتات خروج زمنية — عنصر OBJ_CHART الفرعي يعكس ببساطة الرمز والإطار الزمني اللذين تكتبهما في حقلي PIPSymbol وPIPPeriod.

الأنسب لـ

مناسب تماماً للمتداولين الذين يديرون مخطط تنفيذ واحد لكنهم يحتاجون ورقة مالية ثانية أو إطاراً زمنياً أعلى مرئياً بنظرة واحدة — مثلاً مراقبة DXY داخل مخطط EURUSD، أو US10Y داخل مخطط NAS100، أو الفضة داخل مخطط الذهب. الحد الأدنى للرصيد الموصى به 100 دولار كعتبة مجاملة فحسب؛ بما أنه لا تُفتح أي صفقات أبداً، يمكن إرفاق الخبير بحساب تجريبي أو سنت أو حساب تحدي شركة تمويل على حد سواء. أي وسيط MT5 يوفّر Symbol() والرمز الفرعي الذي تريد عرضه سيفي بالغرض — لا يوجد فلتر سبريد، ولا مسار تنفيذ، ولا توقيت جلسة ليُضبط، فنوع الوسيط غير مهم خارج توافر الرمز. اللوحة الافتراضية 450×300 في الزاوية العلوية اليسرى (10، 10) معايرة لمخطط 1920×1080 مع مؤشرات أدناه؛ عدّل عبر XSize وYSize للشاشات العريضة جداً أو 4K، وأعد تلوين TextColor وBGColor ليتناسبا مع قالب داكن.

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

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

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

الوصف: Chart-in-chart utility EA that embeds a sub-chart with editable symbol/period, scale controls and show/hide toggle. No trading logic — visual/analysis tool only. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

المؤشرات:

  • مؤشرات قياسية

الدوال الرئيسية:

  • OnChartEvent()
  • PIPCreate()
  • PIPDelete()
  • PIPSetParams()
  • PIPHideChart()
  • StrToPeriod()
  • PeriodToStr()
  • TryClose_EX16093()
  • TryClosePartial_EX16093()
  • TryModify_EX16093()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX16093 Trend — Execution Flow (from source analysis)
// Family: Trend
// Chart-in-chart utility EA that embeds a sub-chart with editable symbol/period, scale controls and show/hide toggle. No trading logic — visual/analysis tool only. 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

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

المعاملالافتراضيالوصف
InpMagicNumber22216093Magic Number
InpTradeComment"Psgrowth.com Expert_16093"Trade Comment
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX16093.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX16093 ChartInChart — chart-in-chart utility, full 12-layer stack."
#include <Trade\Trade.mqh>
//--- inputs
input group "=== Display Parameters ==="
input color TextColor=clrWhite;
input color BGColor=clrSteelBlue;
input int   XPosition=10;
input int   YPosition=10;
input int   XSize=450;
input int   YSize=300;
input group "=== Identity ==="
input long  InpMagicNumber=22216093; // Magic Number
input string InpTradeComment="Psgrowth.com Expert_16093"; // Trade Comment
//--- variables
int xsize=450;
int ysize=300;
int xdist=10;
int ydist=10;
int scale=1;
int show=1;
int showdates =0;
int showprices=0;
//---
string          curr_symbol;
string          curr_period_str;
ENUM_TIMEFRAMES curr_period;
ENUM_TIMEFRAMES enper;
//+------------------------------------------------------------------+
//| Initialize expert                                                |
//+------------------------------------------------------------------+
void OnInit()
  {
//--- default value for symbol and period
   curr_symbol=Symbol();
   curr_period=Period();
   PeriodToStr(curr_period,curr_period_str);
//--- copy sizes
   xsize=XSize;
   ysize=YSize;
   xdist=XPosition;
   ydist=YPosition;
//--- create objects
   PIPCreate();
   PIPSetParams();
//---
   ChartRedraw();
  }
//+------------------------------------------------------------------+
//| Process chart events                                             |
//+------------------------------------------------------------------+
void OnChartEvent(const int id,const long& lparam,const double& dparam,const string& sparam)
  {
   if(id==CHARTEVENT_OBJECT_ENDEDIT && sparam=="PIPSymbol")
     {
      curr_symbol=ObjectGetString(0,"PIPSymbol",OBJPROP_TEXT);
      ObjectSetString(0,"PIPChart",OBJPROP_SYMBOL,curr_symbol);

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

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

الوسوم:ex16093trendpipsgrowthfreemt5xauusd

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

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

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

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

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

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

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

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