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

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

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

Pipsgrowth EX16060 Trend — Machine Learning pattern recognition EA for XAUUSD on M5 timeframe, using simulated multi-feature voting to generate buy. إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

يحمل EX16060 في ترويسته اسم «التعرف على أنماط التعلم الآلي»، لكن الكود الفعلي يحكي قصة مختلفة تماماً. كل محرك القرار يقع داخل دالة CheckSignal() وهو تصويت بسيط بأربعة مؤشرات ثابتة: مؤشر القوة النسبية RSI(14)، ومؤشر قناة السلع CCI(14)، ومؤشر تقاطع المتوسطات MACD(12,26,9)، ومؤشر الاستوكاستيك Stochastic(5,3,3, MODE_SMA, STO_LOWHIGH). كل مؤشر يتفقد قيمته على الشمعة المغلقة للتو ويصوّت إما للشراء أو للبيع. لا توجد حلقة تعلم ولا بيانات تدريب ولا تحسين للأوزان — الأصوات مجرد فروع if/else جامدة. عدد الأصوات المتوافقة المطلوبة لإطلاق الأمر فعلياً هو InpVoteThreshold، والقيمة الافتراضية 3 من 4، أي أن المؤشر الواحد المخالف مقبول أما اثنان فيكفيان لإخراج المستشار من الصفقة.

آلية الأصوات الأربعة في الكود كالآتي. يصوّت RSI للشراء عندما يتجاوز مخزنه الرئيسي 50، وإلا فالبيع. يصوّت CCI للشراء فوق خط الصفر، وللبيع تحته. مخزن MACD الرئيسي الموجب يعني تصويت شراء، والسالب يعني تصويت بيع. الاستوكاستيك يصوّت للشراء فوق 50 وللبيع تحته. المقارنة بـ >= على buyVotes وsellVotes تعني فحص الجانبين بشكل مستقل في نفس التيك — من الناحية النظرية يمكن للمستشار أن يستدعي OpenBuy() ثم OpenSell() فوراً على الشمعة نفسها، لكن الحارس if(PositionsTotal() > 0) return; في بداية OnTick() يضمن أن واحداً فقط يصل إلى مرحلة المركز. بوابة «مركز موجود» هي السبب في أن هذا المستشار لا يكدّس المراكز ولا يضاعفها ولا يحتفظ بصفقتين على نفس الرمز في نفس الوقت.

عندما يمرّ إشارة شراء، تحسب OpenBuy() وقف الخسارة عند mysymbol.Ask() - InpStopLoss * mysymbol.Point() وجني الأرباح عند mysymbol.Ask() + InpTakeProfit * mysymbol.Point()، ثم ترسل أمر سوق عبر غلاف CTrade القياسي مع ORDER_FILLING_FOK. تعكس أوامر البيع نفس البنية على سعر mysymbol.Bid(). يستخدم كلا الجانبين InpFixedLot (0.01) لحجم الأمر — مع ملاحظة أنه على الرغم من إعلان InpRiskPercent = 1.0 في المدخلات، الكود لا يقرأه أبداً، لذا حجم المركز ثابت بالدفعة فقط وقيمة «1% مخاطرة لكل صفقة» في هذه النسخة تجميلية بحتة. إذا دعت الحاجة لدفعة مختلفة، يغيّر المستخدم قيمة المدخل ويستفيد منها الإدخال التالي. لا توجد استراتيجية مارتينجال ولا شبكة ولا استرداد ولا دالة تعادل ولا trailing stop. المستشار يضع الأمر بوقف وهدف ثابتين، ثم ينتظر أن يُغلق المركز بإحدى النتيجتين — أو يدوياً من المستخدم.

التحكم بالسبريد هو البوابة الوحيدة لمنع التداول خارج بوابة المركز. يحدّث OnTick() الرمز أولاً عبر mysymbol.RefreshRates()، ثم يخرج إذا تجاوز mysymbol.Spread() > InpMaxSpread. قيمة InpMaxSpread = 250 نقطة تعادل 25 نقطة على رمز بأربع خانات، أو 250 سنتاً على XAUUSD المُسعّر بخانة واحدة. هذا السقف متسع لوسطاء الذهب ويحمي الاستراتيجية من عواصف إعادة التسعير وانفجارات السبريد بعد الأخبار على الإطار M5. لا يوجد فلتر لوقت محدد من اليوم ولا فلتر ليوم في الأسبوع ولا فلتر أخبار — المستشار سيفتح صفقة في أي ساعة يكون فيها السبريد ضيقاً بما يكفي.

مساعدات إعادة المحاولة (TryClose_EX16060 وTryClosePartial_EX16060 وTryModify_EX16060) موجودة في الكود لكنها خاملة حالياً من منظور OnTick(). CheckSignal() تطلق فقط عمليات الدخول؛ لا تستدعي أياً من مساعدات الإغلاق أو التعديل، ولا توجد منطق trailing أو تعادل لاستدعائها. هي متاحة للاستخدام المستقبلي أو ليربطها المستخدم يدوياً في الكود. نمط إعادة المحاولة نفسه تقليدي: ثلاث محاولات، نوم Sleep() بمقدار 100-200 مللي ثانية على رموز requote وtimeout وprice-off وprice-changed، وكسر مبكر على أي فشل آخر.

من حيث الاختبار الخلفي، ما يتقنه هذا المستشار هو تداول قاعدة شفافة ونظيفة على كل شمعة M5 حيث لا تكون المتذبذبات الأربعة في حالة تضارب قصوى. عتبة 3 من 4 تعني أن نحو 12.5% من الشموع (حالة الإجماع المعاكس) ستُتجاهل، بينما الـ 87.5% المتبقية ستنتج أحد الصوتين. نسبة المخاطرة للعائد 1:2 (وقف 400 نقطة، هدف 800 نقطة) تعني أن الاستراتيجية تحتاج نسبة فوز فوق ~34% لتكون موجبة في التوقع، وهو عتبة منخفضة لنظام تصويت بأربعة مؤشرات في الذهب ذو الاتجاه. ما لا يتقنه هو تحمّل الحركة العرضية — كل شمعة 5 دقائق يكون فيها RSI وCCI وMACD والاستوكاستيك جميعهم على نفس الجانب من عتبة التصويتهم ستنتج إشارة دخول جديدة، وفي ظروف التذبذب الأفقي ستقطع الأنماط المتناوبة 3 أصوات / صوت واحد / 2/2 الحساب.

النشر الموصى به واضح: حساب بحد أدنى 100 دولار، XAUUSD على M5، وسيط ذهب منخفض السبريد (سقف 25 نقطة متسع بما يكفي ليقبل الوسطاء من الفئة المتوسطة، لكن السبريدات الأضيق تعني شموع أقل مفلترة وصفقات أكثر)، واختبار مسبق على حساب تجريبي لدورة كاملة من جلسات السيولة المرتفعة قبل الانتقال للحقيقي. تعليق الصفقة «Psgrowth.com Expert_16060» يجعل من السهل تصفية أوامر المستشار في سجل الحساب. السحر 22216060 يقوم بنفس الوظيفة للمستشارين الذين يعتمدون على الرقم السحري. اضبط حجم اللوت ليتناسب مع ميزانية المخاطرة عند وقف 40 نقطة على الذهب، واترك عتبة التصويت على 3 ما لم يتوفر دليل محدد على أن عتبة أعلى تحسن منحنى الأسهم على بيانات وسيطك.

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

يبني OnInit أربع مقابض مؤشرات — RSI(14) وCCI(14) وMACD(12,26,9) والاستوكاستيك(5,3,3) — ويُهيئ غلاف CTrade مع تعبئة FOK والسحر 22216060. يحدّث OnTick الرمز، ويحجب الدخول الجديد عندما يكون المركز مفتوحاً، ويحجب عند تجاوز السبريد 250 نقطة، ثم يستدعي CheckSignal(). تسحب CheckSignal قيمة الشمعة المغلقة للتو من كل مؤشر عبر CopyBuffer(..., 1, 1, ...)، وتزيد buyVotes أو sellVotes بحسب ما إذا كانت القيمة فوق أو تحت عتبة كل مؤشر، وتطلق OpenBuy() أو OpenSell() لحظة وصول أحد الجانبين إلى InpVoteThreshold. منطق التصويت أغلبية غير مرجحة على خط 50/صفر — كل مؤشر يساهم بصوت واحد بالضبط. حجم الأمر دائماً InpFixedLot، ومدخل InpRiskPercent معلن لكن لا يُقرأ أبداً.

إشارة الدخول

الدخول الطويل عندما يصوّت InpVoteThreshold على الأقل من أصل 4 مؤشرات لصالح الشراء: RSI(14) فوق 50، وCCI(14) فوق الصفر، ومخزن MACD(12,26,9) الرئيسي موجب، والاستوكاستيك(5,3,3) فوق 50. تعكس أوامر البيع نفس العتبة على الجانب السالب. مركز واحد فقط في كل مرة — حارس PositionsTotal() > 0 في بداية OnTick يمنع أي دخول ثانٍ، ويفحص كل جانب عتبة التصويت بشكل مستقل على الشمعة ذاتها.

إشارة الخروج

لا توجد منطق خروج نشط في EX16060 خارج وقف الخسارة وجني الأرباح لكل صفقة. كل من OpenBuy() وOpenSell() يرفقان وقف 400 نقطة وهدف 800 نقطة وقت الأمر؛ أيهما يُضرب أولاً يُنهي المركز. الدوال المساعدة TryClose_EX16060 وTryClosePartial_EX16060 وTryModify_EX16060 موجودة في الكود لكنها لا تُستدعى من مسار الدخول، لذا لا يوجد trailing ولا تعادل ولا إغلاق بوقت محدد ولا خروج عكسي عند إشارة معاكسة.

وقف الخسارة

وقف خسارة ثابت لكل صفقة عند 400 نقطة (InpStopLoss)، يُوضع وقت الأمر بناء على سعر Ask للدخول (شراء) أو Bid للدخول (بيع). لا يوجد trailing stop ولا ترس تعادل ولا سقف سحب على مستوى السلة ولا وقف مقياس بالتذبذب. البوابة الوقائية الوحيدة خارج وقف الخسارة هي فلتر السبريد عند 250 نقطة (InpMaxSpread) الذي يحجب الدخول الجديد عند انفجارات السبريد.

جني الأرباح

جني أرباح ثابت لكل صفقة عند 800 نقطة (InpTakeProfit)، يُوضع وقت الأمر بنسبة مخاطرة/عائد 1:2 مقارنة بوقف 400 نقطة. لا يوجد خروج جزئي ولا إغلاق متدرج ولا جني أرباح على مستوى السلة ولا تقليص للهدف بمرور الوقت. يُضبط الهدف مرة واحدة عند الدخول ولا يتغير إلا إذا ربط المستخدم TryModify_EX16060 يدوياً.

الأنسب لـ

متداولو XAUUSD على M5 الباحثون عن نظام دخول شفاف بتصويت أغلبية بأربعة متذبذبات وبنسبة مخاطرة/عائد نظيفة 1:2 وبأقل إعداد ممكن. الحد الأدنى الموصى به للرصيد: 100 دولار — وهو الحد الأدنى النموذجي للوسطاء على الذهب بالميكرو-لوت — عند حجم الدفعة الثابت الافتراضي 0.01. سقف السبريد الأقصى 25 نقطة يعمل مع أي مصدر XAUUSD قياسي، لكن جودة التنفيذ تتحسن بشكل ملحوظ مع الوسطاء الذين يعرضون متوسط سبريد دون 5 نقاط. يُفضل نشره خلال ساعات السيولة المرتفعة (عادة من افتتاح لندن حتى إغلاق نيويورك) عندما يتجاوز نطاق الذهب اليومي باستمرار وقف 40 نقطة.

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

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

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

الوصف: Machine Learning pattern recognition EA for XAUUSD on M5 timeframe, using simulated multi-feature voting to generate buy/sell signals with configurable vote threshold, risk management and trade management. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

المؤشرات:

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

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

  • CheckSignal()
  • OpenBuy()
  • OpenSell()
  • TryClose_EX16060()
  • TryClosePartial_EX16060()
  • TryModify_EX16060()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX16060 Trend — Execution Flow (from source analysis)
// Family: Trend
// Machine Learning pattern recognition EA for XAUUSD on M5 timeframe, using simulated multi-feature voting to generate buy/sell signals with configurable vote threshold, risk management and trade 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
الأطر الزمنية المُحسّنة:
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

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

المعاملالافتراضيالوصف
InpVoteThreshold3Min Indicators concurring (Max 4)
InpRiskPercent1.0Risk Percent per Trade
InpFixedLot0.01Fixed Lot (if Risk=0)
InpStopLoss400Stop Loss (points)
InpTakeProfit800Take Profit (points)
InpMagicNumber22216060Magic Number
InpTradeComment"Psgrowth.com Expert_16060"Trade comment
InpMaxSpread250Max Spread (points)
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX16060.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX16060 MLPattern_XAUUSD_5M -- ML pattern recognition EA for XAUUSD M5 with vote-based signal generation, full 12-layer stack."
#include <Trade\Trade.mqh>
#include <Trade\PositionInfo.mqh>
#include <Trade\SymbolInfo.mqh>
#include <Trade\AccountInfo.mqh>

CTrade         trade;
CPositionInfo  position;
CSymbolInfo    mysymbol;
CAccountInfo   account;

//--- Input Groups
input group "=== ML Simulation Parameters ==="
input int      InpVoteThreshold  = 3;        // Min Indicators concurring (Max 4)

input group "=== Money Management ==="
input double   InpRiskPercent    = 1.0;      // Risk Percent per Trade
input double   InpFixedLot       = 0.01;     // Fixed Lot (if Risk=0)
input int      InpStopLoss       = 400;      // Stop Loss (points)
input int      InpTakeProfit     = 800;      // Take Profit (points)

input group "=== Trade Management ==="
input int      InpMagicNumber    = 22216060;   // Magic Number
input string           InpTradeComment = "Psgrowth.com Expert_16060";   // Trade comment
input int      InpMaxSpread      = 250;      // Max Spread (points)

//--- Handles
int    hRSI, hCCI, hMACD, hStoch;
double bufRSI[], bufCCI[], bufMACD[], bufStoch[];

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
   trade.SetExpertMagicNumber(InpMagicNumber);
   trade.SetTypeFilling(ORDER_FILLING_FOK);

   hRSI = iRSI(_Symbol, _Period, 14, PRICE_CLOSE);
   hCCI = iCCI(_Symbol, _Period, 14, PRICE_CLOSE);
   hMACD = iMACD(_Symbol, _Period, 12, 26, 9, PRICE_CLOSE);
   hStoch = iStochastic(_Symbol, _Period, 5, 3, 3, MODE_SMA, STO_LOWHIGH);
   
   return(INIT_SUCCEEDED);
  }

//+------------------------------------------------------------------+
//| Deinit                                                           |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   IndicatorRelease(hRSI);
   IndicatorRelease(hCCI);
   IndicatorRelease(hMACD);
   IndicatorRelease(hStoch);
  }

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

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

الوسوم:ex16060trendpipsgrowthfreemt5xauusd

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

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

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

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

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

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

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

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