P
PipsGrowth
سكالبينجمفتوح المصدر - مجاني

Pipsgrowth EX10013 Momentum-Scalper — إكسبرت أدفايزر إكسبرت أدفايزر

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

Pipsgrowth EX10013 Momentum-Scalper — Gold scalping EA using Stochastic Momentum Fast Oscillator crossovers with momentum confirmation. Buys on stochastic cro. إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

EX10013 يتبنى فكرة واحدة وينفذها بإتقان: عندما يتقاطع ستوكاستيك السريع على الإطار الزمني M15 خارج منطقة ذروة الشراء أو ذروة البيع، يفتح المست Expert صفقة واحدة ويُبقيها مفتوحة حتى يُحقَّق الهدف أو تظهر إشارة انعكاس. وقت التنفيذ هو M5 — يقرأ المست Expert إشارته من شموع M15، ثم يدير الصفقات على كل شمعة M5. هذا التقسيم بين الإطارين هو البصمة المعمارية: إطار مؤشرات أبطأ لوضوح الإشارة، إطار شموع أسرع لضبط المخاطرة. لا يوجد تقاطع متوسطات، ولا تأكيد RSI، ولا فلتر نظام ADX، ولا بوابة اتجاه على إطار أعلى. المنطق ضيّق عمدًا بحيث يكون كل عنصر قابلاً للتدقيق في الكود المصدري.

تكوُّن الإشارة مباشر. عند كل شمعة M15 جديدة، ينسخ المست Expert آخر قيمتين لـ K وقيمتين لـ D من ستوكاستيك (K=5، D=3، Slowing=3، MODE_SMA، STO_LOWHIGH). يُطلق الشراء عندما تكون K السابقة عند D السابقة أو أقل منها، وتكون K الحالية قد تجاوزت D إلى الأعلى، مع بقاء K الحالية تحت 30 (مستوى ذروة البيع 20 زائد هامش 10 نقاط يسمح بالتقاطع مع بدء تعافي الزخم بدلًا من قاع عميق). البيع هو المرآة: K السابقة عند D أو أعلى، وK الحالية تحت D، مع بقاء K فوق 70 (ذروة الشراء 80 ناقص هامش 10). كلتا الإشارتين تستخدمان الشمعتين السابقتين — يعتمد المست Expert على نافذة شمعتين لتجنُّب التصرف بناءً على شمعة لم تكتمل. يُرجع OnTick فورًا ما لم يؤكد IsNewBar() إغلاق M15 جديد، وهو ما يُفعِّل قاعدة "لا إعادة رسم".

طبقة إدارة الصفقات بنفس الكفاءة. تُشغَّل ManageOpenPositions عند كل تيك وتبحث عن توقيع زخم معاكس: تُغلق الصفقة الطويلة عندما تتجاوز K الحالية 80 وتبدأ في الانعكاس لأسفل (K فوق D وتتقاطع للأسفل)؛ وتُغلق الصفقة القصيرة عندما تنخفض K تحت 20 وتبدأ في الارتفاع. هذا خروج بإشارة عكسية سريعة. لا توجد خطوة تعادل، ولا إغلاق جزئي، ولا مهلة زمنية، ولا تريلنج. الصفقة إما أن تملأ جني الأرباح، أو تضرب وقف الخسارة، أو تخرج عند أول إشارة عكسية مؤهلة — أيهما يأتي أولًا. تُفرض قاعدة الصفقة الواحدة عبر CountPositions() >= 1: إذا كانت هناك صفقة مفتوحة بالفعل على هذا الرقم السحري، لن يُطلَق أي دخول جديد.

وقف الخسارة هجين. يحسب المست Expert slDist = max(ATR(14) × 1.5، 15 بيب × حجم البيب، الحد الأدنى للوسيط × 1.5). على الذهب، ATR(14) على M15 يتراوح عادة بين 80 و150 نقطة، لذا يفرض سقف ATR سيطرته بمجرد بدء الجلسة. الحد الأدنى 15 بيب هو حماية للساعات الآسيوية الهادئة عندما ينكمش ATR. جني الأرباح ثابت عند 1.5 × slDist، مما يعطي مضاعف ربح 1:1.5 — إعداد أقل من 1R يفترض أن نسبة الارتداد العالية لتعاكسات الزخم تعوّضه. حجم الصفقة قائم على نسبة المخاطرة افتراضيًا (2% من رصيد الحساب لكل صفقة، مع خيار احتياطي ثابت 0.01 لوت)، ومُقيَّد بـ InpMaxLot = 5.0 لوت كحد أقصى.

طبقة الأمان تعكس بقية العائلة. تُشغَّل IsSafeToTrade_EX10013 وتُنفِّذ ثمانية بوابات قبل بدء نسخ المؤشر. غطاء تخصيص رأس المال (InpCapAmount، الصفر يُعطِّل) يمنع المست Expert من التعامل بأكثر من الحد المعُول كحقوق قابلة للتداول، مع عتبة $50 (InpCapFloor) تحجب الدخول عند انخفاض الحساب. حد أدنى 95% من الرصيد الابتدائي يوقف المست Expert إذا خسر الحساب أكثر من 5% من نقطة البداية، بصرف النظر عن الأرباح الأخيرة. حد خسارة يومية 3% وحد خسارة أسبوعية 6% (ضعف اليومية) يُقرأان مباشرة من تدفق الصفقات عبر OnTradeTransaction، الذي يمشي نافذة تاريخ 90 يومًا لصفقات DEAL_ENTRY_OUT المطابقة لهذا الرقم السحري. ثلاث خسائر متتالية على نفس الرقم السحري تبدأ مهلة 30 دقيقة. يُقيَّد عدد الصفقات بـ 50 يوميًا.

فلتر الجلسة مضبوط بتوقيت GMT لا بتوقيت الخادم. يمشي DetectGMTOffset_EX10013 على شموع H1 باحثًا عن فجوة عطلة نهاية أسبوع +3 ساعات، ثم يستنتج فرق UTC لدى الوسيط من طابع الشمعة الزمني (مع إمكانية ضبط InpServerGMTOffset يدويًا). تسأل InActiveSession: هل الوقت الحالي بتوقيت GMT داخل لندن (07:00–16:00)، أو نيويورك (12:00–21:00)، أو (مع InpAvoidAsia مفعّل) لا شيء غير ذلك؟ الساعات الآسيوية (00:00–07:00 GMT) محظورة افتراضيًا لأن السبريد والتذبذب العشوائي على الذهب غير ملائمين. الجمعة بعد 22:00 بتوقيت الخادم ويوم السبت بالكامل محظوران عبر IsMarketOpen. فلتر الأخبار الاختياري (InpNewsFilter) يُغلق نافذة 15 دقيقة حول افتتاح جلستي لندن ونيويورك.

منطق إعادة المحاولة متحفِّظ. تعيد TryClose_EX10013 وTryModify_EX10013 المحاولة حتى 3 مرات على أكواد الخطأ العابرة المعتادة (REQUOTE، TIMEOUT، PRICE_OFF، PRICE_CHANGED) مع فترات انتظار 200 مللي ثانية و100 مللي ثانية على التوالي. تعيد OpenPosition المحاولة 3 مرات مع نوم 500 مللي ثانية وتُوسِّع الانزلاق تدريجيًا من Slippage=3 الأساسي بمقدار 5 نقاط لكل محاولة قبل الاستسلام. تختار GetAllowedFilling() تلقائيًا سياسة التعبئة من علم SYMBOL_FILLING_MODE لدى الوسيط، مع تفضيل FOK ثم IOC ثم RETURN — مما يجعل المست Expert يعمل على حسابات netting وhedging وexchange بدون تعديلات. يُقيِّم OnTester نتائج الاختبار الخلفي بـ (صافي الربح × عامل الربح) / (1 + أقصى تراجع%) بحد أدنى 30 صفقة، مما يُفضِّل منحنيات التراجع الضيق على الربح الصافي الخام.

EX10013 هو الخيار الخفيف في عائلة EX10. بينما تكدّس EX10007 فوق EMA وRSI وADX وBollinger Bands وتأكيد M15 HTF في إعداد اتجاه من ستة شروط، وتُوجِّه EX10008 خمس مسارات إشارات منفصلة حسب نظام السوق، يحتفظ EX10013 بمؤشر واحد وشكل دخول واحد. المقايضة هي الدقة مقابل الشمول: عندما يتحرك الذهب في نمط ارتداد نظيف داخل لندن أو نيويورك، يُطلَق تقاطع ستوكاستيك قريبًا من القمة/القاع ويأخذ هدف 1.5R شريحة ذات معنى. عندما يتحرك الذهب في اتجاه قوي، يُطلَق نفس التقاطع مرارًا ضد الحركة ويأخذ SL الخسارة. المست Expert لا يحتوي على كشف نظام لتمييز هاتين الحالتين، لذا ستظهر نتائج الاختبار الخلفي كعامل ربح حساس لطبيعة فترة الاختبار — قد يبدو 2023 الهادئ مختلفًا تمامًا عن 2024 المحفوف بالأخبار.

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

يستند EX10013 إلى مقبضي مؤشرين على M15 — ستوكاستيك (K=5، D=3، Slowing=3، MODE_SMA، STO_LOWHIGH) و ATR(14) — ويُوجِّه معالج OnTick كل شيء آخر حولهما. تنسخ RefreshIndicators آخر قيمتين لـ K وD وقيمة ATR الحالية عند كل شمعة M15 جديدة؛ تُعيد GetStochSignal قيمة +1 لتقاطع K فوق D تحت 30، و-1 لتقاطع K تحت D فوق 70، و0 خلاف ذلك. بوابة IsNewBar هي ما يمنح المست Expert ضمان "لا إعادة رسم" — يرفض التصرف حتى تتوفر شمعة M15 مغلقة. تعمل إدارة الصفقات على تيك M5: تمشي ManageOpenPositions على PositionsTotal بحثًا عن خروج الإشارة العكسية، وتحجم OpenPosition الصفقة عبر CalculatePositionSize بـ slDist القائم على ATR بالبيب. تختار GetAllowedFilling تلقائيًا FOK > IOC > RETURN من علم SYMBOL_FILLING_MODE لدى الوسيط. تُشغِّل طبقة الأمان — IsSafeToTrade_EX10013 — ثماني بوابات قبل تقييم الإشارة: تم بلوغ الحد، عتبة حقوق 95%، خسارة يومية 3%، خسارة أسبوعية 6%، مهلة الخسائر المتتالية، حد 50 صفقة يوميًا، السوق مفتوح، وفلتر الجلسة. يمشي OnTradeTransaction على تاريخ الصفقات 90 يومًا لتحديث g_realizedToday وg_consecLosses وg_tradesToday من سجلات DEAL_ENTRY_OUT الفعلية، لا من محاسبة داخلية. يُقيِّم OnTester نتائج الاختبار الخلفي بـ (الصافي × PF) / (1 + DD%) بحد أدنى 30 صفقة.

إشارة الدخول

يقرأ EX10013 مؤشر ستوكاستيك (K=5، D=3، Slowing=3، MODE_SMA، STO_LOWHIGH) على الإطار M15، ثم يدخل في تيك M5 التالي بعد إغلاق شمعة M15 جديدة. يُطلَق الشراء عندما تكون K للشمعة السابقة عند D أو أقل، وK الحالية قد تجاوزت D للأعلى، مع بقاء K تحت 30 (ذروة البيع 20 زائد هامش 10 نقاط). البيع هو المرآة بتقاطع K تحت D من فوق 70 (ذروة الشراء 80 ناقص 10). صفقة واحدة فقط لكل رقم سحري في نفس الوقت.

إشارة الخروج

تمسح ManageOpenPositions كل تيك بحثًا عن إشارة عكسية: تُغلق الصفقة الطويلة عندما تتجاوز K مستوى 80 وتنعكس تحت D، وتُغلق القصيرة عندما تنخفض K تحت 20 وتعود فوق D. كما تخرج الصفقة عند ملء جني الأرباح أو وقف الخسارة، أيهما أولًا. لا يوجد خروج زمني، ولا إغلاق جزئي، ولا تعادل، ولا تريلنج في هذا المست Expert — الإشارة العكسية هي المخارج التقديري الوحيد.

وقف الخسارة

وقف الخسارة هجين: slDist = max(ATR(14) × 1.5، 15 بيب، الحد الأدنى للوسيط × 1.5)، كلها محوّلة إلى وحدات سعرية. يهيمن سقف ATR أثناء الجلسات النشطة (عادة 80–150 نقطة على M15 للذهب)، ويحمي حد 15 بيب من فترات التقلب المضغوط مثل الافتتاح الآسيوي، ويمنع الحد الأدنى للوسيط الوقف غير الصالح. يُحدَّد SL عند فتح الصفقة ولا يُعدَّل.

جني الأرباح

جني الأرباح ثابت عند 1.5 × slDist لمخاطرة إلى عائد 1:1.5 على جانب الهدف (إعداد أقل من 1R يعتمد على نسبة الارتداد العالية لتعاكسات الزخم للتعويض). يُحدَّد TP على الأمر ولا يُعدَّل ولا يُغلق جزئيًا.

الأنسب لـ

XAUUSD على تنفيذ M5 مع وسيط يبقى سبريده أقل بكثير من 25 بيب في جلستي لندن ونيويورك، لأن حافة الارتداد لستوكاستيك تعتمد على الدخول قريبًا من القمة/القاع. الحد الأدنى للرصيد: $100، لكن $500+ يمنح قاعدة مخاطرة 2% لكل صفقة مجالًا لحجم صفقات ذات معنى دون تأثيرات العتبة الدنيا. شغِّل على حساب ECN أو RAW، إصدار MT5 3800+، مع تثبيت توقيت الخادم على GMT (الكشف التلقائي مفعّل افتراضيًا؛ اضبط InpServerGMTOffset يدويًا إذا كانت فجوة عطلة الوسيط غامضة). تجنَّب المست Expert على الجلسة الآسيوية (00:00–07:00 GMT) — InpAvoidAsia مفعّل افتراضيًا لهذا السبب. اضبط مستويات OB/OS لستوكاستيك أو عطِّل InpAvoidAsia فقط إذا كانت لديك فرضية محددة حول تداول نطاق آسيوي.

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

Pipsgrowth EX10013 Momentum-Scalper — تحليل منطق الاستراتيجية (من كود .mq5)

العائلة: Momentum-Scalper الماجيك: 22210013 الإصدار: 2.00

الوصف: Gold scalping EA using Stochastic Momentum Fast Oscillator crossovers with momentum confirmation. Buys on stochastic cross up from oversold, sells on cross down from overbought. Includes spread filter, ATR-based SL/TP, and money management. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

المؤشرات:

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

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

  • SafePositionModify()
  • OnTradeTransaction()
  • RefreshIndicators()
  • GetStochSignal()
  • OpenPosition()
  • ManageOpenPositions()
  • CalculatePositionSize()
  • IsNewBar()
  • GetPipSize()
  • CheckFilters()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX10013 Momentum-Scalper — Execution Flow (from source analysis)
// Family: Momentum-Scalper
// Gold scalping EA using Stochastic Momentum Fast Oscillator crossovers with momentum confirmation. Buys on stochastic cross up from oversold, sells on cross down from overbought. Includes spread filter, ATR-based SL/TP, and money management. 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اسحب الإكسبرت من Navigator وأفلته على أي رسم بياني (يُنصح بـ M1 أو M5)
  7. 7في نافذة الإعدادات، فعّل Allow Algo Trading وحدد حجم اللوت
  8. 8اضغط OK — سيبدأ الإكسبرت بالتداول تلقائياً

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

المعاملالافتراضيالوصف
InpMagicNumber22210013Magic Number
InpTradeComment"Psgrowth.com Expert_10013"Trade Comment
InpDailyLossLimitPct3.0Daily loss limit (% of effective capital)
InpMaxLot5.0Hard lot cap per trade
InpServerGMTOffset0Server GMT offset hours (0=auto-detect)
InpLondonStartHour7London session start (GMT)
InpLondonEndHour16London session end (GMT)
InpNYStartHour12New York session start (GMT)
InpNYEndHour21New York session end (GMT)
InpAvoidAsiatrueAvoid Asian session
InpAsiaStartHour0Asian session start (GMT)
InpAsiaEndHour7Asian session end (GMT)
InpNewsFilterfalseAvoid trading near news session opens
InpNewsFilterMinutes15Minutes to avoid around news
InpMaxTradesPerDay50Maximum trades per day
InpMinEquityPercent95.0Stop trading if equity < this % of initial balance
InpCooldownMinutes30Cooldown minutes after consec losses
InpMaxConsecLosses3Max consecutive losses before cooldown
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX10013.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX10013 GoldScalper StochMomentum — Stochastic momentum fast oscillator scalper, full 12-layer stack."
#include <Trade\Trade.mqh>

input group "=== Risk Management ==="
input bool   UseMoneyManagement = true;
input double RiskPercent        = 2.0;
input double FixedLotSize       = 0.01;

input group "=== Stochastic Settings ==="
input int    Stoch_K            = 5;
input int    Stoch_D            = 3;
input int    Stoch_Slowing      = 3;
input int    OverboughtLevel    = 80;
input int    OversoldLevel      = 20;

input group "=== Trade Settings ==="
input int    StopLossPips       = 15;
input int    Slippage           = 3;
input int    InpMagicNumber     = 22210013;                     // Magic Number
input string InpTradeComment    = "Psgrowth.com Expert_10013";  // Trade Comment

input group "=== Filters ==="
input bool   UseSpreadFilter    = true;
input double MaxSpreadPips      = 25.0;

input group "=== Hardening: Risk Management ==="
input double InpDailyLossLimitPct = 3.0;   // Daily loss limit (% of effective capital)
input double InpMaxLot           = 5.0;   // Hard lot cap per trade

input group "=== Capital Allocation Cap ==="
// InpCapEnabled removed — use InpCapAmount=0 to disable
input double InpCapAmount         = 0.0;
input double InpCapFloor          = 50.0;

input group "=== Hardening: GMT Sessions ==="
input int    InpServerGMTOffset    = 0;      // Server GMT offset hours (0=auto-detect)
input int    InpLondonStartHour    = 7;      // London session start (GMT)
input int    InpLondonEndHour      = 16;     // London session end (GMT)
input int    InpNYStartHour        = 12;     // New York session start (GMT)
input int    InpNYEndHour          = 21;     // New York session end (GMT)
input bool   InpAvoidAsia          = true;   // Avoid Asian session
input int    InpAsiaStartHour      = 0;      // Asian session start (GMT)
input int    InpAsiaEndHour        = 7;      // Asian session end (GMT)
input bool   InpNewsFilter         = false;  // Avoid trading near news session opens
input int    InpNewsFilterMinutes  = 15;     // Minutes to avoid around news
input int    InpMaxTradesPerDay    = 50;     // Maximum trades per day
input double InpMinEquityPercent   = 95.0;   // Stop trading if equity < this % of initial balance
input int    InpCooldownMinutes    = 30;     // Cooldown minutes after consec losses
input int    InpMaxConsecLosses    = 3;      // Max consecutive losses before cooldown

CTrade trade;
int handleStoch, handleATR;
datetime lastBarTime = 0;
double stochK, stochD, prevK, prevD, currentATR;

//--- Hardening globals

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

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

الوسوم:ex10013momentum-scalperpipsgrowthfreemt5xauusd

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

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

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

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

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

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

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

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