Pipsgrowth EX12018 MultiIndicatorConfluence — إكسبرت أدفايزر إكسبرت أدفايزر
إكسبرت أدفايزر MT5 مفتوح المصدر · XAUUSD · M5، H1
Pipsgrowth EX12018 MultiIndicatorConfluence — Arttrader v1.5 uses EMA slope analysis with candlestick pattern confirmation to enter trades, filtering big jumps. 12 la. إكسبرت أدفايزر MT5 مفتوح المصدر.
نظرة عامة
أرترادر v1.5 هو مستشار خبير (EA) قائم على فكرة «نطاق ميل المتوسط المتحرك» مع دخول من نوع الارتداد. يعتمد على متوسط متحرك أسي واحد فقط، EMA(11)، محسوب على الإطار الزمني H1 ومطبَّق على سعر الافتتاح (PRICE_OPEN) وليس الإغلاق — وهذه نقطة دقيقة لكنها مهمة في المنطق. الفكرة الأساسية هي أن الانحدار (الفرق بين قيمة المتوسط الحالية والسابقة) يجب أن يقع داخل نافذة ضيقة: بين +5 و+8 نقاط لعمليات الشراء، وبين -5 و-8 للبيع. هذا النطاق الافتراضي (SLOPE_SMALL=5 وSLOPE_LARGE=8) هو الذي يحدد شخصية المستشار بالكامل. ميل قدره 1 نقطة يعني أن الاتجاه ضعيف ولا值得 الوثوق به. ميل قدره 12 نقطة يعني أن الحركة مفرطة الامتداد، وأصبح المتوسط في حالة اندفاع زخم بدل أن يكون مؤشراً على انحياز اتجاهي. فقط الميلات التي تبدو منتظمة ومتحكم بها وغير متسارعة هي التي تُفعِّل الإشارة.
في كل تيكة، يقرأ الكود قيمتين حديثتين من مخزن EMA الخاص بـ H1 عبر iMAGetArray(0, 2, ...) ليأخذ الفرق ema_slope = ema_new − ema_old، ثم ينسخ آخر ست شموع من الإطار الزمني الحالي عبر CopyRates. دخول الشراء يتطلب انحداراً بين +5 و+8، وأن تكون الشمعة الحالية شمعة ارتداد هابطة (rates[0].close <= rates[0].open)، وأن يكون الإغلاق قريباً من低点 الشمعة بمقدار SLIP_BEGIN نقطة (rates[0].close <= rates[0].low + ExtSLIP_BEGIN). البيع هو المرآة المعاكسة. هذه هي طبقة التأكيد الوحيدة في الاستراتيجية — لا يوجد RSI ولا MACD ولا ATR ولا مرشح حجم على جهة الدخول، فقط ميل في النطاق المسموح يلتقي شمعة ارتداد معاكسة.
طبقتان من المرشحات تحميان الإشارة من التقاط حركة ناتجة عن خبر. الأولى BIG_JUMP بقيمة افتراضية 30 نقطة: إذا كان الفجوة بين افتتاح الشمعة الحالية وافتتاح أي شمعة من آخر خمس شموع >= 30 نقطة، يتم تصفير begin_buy_chance وbegin_sell_chance. يتم هذا الفحص خمس مرات (للأزواج المتجاورة). الثانية DOUBLE_JUMP بـ 55 نقطة، وتبحث في أزواج غير متجاورة (شمعة 2↔0، 3↔1، 4↔2، 5↔3). إذا فُتحت أي شمعتين من هذه الأزواج بفجوة 55 نقطة، يتم إلغاء الإشارة. هذا النمط مصمم لتصفية اختراقات الفجوات التي غالباً ما تتراجع في الشمعة التالية.
بوابة ثانية هي بوابة زمنية بحتة. في OnTick يقرأ الكود TimeCurrent() ويرفض الدخول قبل أن تتجاوز الشمعة الدقيقة 25 (MINUTES_BEGIN=25). على M5 يعني هذا أن المستشار يتداول دائماً في النصف الثاني من الشمعة، بافتراض أن النصف الأول صاخب جداً بحيث لا يمكن قراءته. نفس عتبة الدقيقة تحرس الخروج بوقف الخسارة الذكي: لا يُغلق المركز تلقائياً بسبب الـ20 نقطة إلا إذا تجاوزت الشمعة الدقيقة 25 وكانت الشمعة صاعدة (للخروج من شراء) والإغلاق قريباً من高点 الشمعة بمقدار SLIP_END نقطة. القيم الافتراضية MINUTES_END=25 وSLIP_BEGIN=0 وSLIP_END=0 تبسط المنطق إلى: إذا وصلت خسارة المركز 20 نقطة وظهرت شمعة تأييد بعد الدقيقة 25، أغلق.
وضع الوقف غير اعتيادي. المستشار يستخدم وقفَين. الأول STOP_LOSS=20، وهو «الوقف الذكي» — فحص منطقي داخل الكود، وليس مُعاملاً على الأمر. الثاني EMERGENCY_LOSS=50، وهو المُعامل الفعلي الممرَّر إلى m_trade.Buy / m_trade.Sell. الوقف الصلب على مستوى الأمر هو 50 نقطة، لكن المستشار يحاول بنشاط الإغلاق عند 20 نقطة إذا ظهرت شمعة تأييد. إذا لم يحدث أي من ذلك، يغلق الوسيط عند 50. جني الأرباح على الأمر ثابت عند TAKE_PROFIT=25. لا يوجد trailing stop ولا breakeven ولا إغلاق جزئي ولا وقف زمني صريح.
بوابة انهيار الحجم تعالج حالة حافة. بعد منطق الدخول، يفحص الكود iVolume(symbol, period, 1) — حجم الشمعة السابقة — وإذا كان <= MIN_VOLUME (الافتراضي 0، أي أن البوابة معطلة افتراضياً)، يُغلق أي مركز مفتوح. الافتراضي 0 يعني أن البوابة لا تفعل شيئاً، لكن إذا رفع المستخدم MIN_VOLUME إلى قيمة موجبة، يخرج المستشار عندما يهدأ السوق، وهي إشارة مفيدة على XAUUSD لاكتشاف انتقال الجلسات أو الانجراف قبل فجوة نهاية الأسبوع.
طبقة إدارة المراكز متعمَّدة الحد الأدنى. CalculateAllPositions تمسح PositionsTotal() وتعد المراكز بفلترة الرمز والرقم السحري 22212018. إذا كان count_buys + count_sells > 1، يستدعي المستشار CloseAllPositions() ويعود — أي حالة فيها مركزان أو أكثر تُعتبر خطأ ويُسطَّح كل شيء. هذه القاعدة «مركز واحد فقط» مفروضة حتى على حساب كون الاستراتيجية قد تستفيد من الإضافة، وهي أنظف طريقة لإبقاء أرترادر يعمل كنظام إشارات بحت بدل نظام إدارة أموال. الانزلاق الثابت m_slippage=10 يُعيَّن على كل استدعاء CTrade؛ في حال الرفض، TryClose_EX12018 يعيد المحاولة 3 مرات بفاصل 200ms على رموز REQUOTE / TIMEOUT / PRICE_OFF / PRICE_CHANGED، وTryModify_EX12018 يعيد 3 مرات بفاصل 100ms على REQUOTE / TIMEOUT فقط.
عند الدخول، يخزن المستشار open_price داخلياً، وهو rates[0].open مزاحاً بمقدار ADJUST=1 نقطة بالإضافة إلى فارق bid-ask. هذا هو السعر المرجعي المستخدم لفحص الوقف داخل الصفقة، وليس سعر التنفيذ. الوصف يصفه بأنه «تعديل خيالي لكنه وظيفي لفارق السعر» — وهو ببساطة طريقة لإعطاء فحص الوقف هامشاً إضافياً صغيراً بعد التنفيذ. ينطبق نفس التعديل بشكل متماثل على الشراء والبيع.
ملاءمة السوق ضيقة. أرترادر v1.5 مصمم للأدوات ذات الاتجاهات اليومية المنتظمة والارتدادات النظيفة. XAUUSD على M5 هو الموطن الطبيعي لأن EMA(11) على H1 يتوافق مع إيقاع تحركات الذهب في جلسة نيويورك، لكن المستشار قابل للنقل إلى أزواج FX الرئيسية على M5–H1 بشرط إعادة قياس نطاق الميل 5–8 نقطة إلى متوسط قيمة النقطة للرمز. الحد الأدنى للرصيد 100 دولار، معد لصفقة واحدة بحجم 1.0 لوت على حساب 100 دولار، ما يعني أن هذا ملف تعريف اختبار بحجم عقد بدل ملف تعريف حجم طويل الأمد. مستوى المخاطر MEDIUM لأن وقف الطوارئ عند 50 نقطة ضيق بما يكفي للحد من ذيل الكوارث، لكن الحجم الافتراضي 1.0 لوت مع تسعير XAUUSD من 5 أرقام يمكن أن ينتج خسارة لكل صفقة بمبالغ كبيرة بالدولار. أي شخص يشغّل هذا فعلياً يجب أن يعتبر مُدخل اللوت دالة في حجم الحساب، لا ثابتاً.
تفاصيل الاستراتيجية
في كل تيكة، يحمِّل المستشار قيمة EMA(11) على H1 (المحسوب على سعر الافتتاح) للشمعة الحالية والسابقة، ويأخذ الفرق كميل، ويشترط أن يقع هذا الميل داخل النطاق +5..+8 للشراء أو -5..-8 للبيع. بعد تفعيل الميل، يبحث عن شمعة ارتداد على الإطار الزمني للتداول: شمعة هابطة (إغلاق <= افتتاح) قريبة الإغلاق من低点 الشمعة للشراء، أو المرآة الصاعدة للبيع. BIG_JUMP=30 يلغي الإشارة إذا فُتح أي زوج متجاور من آخر خمس شموع بفجوة 30 نقطة، وDOUBLE_JUMP=55 يوسع نفس الفكرة للأزواج غير المتجاورة، لتصفية اختراقات الفجوات. يفرض OnTick أيضاً مؤقت MINUTES_BEGIN=25، فيرفض الدخول قبل أن تتجاوز الشمعة الدقيقة 25، بنفس الطريقة التي يرفض بها تفعيل وقف الـ 20 نقطة الذكي حتى تمر شمعة تأييد نفس العتبة. الأمر يُرسَل بوقف طوارئ 50 نقطة وجني أرباح 25 نقطة، وهو المخرج الإيجابي الوحيد، بينما تفرض CalculateAllPositions قاعدة «مركز واحد فقط» (العدّ > 1 يُسطّح كل شيء). إعادة محاولة الإغلاق 3 مرات بفاصل 200ms على requote/timeout/price-off/price-changed؛ إعادة المحاولة على التعديل 3 مرات بفاصل 100ms على requote/timeout فقط، مع الرقم السحري 22212018 على كل تنفيذ.
دخول الشراء يتطلب أن يكون ميل EMA(11) على H1 داخل النطاق +5..+8 (من SLOPE_SMALL إلى SLOPE_LARGE) وأن تكون الشمعة الحالية شمعة ارتداد هابطة (إغلاقها <= افتتاحها) مع إغلاق قريب من低点 الشمعة بمقدار SLIP_BEGIN نقطة. دخول البيع هو المرآة المعاكسة. يجب أن يكون الميل معتدلاً — المسطّح جداً أو المتسارع جداً يتم رفضه. يتم حجب الدخولات إذا فُتحت أي شمعتين متجاورتين في آخر خمس بفجوة 30 نقطة (BIG_JUMP) أو أي زوج غير متجاور بفجوة 55 نقطة (DOUBLE_JUMP)، ولا يصدر المستشار إشارة قبل أن تتجاوز الشمعة الحالية الدقيقة 25 (MINUTES_BEGIN).
يخرج المستشار عبر ثلاث مسارات. المسار «الذكي» يُغلق عملية شراء عند خسارة 20 نقطة (STOP_LOSS) عندما تتجاوز الشمعة الدقيقة 25 وتظهر شمعة تأكيد صاعدة (إغلاق >= افتتاح وقريب من高点 الشمعة بمقدار SLIP_END)؛ المرآة للبيع. مسار الطوارئ هو وقف الخسارة الصلب على مستوى الوسيط عند EMERGENCY_LOSS=50 نقطة، مضبوط على كل أمر. مسار الحجم يُغلق قسراً عندما iVolume(bar-1) <= MIN_VOLUME — افتراضياً هذه البوابة معطّلة (القيمة 0). جني الأرباح الثابت عند TAKE_PROFIT=25 هو المخرج الإيجابي الوحيد؛ لا يوجد trailing stop ولا breakeven ولا وقف زمني.
وقف خسارة من طبقتين. الـ 20 نقطة «الذكية» (STOP_LOSS) فحص منطقي داخل المستشار ولا يُفعَّل إلا عند ظهور شمعة تأييد بعد الدقيقة 25، ما يسمح بخروج نظيف مبكر لمعظم الصفقات الخاسرة. الـ 50 نقطة EMERGENCY_LOSS يُمرَّر إلى كل أمر كوقف صلب على مستوى الوسيط، وهو شبكة الأمان الكارثية إذا تعطّل المستشار.
جني أرباح ثابت عند 25 نقطة (TAKE_PROFIT)، مضبوط على كل أمر كمخرج إيجابي وحيد. لا يوجد إغلاق جزئي ولا trailing TP ولا نقل وقف إلى نقطة التعادل — الصفقة ثنائية: إما 25 أو 20 أو 50.
الهدف الأصلي للملف الشخصي هو XAUUSD M5 — إيقاع EMA(11) على H1 يتناسب مع إيقاع الذهب في جلسة نيويورك، ونطاق الميل 5–8 نقطة يناسب تسعير الذهب من 5 أرقام. يمكن نقل الاستراتيجية إلى أزواج FX الرئيسية على M5–H1 إذا أعدت قياس SLOPE_SMALL / SLOPE_LARGE إلى متوسط قيمة البيب للرمز (عاملها كنقاط خام وليست نقاط مئوية). الحد الأدنى للرصيد 100 دولار لتجاوز فحص حجم اللوت؛ عملياً، اضبط NUM_LOTS عند نحو 0.01 لكل 200 دولار من الرصيد لإبقاء وقف الطوارئ عند 50 نقطة في نطاق دولار مقبول. شغّله على حساب ECN/RAW سبريد — نطاق الميل حساس لضوضاء الفجوات، وهامش الانزلاق ADJUST=1 نقطة ضيق جداً لامتصاص سبريد متغير عريض. أفضل جلسة هي تداخل لندن + نيويورك، حيث تتشكل ارتدادات M5 داخل اتجاه H1 مستقر؛ وآسيا الرقيقة تميل لانتهاك أرضية SLOPE_SMALL.
منطق الاستراتيجية
Pipsgrowth EX12018 MultiIndicatorConfluence — تحليل منطق الاستراتيجية (من كود .mq5)
العائلة: MultiIndicatorConfluence
الماجيك: 22212018
الإصدار: 2.00
الوصف:
Arttrader v1.5 uses EMA slope analysis with candlestick pattern confirmation to enter trades, filtering big jumps. 12 layers: REGIME, SIGNAL, ENTRY, CONFIRM, NO-TRADE, CAPITAL CAP, RISK, SIZING, MANAGE, EXIT, SCALING, OnTester
المؤشرات:
- مؤشرات قياسية
الدوال الرئيسية:
OnTradeTransaction()RefreshRates()CheckVolumeValue()iMAGetArray()CalculateAllPositions()CloseAllPositions()OpenBuy()OpenSell()PrintResultTrade()TryClose_EX12018()
// Pipsgrowth EX12018 MultiIndicatorConfluence — Execution Flow (from source analysis)
// Family: MultiIndicatorConfluence
// Arttrader v1.5 uses EMA slope analysis with candlestick pattern confirmation to enter trades, filtering big jumps. 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
معاملات الإكسبرت
| المعامل | الافتراضي | الوصف |
|---|---|---|
| InpTradeComment | "Psgrowth.com Expert_12018" | Trade Comment |
| m_magic | 22212018 | magic number |
| NUM_LOTS | 1.0 | How many lots to deal with (may be less than one) |
| EMA_SPEED | 11.0 | The period for the averager |
| BIG_JUMP | 30.0 | Check for too-big candlesticks (avoid them) |
| DOUBLE_JUMP | 55.0 | Check for pairs of big candlesticks |
| STOP_LOSS | 20.0 | A smart stop-loss |
| EMERGENCY_LOSS | 50.0 | The trade's stop loss in case of program error |
| TAKE_PROFIT | 25.0 | The trade's take profit |
| SLOPE_SMALL | 5.0 | The minimum EMA slope to enter a trade |
| SLOPE_LARGE | 8.0 | The maximum EMA slope to enter a trade |
| MINUTES_BEGIN | 25.0 | Wait this long to determine candlestick lows/highs |
| MINUTES_END | 25.0 | Wait this long to determine candlestick lows/highs |
| SLIP_BEGIN | 0.0 | An allowance between the close and low/high price |
| SLIP_END | 0.0 | An allowance between the close and low/high price |
| MIN_VOLUME | 0.0 | If the previous volume is not above this, exit the trade |
| ADJUST | 1.0 | A strange but functional imaginary spread adjustment |
#property copyright "Pipsgrowth.com"
#property link "https://pipsgrowth.com"
#property version "2.00"
#property strict
#property description "Pipsgrowth.com EX12018 Arttrader_v1_5 — EMA slope with candlestick confirmation, 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 <Trade\OrderInfo.mqh>
#include <Expert\Money\MoneyFixedMargin.mqh>
CPositionInfo m_position; // trade position object
CTrade m_trade; // trading object
CSymbolInfo m_symbol; // symbol info object
CAccountInfo m_account; // account info wrapper
CDealInfo m_deal; // deals object
COrderInfo m_order; // pending orders object
CMoneyFixedMargin *m_money;
//--- input parameters
//--- variables that can be changed outside the program code, even optimized
input group "=== Identity ==="
input string InpTradeComment = "Psgrowth.com Expert_12018"; // Trade Comment
input ulong m_magic = 22212018; // magic number
input group "=== Trade Parameters ==="
input double NUM_LOTS = 1.0; // How many lots to deal with (may be less than one)
input int EMA_SPEED = 11.0; // The period for the averager
input ushort BIG_JUMP = 30.0; // Check for too-big candlesticks (avoid them)
input ushort DOUBLE_JUMP = 55.0; // Check for pairs of big candlesticks
input ushort STOP_LOSS = 20.0; // A smart stop-loss
input ushort EMERGENCY_LOSS = 50.0; // The trade's stop loss in case of program error
input ushort TAKE_PROFIT = 25.0; // The trade's take profit
input ushort SLOPE_SMALL = 5.0; // The minimum EMA slope to enter a trade
input ushort SLOPE_LARGE = 8.0; // The maximum EMA slope to enter a trade
input int MINUTES_BEGIN = 25.0; // Wait this long to determine candlestick lows/highs
input int MINUTES_END = 25.0; // Wait this long to determine candlestick lows/highs
input ushort SLIP_BEGIN = 0.0; // An allowance between the close and low/high price
input ushort SLIP_END = 0.0; // An allowance between the close and low/high price
input long MIN_VOLUME = 0.0; // If the previous volume is not above this, exit the trade
input ushort ADJUST = 1.0; // A strange but functional imaginary spread adjustment
//---
ulong m_slippage=10; // slippage
double ExtBIG_JUMP=0.0;
double ExtDOUBLE_JUMP=0.0;
double ExtSTOP_LOSS=0.0;
double ExtEMERGENCY_LOSS=0.0;
double ExtTAKE_PROFIT=0.0;
double ExtSLOPE_SMALL=0.0;
double ExtSLOPE_LARGE=0.0;
double ExtSLIP_BEGIN=0.0;
double ExtSLIP_END=0.0;
double ExtADJUST=0.0;
int handle_iMA; // variable for storing the handle of the iMA indicator
double m_adjusted_point; // point value adjusted for 3 or 5 points
//+------------------------------------------------------------------+
الكود المصدري الكامل متاح عند التحميل
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.
تحذير صريح: لأغراض تعليمية فقط
تحذير صريح: هذا الإكسبرت لأغراض تعليمية واختبارية فقط. لا تستخدمه بأموال حقيقية. اختبره فقط على حساب تجريبي. التداول بأموال حقيقية ينطوي على مخاطر فقدان رأس المال. لا يشكل هذا نصيحة استثمارية.
وسطاء موصى بهم لهذا الإكسبرت
هذه الروبوتات تعمل على 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 مفتوح المصدر.
مجتمع المستخدمين
لأغراض تعليمية فقط. لا تستخدمه بأموال حقيقية. اختبر على حساب تجريبي فقط.