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

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

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

Pipsgrowth EX16066 Trend — Professional risk manager EA (fixed version) with EMA crossover, RSI and MACD confirmation filtered by ATR. Enforces dai. إكسبرت أدفايزر MT5 مفتوح المصدر.

نظرة عامة

Pipsgrowth EX16066 هو مستشار خبير لاتباع الاتجاه مُقيَّد بميزانية يومية، ومصمم للذهب (XAUUSD) على الإطارين M5 وH1. يصف الترويسة بنية من 12 طبقة — REGIME وSIGNAL وENTRY وCONFIRM وNO-TRADE وCAPITAL CAP وRISK وSIZING وMANAGE وEXIT وSCALING وOnTester — لكن في الكود الفعلي ترى محرك دخول مركَّزاً محاطاً بقاطع دائرة صارم للأرباح والخسائر اليومية. مجموعة الإشارات هي وصفة التأكيد الثلاثي نفسها المستخدمة في عائلة EX16xxx للاتجاه: تقاطع متوسطين متحركين سريع وبطيء مع فلتر RSI وفحص خط MACD صفر، وبوابة ATR(14) تقف أمام كل ذلك. تشير كلمة "Fixed" في اسم الملف إلى الانضباط في التحقق من قيمة إرجاع OrderSend — كل دخول سوق وكل إغلاق قسري أصبح الآن يفحص result.retcode ويتعامل مع أي رمز غير ناجح عبر طباعة الخطأ وتخطِّي الصفقة بدلاً من تسجيل النجاح بصمت.

يعمل مسار الدخول فقط عند افتتاح شمعة جديدة. تحتفظ OnTick بمتغير ثابت lastBarTime؛ عندما يتقدم iTime(_Symbol, PERIOD_CURRENT, 0)، يعيد المستشار ضبط totalTradesOnBar إلى صفر ويستدعي CheckForTradingOpportunity(). داخل هذه الدالة، يوجد مخرجان مبكران يحافظان على عدد المراكز منخفضاً: إذا كان PositionsTotal() > 0 أو تمت المتاجرة على الشمعة بالفعل (totalTradesOnBar >= 1)، يعود المستشار دون تقييم الإشارات. لذا السلوك العملي هو: مركز واحد فقط في كل مرة، مع سقف صارم لدخول واحد لكل شمعة. لا يوجد فلتر جلسة أو أخبار صريح — البوابة مدفوعة بالمؤشرات فقط وبإيقاع الشمعة الجديدة.

الإشارة نفسها هي AND صارم لثلاثة شروط على الشمعة المفتتحة حديثاً. للشراء (CheckBullishSignal)، يجب أن يتقاطع المتوسط السريع فوق البطيء على الشمعة 0 (emaFast[1] <= emaSlow[1] && emaFast[0] > emaSlow[0])، وأن يكون RSI(14) داخل النطاق [30, 70] (القيمتان الافتراضيتان لـRSI_Oversold وRSI_Overbought)، وأن يكون خط MACD الرئيسي فوق الصفر. والبيع هو المرآة: تقاطع سريع تحت بطيء، ولا يزال RSI داخل النطاق، وMACD تحت الصفر. بوابة ATR(14) هي فلتر التذبذب الوحيد — تُتخطى الشموع التي يكون فيها atrValue[0] < MinATR (افتراضي 0.0010) مع طباعة في السجل حتى لا يطارد المستشار سوقاً ميتاً على الذهب. تسحب GetIndicatorValues ثلاث عينات من كل متوسط متحرك وعينتين من كل مؤشر تذبذب/زخم، وأي فشل في CopyBuffer يوقف قرار الدخول.

حجم المركز هو وصفة النسبة المئوية القياسية للرصيد. تقرأ CalculateLotSize الرصيد الفعلي، تضربه في RiskPercent (افتراضي 2.0% من الحساب) للحصول على المخاطرة الدولارية، وتقسم على StopLossPips * pipValue حيث pipValue مشتق من tickValue * (0.0001 / tickSize). يتم تقريب اللوت إلى SYMBOL_VOLUME_STEP للرمز وتقييده بين SYMBOL_VOLUME_MIN وSYMBOL_VOLUME_MAX بحيث يعمل على كل من وسطاء المايكرو لوت والحسابات القياسية. مع الوقف الافتراضي 20 نقطة على الذهب، يخاطر حساب 1000 دولار بمبلغ 20 دولاراً لكل صفقة.

يتم حساب وقف الخسارة وجني الأرباح مسبقاً في OpenBuyPosition وOpenSellPosition قبل OrderSend. الوقف على بُعد StopLossPips * point * 10 من سعر الدخول؛ وجني الأرباح هو نفس المسافة مضروبة في RiskRewardRatio (افتراضي 2.0)، مما يعطي هندسة ثابتة للمكافأة إلى المخاطرة بنسبة 1:2. يُرفق الرقم السحري 22216066 والتعليق Psgrowth.com Expert_16066 بكل طلب. المستشار لا يتبع trailing، ولا يكسر التعادل، ولا يغلق جزئياً، ولا يضيف إلى الصفقات الرابحة — الإدارة الوحيدة بعد الدخول هي قاطع الدائرة اليومي.

قاطع الدائرة هو ما يجعل هذا المستشار يتصرف بشكل مختلف عن روبوت التقاطع العادي. تكتشف UpdateDailyPnL انتقال اليوم بقسمة TimeCurrent() على 86400 وتعيد ضبط startOfDayBalance إلى الرصيد الحالي؛ من هناك يُعاد حساب الربح/الخسارة اليومية عند كل تيك كـ currentDayPnL = AccountInfoDouble(ACCOUNT_BALANCE) - startOfDayBalance. تحوِّل CheckDailyLimits ذلك إلى نسبة مئوية من رصيد بداية اليوم وتقارنه بـ MaxDailyLoss (افتراضي -5.0%) وDailyProfitTarget (افتراضي 3.0%). إذا تم تجاوز أي عتبة، يتم ضبط dailyTradingAllowed إلى false، ويُغلق كل مركز مفتوح عبر CloseAllPositions بالتعليق Daily limit reached، ويعود المستشار من OnTick لبقية يوم الخادم. جلسة جديدة، ميزانية جديدة. مدخل MaxDailyRisk (افتراضي 6.0%) مُعرَّف لكن لا يُقرأ فعلياً من الكود — مكشوف لأغراض التوثيق فقط.

يتضمن ذيل الكود ثلاث دوال مساعدة للمحاولة — TryClose_EX16066 وTryClosePartial_EX16066 وTryModify_EX16066 — مبنية على غلاف CTrade القياسي (g_trade_wrappers_EX16066) مع ما يصل إلى ثلاث محاولات وانتظار Sleep(200) أو Sleep(100) على requote/timeout/price-changed/price-off. مثل المستشارين الآخرين في العائلة، لا يتم استدعاء أي منها من مسار OnTick الفعلي؛ يستخدم وقت التشغيل OrderSend الخام لكل من الدخول وCloseAllPositions. إنها موجودة كسقالات أدوات لتمديد إدارة المراكز المستقبلي، وليست منطق إنتاج مدمج.

نظراً لأن المستشار تابع اتجاه بميزانية يومية ومركز واحد، فإن التوقعات العملية واضحة. تنتج بوابة التقاطع وMACD تكراراً متواضعاً للصفقات — إعدادات M5 النموذجية على الذهب تعطي handful من الدخول يومياً، لكن فلتر MinATR وسقف صفقة واحدة لكل شمعة يعنيان أن جلسات التذبذب المنخفض غالباً ما تنتج لا شيء. ستظهر اختبارات رجعية واقعية سلاسل طويلة من أرباح صغيرة تتخللها انتصارات عرضية بـ 2R، مع قفل الخسارة اليومي آلياً ليُنهك الأيام الخاسرة عند -5% بصرف النظر عن عدد مرات تفعيل الوقف. لا توجد صيغة OnTester، ولا اختبار مونت كارلو للقوة، ولا آلية walk-forward في الكود؛ انضباط الضبط الوحيد هو فترات المؤشر ومدخلات نسبة المخاطرة. اعتبر الإعدادات الافتراضية كنقاط بداية، وحسِّن زوج المتوسط المتحرك وعتبة MinATR لفرق السعر النموذجي للوسيط على الذهب، وتحقق من حدود P&L اليومية مقابل حجم الحساب الذي تنوي المتاجرة به فعلاً.

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

يتم إنشاء خمسة مقابض مؤشرات في OnInit (EMA سريع/بطيء، RSI(14)، MACD(12,26,9)، ATR(14)) وتُحرر في OnDeinit. عند كل تيك، تعيد UpdateDailyPnL حساب ربح/خسارة الجلسة كالفرق من رصيد افتتاح اليوم، وتمنع CheckDailyLimits المتاجرة وتُغلق قسرياً المراكز المفتوحة إذا تجاوز ربح/خسارة اليوم -5% أو +3%. ثم يقوم حارس الشمعة الجديدة المبني على lastBarTime ثابت بإعادة تسليح totalTradesOnBar إلى صفر وتشغيل CheckForTradingOpportunity، الذي يسحب بافر المؤشرات الجديدة، ويتخطى الشمعة إذا كان ATR تحت عتبة 0.0010، ويوجه إلى OpenBuyPosition أو OpenSellPosition إذا اصطف تقاطع المتوسط المتحرك ونطاق RSI وظروف خط MACD صفر كلها معاً. تحسب دوال OpenBuy وOpenSell وقف 20 نقطة وجني أرباح 1:2، وتستخرج حجم لوت 2% من الرصيد عبر CalculateLotSize، وتقدم OrderSend سوقي بالرقم السحري 22216066 وتعليق Psgrowth.com Expert_16066. مساعدات إعادة المحاولة الثلاث TryClose_EX16066 وTryClosePartial_EX16066 وTryModify_EX16066 مُنشأة في أسفل الملف لكن مسار المتاجرة الفعلي يستخدم OrderSend الخام لكل من الدخول وCloseAllPositions.

إشارة الدخول

يتم تفعيل دخول الشراء على شمعة جديدة عندما يتقاطع المتوسط المتحرك السريع (20) فوق البطيء (50)، ويكون RSI(14) داخل النطاق [30, 70]، ويكون خط MACD الرئيسي (12,26,9) فوق الصفر، مع بوابة تذبذب إضافية ATR(14) >= 0.0010. ودخول البيع هو المرآة الصارمة. يُحتفظ بمركز واحد فقط في كل مرة، مع سقف صارم لدخول واحد لكل شمعة مفروض عبر عداد totalTradesOnBar الذي يُعاد ضبطه عند كل شمعة جديدة.

إشارة الخروج

لا يوجد خروج قائم على الإشارة. مسار الخروج النشط الوحيد هو قاطع دائرة الربح/الخسارة اليومي في CheckDailyLimits: إذا وصل ربح/خسارة اليوم إلى +3% (هدف الربح اليومي) أو -5% (الحد الأقصى للخسارة اليومية)، فإن CloseAllPositions يُغلق قسرياً كل تذكرة مفتوحة بالتعليق Daily limit reached ويتوقف المستشار عن المتاجرة لبقية يوم الخادم. مساعدات trailing وbreakeven والإغلاق الجزئي TryClose_EX16066 وTryClosePartial_EX16066 وTryModify_EX16066 مُعرَّفة في الكود لكنها لا تُستدعى أبداً من وقت التشغيل الفعلي.

وقف الخسارة

وقف خسارة ثابت 20 نقطة على كل دخول، محسوب كـ StopLossPips * _Point * 10 من سعر الدخول (شراء) أو bid (بيع). لا يوجد trailing stop، ولا breakeven، ولا تجاوز لوقف الخسارة لكل صفقة. التحكم الوحيد في الانخفاضات beyond وقف الصفرة الفردية هو سقف الخسارة اليومية على مستوى الحساب عند -5% والذي يُغلق كل شيء بمجرد تجاوزه.

جني الأرباح

جني أرباح ثابت بنسبة مكافأة إلى مخاطرة 1:2 عند StopLossPips * RiskRewardRatio * _Point * 10 من الدخول (افتراضي 40 نقطة على الوقف الافتراضي 20 نقطة). يتم ضبط جني الأرباح في طلب OrderSend الأصلي ولا يُعدَّل لاحقاً — لا يوجد إغلاق جزئي ولا تخارج متدرج، ومساعد TryModify_EX16066 الفعلي لا يُستدعى أبداً.

الأنسب لـ

الأنسب لحساب XAUUSD بحد أدنى 100 دولار (M5 أو H1) على وسيط يعرض الذهب بـ 5 أرقام للنقطة وحجم تيك ضيق، حيث يريد المتداول تابع اتجاه مُقيَّد يومياً لا يمكن أن ينزف past -5% في جلسة واحدة. يجعل وقف الخسارة الثابت 20 نقطة ونسبة RR 1:2 وتقييم الحجم القائم على النسبة المئوية المخاطرة لكل صفقة مفهومة على الحسابات الصغيرة؛ يعني قاطع دائرة P&L اليومي أن أسوأ يوم واقعي مُقيد حتى لو تم تخطي وقف الخسارة أو توسيعه بفجوة سعرية. تجنب على حسابات netting حيث يكون التحوط متعدد الرموز مهماً، وعلى أزواج غير الذهب (بوابة ATR(0.0010) معايرة لتذبذب XAUUSD)، وعلى الوسطاء ذوي التنفيذ المعاد تسعيره بكثرة حيث قد يفشل مسار OrderSend المباشر بدون دمج سقالات إعادة المحاولة.

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

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

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

الوصف: Professional risk manager EA (fixed version) with EMA crossover, RSI and MACD confirmation filtered by ATR. Enforces daily profit targets, max daily loss, and risk-per-trade sizing with proper OrderSend return-value checking. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester

المؤشرات:

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

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

  • CheckDailyLimits()
  • UpdateDailyPnL()
  • CheckForTradingOpportunity()
  • GetIndicatorValues()
  • CheckBullishSignal()
  • CheckBearishSignal()
  • CalculateLotSize()
  • OpenBuyPosition()
  • OpenSellPosition()
  • CloseAllPositions()
الرمز الزائف (Pseudocode)
// Pipsgrowth EX16066 Trend — Execution Flow (from source analysis)
// Family: Trend
// Professional risk manager EA (fixed version) with EMA crossover, RSI and MACD confirmation filtered by ATR. Enforces daily profit targets, max daily loss, and risk-per-trade sizing with proper OrderSend return-value checking. 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اسحب الإكسبرت على رسم H4 أو اليومي للحصول على أفضل النتائج
  7. 7حدد فترات EMA وعتبة ADX وحجم اللوت في نافذة الإعدادات
  8. 8فعّل Allow Algo Trading واضغط OK

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

المعاملالافتراضيالوصف
MagicNumber22216066Magic number
InpTradeComment"Psgrowth.com Expert_16066"Trade comment
RiskPercent2.0Risk per trade (% of account)
MaxDailyRisk6.0Maximum daily risk (%)
DailyProfitTarget3.0Daily profit target (%)
MaxDailyLoss-5.0Maximum daily loss (%)
StopLossPips20Fixed stop loss in pips
RiskRewardRatio2.0Risk:Reward ratio
EMA_Fast20Fast EMA period
EMA_Slow50Slow EMA period
RSI_Period14RSI period
RSI_Oversold30.0RSI oversold level
RSI_Overbought70.0RSI overbought level
MACD_Fast12MACD fast EMA
MACD_Slow26MACD slow EMA
MACD_Signal9MACD signal line
MinATR0.0010Minimum ATR for trading
ATR_Period14ATR period
كود المصدر (.mq5)Open Source
Pipsgrowth_com_EX16066.mq5
#property copyright "Pipsgrowth.com"
#property link      "https://pipsgrowth.com"
#property version   "2.00"
#property strict
#property description "Pipsgrowth.com EX16066 Professional_Risk_Manager_EA_Fixed — EMA/RSI/MACD risk-managed trend EA (fixed), full 12-layer stack."
#include <Trade\Trade.mqh>

//--- Input parameters
input group "=== Identity ==="
input int      MagicNumber = 22216066;              // Magic number
input string   InpTradeComment = "Psgrowth.com Expert_16066"; // Trade comment

input group "=== Risk Management ==="
input double   RiskPercent = 2.0;           // Risk per trade (% of account)
input double   MaxDailyRisk = 6.0;          // Maximum daily risk (%)
input double   DailyProfitTarget = 3.0;     // Daily profit target (%)
input double   MaxDailyLoss = -5.0;         // Maximum daily loss (%)

input group "=== Trade Settings ==="
input int      StopLossPips = 20;           // Fixed stop loss in pips
input double   RiskRewardRatio = 2.0;       // Risk:Reward ratio

input group "=== Indicators ==="
input int      EMA_Fast = 20;               // Fast EMA period
input int      EMA_Slow = 50;               // Slow EMA period
input int      RSI_Period = 14;             // RSI period
input double   RSI_Oversold = 30.0;         // RSI oversold level
input double   RSI_Overbought = 70.0;       // RSI overbought level
input int      MACD_Fast = 12;              // MACD fast EMA
input int      MACD_Slow = 26;              // MACD slow EMA
input int      MACD_Signal = 9;             // MACD signal line
input double   MinATR = 0.0010;             // Minimum ATR for trading
input int      ATR_Period = 14;             // ATR period

//--- Global variables
double startOfDayBalance;
double currentDayPnL;
bool dailyTradingAllowed;
int totalTradesOnBar;

//--- Handles for indicators
int handleEMA_Fast, handleEMA_Slow, handleRSI, handleMACD, handleATR;

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
{
    // Initialize indicators
    handleEMA_Fast = iMA(_Symbol, PERIOD_CURRENT, EMA_Fast, 0, MODE_EMA, PRICE_CLOSE);
    handleEMA_Slow = iMA(_Symbol, PERIOD_CURRENT, EMA_Slow, 0, MODE_EMA, PRICE_CLOSE);
    handleRSI = iRSI(_Symbol, PERIOD_CURRENT, RSI_Period, PRICE_CLOSE);
    handleMACD = iMACD(_Symbol, PERIOD_CURRENT, MACD_Fast, MACD_Slow, MACD_Signal, PRICE_CLOSE);
    handleATR = iATR(_Symbol, PERIOD_CURRENT, ATR_Period);

    // Check if indicators are created successfully
    if(handleEMA_Fast == INVALID_HANDLE || handleEMA_Slow == INVALID_HANDLE ||
       handleRSI == INVALID_HANDLE || handleMACD == INVALID_HANDLE ||
       handleATR == INVALID_HANDLE)
    {

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

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

الوسوم:ex16066trendpipsgrowthfreemt5xauusd

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

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

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

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

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

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

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

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