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

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

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

Pipsgrowth EX14025 Scalper — Scalps 8 major pairs on M15 with staggered entries using RSI reversal signals. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM. إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

مستشار Pipsgrowth EX14025 MultiCurrencyScalper هو ماسح انعكاس M15 متعدد الأزواج مبني حول إشارة واحدة محددة: مؤشر RSI لمدة 14 فترة يعبر من منطقة التشبع البيعي أو الشرائي. في حين أن معظم عائلة EX14 يركّز على رمز واحد وشمعة زمنية واحدة، يمشي EX14025 عبر مصفوفة من ثمانية رموز عند كل إغلاق لشمعة M15 من EURUSD، ويطبق نفس فحص انعكاس RSI عند 30/70 على كل زوج، ويفتح مراكز على الرموز المؤهلة، خاضعًا لفلتر سبريد 20 نقطة وسقف عالمي لأربعة مراكز متزامنة تحت الرقم السحري 22214025.

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

إدارة المراكز تتم بالكامل من جانب الوسيط. عند تفعيل trade.Buy()، يمرر المستشار وقف خسارة 20 نقطة وجني أرباح 15 نقطة إلى الوسيط كجزء من طلب الأمر. من تلك اللحظة فصاعدًا، لا يفعل المستشار شيئًا بالمركز المفتوح. لا توجد معالجات OnTradeTransaction() ولا دالة ManageTrailingStop() ولا تحريك لنقطة التعادل ولا إغلاق جزئي ولا خروج بناءً على الوقت. تُغلق المراكز فقط عندما يصل الوسيط إلى وقف الخسارة أو جني الأرباح المضبوط مسبقًا، أو عندما يتدخل المتداول يدويًا. تم تعريف ثلاث دوال مساعدة TryClose_EX14025 وTryClosePartial_EX14025 وTryModify_EX14025 في أسفل الملف مع حلقات إعادة محاولة ثلاثية المحاولات لأخطاء REQUOTE وTIMEOUT وPRICE_OFF وPRICE_CHANGED، لكنها لم تُستدعَ أبدًا من OnTick() — يستخدم مسار التنفيذ المباشر trade.Buy() وtrade.Sell() مع إرفاق وقف الخسارة وجني الأرباح من جانب الوسيط، لذلك فإن scaffolding إعادة المحاولة هو كود ميت منقول من قالب عائلة EX14.

ملف نسبة المخاطرة/العائد ضيق بشكل غير معتاد. مع 20 نقطة مخاطرة و15 نقطة مستهدفة، تكون نسبة TP-to-SL هي 0.75:1، ما يعني أن الاستراتيجية تحتاج إلى معدل فوز يقارب 57% لتجاوز تأثير السبريد والعمولات، وأكثر من 60% بمجرد احتساب تكاليف المبادلة. لاستراتيجية أحادية الرمز، سيكون هذا عائقًا ذا مغزى، لكن التصميم متعدد الرموز ينشر نفس الميزة عبر ثمانية أزواج رئيسية غير مترابطة، ما يخفف التباين — رغم أنه لا يغير التوقعات لكل صفقة. فلتر سبريد 20 نقطة (نحو نقطتين على تغذية FX بخمس خانات) مُعاير لحسابات ECN أو RAW؛ على الحساب القياسي بالتجزئة، سيتجاوز السبريد الثابت 3-4 نقاط هذا الحد ويعطل معظم الدخول بصمت.

مساحة إدارة المخاطر ضئيلة. لا يحسب المستشار حجم اللوت من رصيد الحساب، ولا يفرض سقف سحب إجمالي، ولا يتابع الربح/الخسارة اليومية، ولا يصفي حسب الجلسة أو حدث إخباري. مفاتيح الحماية الوحيدة هي حد المراكز الأربعة، وفلتر سبريد 20 نقطة، وحد المركز الواحد لكل رمز، ووقف الخسارة/جني الأرباح القياسي من جانب الوسيط. يروّج كتلة الترويسة لبنية من 12 طبقة تغطي regime وsignal وentry وconfirm وno-trade وcapital cap وrisk وsizing وmanage وexit وscaling ودالة OnTester، لكن الكود الفعلي ينفذ فقط الإشارة والدخول وفلتر السبريد وحد المراكز. لا يوجد مصنف regime ولا فلتر أخبار ولا OnTester ولا trailing ولا break-even ولا إغلاق جزئي ولا scale-in ولا حد خسارة على مستوى الحساب. تظهر نفس الفجوة في جميع أنحاء عائلة EX14 وهي تستحق الإشارة لأي متداول يقيّم المستشار بناءً على وصفه التسويقي فقط.

كون الأزواج الثماني محدد بشكل ثابت: EURUSD وGBPUSD وUSDJPY وAUDUSD وUSDCAD وUSDCHF وNZDUSD وEURGBP. تنفذ معالمة OnInit() سطرًا واحدًا ذا معنى — trade.SetExpertMagicNumber(22214025) وtrade.SetDeviationInPoints(20) — وتعيد INIT_SUCCEEDED. معالمة OnDeinit() فارغة، لأن مقابض المؤشرات تُنشأ وتُحرَّر داخل حلقة كل تييك بدلاً من عند بدء تشغيل المستشار. لا توجد دالة OnTester()، لذلك لن ينتج مختبر الاستراتيجية معايير تحسين مخصصة؛ يكتفي المستشار ببث تاريخ تداولاته الخام.

في الاختبار التاريخي، سيظهر المستشار أكثر نشاطًا خلال ساعات تداخل جلستي لندن ونيويورك، عندما تتحرك جميع الأزواج الرئيسية بقوة وتحدث الانعكاسات حول مستويات RSI 30/70 بشكل متكرر. أما الجلسة الآسيوية فستنتج إشارات أقل لأن الأزواج تنجرف بدلاً من أن تنعكس. يعني حارس شمعة M15 قرارًا واحدًا بالضبط لكل شمعة M15 مغلقة من symbols[0] (EURUSD)، لكن الحلقة تمشي على جميع الأزواج الثمانية في ذلك القرار الواحد، لذلك يمكن لزوجين أو ثلاثة الدخول على نفس الشمعة. يتطلب النشر العملي وسيط ECN أو RAW-spread، والحد الأدنى للإيداع 100 دولار لدعم حجم 0.01 الثابت لما يصل إلى أربعة مراكز متزامنة، وإيقاف يدوي حول NFP وFOMC وبيانات البنوك المركزية، لأن المستشار لا يحتوي على فلتر تذبذب أو أخبار مدمج وستُخرق عتبة سبريد 20 نقطة على الأرجح في الثواني التالية للإصدارات عالية التأثير.

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

في كل إغلاق لشمعة M15 من EURUSD (الرمز الأول في مصفوفة الأزواج الثمانية المحددة)، يبدأ المستشار حلقة لكل رمز تسحب شمعتين من مؤشر RSI(14) لكل زوج وتطبق فحص تقاطع مستوى 30/70 للانعكاس. قبل إطلاق أي إشارة، ترفض الحلقة أيضًا أي رمز يتجاوز سبريده الحالي عتبة 20 نقطة، وتتخطى أي رمز لديه مركز مفتوح بالفعل تحت الرقم السحري 22214025، مما يضمن مركز دخول واحد على الأكثر لكل زوج. عند تفعيل إشارة شراء، تُستدعى trade.Buy() مع وقف خسارة محسوب كـ ask - 20 نقطة وجني أرباح كـ ask + 15 نقطة؛ وللبيع، تستخدم trade.Sell() وقف خسارة bid + 20 نقطة وجني أرباح bid - 15 نقطة. يتم فحص حد المراكز في بداية الحلقة وبعد كل دخول ناجح، لذلك لن يتجاوز المستشار أبدًا 4 مراكز متزامنة عبر الرموز الثمانية. تُنشأ وتُحرَّر مقابض المؤشرات داخل حلقة كل تييك بدلاً من OnInit()، مما يقلل من ضغط الذاكرة لكنه يعني أن المستشار لا يخزن قيم المؤشرات بين التيكات. يستخدم حارس الشمعة الجديدة iTime(symbols[0], PERIOD_M15, 0)، لذلك تُقيَّم جميع الرموز الثمانية مرة واحدة بالضبط لكل شمعة M15 مغلقة من EURUSD، مع قيام وقف الخسارة/جني الأرباح من جانب الوسيط بكل العمل بعد الدخول.

إشارة الدخول

الدخول للشراء عندما يكون مؤشر RSI(14) على الشمعة السابقة M15 تحت 30 وتكون الشمعة الحالية قد تجاوزت 30 أو أكثر؛ والعكس صحيح للبيع عندما يكون المؤشر على الشمعة السابقة فوق 70 وتكون الشمعة الحالية قد نزلت إلى 70 أو أقل. يتم فحص الإشارة بشكل مستقل على كل رمز من الرموز الثمانية المحددة (EURUSD وGBPUSD وUSDJPY وAUDUSD وUSDCAD وUSDCHF وNZDUSD وEURGBP) عند كل إغلاق لشمعة M15، مع مراعاة فلتر سبريد 20 نقطة وحد أقصى لمركز واحد لكل رمز. يفتح المستشار أمرًا سوقيًا مع وقف خسارة 20 نقطة وجني أرباح 15 نقطة مرفقين لدى الوسيط، ويتوقف عن إضافة مراكز جديدة بمجرد الوصول إلى الحد الأقصى البالغ 4 صفقات متزامنة.

إشارة الخروج

تخرج المراكز حصريًا عن طريق وقف الخسارة 20 نقطة أو جني الأرباح 15 نقطة المرفقين لدى الوسيط عند الدخول. لا توجد معالجات OnTradeTransaction أو trailing stop أو تحريك لنقطة التعادل أو إغلاق جزئي أو خروج بناءً على الوقت أو إغلاق عند إشارة عكسية — بمجرد إرسال الأمر، يترك المستشار الصفقة للوسيط وينتقل إلى فحص الإشارة التالية. تم تعريف ثلاث دوال مساعدة (TryClose وTryClosePartial وTryModify) مع حلقات معالجة أخطاء مناسبة، لكنها لم تُستدعَ أبدًا من مسار التنفيذ المباشر.

وقف الخسارة

يتم إرفاق وقف خسارة ثابت 20 نقطة من جانب الوسيط على كل أمر عند الدخول، ويُحسب كـ InpStopLoss * SYMBOL_POINT * 10 لكل رمز. لا يوجد trailing stop أو تحريك لنقطة التعادل أو حد خسارة على مستوى الحساب أو حد خسارة يومي أو سقف سحب إجمالي؛ يُضبط وقف الخسارة مرة واحدة عند الدخول ولا يُعدَّل أبدًا.

جني الأرباح

يتم إرفاق جني أرباح ثابت 15 نقطة من جانب الوسيط على كل أمر، ويُحسب كـ InpTakeProfit * SYMBOL_POINT * 10. ينتج عن ذلك نسبة مخاطرة/عائد 0.75:1 (15 نقطة جني أرباح / 20 نقطة وقف خسارة)، ما يعني أن الاستراتيجية تحتاج إلى معدل فوز يقارب 57% لتحقيق التعادل قبل تأثير السبريد والعمولات.

الأنسب لـ

الاستراتيجية الأنسب لحساب ECN/RAW بحد أدنى للإيداع 100 دولار، مع تفعيل جميع أزواج العملات الرئيسية الثمانية وسبريد أقل من نقطتين، لأن فلتر 20 نقطة سيعطّل الإشارات بصمت على أي زوج سبريده أوسع. تعمل الاستراتيجية بأكبر قدر من النشاط خلال تداخل جلستي لندن ونيويورك (نحو 13:00–17:00 UTC) عندما تنعكس جميع الأزواج الرئيسية بقوة حول مستويات RSI 30/70؛ أما جلسات آسيا فتنتج إشارات قليلة وجلسة لندن فقط مختلطة. مستوى المخاطرة مرتفع حسب خاصية المستشار لأن نسبة المخاطرة/العائد 0.75:1 تتطلب معدل فوز مستدام 57% أو أكثر، ولا يوجد سقف سحب إجمالي، وقد تتضاعف المراكز الأربعة المتزامنة بسرعة. يُطلَب إيقاف يدوي حول إعلانات NFP وFOMC وبيانات البنوك المركزية، لأن المستشار لا يحتوي على فلتر أخبار أو تذبذب مدمج وستُخرق عتبة سبريد 20 نقطة في الثواني التالية للإصدارات عالية التأثير.

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

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

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

الوصف: Scalps 8 major pairs on M15 with staggered entries using RSI reversal signals. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

المؤشرات:

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

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

  • CountAllTrades()
  • HasTradeOnSymbol()
  • TryClose_EX14025()
  • TryClosePartial_EX14025()
  • TryModify_EX14025()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX14025 Scalper — Execution Flow (from source analysis)
// Family: Scalper
// Scalps 8 major pairs on M15 with staggered entries using RSI reversal signals. 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
الرموز المُحسّنة:
EURUSDGBPUSDUSDJPY
الأطر الزمنية المُحسّنة:
M15

كيفية تثبيت الإكسبرت على 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
InpStopLoss20Stop Loss (pips)
InpTakeProfit15Take Profit (pips)
InpMaxSpread20Max Spread (points)
InpMaxOpenTrades4Max simultaneous trades
InpMagicNumber22214025Magic Number
InpTradeComment"Psgrowth.com Expert_14025"Trade Comment
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX14025.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX14025 MultiCurrencyScalper — scalps 8 major pairs on M15 with staggered RSI entries, full 12-layer stack."

#include <Trade\Trade.mqh>

input group "=== Money Management ==="
input double InpLotSize       = 0.01;       // Lot Size

input group "=== Strategy ==="
input int    InpStopLoss      = 20;         // Stop Loss (pips)
input int    InpTakeProfit    = 15;         // Take Profit (pips)
input int    InpMaxSpread     = 20;         // Max Spread (points)

input group "=== Trade Settings ==="
input int    InpMaxOpenTrades = 4;          // Max simultaneous trades
input int    InpMagicNumber   = 22214025;   // Magic Number
input string InpTradeComment  = "Psgrowth.com Expert_14025"; // Trade Comment
string symbols[] = {"EURUSD","GBPUSD","USDJPY","AUDUSD","USDCAD","USDCHF","NZDUSD","EURGBP"};
CTrade trade; datetime lastBar=0;
int OnInit() { trade.SetExpertMagicNumber(InpMagicNumber); trade.SetDeviationInPoints(20); return INIT_SUCCEEDED; }
void OnDeinit(const int r) {}
void OnTick() {
   datetime cb=iTime(symbols[0],PERIOD_M15,0);
   if(cb==lastBar) return; lastBar=cb;
   if(CountAllTrades()>=InpMaxOpenTrades) return;
   int n=ArraySize(symbols);
   for(int s=0;s<n;s++) {
      string sym=symbols[s];
      if(SymbolInfoInteger(sym,SYMBOL_SPREAD)>InpMaxSpread) continue;
      if(HasTradeOnSymbol(sym)) continue;
      int hRSI=iRSI(sym,PERIOD_M15,14,PRICE_CLOSE);
      double rsi[2]; CopyBuffer(hRSI,0,1,2,rsi);
      IndicatorRelease(hRSI);
      double ask=SymbolInfoDouble(sym,SYMBOL_ASK),bid=SymbolInfoDouble(sym,SYMBOL_BID);
      double sl=InpStopLoss*SymbolInfoDouble(sym,SYMBOL_POINT)*10,tp=InpTakeProfit*SymbolInfoDouble(sym,SYMBOL_POINT)*10;
      if(rsi[1]<30&&rsi[0]>=30) trade.Buy(InpLotSize,sym,ask,ask-sl,ask+tp,InpTradeComment+" "+sym);
      if(rsi[1]>70&&rsi[0]<=70) trade.Sell(InpLotSize,sym,bid,bid+sl,bid-tp,InpTradeComment+" "+sym);
      if(CountAllTrades()>=InpMaxOpenTrades) break;
   }
}
int  CountAllTrades() { int c=0; for(int i=PositionsTotal()-1;i>=0;i--) if(PositionGetTicket(i)>0&&PositionGetInteger(POSITION_MAGIC)==InpMagicNumber) c++; return c; }
bool HasTradeOnSymbol(string sym) { for(int i=PositionsTotal()-1;i>=0;i--) if(PositionGetTicket(i)>0&&PositionGetInteger(POSITION_MAGIC)==InpMagicNumber&&PositionGetString(POSITION_SYMBOL)==sym) return true; return false; }
//+------------------------------------------------------------------+
bool TryClose_EX14025(ulong ticket)
{
   for(int a=0; a<3; a++)
   {
      if(trade.PositionClose(ticket) &&
         (trade.ResultRetcode()==TRADE_RETCODE_DONE || trade.ResultRetcode()==TRADE_RETCODE_DONE_PARTIAL))
         return true;
      uint rc=trade.ResultRetcode();
      if(rc==TRADE_RETCODE_REQUOTE || rc==TRADE_RETCODE_TIMEOUT ||
         rc==TRADE_RETCODE_PRICE_OFF || rc==TRADE_RETCODE_PRICE_CHANGED)
      { Sleep(200); continue; }
      break;
   }
   return false;

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

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

الوسوم:ex14025scalperpipsgrowthfreemt5eurusdgbpusdusdjpy

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

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

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

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

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

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

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

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