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

Pipsgrowth EX14024 Scalper — إكسبرت أدفايزر إكسبرت أدفايزر

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

Pipsgrowth EX14024 Scalper — XAUUSD scalping EA using SMA200 trend filter and RSI confirmation. Targets 10-30 pip moves on M5/M15. 12 layers: REGIME,. إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

Pipsgrowth EX14024 GoldScalperPro خبير آلي لزوج XAUUSD يتّخذ صفقة واحدة في كل مرة، يجمع بين مرشح اتجاه طويل الأجل ومحفزات دخول قائمة على الارتداد للمتوسط ووقف خسارة متكيف مع التذبذب. بخلاف استراتيجيات التقاطع الزخمية الشائعة في هذه العائلة، ينتظر هذا الخبير تاكيد الاتجاه ثم يشتري الضعف داخل ذلك الاتجاه، متوقعاً أن يعود الذهب إلى متوسطه قصير الأجل قبل أن يستأنف الحركة الاتجاهية.

يتكون الهيكل الأساسي للخبير من ثلاثة مؤشرات تعمل معاً. المتوسط البسيط لـ 200 فترة يعمل كحارس للاتجاه طويل الأجل. مؤشر القوة النسبية RSI عند 14 فترة بعتبي 30 و70 الكلاسيكيين هو محفز الدخول. متوسط المدى الحقيقي ATR عند 14 فترة مضروباً في 1.5 يحدد وقف الخسارة لكل صفقة بشكل ديناميكي. لا توجد تنعيمات إضافية للإشارة، ولا تأكيد متعدد الأطر الزمنية، ولا طبقة تنبؤية — يقرأ الخبير هذه القيم الثلاث مرة واحدة لكل شمعة M5 مغلقة ويتصرف حين تتكدس الشروط.

في جانب الشراء، يبحث الخبير عن تضافر شرطين على الشمعة المغلقة للتو. يجب أن يكون سعر الشراء أعلى من قيمة SMA (200) من شمعتين ماضيتين، مما يثبت أن الاتجاه الأوسع صاعداً. يجب أن يكون مؤشر RSI قد انخفض للتو إلى منطقة التشبع البيعي — أي كان فوق 30 على الشمعة السابقة وأصبح دون 30 على الشمعة المغلقة للتو. الخبير يشتري لحظة التشاؤم الأقصى داخل اتجاه صاعد، بافتراض أن زخم الذهب اللحظي سيرتد للمتوسط وسيستمر الاتجاه. جانب البيع هو المرآة: يجب أن يكون سعر الشراء تحت قيمة SMA (200)، وأن يكون مؤشر RSI قد قفز للتو إلى منطقة التشبع الشرائي من دون 70 على الشمعة السابقة إلى فوق 70 على الشمعة المغلقة للتو. الخبير يبيع القوة في قمة اتجاه هابط مؤكد.

بما أن الخبير يتحقق فقط من انتقال مؤشر RSI في الشمعة السابقة، يمكن من حيث المبدأ أن يظهر كل من إشارتي الشراء والبيع في الشمعة ذاتها، لكن بوابة SMA (200) يمنع ذلك عملياً — إذا كان السعر فوق SMA (200) فلا يمكن تحقق شرط البيع، والعكس صحيح. إذن الإشارتان متنافيتان بالتصميم.

تُفتح كل صفقة بأمر سوقي بحجم لوت إما ثابت أو محسوب ديناميكياً. عندما يكون InpAutoLot مضبوطاً على false، يفتح الخبير دائماً بالحجم InpLotSize المضبوط، افتراضياً 0.01 لوت. عندما يكون InpAutoLot مضبوطاً على true، يستدعي الخبير CalculateAutoLot() ويقسم رصيد الحساب على مسافة وقف الخسارة مقاسة بالنقاط. الصيغة هي lot = (الرصيد * نسبة المخاطرة) / (نقاط وقف الخسارة * قيمة النقطة)، حيث تُشتق نقاط وقف الخسارة من المسافة المستندة إلى ATR مقسومة على حجم النقطة للرمز، مع حد أدنى 0.01 لوت وتقريب ل منزلتين عشريتين. نسبة المخاطرة الافتراضية هي 1.0% من الرصيد لكل صفقة.

وقف الخسارة ديناميكي مستند إلى ATR ويتكيف مع بيئة التذبذب الحالية. يقرأ الكود قيمة ATR من الشمعة السابقة ويضربها في InpATRMultiplier، افتراضياً 1.5. هذا يعني في جلسة هادئة للذهب بقيمة ATR قدرها مثلاً 2.50 دولار، يوضع الوقف على بُعد 3.75 دولار من الدخول. وفي جلسة عالية التذبذب بقيمة ATR قدرها 8 دولارات، يتسع الوقف إلى 12 دولاراً. يمكن للمستخدم تعديل حجم الوقف بتغيير المعامل. جني الأرباح ثابت بالنقاط الخام. الافتراضي 25 نقطة — على تسعير XAUUSD العشريّتين يساوي 0.25 دولار، وعلى العشري الثلاث 0.025 دولار. ينبغي على المستخدم التحقق من حجم النقطة لدى وسيطه قبل تفسير قيمة جني الأرباح بالدولار لأن الخبير لا يقوم بهذا التحويل بنفسه.

تدير إدارة الصفقات دالة واحدة هي ManageTrailingStop()، تُستدعى في كل شمعة ما دامت الصفقة مفتوحة. لا ينشط الوقف المتحرك إلا بعد أن تتحرك الصفقة في الربح بمقدار InpTrailStart نقطة على الأقل، افتراضياً 15. بمجرد التنشيط، يُنقل الوقف إلى InpTrailStep نقاط خلف السعر الحالي، افتراضياً 5، ولا يُنقل أبداً في الاتجاه العكسي — لا يتسع أبداً. هذا يخلق تأثير السلم التراكمي: مع تحرك الصفقة أعمق في الربح، يُرفع الوقف، مثبّتاً الأرباح تدريجياً. كل من جني الأرباح ووقف الخسارة يُرفعان على الأمر عند الدخول من قِبل الوسيط، فالوقف المتحرك هو طبقة الحماية الإضافية وليس المخارج الأساسية. لا توجد دالة تعادل، ولا إغلاق جزئي، ولا خروج قائم على الزمن. تُغلق الصفقة عند تفعيل وقف الخسارة أو جني الأرباح أو الوقف المتحرك.

يفرض الخبير حداً أقصى للصفقات المفتوحة في وقت واحد وقدره صفقة واحدة عبر InpMaxTrades. تمر دالة CountOpenTrades() على جميع الصفقات المفتوحة في الحساب، وتصفّيها بالرقم السحري 22214024 والرمز الحالي، وتعدّ فقط تلك المطابقة. تعود OnTick مبكراً إذا وصل العدد إلى الحد. هذا خبير لصفقة واحدة في كل مرة؛ لا توجد شبكة، ولا مارتينجال، ولا متوسط.

مرشح الجلسة هو البوابة الزمنية الوحيدة. عندما يكون InpUseSession مضبوطاً على true، يقرأ الخبير ساعة الخادم الحالية ويسمح بالدخول فقط بين InpSessionStart (افتراضياً 7) و InpSessionEnd (افتراضياً 20). خارج هذه النافذة، لا تُفتح صفقات جديدة، لكن تُدار الصفقات المفتوحة ويستمر الوقف المتحرك في التثبيت. هذه النافذة مضبوطة للساعات النشطة الرئيسية لزوج XAUUSD — تقريباً من جلسة لندن إلى النصف الأول من جلسة نيويورك. مرشح السبريد، بقيمة InpMaxSpread افتراضية 30 نقطة، يحظر الدخول عندما يكون السبيد الحالي متسعاً جداً، وهو أمر شائع في الجلسة الآسيوية أو حول إصدارات الأخبار المؤثرة.

تتحقق دالة OnInit من صحة الرمز، وتُحذّر المستخدم إذا لم يكن الرمز الحالي XAUUSD أو GOLD أو يحتوي على XAU، وتفشل إجبارياً إذا كان أي من مؤشرات المقابض الثلاثة يُرجع INVALID_HANDLE. تحرر دالة OnDeinit المقابض الثلاثة بأمان. سياسة تعبئة الأمر مضبوطة على FOK (نفّذ أو ألغِ)، وتسامح الانزلاق 20 نقطة. الرقم السحري هو 22214024، مُضمّن في كل أمر ويستخدمه عداد الصفقات والوقف المتحرك لتصفية صفقات الخبير فقط.

ثلاث دوال مساعدة للمحاولة — TryClose_EX14024 و TryClosePartial_EX14024 و TryModify_EX14024 — معرّفة ومكتوبة بشكل صحيح مع حلقات 3 محاولات على رموز requote و timeout و price-off و price-changed. لكن لا تُستدعى أي منها من منطق OnTick الفعلي، الذي يستخدم trade.Buy() و trade.Sell() مباشرةً. الدوال المساعدة هي كود ميت من قالب عائلة EX14، وأي فشل منفرد في الإغلاق أو التعديل في ظروف التداول الفعلي لن يُعاد.

يعمل هذا الخبير بأفضل صورة في البيئات التي يتجه فيها الذهب ويزور مؤشر RSI بانتظام مناطق التشبع البيعي في الاتجاهات الصاعدة أو التشبع الشرائي في الاتجاهات الهابطة — الشروط التي صُممت الاستراتيجية لاستغلالها. يعني الجمع بين مرشح الاتجاه لـ 200 شمعة ودخولات الارتداد للمتوسط أن الخبير سيجلس خارج التذبذب الممدد حين يكون المتوسط المسطح، ولن يتداول إلا الإشارات ذات السياق الاتجاهي. جني الأرباح الثابت ووقف الخسارة المتكيف مع ATR بسيطان بالتصميم، تاركَين للوقف المتحرك كآلية رئيسية لتحويل الصفقات الرابحة إلى رابحات أكبر حين يمتد الاتجاه beyond جني الأرباح الأولي. يجب على المستخدم إيقاف الخبير يدوياً حول إصدارات البيانات الكبرى لأن شمعة M5 واحدة قد تخترق كلاً من وقف الخسارة وجني الأرباح في ظل التذبذب العالي، ولا يملك الخبير أي مخرج قائم على الزمن أو الأخبار للحماية من مثل هذه الأحداث.

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

في كل إغلاق لشمعة M5، تتحقق OnTick من ساعة الخادم مقابل نافذة الجلسة المضبوطة (افتراضياً 7-20)، ومن السبريد المباشر مقابل حد 30 نقطة، ومن عدد الصفقات الحالي مقابل حد الصفقة الواحدة. ثم تنسخ قيم RSI (14) و SMA (200) و ATR (14) لآخر شمعتين مغلقتين. يُرسل أمر شراء عندما يكون سعر الشراء فوق SMA (200) وكان مؤشر RSI قد انخفض للتو من فوق 30 إلى دون 30 على الشمعة السابقة؛ ويُرسل أمر بيع عندما يكون السعر تحت SMA (200) وكان مؤشر RSI قد ارتفع للتو من دون 70 إلى فوق 70. تُفتح الصفقة بأمر سوقي بتعبئة FOK وتسامح انزلاق 20 نقطة، ويُحسب حجم اللوت إما ثابتاً أو بصيغة المخاطرة المستندة إلى ATR. تعمل ManageTrailingStop() كل شمعة لإعادة تثبيت وقف الخسارة بعد أن يتحرك السعر 15 نقطة في الربح، بخطوات من 5 نقاط. توجد ثلاث دوال مساعدة للمحاولة (TryClose/TryClosePartial/TryModify) معرّفة لكنها غير مستدعاة من مسارات الإغلاق أو التعديل الفعلية.

إشارة الدخول

تنفّذ صفقات الشراء عندما يكون السعر فوق المتوسط البسيط لـ 200 فترة، ومؤشر RSI (14) قد اخترق للتو مستوى التشبع البيعي 30 على الشمعة المغلقة السابقة — الخبير يشتري الانخفاض داخل اتجاه صاعد مؤكد. إشارات البيع هي المرآة: يكون السعر تحت SMA (200)، ومؤشر RSI (14) قد اخترق للتو مستوى التشبع الشرائي 70 إلى الأعلى. تُحجم المخاطرة بوقف خسارة مشتق من ATR (14) وبحد أقصى للسبريد قدره 30 نقطة، مع صفقة واحدة فقط في كل مرة.

إشارة الخروج

تُغلق الصفقات عند جني الأرباح الثابت (25 نقطة خام) المرفق مع الأمر، أو عند وقف الخسارة المستند إلى ATR، أو عند الوقف المتحرك. يبدأ الوقف المتحرك بعد 15 نقطة ربح ويُعدّل وقف الخسارة بخطوات من 5 نقاط، مثبّتاً الأرباح تدريجياً. لا يوجد خروج قائم على الزمن، ولا دالة تعادل، ولا خروج عند إشارة عكسية — ما إن تُفتح الصفقة فإنها تسير حتى وقف الخسارة أو جني الأرباح أو الوقف المتحرك.

وقف الخسارة

وقف الخسارة ديناميكي مستند إلى ATR: قيمة ATR (14) للشمعة السابقة مضروبة في 1.5 بوحدات السعر. يؤدي رفع InpATRMultiplier إلى توسيع المسافة الواقية، وخفضه إلى تضييقها. لا يوجد حد أقصى عالمي للتراجع — المخاطرة محسوبة على الصفقة فقط.

جني الأرباح

جني الأرباح ثابت عند 25 نقطة خام (InpTakeProfit * _Point)، يُرفق على جانب الوسيط لحظة الدخول. على تسعير XAUUSD العشريّتين يساوي 0.25 دولار، وعلى العشري الثلاث 0.025 دولار — ينبغي على المستخدم التحقق من حجم النقطة لدى وسيطه. يمكن للوقف المتحرك اقتناص تحركات أكبر من جني الأرباح الأولي عند امتداد الاتجاه.

الأنسب لـ

الحد الأدنى الموصى به للرصيد هو 100 دولار، مع الإعداد الافتراضي للوت 0.01 ونموذج المخاطرة 1% لكل صفقة. تتطلب الاستراتيجية وسيطاً بسبريد ضيق — حد السبريد 30 نقطة ووقف الخسارة المستند إلى ATR يحتاجان تنفيذاً محكماً لجعل جني الأرباح 25 نقطة قابلاً للتحقيق، لذا يُفضّل بشدة الحسابات من نوع ECN أو RAW على XAUUSD. يُفضّل تشغيلها على XAUUSD M5 خلال جلسة لندن حتى نيويورك (ساعات الخادم 7-20)، وعلى المستخدم إيقاف الخبير يدوياً حول إصدارات NFP وFOMC وCPI حيث يمكن لارتفاعات ATR اختراق كل من وقف الخسارة وجني الأرباح في شمعة واحدة. يعمل الوقف المتحرك بأفضل صورة في الأسواق ذات الاتجاه الواضح؛ أما في النطاقات المستمرة فقد يعيد الخبير جزءاً من الأرباح مع كل قصّ للوقف المتحرك.

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

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

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

الوصف: XAUUSD scalping EA using SMA200 trend filter and RSI confirmation. Targets 10-30 pip moves on M5/M15. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

المؤشرات:

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

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

  • CountOpenTrades()
  • CalculateAutoLot()
  • ManageTrailingStop()
  • TryClose_EX14024()
  • TryClosePartial_EX14024()
  • TryModify_EX14024()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX14024 Scalper — Execution Flow (from source analysis)
// Family: Scalper
// XAUUSD scalping EA using SMA200 trend filter and RSI confirmation. Targets 10-30 pip moves on M5/M15. 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اسحب الإكسبرت من Navigator وأفلته على أي رسم بياني (يُنصح بـ M1 أو M5)
  7. 7في نافذة الإعدادات، فعّل Allow Algo Trading وحدد حجم اللوت
  8. 8اضغط OK — سيبدأ الإكسبرت بالتداول تلقائياً

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

المعاملالافتراضيالوصف
InpLotSize0.01Lot Size
InpAutoLotfalseAuto Lot (% of balance)
InpRiskPct1.0Risk % per trade (if AutoLot)
InpRSIPeriod14RSI Period
InpRSIOverbought70RSI Overbought Level
InpRSIOversold30RSI Oversold Level
InpSMAPeriod200SMA Trend Filter Period
InpATRPeriod14ATR Period
InpATRMultiplier1.5ATR Stop Loss Multiplier
InpTakeProfit25Take Profit (points)
InpMaxSpread30Max Allowed Spread (points)
InpUseSessiontrueUse Session Filter
InpSessionStart7Session Start Hour (server)
InpSessionEnd20Session End Hour (server)
InpMagicNumber22214024Magic Number
InpTradeComment"Psgrowth.com Expert_14024"Trade Comment
InpMaxTrades1Max simultaneous trades
InpUseTrailingtrueUse Trailing Stop
InpTrailStart15Trail Start (points in profit)
InpTrailStep5Trail Step (points)
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX14024.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX14024 GoldScalperPro — XAUUSD scalper with SMA200 trend filter and RSI confirmation, full 12-layer stack."

#include <Trade\Trade.mqh>
#include <Trade\PositionInfo.mqh>

//--- Input Parameters
input group "=== Money Management ==="
input double   InpLotSize       = 0.01;   // Lot Size
input bool     InpAutoLot       = false;  // Auto Lot (% of balance)
input double   InpRiskPct       = 1.0;    // Risk % per trade (if AutoLot)

input group "=== Strategy Parameters ==="
input int      InpRSIPeriod     = 14;     // RSI Period
input int      InpRSIOverbought = 70;     // RSI Overbought Level
input int      InpRSIOversold   = 30;     // RSI Oversold Level
input int      InpSMAPeriod     = 200;    // SMA Trend Filter Period
input int      InpATRPeriod     = 14;     // ATR Period
input double   InpATRMultiplier = 1.5;    // ATR Stop Loss Multiplier
input int      InpTakeProfit    = 25;     // Take Profit (points)
input int      InpMaxSpread     = 30;     // Max Allowed Spread (points)

input group "=== Session Filter ==="
input bool     InpUseSession    = true;   // Use Session Filter
input int      InpSessionStart  = 7;      // Session Start Hour (server)
input int      InpSessionEnd    = 20;     // Session End Hour (server)

input group "=== Trade Management ==="
input int      InpMagicNumber   = 22214024; // Magic Number
input string   InpTradeComment  = "Psgrowth.com Expert_14024"; // Trade Comment
input int      InpMaxTrades     = 1;      // Max simultaneous trades
input bool     InpUseTrailing   = true;   // Use Trailing Stop
input int      InpTrailStart    = 15;     // Trail Start (points in profit)
input int      InpTrailStep     = 5;      // Trail Step (points)

//--- Global variables
CTrade         trade;
int            hRSI, hSMA, hATR;
datetime       lastBarTime = 0;

//+------------------------------------------------------------------+
int OnInit()
{
   // Validate symbol
   if(Symbol() != "XAUUSD" && StringFind(Symbol(), "GOLD") < 0 &&
      StringFind(Symbol(), "XAU") < 0)
      Print("Warning: This EA is optimised for XAUUSD");

   trade.SetExpertMagicNumber(InpMagicNumber);
   trade.SetDeviationInPoints(20);
   trade.SetTypeFilling(ORDER_FILLING_FOK);

   hRSI = iRSI(_Symbol, PERIOD_CURRENT, InpRSIPeriod, PRICE_CLOSE);
   hSMA = iMA(_Symbol, PERIOD_CURRENT, InpSMAPeriod, 0, MODE_SMA, PRICE_CLOSE);
   hATR = iATR(_Symbol, PERIOD_CURRENT, InpATRPeriod);

   if(hRSI == INVALID_HANDLE || hSMA == INVALID_HANDLE || hATR == INVALID_HANDLE)

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

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

الوسوم:ex14024scalperpipsgrowthfreemt5xauusd

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

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

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

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

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

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

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

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