Pipsgrowth EX08005 MACD — إكسبرت أدفايزر إكسبرت أدفايزر
إكسبرت أدفايزر MT5 مفتوح المصدر · XAUUSD · M5، H1
Pipsgrowth EX08005 MACD — MACD crossover EA with MA Fast/Slow/Filter confirmation, partial profit taking, breakeven, and optional money management. إكسبرت أدفايزر MT5 مفتوح المصدر.
نظرة عامة
إكسبرت EX08005 يقف عند الطرف البطيء من عائلة MACD في مجموعة PipsGrowth. بينما تعتمد أغلب إكسبرتس MACD على الزوج الكلاسيكي 12/26/9 على فريم M5 وتتفاعل مع كل حركة صغيرة، يعمل هذا الإكسبرت على MACD بفترات 120/260/90 — وهي أبطأ فترة EMA بطيء عبر كامل مجموعة الإكسبرتس — بهدف التقاط الموجات التي تنجو من فلتر يمتد لعدة أشهر. الفريم الافتراضي هو XAUUSD على M5 (مع توافق H1)، والرقم السحري 22208005، والإصدار 2.00.
الإشارة تُبنى من أربع مقابض مؤشرات تُنشأ في OnInit. ثلاثة منها متوسطات متحركة: EMA بطول 55 مطبقة على الإغلاق (MA السريع)، وSMA بطول 69 مطبقة على الإغلاق (MA البطيء)، وLWMA بطول 2 مطبقة على الإغلاق (MA الفلتر). الرابع هو MACD بـ EMA سريع بطول 120، وEMA بطيء بطول 260، وEMA خط إشارة بطول 90 — أي تنعيم بـ 90 شمعة للفرق بين EMA بطيئين جداً. عند كل شمعة جديدة يقرأ الإكسبرت MACD_MAIN وMACD_SIGNAL عند الشمعة 1 (آخر شمعة مغلقة) وعند الشمعة 3 (قبل شمعتين). قاعدة القرار في OnTick واضحة: الشراء عندما MACD_MAIN[1] فوق MACD_SIGNAL[1] و MACD_MAIN[3] كان تحت MACD_SIGNAL[3]؛ والبيع mirror معكوس. هذا الشرط الثاني هو الفخ — يطلب أن يكون التقاطع قد اكتمل قبل شمعتين، مما يفلتر القفزات من شمعة واحدة ويفرض على الإكسبرت انتظار ثبات العلاقة الجديدة.
المتوسطات تُحسب كل تيكة لكنها في هذا الإصدار لا تُستخدم كبوابة دخول. MAFast_0 و MASlow_0 و MAFilter_0 و MAFilter_2 كلها تُقرأ في متغيرات محلية، لكن فرع الدخول لا يفحص إلا قيم MACD الأربع. كل من يريد ضبط المصدر لإضافة فلتر MA حقيقي عليه إضافة المقارنة بنفسه؛ افتراضياً، المتوسطات معلن عنها لكنها غير مستخدمة كمدخلات إشارة. هذا تبسيط مقصود — MACD طويل الفترة يشفر بطبيعته فلتر ترند بطيء — لكن يستحق المعرفة لمن يتوقع من وصف الترويسة "MA Fast/Slow/Filter confirmation" أن تعني أن المتوسطات الثلاث لها حق النقض.
إدارة المراكز تعمل بترتيب أولوية على كل تذكرة مفتوحة. أولاً، يفحص الإكسبرت إشارة MACD معاكسة — إذا كان هناك مركز شراء و MACD_MAIN[1] نزل تحت MACD_SIGNAL[1] بينما MACD_MAIN[3] كان فوق MACD_SIGNAL[3]، يُغلق المركز عبر TryClose_EX08005 (3 محاولات، 200ms backoff على REQUOTE/TIMEOUT/PRICE_OFF/PRICE_CHANGED). ثانياً، يطبق الإكسبرت إغلاق جزئي: عندما يتحرك السعر 70 نقطة لصالح المركز (قابل للضبط عبر InpProfitOne)، يُغلق نصف اللوت عبر TryClosePartial_EX08005. ثالثاً، إذا كان InpBreakeven غير صفر (افتراضياً 0 — معطل)، يُسحب وقف الخسارة إلى سعر الفتح بمجرد أن يتحرك السعر InpBreakeven نقطة في المنطقة الخضراء. ترتيب هذه الفحوصات الثلاث متراكم بـ continue في OnTick، لذلك تنفذ كل تيكة إجراء إدارة واحداً فقط لكل مركز. وقف الخسارة الأولي المثبت 80 نقطة وجني الأرباح 500 نقطة — قوس 1:6.25 R:R يسمح لـ MACD طويل الفترة بالامتداد مع إبقاء خسارة الصفقة ضحلة.
إدارة الأموال هي مفتاح واحد. مع MM=false كل دخول يستخدم InpLots=1.0. مع MM=true يُنشئ الإكسبرت كائن CMoneyFixedMargin ويحجم كل دخول بناءً على مسافة وقف الخسارة عند 1% من الهامش الحر (مدخل Risk). في الحالتين يقوم LotCheck() بتطبيع اللوت المطلوب إلى step/min/max للأداة. نمط التعبئة يُكتشف تلقائياً لكل أداة — FOK أولاً ثم IOC ثم RETURN — والـ m_slippage=10 هو الحد الأقصى للانحراف.
طبقة الحمايات هي الأكثر صرامة في سلسلة EX08. IsSafeToTrade() تشغل تسع بوابات مستقلة قبل أي دخول: سقف تخصيص رأس المال (معطل افتراضياً؛ اضبط InpCapitalCapAmount على السقف بالدولار و InpCapitalCapFloor=50 للأرضية)، وأرضية حقوق ملكية 95% من الرصيد الأولي، وحد خسارة يومية محققة 3% وأسبوعية 6% (كلتاهما محسوبة مقابل رأس المال الفعال)، وعداد 3 خسائر متتالية يفرض 30 دقيقة تهدئة، وسقف 50 صفقة يومياً، وفحص ساعات السوق الذي يغلق الأبواب يوم السبت وقبل الأحد 22 GMT وبعد الجمعة 22 GMT، وفحص جلسة لندن أو نيويورك (لندن 7-16 GMT، نيويورك 12-21 GMT، آسيا 0-7 GMT متجنبة صراحة)، وفلتر أخبار اختياري 15 دقيقة حول افتتاح لندن ونيويورك. عدادات الصفقات وتدفق الأرباح/الخسائر المحققة يُحدّث في OnTradeTransaction الذي يمسح سجل الصفقات لأحداث DEAL_ENTRY_OUT على هذا الرقم السحري وهذه الأداة.
معالجة GMT هي الكشف التلقائي المعياري في PipsGrowth: DetectGMTOffset() يمشي للخلف عبر شموع H1 حتى يجد فجوة نهاية الأسبوع، ثم يحسب فروقBroker من إغلاق الجمعة 22 GMT. InpServerGMTOffset=0 يُشغل الكشف التلقائي؛ اضبطه على عدد صحيح موجب أو سالب للتجاوز. فحص الجلسة وفحص الأخبار وحارس نهاية الأسبوع كلها تعمل على هذا الفرق، لذلك فكرة الإكسبرت عن "افتتاح لندن" تتبع ساعة الوسيط وليس الوقت المحلي.
OnTester يرجع (STAT_PROFIT × STAT_PROFIT_FACTOR) / (1 + STAT_BALANCE_DDREL_PERCENT) بحد أدنى 30 صفقة. عدد صفقات أقل من 30 يُصفّر النتيجة، مما يدفع المحسن نحو تركيبات المعاملات التي تتداول فعلاً بدلاً من الجلوس نقداً. لا يوجد حد أعلى للصيغة — استراتيجية بـ PF=2.0 و8% drawdown نسبي تسجل حوالي 1.85؛ نفس PF مع 25% DD تسجل حوالي 1.60، لذلك لمصطلح السحب وزن حقيقي.
عملياً: هذا إكسبرت تقاطع MACD لـ XAUUSD على M5/H1 بـ MACD بطيء 120/260/90، قوس R:R افتراضي 1:6.25، إغلاق جزئي لنصف المركز عند +70 نقطة، مكدس تسع بوابات، وطبقة مخاطر متعددة الدفاعات. سيتداول نادراً — إشارات MACD طويلة الفترة على فريم 5 دقائق تتجمع فقط حول تحولات النظام الحقيقية — وعندما يتداول يقطع الخاسرين عند 80 نقطة بينما يسمح للإغلاق الجزئي بقفل أول 70 نقطة من أي حركة. منحنى الباك تيست المتوقع هو منحنى بعدد صفقات منخفض بانفجارات متقطعة عندما ينقلب MACD البطيء أخيراً. أي شخص يشغله يجب أن يحجم بناءً على وقف 80 نقطة بافتراض أن الإشارة التالية قد تبعد أسبوعاً، وأن فلتر الجلسة سيغلق الدفتر قبل إعادة الضبط اليومية.
تفاصيل الاستراتيجية
في كل شمعة جديدة يقرأ الإكسبرت MACD_MAIN وMACD_SIGNAL من مقبض iMACD(120,260,90) عند الشمعة 1 و3، ثم إما يفتح مركزاً جديداً (إن لم يكن هناك مركز مفتوح بهذا الرقم السحري) أو يشغّل أحد إجراءات الإدارة الثلاثة على المركز الحالي. المتوسطات تُسحب لمتغيرات محلية لكن فرع الدخول لا يقرأها. TryClose_EX08005 و TryClosePartial_EX08005 و TryModify_EX08005 كلها تستخدم نفس نمط 3 محاولات 200/200/100 مللي ثانية على REQUOTE/TIMEOUT/PRICE_OFF/PRICE_CHANGED، مع CMoneyFixedMargin بحجم اختياري لكل دخول بناءً على مسافة وقف الخسارة عند 1% من الهامش الحر. طبقة الحمايات تضيف تسع بوابات قبل التداول: سقف رأس المال، أرضية حقوق الملكية، حدود خسارة يومية 3% / أسبوعية 6%، تهدئة 3 خسائر متتالية، سقف 50 صفقة يومياً، ساعات السوق، جلسة لندن/نيويورك، وفلتر أخبار اختياري 15 دقيقة حول الافتتاحات الكبرى. OnTester يُقيّم (net × PF) / (1 + DD) بحد أدنى 30 صفقة.
إشارة الشراء تُفعّل عندما يكون خط MACD الرئيسي (120,260,90) عند الشمعة 1 فوق خط الإشارة وكان تحته قبل شمعتين؛ التقاطع نفسه الذي حدث قبل بضع شمم هو ما يُفعّل المركز، وليس علاقة الشمعة الحالية. البيع يعكس نفس الشرط. المتوسطات تُحسب لكن لا تُستخدم كبوابة فعلية في هذا الإصدار. بوابة الشمعة الجديدة (PrevBars ثابت) تمنع التكرار داخل الشمعة، و IsSafeToTrade() يجب أن ترجع true لأي تذكرة.
ثلاثة مسارات خروج تعمل بالترتيب على كل مركز مفتوح: (1) إغلاق عند إشارة MACD معاكسة عبر TryClose_EX08005؛ (2) إغلاق نصف المركز عند +70 نقطة ربح عبر TryClosePartial_EX08005؛ (3) إذا كان InpBreakeven غير صفر، سحب وقف الخسارة إلى سعر الفتح بمجرد أن يصل المركز إلى InpBreakeven نقطة في المنطقة الخضراء. قوس جني أرباح 500 نقطة مثبت على كل تذكرة للنصف المتبقي بعد تفعيل الإغلاق الجزئي.
وقف خسارة 80 نقطة مثبت على كل دخول (InpStopLoss=80). سحب اختياري إلى نقطة التعادل بمجرد أن يصل المركز إلى InpBreakeven نقطة ربح (افتراضي 0 = معطل). لا يوجد trailing قائم على ATR ولا chandelier — مخاطر الصفقة الواحدة ثابتة عند 80 نقطة بصرف النظر عن التذبذب.
جني أرباح 500 نقطة مثبت على كل دخول (InpTakeProfit=500) لقوس R:R افتراضي 1:6.25. جني الأرباح 500 يبقى ملتصقاً بنصف المركز المتبقي بعد تفعيل الإغلاق الجزئي عند +70 نقطة، لذا الخروج المعتاد منقسم: نصف عند +70 نقطة، والباقي عند +500 أو أبكر عند إشارة MACD معاكسة.
XAUUSD M5 هو الافتراضي، و H1 يناسب أيضاً للاستخدامات أبطأ. الحد الأدنى للرصيد: 100$ مع InpLots=1.0 و MM معطل؛ مسار MM بـ 1% مخاطرة يحتاج مساحة أكبر لـ 80 نقطة وقف خسارة إضافة لتقريب لوت الإغلاق الجزئي. الأفضل مع وسيط ECN سبريد منخفض يعرض XAUUSD بشكل ضيق بما يكفي لينجو عتبة 70 نقطة للإغلاق الجزئي من السبريد والانزلاق. شغّله خلال نوافذ لندن 7-16 GMT ونيويورك 12-21 GMT المُعرّفة؛ آسيا متجنبة صراحة. مستوى المخاطرة: MEDIUM — قوس 1:6.25 R:R وحدود الخسارة اليومية 3% / الأسبوعية 6% تحوي مخاطر الذيل حتى عندما يمر MACD البطيء بفترات خمول طويلة.
منطق الاستراتيجية
Pipsgrowth EX08005 MACD — تحليل منطق الاستراتيجية (من كود .mq5)
العائلة: MACD
الماجيك: 22208005
الإصدار: 2.00
الوصف:
MACD crossover EA with MA Fast/Slow/Filter confirmation, partial profit taking, breakeven, and optional money management with 12-layer stack: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester
المؤشرات:
- مؤشرات قياسية
الدوال الرئيسية:
RefreshRates()CheckVolumeValue()IsFillingTypeAllowed()LotCheck()iMAGet()iMACDGet()OpenBuy()OpenSell()CompareDoubles()OnTradeTransaction()
// Pipsgrowth EX08005 MACD — Execution Flow (from source analysis)
// Family: MACD
// MACD crossover EA with MA Fast/Slow/Filter confirmation, partial profit taking, breakeven, and optional money management with 12-layer stack: 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
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| m_magic | 22208005 | magic number |
| InpTradeComment | "Psgrowth.com Expert_08005" | trade comment |
| InpLots | 1.0 | Lots (use only if "Money Management" == false) |
| InpStopLoss | 80 | Stop Loss (in pips) |
| InpTakeProfit | 500 | Take Profit (in pips) |
| InpProfitOne | 70 | Profit for closing half of the position (in pips) |
| InpBreakeven | 0 | Breakeven (in pips) |
| MM | false | Money Management |
| Risk | 1.0 | Risk in percent for a deal from a free margin |
| MAFast_ma_period | 55 | MA Fast: averaging period |
| MAFast_ma_shift | 0 | MA Fast: horizontal shift of the indicator |
| MAFast_ma_method | MODE_EMA | MA Fast: smoothing type |
| MAFast_applied_price | 1 | Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted)// MA Fast: type of price |
| MASlow_ma_period | 69 | MA Slow: averaging period |
| MASlow_ma_shift | 0 | MA Slow: horizontal shift of the indicator |
| MASlow_ma_method | MODE_SMA | MA Slow: smoothing type |
| MASlow_applied_price | 1 | Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted)// MA Slow: type of price |
| MAFilter_ma_period | 2 | MA Filter: averaging period |
| MAFilter_ma_shift | 0 | MA Filter: horizontal shift of the indicator |
| MAFilter_ma_method | MODE_LWMA | MA Filter: smoothing type |
| MAFilter_applied_price | 1 | Applied price (1=close,2=open,3=high,4=low,5=median,6=typical,7=weighted)// MA Filter: type of price |
| MACDfast_ema_period | 120 | MACD: period for Fast average calculation |
| MACDslow_ema_period | 260 | MACD: period for Slow average calculation |
| MACDsignal_period | 90 | MACD: period for their difference averaging |
| InpMaxConsecLosses | 3 | Max consecutive losses before cooldown (0=disabled) |
| InpCooldownMinutes | 30 | Cooldown minutes after consec losses (0=disabled) |
| InpMaxTradesPerDay | 50 | Maximum trades per day |
| InpMinEquityPercent | 95.0 | Stop trading if equity < this % of initial balance |
| InpDailyLossLimitPct | 3.0 | Daily loss limit (% of effective capital) |
| InpWeeklyLossLimitPct | 6.0 | Weekly loss limit (% of effective capital) |
| InpCapitalCapAmount | 0.0 | Cap amount ($ real money equity) |
| InpCapitalCapFloor | 50.0 | Floor ($); block entries below this |
| InpServerGMTOffset | 0 | Server GMT offset hours (0=auto-detect) |
| InpLondonStartHour | 7 | London session start (GMT) |
| InpLondonEndHour | 16 | London session end (GMT) |
| InpNYStartHour | 12 | New York session start (GMT) |
| InpNYEndHour | 21 | New York session end (GMT) |
| InpAvoidAsia | true | Avoid Asian session |
| InpAsiaStartHour | 0 | Asian session start (GMT) |
| InpAsiaEndHour | 7 | Asian session end (GMT) |
| InpNewsFilter | false | Avoid trading near news session opens |
| InpNewsFilterMinutes | 15 | Minutes to avoid around news |
#property copyright "Pipsgrowth.com"
#property link "https://pipsgrowth.com"
#property version "2.00"
#property strict
#property description "Pipsgrowth.com EX08005 MACD_EA - MACD crossover with MA filter, full 12-layer stack."
#include <Trade\PositionInfo.mqh>
#include <Trade\Trade.mqh>
#include <Trade\SymbolInfo.mqh>
#include <Trade\AccountInfo.mqh>
#include <Trade\DealInfo.mqh>
#include <Expert\Money\MoneyFixedMargin.mqh>
CPositionInfo m_position;
CTrade m_trade;
CSymbolInfo m_symbol;
CAccountInfo m_account;
CDealInfo m_deal;
CMoneyFixedMargin *m_money;
//--- input parameters
ENUM_APPLIED_PRICE MapAppliedPriceInt(int ap)
{
switch(ap)
{
case 1: return PRICE_CLOSE;
case 2: return PRICE_OPEN;
case 3: return PRICE_HIGH;
case 4: return PRICE_LOW;
case 5: return PRICE_MEDIAN;
case 6: return PRICE_TYPICAL;
case 7: return PRICE_WEIGHTED;
default: return PRICE_CLOSE;
}
}
ENUM_APPLIED_PRICE g_MAFast_applied_price = PRICE_CLOSE;
ENUM_APPLIED_PRICE g_MASlow_applied_price = PRICE_CLOSE;
ENUM_APPLIED_PRICE g_MAFilter_applied_price = PRICE_CLOSE;
input group "=== Identity ==="
input ulong m_magic=22208005; // magic number
input string InpTradeComment="Psgrowth.com Expert_08005"; // trade comment
ENUM_APPLIED_PRICE MapAppliedPriceInt(int ap)
{
switch(ap)
{
case 1: return PRICE_CLOSE;
case 2: return PRICE_OPEN;
case 3: return PRICE_HIGH;
case 4: return PRICE_LOW;
case 5: return PRICE_MEDIAN;
case 6: return PRICE_TYPICAL;
case 7: return PRICE_WEIGHTED;
default: return PRICE_CLOSE;
}
}
ENUM_APPLIED_PRICE g_MAFast_applied_price = PRICE_CLOSE;
ENUM_APPLIED_PRICE g_MASlow_applied_price = PRICE_CLOSE;
ENUM_APPLIED_PRICE g_MAFilter_applied_price = PRICE_CLOSE;
input group "=== Trading ==="
input double InpLots = 1.0; // Lots (use only if "Money Management" == false)
input ushort InpStopLoss = 80; // Stop Loss (in pips)
input ushort InpTakeProfit = 500; // Take Profit (in pips)
input ushort InpProfitOne = 70; // Profit for closing half of the position (in pips)الكود المصدري الكامل متاح عند التحميل
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.
تحذير صريح: لأغراض تعليمية فقط
تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.
وسطاء موصى بهم لهذا الإكسبرت
هذه الروبوتات تعمل على 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 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.