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()
// 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)ملف التحسين
كيفية تثبيت الإكسبرت على MT5
- 1حمّل ملف .mq5 بالضغط على زر التحميل أعلاه
- 2افتح برنامج MetaTrader 5 على حاسوبك
- 3من القائمة العلوية اختر File → Open Data Folder
- 4انتقل إلى مجلد MQL5 → Experts والصق الملف هناك
- 5في MT5، انقر بالزر الأيمن على Expert Advisors في لوحة Navigator → Refresh
- 6اسحب الإكسبرت على رسم H4 أو اليومي للحصول على أفضل النتائج
- 7حدد فترات EMA وعتبة ADX وحجم اللوت في نافذة الإعدادات
- 8فعّل Allow Algo Trading واضغط OK
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| MagicNumber | 22216066 | Magic number |
| InpTradeComment | "Psgrowth.com Expert_16066" | Trade comment |
| RiskPercent | 2.0 | Risk per trade (% of account) |
| MaxDailyRisk | 6.0 | Maximum daily risk (%) |
| DailyProfitTarget | 3.0 | Daily profit target (%) |
| MaxDailyLoss | -5.0 | Maximum daily loss (%) |
| StopLossPips | 20 | Fixed stop loss in pips |
| RiskRewardRatio | 2.0 | Risk:Reward ratio |
| EMA_Fast | 20 | Fast EMA period |
| EMA_Slow | 50 | Slow EMA period |
| RSI_Period | 14 | RSI period |
| RSI_Oversold | 30.0 | RSI oversold level |
| RSI_Overbought | 70.0 | RSI overbought level |
| MACD_Fast | 12 | MACD fast EMA |
| MACD_Slow | 26 | MACD slow EMA |
| MACD_Signal | 9 | MACD signal line |
| MinATR | 0.0010 | Minimum ATR for trading |
| ATR_Period | 14 | ATR period |
#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)
{الكود المصدري الكامل متاح عند التحميل
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.
تحذير صريح: لأغراض تعليمية فقط
تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.
وسطاء موصى بهم لهذا الإكسبرت
هذه الروبوتات تعمل على MT5 — استخدم وسيطاً موثوقاً بتنفيذ سريع وسبريد منخفض
إكسبرتات مشابهة
عرض جميع الإكسبرتاتإكسبرتات أخرى بنفس استراتيجية متابعة الاتجاه
Pipsgrowth EX16080 Trend — إكسبرت أدفايزر متابعة اتجاه
Pipsgrowth EX16080 Trend — EURUSD triple-EMA trend follower — trades EMA20/50 cross with EMA200 filter on H4, ATR-based SL/TP, risk-percent sizing . إكسبرت أدفايزر MT5 مفتوح المصدر.
Pipsgrowth EX16081 Trend — إكسبرت أدفايزر متابعة اتجاه
Pipsgrowth EX16081 Trend — Gold trend EA catching major XAUUSD trends using EMA 50/ 200 crossover on H4 with daily structure swing high/low and Fib. إكسبرت أدفايزر MT5 مفتوح المصدر.
Pipsgrowth EX16033 Trend — إكسبرت أدفايزر متابعة اتجاه
Pipsgrowth EX16033 Trend — Price-action scalping EA using distance-based grid entries with net-take-profit targeting and optional lot multiplier. 1. إكسبرت أدفايزر MT5 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.