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

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

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

Pipsgrowth EX16001 Trend — TRACE+ trend EA — Kalman local-linear slope z-score over percentile hurdle + AVWAP anchor agreement + Hurst hysteresis g. إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

روبوت TRACE+ Trend لا يرسل أي أمر إلا بعد تقارب مكدس إشارات بمستوى مؤسسي. في قلب مسار الدخول يوجد مرشح Kalman محلي-خطي 2x2 يتتبع مستوى السعر والميل معاً، ومرساة AVWAP تعيد التجذير عند كل حدث كسر، وبوابة Hurst R/S ب hysteresis تميّز بين الأسواق المستمرة والعرضية، ومصنّف نظام يعتمد على نسبة ATR المئوية. كل طبقة مرئية على لوحة الرسم البياني في الزاوية العلوية اليسرى: z-score للميل، وأس Hurst، وقراءة ADX، ونسبة ATR المئوية، وتسمية النظام الحالية تتحدّث عند كل شريط مغلق.

تهيئة حالة Kalman عند أول شريط، ثم تُحدَّث بضوضاء عملية مُقيَّسة بمربع ATR. يحصل المستوى على q=0.01ATR^2، والميل على q=0.001ATR^2، وضوضاء القياس r=0.05*ATR^2. يُحوَّل الميل بعد ذلك إلى z-score مقابل مخزن دحرجة 300 شريط محفوظ في rollSlope[]. تحسب دالة PercentRankOf ترتيب الميل الحالي داخل هذا المخزن، وعتبة الدخول InpEntryHurdleRank=0.80 افتراضياً تشترط أن يكون الميل الحالي في الخُمس الأعلى من تاريخه الحديث. هذا هو اختبار قوة الاتجاه: فقط الميول الشديدة الانحدار نسبياً تحصل على دخول.

يقع نطاق ارتداد الدخول على بُعد 0.6 إلى 1.2 ATR تحت مستوى Kalman للشراء، و0.6 إلى 1.2 ATR فوقه للبيع (PULL_MIN_ATR=0.60 وPULL_MAX_ATR=1.20). يجب أن يكون السعر داخل هذا النطاق على الشريط المغلق السابق — لا يطارد الاتجاه بل يرتد إلى البنية. يجب أن تتوافق AVWAP، المرساة عند آخر انعكاس لإشارة الميل أو أي شريط |slope_z|>1.5، مع الاتجاه: شراء فقط إذا كان الإغلاق فوق AVWAP، وبيع فقط تحته. عندما لا تنتج AVWAP قيمة صالحة خلال أول AVWAP_MIN_BARS=10 أشرطة بعد المرساة، تُعفى بوابة التوافق ليتمكّن الروبوت من التداول مبكراً في اتجاه جديد.

مرشح الإطار الزمني الأعلى يقرأ EMA 50 على H1 (HTF_PERIOD=PERIOD_H1 وHTF_EMA_PERIOD=50) ويشترط أن يكون إغلاق الإطار الحالي على الجانب الصحيح من H1 EMA الصاعدة أو الهابطة. يمكن تعطيل توافق HTF عبر InpHtfAgreeEnabled=false للعمل بإطار واحد فقط. تُعلِّم دالة ClassifyRegime الحالة الحالية ضمن سبع فئات. StrongTrend تتطلب ADX >= 30 و ATR-rank >= 0.7. WeakTrend هي ADX >= 20 مع ATR-rank >= 0.5. Expand تتطلب ATR-rank >= 0.85 وعرض Bollinger واسع. Compress هي ATR-rank <= 0.15. Breakout تحتاج ATR-rank >= 0.65 وعرض Bollinger > 0.7. Range تنطلق عند ADX < 10. Choppy هي الفئة الافتراضية. RegimeAllowsEntry ترجع true فقط لـ StrongTrend و WeakTrend و Breakout و Expand، فتحجب الدخول في Range و Compress و Choppy.

يُحسب أس Hurst من نافذة R/S ب 200 شريط (HURST_WINDOW=200) مع بوابة hysteresis. يجب أن يرتفع فوق InpHurstOn=0.53 لتُفعَّل البوابة، ولا ينخفض تحت HURST_OFF_THRESH=0.49 إلا لإيقافها. الفارق 0.04 بين التشغيل والإيقاف يمنع التذبذب في الأنظمة العرضية ويعكس تفضيل الروبوت البنيوي للأسواق المستمرة. عندما تكون البوابة متوقفة، تُحجب الدخولات بسبب hurst_low.

تُمول الصفقة بنسبة InpRiskPercent=0.50% من رأس المال الفعّال. حساب اللوت هو risk_money مقسوم على stop_distance_in_ticks مضروباً في tick_value_per_lot، ثم يُقصَّر إلى حد خطوة اللوت والحد الأدنى والأعلى لدى الوسيط عبر ClampVolume. يُضبط وقف الخسارة الأولي عند الحد الأعلى بين أدنى 14 شريط ومستوى Kalman ناقص 1.2 ATR، مع سقف إضافي بأن الوقف لا يتجاوز الإغلاق بأكثر من 0.5 ATR. الحد الأدنى لنسبة R/R هو InpMinRR=1.50، والمكافأة المتوقعة هي TP_FINAL_R_MULT=3.0 ATR من منتصف النطاق، لذا فإن هندسة الوقف تشير إلى TP بثلاثة R في الطرف الأعلى لنافذة R/R النموذجية.

تجمع إدارة المراكز بين خمس آليات خروج. break-even بطلقة واحدة ينطلق عند InpBE_R_Mult=1.0 R وينقل الوقف إلى الدخول زائد R واحد. إغلاق جزئي 50% (PARTIAL_PCT=0.50) ينطلق عند TP1_R_MULT=1.0 R. وقف متابع Chandelier عند InpChandelierK=3.0 ATR يشدّ الوقف خلف أعلى نقطة. سلم قفل 30/50/70 MFE-ATR ينقل الوقف تدريجياً إلى الدخول زائد 30% و50% و70% من الانحراف الإيجابي عند LOCK_30_ATR=1.0 وLOCK_50_ATR=1.8 وLOCK_70_ATR=2.6. خروج الوقت الثابت ينطلق عند InpMaxBarsInTrade=200 شريط. تُضاف فوق كل ذلك مخارج الإشارة العكسية وانعكاس النظام.

الحالة الافتراضية للروبوت هي وضع المحاكاة الجافة. InpDryRun=true يُسجّل كل صفقة مقصودة بكامل المعايير ويخرج دون إرسال أوامر. اضبط InpDryRun=false لتفعيل التداول الحقيقي. تُشَغَّل قائمة طويلة من بوابات عدم التداول قبل منطق الدخول. InpKillSwitch=true يغلق فوراً أي مركز مفتوح. أرضية InpCapitalCapFloor=50 تحجب الدخول عند انخفاض رأس المال الفعّال عن تلك القيمة. تُفحص حدود الخسارة اليومية والأسبوعية المحققة مقابل InpDailyLossLimitPct=3.0 و InpWeeklyLossLimitPct=6.0 من رأس المال الفعّال، وكلاهما يُحسب بتصفّح سجل الصفقات المُصفّى برقم سحري. يُفرض سقف الفروق InpMaxSpreadPoints=50 عبر SpreadPoints(). يطلق تهدئة الخسائر المتتالية بعد InpCooldownAfterLoss=2 خسائر وتحجب الدخولات لمدة COOLDOWN_BARS=5 أشرطة. يمنع حارس التكرار لكل شريط دخولات متعددة على الشريط المغلق نفسه.

معيار OnTester المخصص يزن الربح الإجمالي ومعامل الربح مقابل الانسحاب من الرصيد: criterion = (net_profit * profit_factor) / (1 + balance_dd_percent). يُشترط 30 صفقة كحد أدنى لإنتاج نتيجة غير صفرية، مما يمنع المحسّن من التعلّق بعيّنات صغيرة محظوظة. MAX_DRAWDOWN_PCT=20.0 المشفّر داخلياً هو وقف أمان صلب.

تُنشأ خمس مقابض مؤشرات أصلية في OnInit وتُحرَّر في OnDeinit: iATR(14) و iADX(14) و iBands(20, 0, 2.0, PRICE_CLOSE) و iMA(50, MODE_EMA, PRICE_CLOSE) على الإطار الحالي و iMA(50, MODE_EMA, PRICE_CLOSE) على H1. محاولات الإعادة TryClose_EX16001 و TryClosePartial_EX16001 و TryModify_EX16001 تُجرّب كل منها 3 مرات عند رموز REQUOTE و TIMEOUT و PRICE_OFF و PRICE_CHANGED مع نوم 200 مللي ثانية للإغلاق و100 مللي ثانية للتعديل، وعلى عكس كثير من الروبوتات في هذه العائلة، هذه مدمجة فعلياً في مسار الإدارة الحي — الإغلاق الجزئي وتعديل break-even والتعديل المتابع كلها تمر عبرها.

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

يحافظ مرشح Kalman على حالة 2x2 (المستوى والميل) وتُحدَّث عند كل شريط بضوضاء عملية مُقيَّسة بمربع ATR — يُحوَّل ميل ذلك التوطين المحلي-الخطي إلى z-score مقابل مخزن دحرجة 300 شريط. تحتاج الإشارة إلى تجاوز ترتيب الميل 0.80 وبقاء z-score على الجانب الصحيح. تُوفِّر AVWAP، المرساة عند آخر انعكاس لإشارة الميل أو أي كسر |slope_z|>1.5، مرجعاً مُرجَّحاً بالحجم يجب أن يتوافق معه الدخول. يقف خلف بوابة hysteresis تقدير Hurst R/S ب 200 شريط، مفتوحاً عند 0.53 ومغلقاً عند 0.49 ليداول الروبوت الأسواق المستمرة فقط. تفرض طبقة توافق H1 EMA 50 المحاذاة مع اتجاه الإطار الزمني الأعلى. تقرأ دالة ClassifyRegime كلاً من ADX و نسبة ATR المئوية وعرض Bollinger لتصنّف الحالة ضمن سبعة أنظمة؛ ولا يُسمح بالدخول إلا في StrongTrend و WeakTrend و Breakout و Expand. تعمل ManageOpenPosition عند كل تيك وتكدّس خمس آليات خروج — break-even عند +1R و 50% جزئي عند +1R و Chandelier ب 3xATR وسلم قفل 30/50/70 MFE-ATR وخروج الوقت عند 200 شريط — بينما تجلس مخارج الإشارة العكسية وانعكاس النظام فوق كل ذلك.

إشارة الدخول

يجب أن يكون ميل Kalman المحلي-الخطي في الخُمس الأعلى من تاريخه الحديث على 300 شريط (PercentRankOf >= 0.80) وأن يكون z-score موجباً. يجب أن يكون سعر الإغلاق السابق داخل نطاق الارتداد 0.6-1.2 ATR تحت مستوى Kalman للشراء (وبالعكس للبيع). يجب أن تتوافق AVWAP، المرساة عند آخر انعكاس لإشارة الميل أو كسر |slope_z|>1.5، مع الاتجاه، وأن يتوافق H1 EMA 50 أيضاً. يجب أن يكون النظام StrongTrend أو WeakTrend أو Breakout أو Expand. يجب أن تكون بوابة Hurst مُفعَّلة، والفارق أقل من 50 نقطة، وأن تكون نسبة R/R المتوقعة 1.5 على الأقل.

إشارة الخروج

تتراكم خمس آليات خروج: break-even بطلقة واحدة عند +1R ينقل الوقف إلى سعر الدخول، وإغلاق جزئي 50% ينطلق عند +1R، ووقف متابع Chandelier ب 3xATR يشدّ خلف أعلى نقطة، وسلم قفل 30/50/70 MFE-ATR ينقل الوقف تدريجياً إلى الدخول+30%/50%/70% من الانحراف الإيجابي عند عتبات MFE-ATR 1.0/1.8/2.6، وخروج الوقت الثابت عند 200 شريط يُطلق InpMaxBarsInTrade. هدف 3R MFE هو خروج الـ TP النهائي. تُضاف فوق كل ذلك مخارج الإشارة العكسية وانعكاس النظام.

وقف الخسارة

يُضبط وقف الخسارة الأولي عند الحد الأعلى بين أدنى 14 شريط ومستوى Kalman ناقص 1.2 ATR، مع سقف يمنع تجاوز الإغلاق بأكثر من 0.5 ATR (SL_ATR_FLOOR=1.20). ثم يُشدّ الوقف نشطاً عبر break-even عند +1R وسلم قفل 30/50/70 MFE-ATR و Chandelier ب 3xATR. حد أمان صلب لانسحاب رأس المال بنسبة 20% مشفّر كـ MAX_DRAWDOWN_PCT.

جني الأرباح

لا يُضرب TP ثابت عند الدخول — تُدار مخارج TP تكيفياً. الهدف الأول إغلاق جزئي 50% عند +1R (TP1_R_MULT=1.0). هدف TP النهائي هو هدف MFE ب 3xATR (TP_FINAL_R_MULT=3.0) أو تشديد وقف Chandelier، أيهما ينطلق أولاً. يجب أن تكون نسبة R/R لا تقل عن InpMinRR=1.50 عند الدخول حتى تُؤخذ الصفقة أصلاً.

الأنسب لـ

الحد الأدنى الموصى به للرصيد: 100 دولار على XAUUSD M5 أو M15. يُفضَّل إقرانه بوسيط ECN أو فروقه منخفضة حيث إن سقف الفروق 50 نقطة لا يحجب معظم الجلسة. يناسب مكدس المخاطر (0.5% لكل صفقة وحد خسارة يومي 3% وأسبوعي 6% وسقف DD صلب 20% ومركز واحد متزامن وتهدئة 5 أشرطة بعد خسارتين) متداول اتجاه صبور لا متداول سكالبينج عالي التردد. يعني InpDryRun=true الافتراضي أن الروبوت يبدأ في وضع المحاكاة الجافة ويجب تبديله صراحة إلى التداول الحي قبل إرسال أي أمر حقيقي.

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

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

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

الوصف: TRACE+ trend EA — Kalman local-linear slope z-score over percentile hurdle + AVWAP anchor agreement + Hurst hysteresis gate + ATR pullback bands. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

المؤشرات:

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

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

  • TickSize()
  • TickValuePerLot()
  • VolMin()
  • VolMax()
  • VolStep()
  • StopsLevel()
  • SpreadPoints()
  • NormalizePrice()
  • ClampVolume()
  • PushFIFO()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX16001 Trend — Execution Flow (from source analysis)
// Family: Trend
// TRACE+ trend EA — Kalman local-linear slope z-score over percentile hurdle + AVWAP anchor agreement + Hurst hysteresis gate + ATR pullback bands. 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
الأطر الزمنية المُحسّنة:
M5M15

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

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

المعاملالافتراضيالوصف
InpMagic22216001Magic number (unique per EA)
InpTradeComment"Psgrowth.com Expert_16001"Trade comment
InpDryRuntrueDry-run mode (no real orders)
InpKillSwitchfalseKill switch (closes/all blocks)
InpRiskPercent0.50Risk % of effective capital per trade
InpDailyLossLimitPct3.00Daily realized loss limit (% of effective cap)
InpWeeklyLossLimitPct6.00Weekly realized loss limit (% of effective cap)
InpMaxConcurrent1Max concurrent trades (this magic)
InpCooldownAfterLoss2Cooldown bars after N consecutive losses
InpMaxSpreadPoints50.0Max allowed spread (points)
InpCapitalCapAmount0.0Capital cap (real money $)
InpCapitalCapFloor50.00Floor below which entries are blocked
InpEntryHurdleRank0.80Kalman slope %rank hurdle (0..1)
InpHurstOn0.53Hurst ON threshold (hysteresis)
InpAdxThreshold20.0ADX min for trend regime
InpHtfAgreeEnabledtrueRequire HTF-EMA agreement
InpMinRR1.50Min required R/R for entry
InpChandelierK3.0ATR trailing multiple (Chandelier)
InpBE_R_Mult1.0Break-even at +R multiple
InpMaxBarsInTrade200Max bars in trade (time exit)
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX16001.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX16001 TRACE+ Trend — Kalman slope + AVWAP + Hurst + ATR pullback, 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 (not inputs) ====================
#define ATR_PERIOD          14        // ATR period for slope/z computation
#define ATR_SMOOTH_PCT_N    200       // ATR-percentile window
#define BB_PERIOD           20        // Bollinger width period
#define BB_DEVIATION        2.0       // Bollinger deviation (std)
#define HTF_PERIOD          PERIOD_H1 // Higher timeframe for trend agreement
#define HTF_EMA_PERIOD      50        // HTF EMA agreement period
#define KALMAN_Q_LEVEL_F    0.01      // Kalman process noise level factor (×ATR²)
#define KALMAN_Q_SLOPE_F    0.001     // Kalman process noise slope factor (×ATR²)
#define KALMAN_R_OBS_F      0.05      // Kalman obs noise factor (×ATR²)
#define HURST_OFF_THRESH    0.49      // Hurst hysteresis off (down-cross)
#define HURST_WINDOW        200       // Hurst R/S window
#define PULL_MIN_ATR        0.60      // Min pullback distance (×ATR)
#define PULL_MAX_ATR        1.20      // Max pullback distance (×ATR)
#define SWING_LOOKBACK      14        // Swing lookback for initial SL
#define SL_ATR_FLOOR        1.20      // Initial SL ATR floor
#define HEADROOM_R_MIN      1.50      // Min projected R for entry
#define ROLLING_WINDOW      300       // Slope rolling window (percentile)
#define SLOPE_Z_FLOOR       0.0       // Min slope z for long bias / max for short
#define TP1_R_MULT          1.0       // First target R multiple (partial 50%)
#define TP_FINAL_R_MULT     3.0       // Final target R multiple
#define LOCK_30_ATR         1.0       // MFE ATR for 30% lock
#define LOCK_50_ATR         1.8       // MFE ATR for 50% lock
#define LOCK_70_ATR         2.6       // MFE ATR for 70% lock
#define MAX_DRAWDOWN_PCT    20.0      // Equity DD% safety hard stop
#define AVWAP_ANCHOR_THRESH 0.50      // BOCPD-break threshold (cp_prob)
#define AVWAP_MIN_BARS      10        // Min bars after anchor for AVWAP use
#define NEWS_WINDOW_MIN     0         // Manual news window minutes (0=off)
#define MAX_SYMBOL_EXPOSURE 1         // Max simultaneous positions on this symbol
#define PARTIAL_PCT         0.50      // Partial close fraction at TP1
#define COOLDOWN_BARS       5         // Bars cooldown after a losing close

//==================== INPUTS (21 total, grouped) ========================
input group "=== Identity ==="
input int      InpMagic              = 22216001;   // Magic number (unique per EA)
input string   InpTradeComment       = "Psgrowth.com Expert_16001"; // Trade comment
input bool     InpDryRun             = true;      // Dry-run mode (no real orders)
input bool     InpKillSwitch         = false;     // Kill switch (closes/all blocks)

input group "=== Risk & Sizing ==="
input double   InpRiskPercent        = 0.50;      // Risk % of effective capital per trade
input double   InpDailyLossLimitPct  = 3.00;      // Daily realized loss limit (% of effective cap)
input double   InpWeeklyLossLimitPct = 6.00;      // Weekly realized loss limit (% of effective cap)
input int      InpMaxConcurrent      = 1;         // Max concurrent trades (this magic)
input int      InpCooldownAfterLoss  = 2;         // Cooldown bars after N consecutive losses
input double   InpMaxSpreadPoints    = 50.0;      // Max allowed spread (points)

input group "=== Capital Allocation Cap ==="

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

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

الوسوم:ex16001trendpipsgrowthfreemt5xauusd

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

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

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

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

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

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

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

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