Pipsgrowth EX17027 Volatility — إكسبرت أدفايزر تقلب
إكسبرت أدفايزر MT5 مفتوح المصدر · XAUUSD · M5
Pipsgrowth EX17027 Volatility — Production Gaussian Band breakout EA v2 with robust execution and drawdown control. Uses configurable risk percent, init. إكسبرت أدفايزر MT5 مفتوح المصدر.
نظرة عامة
Pipsgrowth EX17027 GB111_2 هو مستشار خبير لاختراق النطاقات يعمل بمسار قرار واحد محكم ومحدد بدقة عند كل شمعة جديدة. ثلاث مقابض مؤشرات تقوم بكل العمل في OnInit: مؤشر iMA(Length, 0, MODE_EMA, PRICE_CLOSE) الذي يُشكّل أساس خط الوسط المُرشّح بغاوس، ومؤشر iATR(ATR_Period) الذي يُوسّع الغلاف، ومؤشر iMA(TrendEMA, 0, MODE_EMA, PRICE_CLOSE) على الإطار الزمني الأعلى g_TrendFilterTF الذي يعمل كمرشح جانبي للاتجاه. القيمة الافتراضية لـ Length هي 10 وDistanceMultiplier هي 0.85، لذا يقع النطاق العلوي على بُعد 0.85×ATR(14) فوق خط وسط EMA، ويقع النطاق السفلي على نفس المسافة تحته. القيمة الافتراضية لـ TrendEMA هي 50 وTrendFilterTF هي 6 (H4)، لذا يكون مرشح الجانب الافتراضي هو EMA(50) على إطار H4.
شرط الدخول هو نمط صارم من شمعتين داخل النطاق ثم شمعة تخترقه. يجب أن يُغلق سعر إغلاق الشمعة الحالية فوق النطاق العلوي للشراء أو تحت النطاق السفلي للبيع، بينما يجب أن تكون الشمعتان السابقتان قد أغلقتا داخل النطاق. يجب أن يتفق EMA على الإطار الأعلى مع الاتجاه (الإغلاق > EMA للشراء، الإغلاق < EMA للبيع). يجب أن يتفق ميل Gaussian أيضًا: gaussNow > gaussPrev للشراء، وgaussNow < gaussPrev للبيع. يجب أن يكون الاختراق حقيقياً وليس مجرد لمسة — (السعر − gaussNow) > MinBreakDistance × ATR للشراء والعكس للبيع، مع قيمة افتراضية لـ MinBreakDistance قدرها 0.30. أخيراً، يجب أن تكون الشمعة قوية: يجب أن تكون نسبة الجسم إلى النطاق على الأقل StrongCandleBodyRatio (0.60 افتراضي)، والتي يحسبها الكود كـ MathAbs(إغلاق − فتح) / (أعلى − أدنى). عندما تتفق كل هذه البوابات، تستدعي CloseOppositeByMagic() أولاً لإغلاق أي مركز في الاتجاه المعاكس يحمل magic هذا المستشار، ثم تُطلق TradeBuy() أو TradeSell() الدخول عبر CTrade مع SL وTP المُكوّنين.
وقف الخسارة وجني الأرباح عبارة عن قيم ثابتة بالنقاط. القيمة الافتراضية لـ InitialSL_Points هي 100 نقطة وFixedTP_Points هي 160 نقطة، مما يعطي نسبة مخاطرة إلى عائد ثابتة 1.6:1 عند الفتح. جني الأرباح اختياري — إذا تم تعيين FixedTP_Points على 0، يترك المستشار جني الأرباح غير مُعيّن ويعتمد كلياً على خروج Gaussian ومنطق قفل الربح الديناميكي. يحسب كود OnTick قيم slBuy = ask − InitialSL_Points × _Point وtpBuy = ask + FixedTP_Points × _Point عند كل تكة، ثم يمرر القيمتين عبر حارسَي InsideStopsLevelForSLTP() وInsideFreezeLevelForSLTP(). تسحب هاتان الدالتان SYMBOL_TRADE_STOPS_LEVEL وSYMBOL_TRADE_FREEZE_LEVEL من الرمز وتلغيان الصفقة إذا كان أي من SL أو TP سيقع قريباً جداً من السعر الحالي لدرجة أن الوسيط لا يستطيع قبول الأمر — وهذا مهم لـ XAUUSD حيث يفرض كثير من الوسطاء مستوى stops غير تافه.
ما يجعل EX17027 مثيراً للاهتمام هو كومة الخروج وإدارة الصفقات. خروج تقاطع Gaussian (EnableGaussianExit) هو الطريقة الأساسية للمستشار للخروج من صفقة لم تصل إلى TP. مع ExitBufferATRMultiplier = 0، يُفعّل الخروج عندما يعبر سعر الإغلاق خط وسط Gaussian — يُغلق الشراء عندما ينخفض السعر تحت gaussNow، ويُغلق البيع عندما يرتفع فوق gaussNow. مع المخزن الافتراضي 0.20، يكون الخروج بدلاً من ذلك عند gaussNow − 0.20×ATR للشراء وgaussNow + 0.20×ATR للبيع، لذا يحصل المركز على وسادة ATR صغيرة بعد خط الوسط قبل أن يستسلم. خاصية قفل الربح الديناميكي (EnableDynamicLockProfit) هي رatchet وقف الخسارة للمستشار: مع ارتفاع الربح المفتوح بعملة الحساب، يحسب المستشار stepCount = floor(profit / LockProfitEvery_X_Dollars) ويدفع SL إلى entry + stepCount × LockProfitEvery_X_Dollars − LockMinusBuffer. مع القيم الافتراضية دولارين لكل خطوة و1 دولار مخزن، يرتفع الـ stop إلى entry + 1 دولار بعد ربح قدره 2 دولار، وإلى entry + 3 بعد 4، وإلى entry + 5 بعد 6، وهكذا. الـ ratchet يحرك الـ stop للأمام فقط، وليس للخلف أبداً، ويتخطى التعديلات التي تضع SL الجديد داخل منطقة تجميد الوسيط أو مستوى stops.
تعيش بوابات المركز والأمان في ثلاثة أماكن أخرى. تقارن CheckMaxDrawdown() بين ACCOUNT_EQUITY وACCOUNT_BALANCE وتوقف التداول إذا تجاوز السحب MaxDrawdownPercent (10% افتراضي). تقرأ TradingAllowedOnSymbol() من SYMBOL_TRADE_MODE وترفض التداول على الرموز المغلقة فقط أو المعطلة. تقارن SpreadTooWide() بين (ask − bid) / _Point وMaxSpreadPoints (40 افتراضي) وترفض الدخول الجديد عند اتساع الفروقات. يُنفّذ معالج OnTick أيضًا OneTradeOnly (مركز واحد لكل رمز) وMaxOpenTrades (5 افتراضي)، وإذا كان AllowOnlyProfitableAdditions صحيحاً، يضيف المستشار إلى اتجاه موجود فقط عندما يكون كل مركز مفتوح على magic في ربح لا يقل عن MinProfitPerTradeToAdd (5 دولارات). يضيف MinATR (0.03 افتراضي) وUseAutoFilter أرضية ATR نهائية ترفعها AutoTuneFilters() إلى ما لا يقل عن نصف الفرق الحالي عند تفعيل UseAutoFilter، حتى لا تكسر جلسة الفروقات المرتفعة رياضيات الاختراق.
التنفيذ مُحصّن ضد عيوب وضع التعبئة لدى الوسيط. تقرأ ResolveFillingMode() من SYMBOL_FILLING_MODE وتُعيّن كائن CTrade إلى FOK أو IOC أو RETURN وفقاً لذلك. عندما يُرجع Buy أو Sell رمز TRADE_RETCODE_INVALID_FILL، يمشي المستشار عبر أوضاع التعبئة البديلة — IOC أولاً، ثم FOK، ثم RETURN — ويُعيد المحاولة. يقوم كل غلاف TryClose_EX17027 وTryModify_EX17027 بما يصل إلى 3 محاولات مع فترات سكون 100–200 مللي ثانية على أخطاء requote وtimeout وprice-changed وprice-off قبل الاستسلام. يُطبّق trade.SetDeviationInPoints(DeviationInPoints) ميزانية انزلاق افتراضية قدرها 10 نقاط على كل أمر، وتُوسم trade.SetExpertMagicNumber(InpMagicNumber) كل مركز برقم magic 22217027، وهو أيضاً بادئة التعليق Psgrowth.com Expert_17027. تُرجع كتلة OnInit قيمة INIT_FAILED إذا فشل أي من مقابض المؤشرات الثلاثة في التخصيص، حتى لا تتداول لوحة مُكوّنة بشكل خاطئ بمخازن قديمة. مع عدم وجود منطق إغلاق بالوقت، ولا مرشح أخبار، ولا مرشح نافذة زمنية في مجموعة المدخلات، سيتداول EX17027 أي شمعة تسمح بها بوابات الاختراق والمخاطرة — وهذه البساطة هي خيار التصميم. يفترض أن المتداول يوفر disciplina الجلسة خارجياً، والباقي من المستشار مبني على عدم تدمير الحساب عندما ينسى المتداول تعطيله.
تفاصيل الاستراتيجية
عند كل تكة، يسحب المستشار خط وسط Gaussian (EMA(Length) على إطار التداول)، وغلاف ATR(14)، ومرشح الجانب EMA(50) على H4، ثم يقيّم بوابة من ست جهات: فرق سعر أقل من 40 نقطة، وATR فوق أرضية MinATR (تُرفع تلقائياً إلى نصف الفرق عند تفعيل UseAutoFilter)، وسحب أقل من 10%، ونمط شمعتين داخل ثم شمعة تخترق، وجودة شمعة بالنسبة بين الجسم والنطاق قدرها 0.6، ومسافة اختراق تتجاوز 0.30×ATR. يُحلّل TradeBuy/TradeSell وضع تعبئة الوسيط تلقائياً (FOK → IOC → RETURN كاحتياط) ويُطبّق حراس مستوى stops ومستوى التجميد قبل إرسال الأمر. بعد الدخول، يمشي المستشار كل مركز مفتوح على رقم magic عند كل تكة، ويُطبّق خروج تقاطع Gaussian مع مخزن اختياري 0.20×ATR، ويدفع بوقف الخسارة للأمام عبر سلّم قفل الربح الديناميكي.
يُفعّل الدخول للشراء عندما يُغلق سعر الشمعة الحالية فوق خط النطاق العلوي لـ Gaussian (EMA(10) + 0.85×ATR(14)) بينما أغلقت الشمعتان السابقتان داخل النطاق، ويكون EMA(50) على H4 تحت السعر، وميل Gaussian صاعداً، وتتجاوز مسافة الاختراق 0.30×ATR، ويملأ جسم الشمعة 60% على الأقل من نطاقها. تستخدم دخولات البيع الظروف المعكوسة ضد النطاق السفلي. تُغلق المراكز في الاتجاه المعاكس على نفس رقم magic قبل إطلاق الدخول الجديد.
تُغلق المراكز عند جني الأرباح الثابت البالغ 160 نقطة (1.6:1) إذا وصل السعر إليه، أو عبر خروج تقاطع Gaussian عندما يعبر سعر الإغلاق خط الوسط مرة أخرى (أو عبر gaussNow ± 0.20×ATR عندما يكون ExitBufferATRMultiplier غير صفري). يدفع ratchet قفل الربح الديناميكي بوقف الخسارة للأمام بزيادات 2 دولار ناقصاً مخزن 1 دولار مع صعود الربح، لكنه لا يُغلق المراكز من تلقاء نفسه. لا يوجد خروج قائم على الوقت ولا إغلاق قسري عند إغلاق الجلسة.
وقف الخسارة الابتدائي ثابت 100 نقطة تحت سعر ask للدخول للشراء، و100 نقطة فوق سعر bid للدخول للبيع، يُطبّق عند الفتح. يدفع ratchet قفل الربح الديناميكي بعد ذلك بوقف الخسارة نحو نقطة الدخول وما بعدها بخطوات ربح 2 دولار ناقص مخزن 1 دولار، لذا بمجرد تجاوز الربح للحد، يُحرّك وقف الخسارة هيكلياً إلى الأمام ولا يمكن أن يتراجع.
جني أرباح ثابت 160 نقطة (مكافأة إلى مخاطرة 1.6:1) عند الفتح، يُحسب كـ ask + 160×_Point للشراء وbid − 160×_Point للبيع. يؤدي تعيين FixedTP_Points على صفر إلى تعطيل جني الأرباح الثابت تماماً ويترك المخارج لمنطق تقاطع Gaussian ورatchet قفل الربح.
XAUUSD M5 مع حساب أدنى 100 دولار على وسيط ECN بفارق سعر منخفض يدعم تعبئة FOK — تم تصميم SL/TP بـ 100/160 نقطة ومرشح الفرق 40 نقطة لحجم تكة الذهب النموذجي، وليس لأزواج FX الرئيسية. يعمل حد السحب 10% وخطوة قفل الربح الديناميكي 2 دولار بشكل أفضل على إعداد مركز واحد (OneTradeOnly=true) يُشغّل باستمرار خلال جلستَي لندن ونيويورك. فعّل UseRiskPercent مع RiskPercent=1.0 ودع المستشار يحسب حجم اللوت من مسافة SL ذات 100 نقطة؛ غلاف ATR وبوابة جودة الشمعة سيقمعان معظم اختراقات الثقة المنخفضة تلقائياً.
منطق الاستراتيجية
Pipsgrowth EX17027 Volatility — تحليل منطق الاستراتيجية (من كود .mq5)
العائلة: Volatility
الماجيك: 22217027
الإصدار: 2.00
الوصف:
Production Gaussian Band breakout EA v2 with robust execution and drawdown control. Uses configurable risk percent, initial SL, fixed TP, spread filter, new-bar entries, Gaussian cross exit, dynamic lock profit, and filling mode auto-resolve. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester
المؤشرات:
- مؤشرات قياسية
الدوال الرئيسية:
GetTick()GetBuffer()GaussianFilter()GetATR()GetEMA_HTF()IsNewBar()CheckMaxDrawdown()TradingAllowedOnSymbol()NormalizeVolume()InsideStopsLevelForSLTP()
// Pipsgrowth EX17027 Volatility — Execution Flow (from source analysis)
// Family: Volatility
// Production Gaussian Band breakout EA v2 with robust execution and drawdown control. Uses configurable risk percent, initial SL, fixed TP, spread filter, new-bar entries, Gaussian cross exit, dynamic lock profit, and filling mode auto-resolve. 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اسحب الإكسبرت على رسم بياني يطابق الإطار الزمني الموصى به
- 7هيّء المعاملات وفقاً للجدول في هذه الصفحة
- 8فعّل Allow Algo Trading واضغط OK
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| InpMagicNumber | 22217027 | Magic Number |
| InpTradeComment | "Psgrowth.com Expert_17027" | Trade Comment |
| Timeframe | 0 | Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) |
| TrendFilterTF | 6 | Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1) |
| RiskPercent | 1.0 | percent of equity risked per trade |
| Lots | 0.10 | used if UseRiskPercent=false |
| InitialSL_Points | 100.0 | initial SL in points |
| FixedTP_Points | 160.0 | fixed TP in points |
| StrongCandleBodyRatio | 0.60 | body/candle size threshold |
| MaxSpreadPoints | 40.0 | don't trade above this spread |
| DeviationInPoints | 10 | slippage |
| AutoResolveFillingMode | true | ==================== Handles & State ====================// |
#property copyright "Pipsgrowth.com"
#property link "https://pipsgrowth.com"
#property version "2.00"
#property strict
#property description "Pipsgrowth.com EX17027 GB111_2 — Production Gaussian Band breakout v2 with robust execution, full 12-layer stack."
#include <Trade/Trade.mqh>
CTrade trade;
//==================== Inputs ====================//
ENUM_TIMEFRAMES MapTimeframeInt(int tf)
{
switch(tf)
{
case 1: return PERIOD_M1;
case 2: return PERIOD_M5;
case 3: return PERIOD_M15;
case 4: return PERIOD_M30;
case 5: return PERIOD_H1;
case 6: return PERIOD_H4;
case 7: return PERIOD_D1;
default: return PERIOD_H1;
}
}
ENUM_TIMEFRAMES g_Timeframe = PERIOD_H1;
ENUM_TIMEFRAMES g_TrendFilterTF = PERIOD_H1;
input group "=== Identity ==="
input ulong InpMagicNumber = 22217027; // Magic Number
input string InpTradeComment = "Psgrowth.com Expert_17027"; // Trade Comment
ENUM_TIMEFRAMES MapTimeframeInt(int tf)
{
switch(tf)
{
case 1: return PERIOD_M1;
case 2: return PERIOD_M5;
case 3: return PERIOD_M15;
case 4: return PERIOD_M30;
case 5: return PERIOD_H1;
case 6: return PERIOD_H4;
case 7: return PERIOD_D1;
default: return PERIOD_H1;
}
}
ENUM_TIMEFRAMES g_Timeframe = PERIOD_H1;
ENUM_TIMEFRAMES g_TrendFilterTF = PERIOD_H1;
input group "=== Strategy Settings ==="
input bool UseAutoFilter = true;
input int Length = 10;
input double DistanceMultiplier = 0.85;
input int Timeframe = 0; // Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1)
input int TrendFilterTF = 6; // Timeframe (1=M1,2=M5,3=M15,4=M30,5=H1,6=H4,7=D1)
input int TrendEMA = 50;
ENUM_TIMEFRAMES MapTimeframeInt(int tf)
{
switch(tf)
{
case 1: return PERIOD_M1;
case 2: return PERIOD_M5;الكود المصدري الكامل متاح عند التحميل
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.
تحذير صريح: لأغراض تعليمية فقط
تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.
وسطاء موصى بهم لهذا الإكسبرت
هذه الروبوتات تعمل على MT5 — استخدم وسيطاً موثوقاً بتنفيذ سريع وسبريد منخفض
إكسبرتات مشابهة
عرض جميع الإكسبرتاتإكسبرتات أخرى بنفس استراتيجية أخرى
Pipsgrowth EX01007 Adaptive — إكسبرت أدفايزر تكييفي
Pipsgrowth EX01007 Adaptive — Adaptive signal scorer EA combining EMA crossover, RSI, Heiken Ashi, Bollinger Bands, ATR and volume spike detection int. إكسبرت أدفايزر MT5 مفتوح المصدر.
Pipsgrowth EX01019 Adaptive — إكسبرت أدفايزر تكييفي
Pipsgrowth EX01019 Adaptive — Self-adaptive market regime EA that auto-detects trending, ranging, volatile, quiet and breakout conditions. Switches be. إكسبرت أدفايزر MT5 مفتوح المصدر.
Pipsgrowth EX15029 SMC-OrderBlock — إكسبرت أدفايزر إكسبرت أدفايزر
Pipsgrowth EX15029 SMC-OrderBlock — Smart Money Concepts breakout EA — detects order blocks, CHOCH and liquidity sweeps using EMA cross + structure break, A. إكسبرت أدفايزر MT5 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.