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

Pipsgrowth EX18050 TrendFollow — إكسبرت أدفايزر إكسبرت أدفايزر

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

Pipsgrowth EX18050 TrendFollow — Closed-bar price candle + inlined Tillson T3 (zero-lag, GD-form from EMA(price,N) chain e1..e6) slope confirmation. 12 m. إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

Pipsgrowth EX18050 TrendFollow هو مستشار آلي يتبع الترند على الإطار الزمني M5 ويعتمد في جوهره على المتوسط المتحرك Tillson T3 المحسوب داخليًا والمطبَّق على إغلاق سلس بنمط هايكين آشي. بدلاً من تقاطع EMA سريع مع EMA بطيء أو انعكاس هيستوجرام MACD، يراقب محرك الدخول ميل منحنى T3 الذي يحسبه المستشار نفسه من ست متوسطات EMA متداخلة بطول 14، موزونة بمعامل حجم Tillson البالغ 0.7. يُرسم T3 فوق إغلاق رباعي السعر بنمط HA، فيظل المنحنى سلسًا وسط التشويش الجانبي ولا ينحني بشكل مؤثر إلا حين يتغير الإيقاع الأساسي. يُطلق сигнал الشراء حين يكون قيمة T3 الحالية أعلى من قراءة الشمعة السابقة بما لا يقل عن خمس نقاط و يكون الإغلاق الفعلي فوق قيمة T3 السابقة أيضًا؛ والبيع يعكس هذا الزوج من الشروط. ولأن كلا الساقين من الاختبار يجب أن يجتازا، يرفض المستشار الدخول عند ميل صاعد والسعر لا يزال تحت المنحنى، والعكس صحيح — وهذا هو حارس منع إعادة الرسم الذي يجعل الاستراتيجية صالحة للبيانات الحية وليس فقط لمنحنيات الباك تيست.

يعمل هذا الإشارة داخل مصنف نظام بسبع حالات في دالة ComputeRegime(). يستخدم المصنف قراءة ADX(14) ومئين ATR(14) على 50 شمعة ونسبة عرض نطاق بولينجر(20، 2.0) الحالي إلى عرض الشمعة السابقة. تتطلب STRONG_TREND أن يكون ADX فوق 22 وأن يبلغ مئين ATR 60 أو أعلى — زخم يتماشى مع توسع التذبذب. تُفعَّل WEAK_TREND عندما يتجاوز ADX عتبة 15.4 لكن مئين التذبذب لم يتبعه بعد. تُكتشف EXPAND من خلال توسع عرض بولينجر بنسبة 20% أو أكثر حتى مع بناء ADX تدريجيًا، بينما تُشير COMPRESS إلى العكس. أما BREAKOUT وRANGE فهما مستويان صافيان بحسب مئين ATR (>=75 و<=25 على التوالي). كل ما لا يندرج ضمن ذلك يقع في CHOPPY، التي تتعامل معها الاستراتيجية كحظر صارم. ثم تضيق بوابة RegimeAllowsEntry() المجموعة القابلة للتداول إلى STRONG_TREND وWEAK_TREND وBREAKOUT وEXPAND، ولهذا السبب يجلس المستشار خارج حالات الانضغاط والنطاق المحض بدلاً من التقطيع عند حواف النطاقات.

التأكيد عبارة عن لوحة بثلاث بوابات. أولاً، يجب أن يميل المتوسط المتحرك EMA(50) للإطار الزمني الأعلى — المسحوب على الإطار المحدد بـ InpHTF (افتراضي H1) — في نفس اتجاه الإشارة؛ وتُرفض إشارة شراء ضد EMA H1 هابطة. ثانيًا، يجب أن يكون السبريد الحالي عند أو تحت InpSpreadMaxPts البالغ 30 نقطة. ثالثًا، يجب أن تطابق الجلسة النشطة واحدة من ثلاث علامات: لندن 08:00–16:00 بتوقيت السيرفر، نيويورك 13:00–21:00، أو آسيا 00:00–08:00. يجلس خلف هذه البوابات فحص تطرف RSI(14): تُرفض إشارات الشراء حين يكون RSI فوق 80، وإشارات البيع حين يكون دون 20. يُرجع المساعد CheckConfirm() أول سبب للفشل كسلسلة نصية ليتمكن المستشار من تسجيل البوابة التي منعت الدخول بدقة.

يُحدد محرك المخاطرة حجم كل دخول بناءً على ATR الإشارة — iATR على إطار الإشارة بطول يساوي فترة T3 (14). وقف الخسارة هو InpATRStopMult عند 2.0× هذا ATR، وجني الأرباح هو InpATRTargetMult عند 4.0× ATR، مما يفرض نسبة مخاطرة إلى عائد 1:2. إذا انخفضت أي عملية حساب تحت InpMinRR البالغ 1.5، يُوسَّع الهدف حتى تتجاوز النسبة الحد. ثم يُحسب حجم الصفقة في PreSendRiskOK() بناءً على InpRiskPercent البالغ 0.5% من رأس المال الفعلي (أو يُقَص عند حد اللوت)، مع تحقق OrderCalcMargin من الهامش الحر قبل إرسال الأمر. يُعيّن إدخال InpCapAmount سقفًا اختياريًا للرصيد — عند 0 يُعطَّل السقف؛ وInpCapFloor البالغ 50$ يحظر الدخول حين ينخفض رأس المال الفعلي عن هذا الحد. يُفرض حد أقصى صارم قدره 50 صفقة يوميًا من خلال _MAX_DAILY_TRADES_HARD.

بمجرد الدخول في صفقة، تشغّل ManageExits() مكدس خروج متعدد الطبقات على كل تيكت. حين يصل الربح غير المحقق إلى 1R، تسحب MoveSL() وقف الخسارة إلى سعر الدخول مضافًا إليه InpBEOffsetPts البالغ 10 نقاط، فتؤمن خروجًا خاليًا من الخدش. عند علامة 1R نفسها، يُغلق نصف الصفقة عبر TryClosePartial_EX18050 (ثلاث محاولات في حالات requote وtimeout وprice-off وprice-changed مع نوم 200ms بين المحاولات). بعد 1R، يتولى وقف خسارة متابع عند 2.5×ATR ويتحرك دائمًا في الاتجاه الملائم فقط. يعمل بالتوازي مخرجان صارمان: مخرج إشارة T3 معاكسة يُغلق الصفقة، وانتقال النظام إلى CHOPPY يُصفّي المركز بصرف النظر عن الربح. وأخيرًا، يعمل وقف زمني عند 500 شمعة إذا ظلت الصفقة حيّة لهذه المدة على إطار الدخول — سقف سخي مُصمَّم لبطء ترند الذهب الذي يستهدفه المستشار.

يجلس حارس تهدئة الخسارة في OnTradeTransaction. تُقرأ كل صفقة موسومة بالرقم السحري للمستشار؛ وتُفعَّل ثلاث خسائر متتالية تهدئة لمدة أربع ساعات خلالها تُرجع NoTradeReasons() السلسلة «cooldown after losses». وبالمثل، تُوقف حدود الخسارة اليومية والأسبوعية المعتمدة على الرصيد (3%/6% افتراضيًا) الإدخالات فور تجاوزها. يمنع حارس الإدخال المكرر المعتمد على طابع زمني لشمعة الإشارة المستشار من الإطلاق مرتين على نفس الإغلاق. تُجمَّع خاصية الهرمة عبر MaybePyramid() وتُقَص عند _PYRAMID_MAX_LEVELS البالغ 3 مع تباعد 1.5×ATR، لكن إدخال InpPyramidEnable يكون false افتراضيًا — افتراضيًا، يُشغّل EX18050 مركزًا واحدًا في كل مرة. إدخال InpDryRun افتراضيًا true، فيطبع المستشار الأوامر المقصودة في السجل دون إرسالها؛ وعلى المستخدم تبديله إلى false للتداول الحي. يوفر InpKillSwitch زر ذعر يدوي يُوقف الإدخالات الجديدة بصرامة من التيكت التالي.

دالة لياقة OnTester هي (صافي الربح × معامل الربح) / (1 + نسبة السحب/100)، مع بوابة 30 صفقة كحد أدنى ومعامل ربح موجب. هذا يجعل المُحسِّن يكافئ العائد الخام المخفف بالسحب بدلاً من مطاردة الربح وحده، ولهذا السبب تتغلب مجموعة معاملات بمنحنى رأس مال سلس وربح متواضع على مجموعة ذات معامل ربح عالٍ ومتقلب في التحسين.

عمليًا، توقّع أن يأخذ EX18050 حفنة من الصفقات أسبوعيًا على XAUUSD M5 خلال الجلسات النشطة، ومعظمها يُحمل بواسطة وقف الخسارة المتابع بدلاً من هدف 1:2 الثابت. تُظهر منحنيات الباك تيست على الذهب عادةً فترات مسطحة طويلة تتخللها صفقات رابحة بنسبة 2:1 إلى 4:1 حين يمتد الترند. يعني افتراضي InpDryRun=true أن المستشار آمن لإسقاطه على الشارت فورًا للتحقق البصري — ولا يبدّل المستخدم مفتاح الحي إلا بعد التأكد من منطق الإشارة والنظام ضد بيانات وسيطه.

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

مع كل إغلاق لشمعة M5، تبني EvaluateSignal() سلسلة إغلاق ملساء بنمط هايكين آشي، وتُشغّل Tillson T3 محسوب داخليًا من ست مراحل (طول 14، معامل حجم 0.7) فوقها، وتُرجع +1 أو -1 فقط حين يتجاوز كل من ميل T3 والإغلاق الخام قيمة T3 السابقة بما لا يقل عن 5 نقاط. ثم تصنّف ComputeRegime() السوق إلى واحدة من سبع حالات من ADX(14) ومئين ATR على 50 شمعة ونسبة عرض بولينجر(20، 2.0)، ولا تسمح بالإدخالات إلا داخل StrongTrend أو WeakTrend أو Breakout أو Expand. تبوبّ CheckConfirm() كل إشارة عبر اتجاه EMA(50) على H1، وسقف سبريد 30 نقطة، وجلسة لندن/نيويورك/آسيا نشطة، وحظر تطرف RSI(14). يُحدد محرك المخاطرة حجم كل دخول عند 0.5% من رأس المال الفعلي مقابل وقف 2.0×ATR(14) وهدف 4.0×ATR(14)، ثم تُشغّل ManageExits() بالتوازي: تعادل عند 1R + إزاحة 10pt، وجزئي 50% عند 1R، ووقف متابع 2.5×ATR(14)، وإغلاق بإشارة معاكسة، وإغلاق عند انتقال النظام إلى Choppy، ووقف زمني عند 500 شمعة. تُفعَّل تهدئة 4 ساعات بعد 3 خسائر متتالية، وتُوقف حدود الخسارة اليومية 3% والأسبوعية 6% المعتمدة على الرصيف الإدخالات، ويطبع العلامة الافتراضية InpDryRun=true الأوامر المقصودة دون إرسالها.

إشارة الدخول

تُطلق إشارات الشراء على شمعة M5 مغلقة حين يكون ميل Tillson T3 المحسوب داخليًا صاعدًا بما لا يقل عن 5 نقاط و يكون إغلاق الشمعة فوق قيمة T3 للشمعة السابقة؛ والبيع يعكس هذا الزوج. يجب أن تجتاز الإشارة أيضًا لوحة تأكيد بثلاث بوابات — توافق EMA(50) على H1، وسبريد <= 30 نقطة، وجلسة لندن/نيويورك/آسيا نشطة — وأن تكون داخل نظام STRONG_TREND أو WEAK_TREND أو BREAKOUT أو EXPAND. يحظر RSI(14) فوق 80 إشارات الشراء، ودون 20 يحظر إشارات البيع.

إشارة الخروج

تعمل المخارج بالتوازي: إشارة T3 معاكسة تُغلق المركز بالكامل، وانتقال النظام إلى CHOPZY يُصفّيه بصرف النظر عن الربح، ووقف زمني عند 500 شمعة يمسك الصفقات التي لم تُحسم. يُطلق إغلاق جزئي 50% عند 1R، ويؤمّن وقف التعادل عند 1R + 10 نقاط خروجًا خاليًا من الخدش، ويتولى وقف خسارة متابع 2.5×ATR(14) بعد 1R لحمل الباقي.

وقف الخسارة

وقف الخسارة مُبرمج عند 2.0× من ATR(14) للإشارة بالنقاط — لـ XAUUSD على M5 يقع عادة بين 200 و600 نقطة بحسب التذبذب. يُقيَّد الوقف بمستوى stops-level للوسيط + حد أدنى 5 نقاط في AdjustStops()، ثم يُمرَّر عبر منطق التعادل والوقف المتابع في ManageExits() بمجرد أن تحقق الصفقة ربحًا.

جني الأرباح

جني الأرباح هو 4.0× من ATR(14) للإشارة بالنقاط، مما يفرض نسبة مخاطرة إلى عائد 1:2 في مواجهة وقف 2.0×ATR. إذا انخفضت النسبة المحسوبة دون حد InpMinRR الأدنى البالغ 1.5، يُوسَّع الهدف حتى يتجاوزه. عمليًا، يخرج معظم الرابحين عبر الوقف المتابع بدلاً من الهدف الثابت.

الأنسب لـ

الأفضل نشره على XAUUSD M5 خلال نوافذ جلسة لندن أو نيويورك (يحتاج مصنف النظام ADX فوق 15 وسبريد نشط بسقف 30 نقطة، وكلاهما يوفره الذهب باستمرار في تلك الساعات). الحد الأدنى الموصى به للرصيد: 100$ نظرًا لأرضية رأس المال 50$ وتحديد حجم 0.5% لكل صفقة. استخدم وسيط ECN أو سبريد منخفض — سقف السبريد 30 نقطة ووقف 2.0×ATR(14) لا يرحمان على وسيط سبريده عالٍ. ملف المخاطر: متوسط، مع بوابة خسارة يومية 3% / أسبوعية 6% وتهدئة 4 ساعات بعد 3 خسائر متتالية.

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

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

العائلة: TrendFollow الماجيك: 22218050 الإصدار: 2.00

الوصف: Closed-bar price candle + inlined Tillson T3 (zero-lag, GD-form from EMA(price,N) chain e1..e6) slope confirmation. 12 mandatory layers wired into OnTick: REGIME, SIGNAL (HA+T3), ENTRY, CONFIRM, NO-TRADE, CAPITAL-ALLOCATION-CAP, RISK, SIZING, MANAGE/EXIT (BE + ATR trail + partial TP + regime-change + opposite-signal + session-close), SCALING (pyramid off, capped), EXEC, OnTester. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

المؤشرات:

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

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

  • PointSize()
  • TickSize()
  • TickValue()
  • StopsLevelPts()
  • FreezeLevelPts()
  • NormPrice()
  • PtToPrice()
  • EffectiveCapital()
  • RealizedPnLTodayForMagic()
  • DebugLog()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX18050 TrendFollow — Execution Flow (from source analysis)
// Family: TrendFollow
// Closed-bar price candle + inlined Tillson T3 (zero-lag, GD-form from EMA(price,N) chain e1..e6) slope confirmation. 12 mandatory layers wired into OnTick: REGIME, SIGNAL (HA+T3), ENTRY, CONFIRM, NO-TRADE, CAPITAL-ALLOCATION-CAP, RISK, SIZING, MANAGE/EXIT (BE + ATR trail + partial TP + regime-change + opposite-signal + session-close), SCALING (pyramid off, capped), EXEC, OnTester. 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
الأطر الزمنية المُحسّنة:
M5

كيفية تثبيت الإكسبرت على 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

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

المعاملالافتراضيالوصف
InpTradeComment"Psgrowth.com Expert_18050"Trade comment (string)
InpMagicNumber22218050Magic number (int)
InpAllowLongTradestrueAllow long entries (bool)
InpAllowShortTradestrueAllow short entries (bool)
InpDryRuntrueDry-run: skip actual order sends (bool)
InpKillSwitchfalseKill switch: stop trading immediately (bool)
InpRiskPercent0.5Risk per trade (% of effective capital) (%)
InpMinRR1.5Minimum reward:risk ratio (ratio)
InpDailyLossLimitPct3.0Max daily loss (% of effective capital) (%)
InpWeeklyLossLimitPct6.0Max weekly loss (% of effective capital) (%)
InpMaxConcurrent1Max concurrent positions (count)
InpMaxSymbolTrades1Max concurrent trades on this symbol (count)
InpCooldownLosses3Losses before cooldown (count)
InpCapAmount0.0Cap on real-money equity ($)
InpCapFloor50.0Floor below which new entries are blocked ($)
InpSignalTF0Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Signal timeframe (tf)
InpHTF8Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) // Higher timeframe for trend confirm (tf)
InpADXMin22.0Minimum ADX for trend regime (value)
InpSpreadMaxPts30Max allowed spread (points)
InpATRStopMult2.0ATR multiplier for SL (ratio)
InpATRTargetMult4.0ATR multiplier for TP (ratio)
InpATRTrailMult2.5ATR multiplier for trailing stop (ratio)
InpUseBreakEventrueUse break-even move (bool)
InpBEActivateR1.0Activate BE after R multiples (R)
InpBEOffsetPts10Lock-in offset at BE (points)
InpUsePartialTPtrueClose partial position at TP1 (bool)
InpPartialTPR1.0R multiple for partial TP (R)
InpExitOppSignaltrueExit on opposite signal (bool)
InpExitRegimeChangetrueExit on regime change (bool)
InpPyramidEnablefalseEnable pyramiding (off by default) (bool)
InpTradeLondontrueTrade London session 08-16 (bool)
InpTradeNYtrueTrade NY session 13-21 (bool)
InpTradeAsiafalseTrade Asian session 00-08 (bool)
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX18050.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX18050 HHHH2 -- T3 Tillson slope trend-follow, full 12-layer stack."
#include <Trade\Trade.mqh>
#include <Trade\PositionInfo.mqh>
#include <Trade\SymbolInfo.mqh>
#include <Trade\AccountInfo.mqh>
#include <Trade\OrderInfo.mqh>
#include <Trade\DealInfo.mqh>

//================== TUNABLE CONSTANTS (#define, not inputs) ==================
#define _T3_PERIOD              14       // T3 Tillson period
#define _T3_HOT                 0.7      // T3 hot coefficient (volume factor)
#define _HTF_EMA_PERIOD         50       // Higher-timeframe EMA period
#define _ATR_REG_PERIOD         50       // ATR percentile lookback
#define _BB_PERIOD              20       // Bollinger period (regime width)
#define _BB_DEV                 2.0      // Bollinger deviation
#define _ADX_REG_PERIOD         14       // ADX period (regime)
#define _RSI_PERIOD             14       // RSI period (confirm)
#define _BASE_SAR_PERIODS       25       // bars of session aware lookback
#define _PYRAMID_MAX_LEVELS     3        // hard cap for scaling
#define _PYRAMID_ATR_SPACING    1.5      // ATR multiplier between levels
#define _MAX_DAILY_TRADES_HARD  50       // hard cap on trades/day
#define _PARTIAL_TP_FRACTION    0.5      // close 50% at TP1
#define _NEWS_BLOCK_MINUTES     30       // manual news blackout window (each side)
#define _REQUOTE_RETRY_DELAY_MS 500

//================== INPUTS (12..22 grouped) ==================
ENUM_TIMEFRAMES MapTimeframeInt(int tf)
{
   switch(tf)
   {
      case 1: return PERIOD_M1;
      case 2: return PERIOD_M5;
      case 3: return PERIOD_M15;
      case 4: return PERIOD_M30;
      case 5: return PERIOD_H1;
      case 6: return PERIOD_H4;
      case 7: return PERIOD_D1;
      default: return PERIOD_H1;
   }
}

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_TIMEFRAMES g_InpSignalTF = PERIOD_H1;

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

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

الوسوم:ex18050trendfollowpipsgrowthfreemt5xauusd

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

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

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

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

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

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

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

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