مستشار تداول عالمي للمؤشرات المخصصة على منصة ميتاتريدر (MetaTrader)
هل تبحث عن حل تداول قابل للتخصيص لمنصتي MetaTrader 4 و MetaTrader 5؟ نقدم لك Exp – The xCustomEA، وهو مستشار تداول عالمي (Universal Trading Advisor) يعمل بسلاسة مع المؤشرات المخصصة (custom indicators) من خلال وظيفة iCustom على منصتي MT4 و MT5.
مستشار التداول الأحدث لدينا، The xCustomEA، مبني على الأساس المثبت لـ The X – المستشار الخبير العالمي (Universal EA)، مع تحسين رئيسي: التكامل الكامل مع المؤشرات المخصصة، مما يمنح المتداولين (Traders) القدرة على أتمتة استراتيجيات التداول (Trading strategy) الشخصية.
لماذا تختار The xCustomEA؟
يقدم The xCustomEA جميع ميزات مستشارنا واسع الاستخدام The X، ولكن مع القدرة المضافة على الاتصال والتداول باستخدام أي مؤشر مخصص. سواء كنت تعمل مع مؤشرات من سوق MQL5 (mql5 market) أو تلك التي تم تنزيلها من الإنترنت، يمكّنك xCustomEA من تصميم وتنفيذ استراتيجيات تداول مصممة خصيصًا لمنصتي MetaTrader 4 و MetaTrader 5.
كيف يعمل The xCustomEA؟
التوافق مع المؤشرات المخصصة. يتكامل xCustomEA مع أي مؤشر مخصص متاح عبر الإنترنت أو من خلال سوق MQL5، مما يتيح التداول الآلي بالكامل بناءً على إشارات المؤشر (indicator signals). وهذا يجعله أداة متعددة الاستخدامات للمتداولين الذين يتطلعون إلى تخصيص استراتيجيات التداول الخاصة بهم.
منشئ استراتيجيات (Strategy Builder) سهل. بمجرد إدخال اسم المؤشر الذي اخترته مع أسهمه ومخازنه المؤقتة للإشارة (arrow and signal buffers)، يتولى xCustomEA الباقي، ويقوم بأتمتة الصفقات بناءً على الإشارات التي يولدها المؤشر.
ميزات تداول متقدمة. بالإضافة إلى المؤشرات المخصصة، يقدم xCustomEA مجموعة واسعة من الوظائف المدمجة لتعزيز وتحسين استراتيجية التداول الخاصة بك. لديك السيطرة الكاملة لتخصيص تنفيذ الصفقة، ووقف الخسارة (Stop Loss)، وجني الأرباح (Take Profit)، والمزيد.
فوائد The xCustomEA
يعمل مع أي مؤشر مخصص. سواء تم تنزيله من سوق MQL5 أو من أي مصدر آخر على الإنترنت، يقرأ xCustomEA ويتداول بناءً على مخازن الإشارة المؤقتة من المؤشرات المخصصة التي اخترتها.
تداول آلي بالكامل. مع xCustomEA، يمكنك أتمتة استراتيجيتك على منصتي MetaTrader 4 و MetaTrader 5، مما يضمن تنفيذ الصفقات بدقة وكفاءة.
تحكم كامل في الاستراتيجية. قم بتخصيص استراتيجية التداول الخاصة بك بسهولة باستخدام مجموعة الميزات الشاملة لـ xCustomEA، بما في ذلك أدوات إدارة المخاطر (Risk management tools) ومنطق التداول المتقدم.
يدعم MetaTrader 4 و MetaTrader 5. سواء كنت تستخدم MT4 أو MT5، يوفر xCustomEA توافقًا سلسًا، مما يوفر للمتداولين مرونة عبر المنصات.
يعد The xCustomEA الحل الأمثل للمتداولين الذين يبحثون عن مستشاري تداول قابلين للتخصيص يعملون مع MetaTrader 4 و MetaTrader 5. زد من إمكانات التداول لديك بقوة توصيل أي مؤشر مخصص وإنشاء استراتيجيات مؤتمتة مصممة خصيصًا لاحتياجاتك.
كيف يعمل xCustomEA؟
مستشار جديد مبني على مؤشرات iCustom
يمكنك اختبار مؤشرات iCustom من السوق مجانًا
يمكنك برمجة الاستراتيجية في 5 دقائق
جميع منصّات MetaTrader، جميع أنواع الحسابات، جميع الرموز
(xColorArrow مع 1 Buffer و 2 Colors)، حيث تمتلك أسهم الإشارة لونين مختلفين (DRAW_COLOR_ARROW).
xArrow – يعمل المستشار مباشرة مع مؤشر مخصّص يملك مخازن من نوع Arrow يمكن للمستشار استخدامها.
تعريف الإشارة والفلتر
يمكنك استخدام إشارات من المؤشرات القياسية! تُضاف استراتيجيات الإشارات من المؤشرات القياسية من The X Advisor Expert.
مثال على تقسيم مؤشر مخصّص في إعدادات المستشار
مثال: Pipfinite Trend Pro + xCustomEA
مثال على برمجة استراتيجية لـ xCustomEA الخاص بنا
ماذا يكتب الناس عن xCustomEA؟
Deniz90
Excellent EA, providing endless opportunities. The author is very helpful and responsive, definitely recommended.
leachimk
Присоединяюсь к словам предыдущего автора. Советник обладает всеми необходимыми инструментами для успешной торговли. Ключевое слово - оптимизация. Особая благодарность разработчику за то, что он постоянно продолжает усовершенствовать советник.
Респект и так держать!
ROBERT URBANSKI
I rent this EA for one month for testing.
I give 5 stars in begin for Suport.
After month I will update info about EA but now I can tell.
It have many interesting settings.
I tried work with many custom indicator (not build).
Works very impresive.
DadeSubandryo
Great support for consumers. still learning stage & EA started to work as i want. I will update the stars & comments if necessary. Thank you
Stanimir Stanchev
I am using xCustomEA for two months and i am extreamly happy with it and the support i'd received from Vladislav. His Exp4 Tester PAD for Strategy Tester is also very useful when it comes to test a strategy in visual mode. My favorite developer as of now!
Hanxyork
I purchased the xCustomEA few days ago, Vladislav answered all my questions quickly, he is very professional, responsible, knowledgeable, honest and dedicated, he helped me to start up my xCustomEA in a VPS.
I am buying more of his products, definitely.
Thank you very much Vladislav.
189114nickynomates
This has opened up a whole new world to my trading. The concept is pure brilliant. The forums very informative and you always get help to questions detailed in the correct way. The biggest gain I have received is widening my understanding of the scope that can be achieved in cleaver trading with this ea. Keep up the good work.
Valter Oliveira
Excellent product for implementing Expert Advisors (EA) using existing indicators in the MQL5 market. I thank the developer for making this tool available to us.
Atila R Akdeniz
I just bought the EA. I have been using The X Universal for a long time now, with great results.
This EA does everything TheX Universal does and much more, including integration of other EA's and signals and independent strategies etc.
I guess there will be a little bit of a learning curve to understand its full functionality and use it to its full power.
5 stars for such an innovative product from a great designer.
يمكنك تحميل وتثبيت برنامجنا مجانًا (Demo account) بلا حدود زمنية! ويمكنك أيضًا اختبار برنامجنا مجانًا على حساب حقيقي (Real account) باستخدام زوج العملات USDJPY!
عند برمجة المستشارين الخبراء (Expert Advisors or EAs) من خلال طلبات العمل الحر، لاحظنا أن 90% من الطلبات كانت مبنية على استراتيجيات تعتمد على المؤشرات. لتلبية هذا الطلب، كان تركيزنا الأولي على تضمين المؤشرات المخصصة في قالب (template) كتابة المستشار الخاص بنا لتطوير المستشارين.
ومع ذلك، غالبًا ما كانت تكلفة إنشاء مثل هذا النظام – بما في ذلك القالب ووقت التطوير وتوفير الوصول إلى المصدر المفتوح – باهظة للغاية. وجد العديد من المتداولين أن إنشاء مستشار لمؤشر مخصص واحد مكلف، خاصة إذا تبين أن المؤشر غير مربح. في مثل هذه الحالات، كان عليهم الدفع مقابل مستشار جديد تمامًا يعتمد على مؤشر مختلف، مما يؤدي إلى تكرار النفقات.
الحل: The xCustomEA – مستشار تداول عالمي
لحل هذه المشكلة، قمنا بتطوير The xCustomEA، وهو مستشار تداول عالمي يعمل مع المؤشرات المخصصة ويمكن تخصيصه بالكامل للتداول بناءً على إشارات من أي مؤشر تختاره.
بخلاف المستشارين الخبراء التقليديين، لا يأتي The xCustomEA باستراتيجيات محددة مسبقًا. بدلاً من ذلك، يسمح لك بما يلي:
برمجة المؤشرات المخصصة الخاصة بك وأتمتة التداول بناءً على إشاراتها.
استخدام The xCustomEA لفتح الصفقات بناءً على إشارات من المؤشرات التي اخترتها، مما يجعله أداة متعددة الاستخدامات للمتداولين الذين يرغبون في اختبار واستخدام استراتيجيات مختلفة.
فوائد The xCustomEA
بشراء The xCustomEA، تكتسب المرونة في:
برمجة وتعديل المستشارين الخبراء لمؤشرات جديدة يوميًا، دون الحاجة إلى توظيف مطور لكل استراتيجية جديدة.
تجنب التكاليف الباهظة المرتبطة بإنشاء مستشارين خبراء جدد لكل مؤشر مخصص.
يمكن تكييف xCustomEA للعمل مع أي مؤشر، مما يوفر الوقت والمال.
مع The xCustomEA، يمكنك التداول بناءً على إشارات من أي مؤشر مخصص، مما يمنحك تحكمًا كاملاً في استراتيجياتك على MetaTrader 4 و MetaTrader 5. إنه الحل المثالي للمتداولين الذين يرغبون في اختبار أنظمتهم التجارية وتحسينها وتكييفها بسهولة، كل ذلك من مستشار عالمي واحد.
تم بناء كل من The X و The xCustomEA على نفس كود MQL القوي ويشتركان في العديد من الوظائف نفسها، مما يوفر حلاً تجاريًا موثوقًا ومرنًا. ومع ذلك، فإنهما يختلفان في نهجهما تجاه المؤشرات، مما يمنحك الاختيار بين الاستراتيجيات القياسية والمخصصة.
The X – المستشار العالمي
The X هو مستشار تداول عالمي مصمم للعمل مع المؤشرات القياسية (standard indicators) المتوفرة في منصات MetaTrader 4 و MetaTrader 5.
يقدم ما يقرب من 20 استراتيجية تداول مدمجة تعتمد على المؤشرات القياسية مثل المتوسطات المتحركة (Moving Averages)، الماكد (MACD)، مؤشر القوة النسبية (RSI)، بولينجر باندز (Bollinger Bands)، وغيرها المزيد. قائمة المؤشرات والفلاتر
مثالي للمتداولين الذين يفضلون استخدام المؤشرات المألوفة والموثوقة التي تأتي مثبتة مسبقًا في منصات MetaTrader.
The xCustomEA – مستشار عالمي للمؤشرات المخصصة
يعتمد The xCustomEA على أساس The X ولكنه مصمم للعمل مع المؤشرات المخصصة. وهذا يمنح المتداولين المرونة في تنفيذ أي مؤشر يختارونه من الإنترنت أو سوق mql5.
بالإضافة إلى توافق المؤشرات المخصصة، يتضمن The xCustomEA20 استراتيجية قياسية من The X، مما يوفر أفضل ما في العالمين: استراتيجيات مدمجة مع مؤشرات قياسية وخيار التخصيص بمؤشراتك الخاصة.
وهذا يجعل The xCustomEA مثاليًا للمتداولين الذين يرغبون في تخصيص استراتيجيات التداول الخاصة بهم باستخدام المؤشرات المخصصة مع الاستمرار في الوصول إلى الاستراتيجيات المثبتة.
أحدث إصدار من The xCustomEA: يقدم ما يقرب من 20 استراتيجية تداول مدمجة تعتمد على المؤشرات القياسية مثل المتوسطات المتحركة، الماكد، مؤشر القوة النسبية، بولينجر باندز، وغيرها المزيد. قائمة المؤشرات والفلاتر
سواء اخترت The X للمؤشرات القياسية في MetaTrader أو The xCustomEA لمرونة المؤشرات المخصصة، يوفر لك كلا المستشارين استراتيجيات تداول قوية وقابلة للتخصيص على MetaTrader 4 و MetaTrader 5.
فوائد xCustomEA
The xCustomEA: تداول مخصص بدون استراتيجيات مدمجة
بخلاف مستشاري التداول التقليديين، لا يأتي The xCustomEA باستراتيجيات مدمجة. بدلاً من ذلك، يمنحك المرونة في تنفيذ المؤشرات المخصصة لـ MetaTrader 4 و MetaTrader 5، مما يوفر تحكمًا كاملاً في نظام التداول الخاص بك.
تكامل المؤشرات المخصصة
مع The xCustomEA، يمكنك اختيار أي مؤشر مخصص يوفر إشارات، مثل الأسهم، والتداول مباشرة بناءً على تلك الإشارات. يتيح لك ذلك تكييف تداولك مع احتياجاتك الخاصة من خلال دمج المؤشرات المخصصة المتاحة على الإنترنت أو سوق mql5.
إنشاء وبرمجة استراتيجيات التداول الخاصة بك
تم تصميم The xCustomEA للمتداولين الذين يفضلون إنشاء استراتيجياتهم الخاصة. يمكنك برمجة استراتيجية التداول المخصصة الخاصة بك بناءً على أي مؤشر تجده عبر الإنترنت، مما يمنحك خيارات غير محدودة لبناء نظام يناسب أسلوب تداولك.
الوصول إلى الاستراتيجيات الجاهزة
بالإضافة إلى برمجة استراتيجياتك الخاصة، يمكنك تنزيل استراتيجيات جاهزة متوافقة مع The xCustomEA. يتم تحديث هذه القائمة المتزايدة من الاستراتيجيات المبرمجة مسبقًا بانتظام، مما يتيح لك دمج أفكار وتقنيات جديدة بسهولة في تداولك.
الاستفادة من استراتيجيات The X
هل تستخدم بالفعل استراتيجيات من The X – Universal EA؟ يمكنك استيراد جميع الإشارات من استراتيجيات The X وتطبيق تعديلاتك المخصصة. يوفر هذا مرونة أكبر لتحسين نهجك مع استخدام استراتيجيات مألوفة ومثبتة.
إذا كنت لا تعرف كيف ولا تريد تعلم البرمجة وكنت راضيًا عن المؤشرات القياسية، فإن اختيارك هو The X.
إذا كنت تعرف كيف تبرمج وتهتم بدراسة مؤشرات أخرى، فإن اختيارك هو The xCustomEA.
وظائف هذين المستشارين متساوية!
الوظائف الأساسية ووصف المعلمات
لن نتطرق إلى الوصف التفصيلي للمعلمات الرئيسية للمستشار لأن 99% من الإعدادات تتوافق مع نظامنا، The X.
يقدم مستشار التداول xCustomEA مجموعة شاملة من الوظائف القوية المصممة لتعزيز تجربتك التجارية على MetaTrader 4 (MT4) و MetaTrader 5 (MT5). سواء كنت تبحث عن إدارة متقدمة للأموال، أو استراتيجيات آلية، أو تنفيذ دقيق للصفقات، فإن xCustomEA يلبي احتياجاتك.
في The xCustomEA، توجد وظائف مثل:
حساب اللوت التلقائي (Autolot Calculation) و إدارة رأس المال (Money Management): حساب أحجام اللوت تلقائيًا بناءً على رصيدك الحالي، مما يحسن إدارة المخاطر لديك.
خيار اللوت الثابت (Fixed Lot Option): تعيين حجم لوت ثابت لتحديد حجم مركز ثابت.
التحكم في وقت التداول (Trading Time Control): تحديد عمل المستشار لساعات تداول محددة، مما يمنحك تحكمًا أكبر في استراتيجيتك.
وظائف وقف الخسارة المتحرك (Trailing Stop Functions):
وقف الخسارة المتحرك (Trailing Stop) القياسي مع خيار استخدام خوارزمية “الربح فقط”.
وقف الخسارة المتحرك بارابوليك سار (Parabolic SAR Trailing Stop): لإدارة الصفقات الديناميكية بناءً على حركة السعر.
معالجة الأخطاء (Error Handling) للحسابات الحقيقية: يضمن التشغيل السلس على حسابات التداول الحية مع آليات استرداد الأخطاء المدمجة.
إغلاق الكتلة عند إجمالي الربح أو الخسارة (Total Profit or Loss): إغلاق جميع الصفقات تلقائيًا عند الوصول إلى حد ربح أو خسارة محدد، مع خيار تعطيل المستشار على الحساب.
وظيفة نقطة التعادل (Breakeven Functionality): نقل وقف الخسارة إلى نقطة التعادل (صفر) لحماية الأرباح بمجرد تحرك الصفقة لصالحك.
استراتيجية مارتينجال (Martingale Strategy): زيادة حجم اللوت بعد صفقة خاسرة لاسترداد الخسائر، مع معلمات قابلة للتخصيص.
التداول الموجه بالمؤشرات:
فتح وإغلاق المراكز بناءً على إشارات المؤشر.
تشغيل أوامر معاكسة عند تلقي إشارات عكسية.
إغلاق المراكز تلقائيًا عند تغير الإشارة.
وظيفة عكس الإشارة (REVERSE): قلب إشارات استراتيجيتك لنهج تداول عكسي.
متوسط المراكز الخاسرة (Averaging Unprofitable Positions): إدارة المخاطر عن طريق حساب متوسط المراكز الخاسرة لتحسين نقطة التعادل الإجمالية.
فتح مراكز إضافية:
فتح مراكز في اتجاه الترند.
فتح مراكز عكس اتجاه الترند لاستراتيجيات عكس الترند.
وقف الخسارة الافتراضي (Virtual Stop Loss)، جني الأرباح (Take Profit)، ووقف الخسارة المتحرك: حماية مراكزك بمستويات افتراضية، وإبقائها مخفية عن الوسطاء لتعزيز السرية.
إدارة شاملة للأوامر:
تنفيذ مراكز السوق، والأوامر المعلقة، والأوامر المحددة بسهولة.
إدارة التراجع (Drawdown Management): مراقبة وإدارة مستويات التراجع بنشاط لحماية رصيد حسابك.
حدود الربح والخسارة: تعيين حدود لأقصى ربح أو خسارة مسموح بها في كل صفقة أو عبر جميع المراكز المفتوحة.
العمل مع نتائج الاختبار: اختبار وتحسين استراتيجيتك باستخدام البيانات التاريخية لتحسين الأداء.
وضع شبه آلي مع تنبيهات (ALERT): تلقي إشعارات على الشاشة (تنبيه (ALERT)) عندما تشير الاستراتيجية إلى فرصة، مما يتيح لك تأكيد إدخالات الصفقات يدويًا دون تنفيذ تلقائي.
الإشارة – تحدث عندما يتم استيفاء جميع شروط الإشارة، على سبيل المثال، تقاطع خطوط المتوسط المتحرك (MA lines) أو ظهور نقطة جديدة في مؤشر زيج زاج (ZigZag).
الإشارة – ما يظهر في لحظة استلام الإشارة، يتم تثبيته على الشمعة (bar). يتعرف المستشار على أنه تم إصدار إشارة.
على سبيل المثال: يضيء مصباح. هذه إشارة لأن المصباح قد أضاء للتو. عندما يضيء المصباح، يستيقظ شخص ما. هذه إشارة.
تحدث عمليات فتح المراكز بعد إصدار الإشارة. تتقاطع الخطوط، ثم يتم فتح المركز. إذا كانت الخطوط قد تقاطعت من قبل، فهذه ليست إشارة. لقد مرت الإشارة.
تعمل مستشارو xCustomEA مع مؤشرنا، الذي تقوم فيه ببرمجة استراتيجيتك.
إذا كنت بحاجة إلى برمجة المستشار للعمل مع المؤشر، فانتقل إلى القسم التالي: برمجة استراتيجيتك.
xArrow:
xArrow – يعمل المستشار الخبير مباشرة مع مؤشر مخصص يحتوي على مخازن من نوع الأسهم (Arrow-type buffers) يمكن للمستشار الخبير استخدامها.
على سبيل المثال، مخزن بإشارات المؤشر لـ شراء ومخزن بإشارات المؤشر لـ بيع (SELL).
يجب أن تكون هذه المخازن من نوع السهم. يحدد المستشار الخبير الخاص بنا الإشارة حسب النوع: يجب أن تكون قيمة المخزن أعلى من 0 وألا تساوي قيمة فارغة (EMPTY_VALUE).
// — We check the conditions and set the value for sig
if (xCustom_SIGNAL_BUY_buffer[OWNSIGNAL_shift] != EMPTY_VALUE && xCustom_SIGNAL_BUY_buffer[OWNSIGNAL_shift] > 0) sig = 1;
else if (xCustom_SIGNAL_SELL_buffer[OWNSIGNAL_shift] != EMPTY_VALUE && xCustom_SIGNAL_SELL_buffer[OWNSIGNAL_shift] > 0) sig = -1;
مثال على الكود في المؤشر لرسم الأسهم:
xColorArrow:
نوع إشارات المؤشر (xColorArrow مع مخزن واحد ولونين)، حيث تحتوي أسهم الإشارة على لونين مختلفين (DRAW_COLOR_ARROW).
مثال على الكود في المؤشر لرسم الأسهم الملونة:
قائمة المؤشرات:
يمكنك استخدام إشارات من المؤشرات القياسية! تمت إضافة استراتيجيات الإشارات من المؤشرات القياسية من المستشار الخبير The X
NoSignal (لا إشارة)=100, // لا توجد إشارة لفتح مركز
MA (المتوسط المتحرك)=101, // المتوسط المتحرك
MACD (الماكد)=102, // تقارب وتباعد المتوسط المتحرك (MACD)
RSI (مؤشر القوة النسبية)=104, // مؤشر القوة النسبية (RSI)
CCI (مؤشر قناة السلع)=105, // مؤشر قناة السلع (Commodity Channel Index or CCI)
WPR (نطاق ويليامز النسبي)=106, // نطاق ويليامز النسبي (Williams Percent Range or WPR)
BB (بولينجر باندز)=107, // بولينجر باندز
Envelopes (المغلفات)=108, // المغلفات (Envelopes)
Alligator (التمساح)=109, // التمساح (Alligator)
OsMA (متوسط متحرك للمذبذب)=110, // متوسط متحرك للمذبذب (Moving Average of Oscillator or OsMA)
AO (المذبذب الرائع)=111, // المذبذب الرائع (Awesome Oscillator or AO)
ISH (إيشيموكو)=112, // إيشيموكو (Ichimoku)
AC (مذبذب التسارع)=113, // مذبذب التسارع (Accelerator Oscillator or AC)
BAR (شمعة هابطة/صاعدة)=114, // شمعة هابطة/صاعدة (BAR BEAR/BULL)
ADX (مؤشر متوسط الاتجاه)=115, // مؤشر متوسط الاتجاه (Average Directional Index or ADX)
ZigZag (زيج زاج)=117, // زيج زاج
MFI (مؤشر تدفق الأموال)=120, // مؤشر تدفق الأموال (Money Flow Index or MFI)
Fractals (الفركتلات)=121, // الفركتلات (Fractals)
تثبيت سهل لمؤشر iCustom في إدخال xCustomEA الخاص بنا
إذا كنت لا ترغب في برمجة استراتيجيتك وكان مؤشرك المخصص يسمح لك بالعمل مباشرة مع المستشار، فيمكنك تحديد اسم المؤشر وتعيين المخازن لعمله على إشارات شراء و بيع.
على سبيل المثال:
1. اكتب اسم المؤشر المخصص! إذا تم تنزيل هذا المؤشر من سوق MQL5، فأنت بحاجة إلى تحديد المسار من مجلد السوق:
Market\\PipFinite Trend PRO MT5
تأكد من استخدام شرطة مائلة عكسية مزدوجة \\
2. حدد نوع إشارات xArrow.
3. حدد عدد مخازن الإشارة لفتح شراء (في هذا المثال، رقم المخزن 8).
4. حدد عدد مخازن الإشارة لفتح بيع (في هذا المثال، رقم المخزن 9).
كيف تجد أرقام المخازن (Buffer Numbers)
وبالتالي، لا نحتاج إلى برمجة مؤشرنا لكي يعمل المستشار.
مثالنا على المؤشر المخصص يحتوي على مخازن لعمل المستشار، ويمكننا استخدامه مباشرة!
في قسمنا، أمثلة استراتيجية The xCustomEA، سننشر أمثلة على استراتيجيات البرمجة والمستشارين باستخدام المؤشرات المعروفة في السوق!
MetaTrader 4: برمجة استراتيجيتك باستخدام مؤشر مخصص في MT4
تتكون برمجة المستشار بمؤشر مخصص في MT4 من أربع خطوات:
MetaTrader 4 الخطوة 1: تحميل المؤشرات إلى الموارد (Resources)
// Step
// This part of the code is for programming your strategy in open source
//
// To include the indicator in the advisor during compilation, you need to load it into the advisor's resources
// For example:
// * #resource "IndicatorsMACD.ex4"
هنا، يجب أن نضيف المؤشرات المطلوبة إلى الموارد.
يتيح لنا ذلك تجميع المؤشر للسوق وتجنب المشكلات حيث لا يتمكن المستشار المجمع من العثور على المؤشر على كمبيوتر آخر.
قواعد كتابة اسم المؤشر: استخدم المسار الكامل بدءًا من Indicators!
المجلد المشار إليه بـ
على سبيل المثال:
إذا كان مسار مؤشرك يبدو كالتالي:
C:\ROBO\MT4\MQL4\Indicators\Examples\MACD.ex4
إذن، يُكتب مسار هذا المؤشر في لغة البرمجة كالتالي:
Indicators\Examples\MACD.ex4
MetaTrader 4 الخطوة 2: إنشاء الاستراتيجيات والإشارات لفتح المراكز
// Step
// This part of the code is for programming your strategy in open source
//
// Here we create our signal for opening positions by filling data buffers
//
// For example:
// * if (sigInd == 1)
// * {
//
// Fill in the data
//
// * double CustomMain = iCustom(StrategySymbol, StrategyTimeFrame, "::IndicatorsMACD", periodma1, periodma2, 9, MAprice,
// * MODE_MAIN, StartCopyI + ShiftIndicator);
// * double CustomSig = iCustom(StrategySymbol, StrategyTimeFrame, "::IndicatorsMACD", periodma1, periodma2, 9, MAprice,
// * MODE_SIGNAL, StartCopyI + ShiftIndicator + 1);
//
// Here we write our strategy, in this example, it is the intersection of two lines
//
// * if (CustomMain > CustomSig && CustomMain2 < CustomSig2)
// * sig = 1;
// * if (CustomMain < CustomSig && CustomMain2 > CustomSig2)
// * sig = -1; //
//
// Write the data that will be displayed in the log when opening positions on the signal
//
// * InfoAboutSignal = "InfoAboutSignal sigInd =" + (string)sigInd + " sig =" + (string)sig
// * + " CustomMain =" + CustomMain
// * + " CustomSig =" + CustomSig
// * + " CustomMain2 =" + CustomMain2
// * + " CustomSig2 =" + CustomSig2
// *;
//
// --- return the trading signal
// * return sig;
// *}
هذه الخطوة حاسمة للمستشار. على الرغم من أن جميع الخطوات الأخرى مطلوبة، فلن يعمل المستشار بشكل صحيح بدون هذه الخطوة.
لقد أضفت تعليقات في الكود لإرشادك!
برمج كود الاستراتيجية والإشارة بشكل فردي. يعتمد ذلك على الاستراتيجية والمؤشرات المختارة.
استرجع مخازن الاستراتيجية.
لاحظ أنه في هذا البلوك، يمكنك تحديد أي استراتيجية.
برمجة الاستراتيجية، مثل تقاطع خطين.
مهم: إشارة شراء هي 1، وإشارة بيع هي -1.
سأنشر أمثلة على الاستراتيجيات في منتدانا!
MetaTrader 4 الخطوة 3: تحديد الفلاتر من مؤشراتك أو استخدام مؤشرك كفلتر للاستراتيجية
// Step
// This part of the code is for programming your strategy in open source
//
// Here we create our filter to filter the signals by filling data buffers
//
// For example:
// * if (sigInd == 1)
// * {
//
// Fill in the data
//
// * double CustomMain = iCustom(StrategySymbol, StrategyTimeFrame, "::IndicatorsMACD", periodma1, periodma2, 9, MAprice,
// * MODE_MAIN, shift);
// * double CustomSig = iCustom(StrategySymbol, StrategyTimeFrame, "::IndicatorsMACD", periodma1, periodma2, 9, MAprice,
// * MODE_SIGNAL, shift);
//
// Here we write our strategy, in this example, it is the intersection of two lines
//
// * if (CustomMain > CustomSig)
// * sig = 1;
// * if (CustomMain < CustomSig)
// * sig = -1; //
//
// Write the data that will be displayed in the log when opening positions on the signal
//
// * InfoAboutSignal = "InfoAboutSignal sigInd =" + (string)sigInd + " sig =" + (string)sig
// * + " CustomMain =" + CustomMain
// * + " CustomSig =" + CustomSig
// *;
//
// --- return the trading signal
// * return sig;
// *}
برمجة الكود في هذه الخطوة مباشرة ومماثلة للخطوة السابقة.
الفرق الوحيد هو أنك في هذه الخطوة تقوم ببرمجة مؤشراتك كفلتر.
لا يمكنك تحديد الإشارات على المؤشر واستخدامه كفلتر في نفس الوقت. كل هذا يتوقف على الاستراتيجية.
MetaTrader 5: برمجة استراتيجيتك على مؤشر مخصص في MT5
MetaTrader 5 الخطوة 1: تحميل المؤشرات إلى الموارد
// Step
// This part of the code is for programming your strategy in open source
//
// To include the indicator in the advisor during compilation, you need to load it into the advisor's resources
// For example:
// * #resource "IndicatorsExamplesMACD.ex5"
هنا، يجب أن نضيف المؤشرات المطلوبة إلى الموارد.
يتيح لنا ذلك تجميع المستشار للسوق وتجنب المشكلات حيث لا يتمكن المستشار المجمع من العثور على المؤشر على كمبيوتر آخر.
قواعد كتابة اسم المؤشر: استخدم المسار الكامل بدءًا من Indicators!
المجلد المشار إليه بـ
على سبيل المثال:
إذا كان مسار مؤشرك يبدو كالتالي:
C:\ROBO\MT5\MQL5\Indicators\Examples\MACD.ex5
إذن، يُكتب مسار هذا المؤشر في لغة البرمجة كالتالي:
Indicators\Examples\MACD.ex5
MetaTrader 5 الخطوة 2: إعلان المتغيرات لتخزين مؤشرات التعامل (Handles) لمؤشرات الاستراتيجية
// Step
// This part of the code is for programming your strategy in open source
//
// Declare the array variable to handle
//
// For example:
// * int h_custom;
// * int h_custom2;
هنا، نحدد أسماء مؤشرات التعامل الخاصة بنا التي تم إنشاؤها أعلاه!
لا يوجد شيء معقد هنا.
يتم إنشاء مؤشرات التعامل كمصفوفات لتمكين الاستخدام متعدد العملات في المستشار والقدرة على تحديد ما يصل إلى ست إشارات أو فلاتر في وقت واحد!
MetaTrader 5 الخطوة 3: إعلان المتغيرات لتخزين بيانات المؤشر
// Step ###
// This part of the code is for programming your strategy in open source
//
// Declare an array variable for indicator values
//
// For example:
// * double custom1_buffer[];
// * double custom2_buffer[];
هنا، نحدد أسماء مخازن البيانات الخاصة بنا!
لا يوجد شيء معقد هنا.
سيتم تخزين قيم المؤشر لكل شمعة في هذه المصفوفات. إذا كنت بحاجة إلى استخدام مخازن متعددة، يمكنك إنشاء متغيرات متعددة.
في حالتنا، على سبيل المثال، نحتاج إلى مخزنين لخطوط الإشارة والخط الرئيسي لمؤشر الماكد.
MetaTrader 5 الخطوة 4: إنشاء مؤشرات التعامل للمؤشرات لتنزيلها إلى المستشار
// Step 4
// This part of the code is for programming your strategy in open source
//
// Create a record in the array so that the advisor assigns the handle of the indicator during initialization
//
// For example:
// * case 1: h_custom = iCustom(StrategySymbolString, StrategyTimeFrame, "::IndicatorsExamplesMoving AverageMoving Average", MAFastPeriod, MAmethod, MAprice);
// * h_custom2 = iCustom(StrategySymbolString, StrategyTimeFrame, "::IndicatorsExamplesMoving AverageMoving Average", MASlowPeriod, MAmethod, MAprice);
// * if (h_custom == INVALID_HANDLE)
// * {
// * Print("Failed to get the handle of the Moving Average indicator");
// * return(INIT_FAILED);
// * }
// * if (h_custom2 == INVALID_HANDLE)
// * {
// * Print("Failed to get the handle of the Moving Average indicator");
// * return(INIT_FAILED);
// * }
// * break;
هذه الخطوة ضرورية ليتم تحميل مؤشراتنا مرة واحدة أثناء تهيئة المستشار. في MetaTrader 5، ليس من الضروري تحميل المؤشر باستمرار على الرسم البياني.
عند إنشاء مؤشر تعامل، نشير إلى مؤشر تعامل لمؤشر مفتوح بالفعل ونستخدمه للعمليات اللاحقة.
يجب أن تكون منتبهًا جدًا هنا. عند إنشاء مؤشر تعامل، يجب عليك تحديد جميع المتغيرات الخارجية للمؤشر واستخدام الاسم الصحيح. وإلا، لن يتمكن المستشار من تحميل المؤشر.
تذكر أننا قمنا بتحميل المؤشر إلى موارد المستشار. لذلك، سنقوم باستدعاء المؤشر من الموارد!
نحتاج أيضًا إلى رقم استراتيجية لكتابة هذا الكود. إذا كان لديك عدة مؤشرات في استراتيجية واحدة، فأنت بحاجة إلى تحديد مؤشرات متعددة ولكن بنفس الرقم لضمان تحميل المستشار لاستراتيجيتك بشكل صحيح.
في أمثلتنا أعلاه، نحتاج إلى القيام بما يلي:
h_custom = iCustom(StrategySymbolString, StrategyTimeFrame, "::IndicatorsExamplesMoving AverageMoving Average");
h_custom2 = iCustom(StrategySymbolString, StrategyTimeFrame, "::IndicatorsExamplesMoving AverageMoving Average");
if (h_custom == INVALID_HANDLE)
{
Print("Failed to get the handle of the Moving Average indicator");
return;
}
if (h_custom2 == INVALID_HANDLE)
{
Print("Failed to get the handle of the Moving Average indicator");
return;
}
break;
قياسًا على ما سبق، يمكنك إضافة عدة مؤشرات ومؤشرات تعامل.
أيضًا، أضف استراتيجيات أخرى تريد دمجها في المستشار!
MetaTrader 5 الخطوة 5: إنشاء الاستراتيجيات والإشارات لفتح المراكز
// Step 5
// This part of the code is for programming your strategy in open source
//
// Here we create our signal for opening positions by filling data buffers
//
// For example:
// * if (sigInd == 1)
// * {
//
// Fill in the data
//
// * if (CopyBuffer(h_custom, 0, 0, 3 + ShiftIndicator, custom1_buffer) < 3 + ShiftIndicator)
// * return(0);
// * if (!ArraySetAsSeries(custom1_buffer, true))
// * return(0);
// * if (CopyBuffer(h_custom2, 0, 0, 2 + ShiftIndicator, custom2_buffer) < 2 + ShiftIndicator)
// * return(0);
// * if (!ArraySetAsSeries(custom2_buffer, true))
// * return(0);
//
// Here we write our strategy, in this example, it is the intersection of two lines
//
// * if (custom1_buffer[ShiftIndicator + 1] < custom2_buffer[ShiftIndicator + 1] && custom1_buffer[ShiftIndicator] > custom2_buffer[ShiftIndicator])
// * sig = 1;
// * else if (custom1_buffer[ShiftIndicator + 1] > custom2_buffer[ShiftIndicator + 1] && custom1_buffer[ShiftIndicator] < custom2_buffer[ShiftIndicator])
// * sig = -1;
// * else
// * sig = 0;
//
// Write the data that will be displayed in the log when opening positions on the signal
//
// * InfoAboutSignal = "InfoAboutSignal sigInd =" + (string)sigInd + " TF =" + (string)TF + " Symbol =" + symToWork3 + " sig =" + (string)sig + " FUNCTION "
// * + " custom1_buffer[ShiftIndicator + 1] =" + (string)custom1_buffer[ShiftIndicator + 1]
// * + " custom2_buffer[ShiftIndicator + 1] =" + (string)custom2_buffer[ShiftIndicator + 1]
// * + " custom1_buffer[ShiftIndicator] =" + (string)custom1_buffer[ShiftIndicator]
// * + " custom2_buffer[ShiftIndicator] =" + (string)custom2_buffer[ShiftIndicator];
//
// --- return the trading signal
// * return sig;
// *}
هذه الخطوة ضرورية للمستشار.
على الرغم من أن جميع الخطوات الأخرى مطلوبة، فلن يعمل المستشار بشكل صحيح بدون هذه الخطوة.
لقد أضفت تعليقات في الكود لإرشادك!
رقم استراتيجيتنا هو نفسه كما في الخطوات السابقة!
برمج كود الاستراتيجية والإشارة بشكل فردي. يعتمد ذلك على الاستراتيجية والمؤشرات المختارة.
استرجع مخازن الاستراتيجية.
لاحظ أنه في هذا البلوك، يمكنك تحديد أي استراتيجية.
سيتم تحميل جميع المؤشرات التي أعلنا عنها في مؤشرات التعامل إلى الذاكرة واستخدامها لبناء الاستراتيجية.
يمكن تقسيم هذه الخطوة إلى خطوتين فرعيتين:
1. يجب علينا نسخ مخازن البيانات إلى مصفوفات البيانات الخاصة بنا. في إعدادات النسخ، يجب علينا تحديد أرقام الأسطر (في حالتنا، هذه هي خطوط مؤشر الماكد).
MetaTrader 5 الخطوة 6: تحديد الفلاتر من مؤشراتك أو استخدام مؤشرك كفلتر للاستراتيجية
// Step 6 ###
// This part of the code is for programming your strategy in open source
//
// Here we create our filter to filter the signals by filling data buffers
//
// For example:
// * if (sigInd == 1)
// * {
//
// Fill in the data
//
// * if (CopyBuffer(h_custom, 0, 0, 3 + ShiftIndicator, custom1_buffer) < 3 + ShiftIndicator)
// * return(0);
// * if (!ArraySetAsSeries(custom1_buffer, true))
// * return(0);
// * if (CopyBuffer(h_custom2, 0, 0, 2 + ShiftIndicator, custom2_buffer) < 2 + ShiftIndicator)
// * return(0);
// * if (!ArraySetAsSeries(custom2_buffer, true))
// * return(0);
//
// Here we write our strategy, in this example, it is the intersection of two lines
//
// * if (custom1_buffer[ShiftIndicator] != 0 && custom2_buffer[ShiftIndicator] != 0)
// * {
// * Alert("Congratulations! You have completed a lesson that demonstrates programming your strategy!");
// * }
//
// * if (custom1_buffer[ShiftIndicator] > custom2_buffer[ShiftIndicator])
// * sig = 1;
// * else if (custom1_buffer[ShiftIndicator] < custom2_buffer[ShiftIndicator])
// * sig = -1;
// * else
// * sig = 0;
//
// Write the data that will be displayed in the log when opening positions on the signal
//
// * InfoAboutSignal = InfoAboutSignal + "" + "sigInd =" + (string)sigInd + " TF =" + (string)TF + " Symbol =" + symToWork3 + " sig =" + (string)sig + "" + __FUNCTION__ + ""
// * + " custom1_buffer[ShiftIndicator] =" + (string)custom1_buffer[ShiftIndicator]
// * + " custom2_buffer[ShiftIndicator] =" + (string)custom2_buffer[ShiftIndicator];
//
// --- return the trading signal
// * return sig;
// *}
برمجة الكود في هذه الخطوة مباشرة ومماثلة للخطوة السابقة.
الفرق الوحيد هو أنك في هذه الخطوة تقوم ببرمجة مؤشراتك كفلتر.
لا يمكنك تحديد الإشارات على المؤشر واستخدامه كفلتر في نفس الوقت. كل هذا يتوقف على الاستراتيجية.
المتغيرات الخارجية (External Variables) والإعدادات في xCustomEA
قسم توصيل مؤشر مخصص (استراتيجية مخصصة (Custom Strategy)) بـ مستشارنا الخبير (EA (Expert Advisor))
تم تضمين قسم جديد للاستراتيجية/المؤشر المخصص في مستشارنا الخبير (EA) المحدث.
المعلمة
الوصف
خيارات الإشارة الخاصة (OWN Signal Options)
SignalNameIndicator
اسم المؤشر المخصص الذي يتم من خلاله استقبال الإشارات الرئيسية لفتح الصفقات (Opening positions).
الافتراضي (Default): “Ind – The xCustomEA“ هذا مؤشر قياسي فارغ يمكنك من خلاله برمجة استراتيجيتك باتباع مثالنا!
لقد أنشأنا أيضًا مثالاً لمؤشر مخصص يعتمد على إشارات The X.
“Ind – The xCustomEA Example The X“ يمكنك استخدام مثالنا لاستقبال الإشارات باستخدام المؤشرات القياسية (Standard indicators). وصف استراتيجيات The X القياسية
SignalTypeIndicator
نوع المؤشر للإشارات.
هناك ثلاثة أنواع من المستشارين الخبراء (EAs) وعشرون مؤشرًا قياسيًا من The X: xCustomEA – مستشار خبير (EA) يعمل مع مؤشرنا، حيث يمكنك برمجة استراتيجيتك.
xArrow – يعمل المستشار الخبير (EA) مباشرة مع مؤشر مخصص يحتوي على مخازن مؤقتة من نوع السهم (Arrow-type buffers)، والتي يمكن للمستشار الخبير (EA) استخدامها.
على سبيل المثال، مخزن مؤقت (Buffer) بإشارات المؤشر للشراء (BUY) ومخزن مؤقت بإشارات المؤشر للبيع (SELL)؛
يجب أن تكون هذه المخازن المؤقتة من نوع السهم. يحدد مستشارنا الخبير (EA) الإشارة (Signal) حسب النوع: قيمة المخزن المؤقت لا تساوي قيمة فارغة وهي أعلى من 0. // — نتحقق من الشروط ونضبط قيمة sig if (xCustom_SIGNAL_BUY_buffer[OWNSIGNAL_shift] != EMPTY_VALUE && xCustom_SIGNAL_BUY_buffer[OWNSIGNAL_shift] > 0) sig = 1; else if (xCustom_SIGNAL_SELL_buffer[OWNSIGNAL_shift] != EMPTY_VALUE && xCustom_SIGNAL_SELL_buffer[OWNSIGNAL_shift] > 0) sig = -1;
xColorArrow – تمت إضافة نوع إشارات المؤشر (xColorArrow مع مخزن مؤقت واحد ولونين)، حيث يكون لأسهم الإشارة (signal arrows) لونان مختلفان (DRAW_COLOR_ARROW).
عند استخدام نوع إشارة xColorArrow، تحتاج إلى تعيين القيم التالية: SignalBufferForBUY = رقم المخزن المؤقت للأسهم (تحقق من مؤلف المؤشر الخاص بك) أو عن طريق حساب رقم هذا المخزن المؤقت. SignalBufferForSELL = رقم مخزن الألوان المؤقت لهذه الأسهم (تحقق من المؤلف)، عادةً ما يتبع مخزن الأسهم المؤقت.
انتبه! هذا النوع يدعم لونين حيث:
0 (اللون الأول للسهم) هو إشارة لفتح صفقة شراء (BUY)؛ 1 (اللون الثاني للسهم) هو إشارة لفتح صفقة بيع (SELL)؛
إذا كان المؤشر الخاص بك يحتوي على هذه الألوان معكوسة، يمكنك بالإضافة إلى ذلك استخدام معلمة Signal_Reverse. لمزيد من المعلومات، قدمنا مثالاً لاستخدام مثل هذا المؤشر مع مخزن مؤقت DRAW_COLOR_ARROW!
NoSignal = 100, // لا توجد إشارة لفتح مركز Ma = 101, // المتوسط المتحرك (Moving Average) MACD = 102, // تقارب وتباعد المتوسطات المتحركة (MACD) STOCH = 103, // مؤشر ستوكاستيك (Stochastic Oscillator) RSI = 104, // مؤشر القوة النسبية (RSI) CCI = 105, // مؤشر قناة السلع (CCI) WPR = 106, // نطاق ويليامز النسبي (WPR) BB = 107, // خطوط بولينجر (Bollinger Bands) Envelopes = 108, // الأظرف (Envelopes) Alligator = 109, // التمساح (Alligator) OsMA = 110, // متوسط متحرك للمذبذب (OsMA) AO = 111, // المذبذب الرائع (AO) ISH = 112, // إيشيموكو (Ichimoku) AC = 113, // AC BAR = 114, // شريط هابط/صاعد (Bar BEAR/BULL) ADX = 115, // مؤشر متوسط الحركة الاتجاهية (ADX) ZigZag = 117, // زجزاج (ZigZag) MFI = 120, // مؤشر تدفق الأموال (MFI) Fractals = 121, // الفركتلات (Fractals)
IndSigToTrade
حدد المؤشر والإشارة لفتح الصفقات الأولى والرئيسية.
رقم الاستراتيجية من المؤشر المخصص SignalNameIndicator.
إذا لم يتم العثور على الاستراتيجية المحددة في المؤشر، فسيتم إلغاء تحميل المستشار الخبير (EA) من الرسم البياني مع ظهور خطأ!
إذا تم الضبط على 0، لا يتم استخدام إشارات الاستراتيجية، ويتم تطبيق الفلاتر فقط!
عند استخدام المؤشر الرئيسي، يتم إنشاء الإشارة كما هي على الشريط الحالي (Current bar)!
هذا يعني أن إشارة الفتح تظهر نتيجة لتنفيذ إشارة.
إذا كانت هناك إشارة ولم يسمح الفلتر بفتح المركز، يتم تجاهل الإشارة.
No Signal (لا توجد إشارة): عند تحديد هذا الخيار، يتجاهل المستشار الإشارة الرئيسية ويتداول بناءً على الفلاتر.
عند استخدام NoSignal، يمكن للمستشار الخبير (EA) تجاهل تنفيذ الإشارة الرئيسية والعمل على الفلاتر.
عند استخدام الفلاتر، يفتح المستشار الخبير (EA) مركزًا بناءً على البيانات الحالية للمؤشر المحدد.
TF_IndSigToTrade1
الإطار الزمني (Time Frame) للمؤشر الرئيسي الأول.
يمكنك تحديد الإطار الزمني الذي سيستقبل المؤشر من خلاله الإشارات. Period_Current – الإطار الزمني الحالي.
كلما كان الإطار الزمني أكبر، كلما طالت مدة انتظار الإشارة الرئيسية!
كلما كان الإطار الزمني أصغر، يتم فتح الصفقات (deals) بشكل أسرع.
SIGNALStrategyInputs
المعلمات الخارجية (External parameters) للمؤشر المخصص،
في وضع SignalTypeIndicator = xArrow!
يمكنك تحديد المتغيرات الخارجية للمؤشر كما هي مكتوبة في جدول الإعدادات ، مفصولة بفواصل!
هام: يجب عليك احترام ترتيب ونوع المتغيرات.
– النوع int: كما هو؛
– النوع double: كما هو؛
– النوع boolean: true أو false؛
– النوع datetime: D’year.month.day’ (إشارة إلزامية لـ D وعلامات الاقتباس المفردة).
إذا كنت بحاجة إلى الكتابة بدون تاريخ محدد، فاكتب كسلسلة نصية (String): “00:00” أو “23:59” D’2018.11.08′ ‘D’2015.01.01’ “00:00” “23:59”
– النوع color: C’red/green/blue’ (إشارة إلزامية لـ C وعلامات الاقتباس المفردة).
مثال: C’0/128/128′ أو C’0/256/0′
– النوع enum (list, enumeration): x (رقم)
إذا كان المؤشر الخاص بك يحتوي على قائمة (تحديد معلمة من القائمة)، فأنت بحاجة إلى كتابة رقم!
– النوع string: تأكد من تحديد السلسلة النصية (وليس الأرقام)، على سبيل المثال، “X”. في MT4:انتبه! في الإصدار الخاص بـ MetaTrader 4، يُمنع نقل معلمات السلسلة النصية!
عند تمرير معلمات السلسلة النصية، قد لا يتم تحميل المؤشر بشكل صحيح!
على سبيل المثال، إذا كان المؤشر الخاص بك يحتوي على معلمات الإدخال (input parameters) التالية:
int InpCCIPeriod = 1;
double InpCCIPeriod2 = 2.0;
color InpCCIPeriod3 = clrGreen;
string InpCCIPeriod6 = “text”;
datetime InpCCIPeriod4 = D’2018.11.08′;
bool InpCCIPeriod5 = false; تُكتب كـ: SIGNALStrategyInputs = 1,2.0,C’0/128/0′,”text”,D’2018.11.08′,false
Signal_Reverse
عكس إشارات هذا المؤشر الرئيسي.
هذا الخيار يعكس فقط إشارات المؤشر الرئيسي.
إذا كانت الإشارة لفتح صفقة شراء (Buy)، فإن المستشار الخبير (EA) يفتح صفقة بيع (Sell)!
إذا كانت الإشارة لفتح صفقة بيع (Sell)، فإن المستشار الخبير (EA) يفتح صفقة شراء (Buy)!
ClosePositionifChangeOWNSignal
تمكين/تعطيل إغلاق المراكز عند ظهور إشارة معاكسة من المؤشر الرئيسي دون تدخل فلاتر أو معلمات أخرى.
تنقسم معلمة ClosePositionifChangeOWNSignal إلى ثلاث قيم:
– False (إيقاف)
– True (تشغيل)
– OnlyifProfit (فقط إذا كانت المراكز رابحة)
OWNSIGNAL_shift
رقم الشريط (BAR) للإشارة التي سيولدها المؤشر.
– 1 = آخر شريط مغلق (Last closed bar)؛ تعتبر الإشارات على هذا الشريط مغلقة. – 0 = الشريط المفتوح الحالي (Current open bar)؛ تعتبر الإشارات على هذا الشريط إعادة رسم (drawings)؛ كن حذرًا.
رقم المخزن المؤقت في المؤشر المخصص لاستقبال إشارة الشراء (BUY) والبيع (SELL). لا تغير بالنسبة لـ Ind – The xCustomEA و Ind – The xCustomEA Example The X.
خيارات الإغلاق (Close Options)
يسمح لك هذا القسم بإغلاق المراكز المفتوحة بناءً على إشارات من مؤشر مخصص.
يمكنك استخدام هذا إذا كان المؤشر المخصص يوفر إشارات لإغلاق المراكز (بشكل منفصل عن إشارات فتح مراكز جديدة).
إذا كنت بحاجة إلى تكوين إشارات لإغلاق المراكز في المستشار، يجب عليك تحديد اسم المؤشر (الذي قد يكون مطابقًا لاسم مؤشر إغلاق المراكز)، ومجموعة من المعلمات (إذا كانت تختلف عن معلمات المؤشر الافتراضية)، والإطار الزمني، وإزاحة الشريط (Bar Shift)، وأرقام المخازن المؤقتة لاستقبال إشارات الإغلاق. يجب القيام بذلك بشكل منفصل لمراكز الشراء (BUY) والبيع (SELL).
انتبه: إذا كنت ترغب في إغلاق مركز عند تلقي إشارات معاكسة، فلن تحتاج إلى استخدام هذا القسم.
CloseNameIndicator
اسم المؤشر المخصص الذي سيتم من خلاله استقبال الإشارات الرئيسية لإغلاق المراكز.
CloseTypeIndicator
نوع المؤشر للإشارات.
هناك نوعان من عمليات المستشار:
– xCustomEA – تعمل المستشارون مع مؤشرنا، حيث يمكنك برمجة استراتيجية الفلتر الخاصة بك.
– xArrow – يعمل المستشار الخبير (EA) مباشرة مع مؤشر مخصص يحتوي على مخازن مؤقتة من نوع السهم، والتي يمكن للمستشار الخبير (EA) استخدامها.
على سبيل المثال:
مخازن مؤقتة بإشارات المؤشر لإغلاق مراكز الشراء (BUY) والبيع (SELL).
يجب أن تكون هذه المخازن المؤقتة من نوع السهم.
يحدد مستشارنا الخبير (EA) الإشارة حسب النوع: قيمة المخزن المؤقت لا تساوي قيمة فارغة وهي أعلى من 0.
// — نتحقق من الشروط ونضبط قيمة sig
if (xCustom_SIGNAL_BUY_buffer[OWNSIGNAL_shift] != EMPTY_VALUE && xCustom_SIGNAL_BUY_buffer[OWNSIGNAL_shift] > 0) sig = 1;
else if (xCustom_SIGNAL_SELL_buffer[OWNSIGNAL_shift] != EMPTY_VALUE && xCustom_SIGNAL_SELL_buffer[OWNSIGNAL_shift] > 0) sig = -1;
اسم المؤشر المخصص الذي سيتم من خلاله الحصول على الفلاتر عند فتح المراكز.
الافتراضي: “Ind – The xCustomEA“.
هذا مؤشر قياسي فارغ يمكنك من خلاله برمجة استراتيجيتك باتباع مثالنا!
FilterTypeIndicator
نوع المؤشر للفلتر.
هناك نوعان من عمليات المستشار:
– xCustomEA – تعمل المستشارون مع مؤشرنا، حيث يمكنك برمجة استراتيجية الفلتر الخاصة بك.
– xArrow – يعمل المستشار الخبير (EA) مباشرة مع مؤشر مخصص يحتوي على مخازن مؤقتة من نوع السهم أو قيمة مخزن مؤقت غير فارغة يمكن للمستشار استخدامها.
على سبيل المثال:
مخازن مؤقتة بفلاتر المؤشر للشراء (BUY) والبيع (SELL).
يجب أن تكون هذه المخازن المؤقتة من نوع السهم.
يحدد مستشارنا الخبير (EA) الفلتر حسب النوع: قيمة المخزن المؤقت لا تساوي قيمة فارغة وهي أعلى من 0.
// — نتحقق من الشروط ونضبط قيمة sig
if (xCustom_FILTER_BUY_buffer[shift] != EMPTY_VALUE && xCustom_FILTER_BUY_buffer[shift] > 0) sig = 1;
else if (xCustom_FILTER_SELL_buffer[shift] != EMPTY_VALUE && xCustom_FILTER_SELL_buffer[shift] > 0) sig = -1;
– أو يمكنك استخدام استراتيجياتنا القياسية منThe X قائمة مؤشرات الفلتر (FILTER List of Indicators):
رقم الاستراتيجية من المؤشر المخصص FilterNameIndicator.
إذا لم يتم العثور على الاستراتيجية المحددة في المؤشر، فسيتم إلغاء تحميل المستشار الخبير (EA) من الرسم البياني مع ظهور خطأ!
إذا تم تعيين IndSigToTrade على 0، فسيعمل المستشار فقط بناءً على الفلاتر!
FILTER_TF_IndSigToTrade
الإطار الزمني للفلتر.
يمكنك تحديد الإطار الزمني الذي سيستقبل المؤشر من خلاله إشارات الفلتر. Period_Current – الإطار الزمني الحالي.
على سبيل المثال:
عند استخدام المتوسط المتحرك (MA) كإشارة رئيسية مع إطار زمني TF = M30، يمكنك تمكين التصفية على المتوسط المتحرك الأعلى بإطار زمني TF = H4.
Filter_Reverse
عكس إشارات هذا الفلتر.
هذا الخيار يعكس فقط إشارات هذا الفلتر. على سبيل المثال:
يظهر مؤشر المتوسط المتحرك (MA) الرئيسي إشارة شراء (BUY)، لكن مؤشر المتوسط المتحرك الأقدم يظهر إشارة بيع (SELL)؛
عند استخدام هذه الوظيفة، يتم عكس إشارات المتوسط المتحرك الأقدم، مما ينتج عنه إشارة مجمعة للشراء (BUY).
FILTERSIGNAL_shift
رقم الشريط للإشارة التي سيولدها المؤشر.
– 1 = آخر شريط مغلق؛ تعتبر الإشارات على هذا الشريط مغلقة. – 0 = الشريط المفتوح الحالي؛ تعتبر الإشارات على هذا الشريط إعادة رسم؛ كن حذرًا.
استخدم رقم المخزن المؤقت في المؤشر المخصص لاستقبال إشارات الفلتر للشراء (BUY) والبيع (SELL).
لا تغير بالنسبة لـ Ind – The xCustomEA و Ind – The xCustomEA Example The X.
خيارات وقف الخسارة وجني الأرباح (SLTP Options)
يسمح لك هذا القسم بتعيين وقف الخسارة (SL) أو جني الأرباح (TP) عند فتح المراكز بناءً على الإشارات، والتي يمكن اشتقاقها من قيم مخازن المؤشر المخصصة.
إذا كان المؤشر المخصص يحتوي على مخازن مؤقتة منفصلة للحصول على وقف الخسارة (SL) أو جني الأرباح (TP)، فيمكنك استخدام هذه القيم عند فتح مركز جديد.
انتبه:يتم تعيين وقف الخسارة (SL) أو جني الأرباح (TP) فقط عند فتح مركز جديد باستخدام إشارة جديدة.
تستخدم وظائف التوسيط (averaging) والفتح الإضافي معلمات وقف الخسارة (SL) و جني الأرباح (TP) من المتغيرات السابقة.
لا يتم قبول وقف الخسارة (SL) و جني الأرباح (TP) التي تم الحصول عليها من المؤشر المخصص في التوسيط والفتح الإضافي.
يتم أيضًا تعيين وقف الخسارة (SL) و جني الأرباح (TP) من مؤشر مخصص عند استخدام وظيفة ForcedModifySLTP.
تحتاج إلى إدخال قيم وقف الخسارة (SL) و جني الأرباح (TP) من المؤشر المخصص في المستشار. بعد ذلك، حدد اسم المؤشر
(يجب أن يكون مطابقًا لاسم مؤشر فتح/إغلاق المراكز)، ومجموعة من المعلمات (إذا كانت تختلف عن إعدادات المؤشر الافتراضية)، والإطار الزمني، وإزاحة الشريط، وأرقام المخازن المؤقتة لاسترداد القيم.
يجب القيام بذلك بشكل منفصل لمراكز الشراء (BUY) والبيع (SELL) وبشكل منفصل لوقف الخسارة (SL) و جني الأرباح (TP).
SLTPNameIndicator
اسم المؤشر المخصص الذي سيتم من خلاله الحصول على قيم وقف الخسارة (SL) و جني الأرباح (TP).
SLTPTypeIndicator
نوع المؤشر. xPrice – قيمة السعر التي سيتم اشتقاقها من المتغير (وقف الخسارة (SL)، جني الأرباح (TP)).
SLTPTimeFrame
SLTP_shift
SLTPStrategyInputs
SLTPBufferforBUY_StopLoss
رقم المخزن المؤقت لاسترداد قيمة وقف الخسارة (SL) لمراكز الشراء (BUY). -1 يعني أن هذا الخيار معطل.
SLTPBufferforSELL_StopLoss
رقم المخزن المؤقت لاسترداد قيمة وقف الخسارة (SL) لمراكز البيع (SELL). -1 يعني أن هذا الخيار معطل.
SLTPBufferforBUY_TakeProfit
رقم المخزن المؤقت لاسترداد قيمة جني الأرباح (TP) لمراكز الشراء (BUY). -1 يعني أن هذا الخيار معطل.
SLTPBufferforSELL_TakeProfit
رقم المخزن المؤقت لاسترداد قيمة جني الأرباح (TP) لمراكز البيع (SELL). -1 يعني أن هذا الخيار معطل.
الوظيفة والمعلمات
المعلمة (Parameter)
الوصف (Description)
خيارات الإشارة: وحدة معالجة إضافية للإشارة
Show_alert_without_opening_positions
تنبيه (Alert)
إذا كان هذا الخيار ممكّنًا (TRUE)، فلن يقوم الخبير المستشار (Expert Advisor) بفتح مركز (Position) جديد (صفقة (Deal)) بناءً على الإشارة ولكنه سيقوم فقط بإخطار المستخدم بظهور إشارة جديدة.
في هذه الحالة، ستعمل جميع الوظائف الأخرى بشكل طبيعي.
هذا يسمح للمستخدم بفتح مركز (صفقة) بمفرده إذا أصدر المستشار (أنشأ) إشارة.
ومع ذلك، فإن المستشار الخبير (EA) لا يقوم بإنشاء هذه الصفقة (المركز) ولا يفتح المركز (الصفقة) ولكنه ينبه فقط المستخدم بشأن الإشارة.
Send_Push_without_opening_positions
إشعار دفع (Push Notification)
إذا كان هذا الخيار ممكّنًا (TRUE)، فلن يقوم الخبير المستشار بفتح مركز جديد (صفقة) بناءً على الإشارة ولكنه سيقوم فقط بإخطار المستخدم عبر الهاتف بظهور إشارة جديدة.
في هذه الحالة، ستعمل جميع الوظائف الأخرى بشكل طبيعي.
هذا يسمح للمستخدم بفتح مركز (صفقة) بمفرده إذا أصدر المستشار (أنشأ) إشارة.
ومع ذلك، فإن المستشار الخبير لا يقوم بإنشاء هذه الصفقة (المركز) ولا يفتح المركز (الصفقة) ولكنه يرسل فقط إشعار دفع للمستخدم بشأن الإشارة.
OpenBarControlOnly
المستشار يعمل فقط على الشموع المفتوحة (بداية شمعة جديدة (BAR)).
هذا الوضع يحاكي عمل المستشار عند افتتاح الشمعة (كما في مختبر الاستراتيجيات (strategy tester)).
عند تمكين هذا الوضع (True)، سيتداول الخبير المستشار تمامًا كما في وضع اختبار OpenPriceOnly.
سيتم تنفيذ جميع وظائف المستشار مرة واحدة عند افتتاح شمعة جديدة (اعتمادًا على الإطار الزمني (Timeframe) المحدد)، بما في ذلك التعديل (Modification)، ووقف الخسارة المتحرك (Trailing Stop)، والتوسيط (Averaging)، وفتح الصفقات حسب الإشارة، إلخ.
ControlNewBarforSIGNAL
التحقق من إشارة المؤشر فقط لكل شمعة جديدة (بدون التحقق عند كل تيك (Tick)).
يعمل فقط عندما يكون OWNSIGNAL_shift ≥ 1 و IndSigToTrade ≠ NoSignal (مع NoSignal، يتحقق الخبير المستشار من قيم الفلتر مع كل تيك). عندما يكون ControlNewBarforSIGNAL = true، تزداد سرعة التحسين بمقدار 1.5 مرة!
1. ControlNewBarforSIGNALType = 1 = صحيح، أصغر إطار زمني للإعدادات: وضع جديد!
يختار المستشار الخبير أصغر إطار زمني تم تعيينه بواسطة المعلمات TF_IndSigToTrade1، FILTER_TF_IndSigToTrade1، FILTER_TF_IndSigToTrade2، إلخ.
في هذا الوضع، لا يتحقق المستشار الخبير من الإشارة على الإطار الزمني الحالي ولكن على الإطار الزمني لتلقي إشارة من المؤشرات! هذا الوضع مفيد لأولئك الذين يستخدمون TF_IndSigToTrade1، FILTER_TF_IndSigToTrade1، FILTER_TF_IndSigToTrade2، بخلاف الإطار الزمني الحالي.
2. ControlNewBarforSIGNALType = 2 = صحيح، الشمعة الحالية للإطار الزمني الحالي: الوضع القديم!
في هذا الوضع، يتحقق المستشار الخبير من كل شمعة جديدة للإطار الزمني الحالي بحثًا عن إشارات جديدة! إذا كنت تستخدم TF_IndSigToTrade1، FILTER_TF_IndSigToTrade1، FILTER_TF_IndSigToTrade2 بخلاف الإطار الزمني الحالي، فقد تختلف النتائج على كل إطار زمني. نوصي بتثبيت الخبير المستشار على الإطار الزمني M1!
3. ControlNewBarforSIGNALType = 0 = خطأ (False): لا تستخدم التحكم في الشمعة الجديدة لتحديد الإشارة! انتباه: عند إيقاف هذا الخيار (false)، يتحقق المستشار الخبير من الإشارة كل تيك! قد تكون هناك تأخيرات في الاختبار والتحسين!
ControlNewBarforOpenbySignal:
ControlNewBarforOpenbySignal = true: الوضع القديم! يفتح المستشار الخبير المراكز (الصفقات) بناءً على إشارة فقط عند كل شمعة حالية جديدة للإطار الزمني الحالي! يفتح المستشار الخبير المراكز (الصفقات) إذا كانت هناك إشارة، فقط عند وصول شمعة جديدة للإطار الزمني الحالي!
ControlNewBarforOpenbySignal = false: وضع جديد! يفتح المستشار الخبير المراكز (الصفقات) بناءً على إشارة كل شمعة جديدة من الإطار الزمني للإشارة! يفتح المستشار الخبير المراكز (الصفقات)، إذا كانت هناك إشارة، فور اكتشاف الإشارة.
هذا الوضع مفيد لأولئك الذين يستخدمون TF_IndSigToTrade1، FILTER_TF_IndSigToTrade1، و FILTER_TF_IndSigToTrade2، بخلاف الإطار الزمني الحالي.
ReverseSignal
قلب (عكس (Reverse)) إشارة الاستراتيجية الكلية المستلمة من المؤشر الرئيسي + الفلاتر!
إذا كانت الإشارة المشتركة هي فتح شراء (Buy)، فإن الخبير المستشار يفتح بيع (Sell)!
إذا كانت الإشارة المشتركة هي فتح بيع، فإن الخبير المستشار يفتح شراء!
خيارات فلتر الفتح
TypeTradeBUYSELL
اتجاه التداول:
– شراء وبيع – شراء فقط – بيع فقط
انتباه: إذا كنت تستخدم الأوامر المعلقة (pending orders) (بدلاً من المراكز) وتعمل في اتجاه واحد فقط، ففي كل مرة يتم فيها تلقي إشارة جديدة، سيتم حذف الأمر المعلق القديم وسيتم تعيين أمر جديد بسعر جديد.
MinuteToOpenNextPosition
إذن بفتح الإشارة التالية بعد آخر مركز مفتوح
إذا لم تكن هناك مراكز (صفقات) مفتوحة، فإن الخبير المستشار (EA) يأخذ في الاعتبار الوقت (بالدقائق) منذ آخر مركز مغلق.
يتم اعتبار الوقت من نفس النوع.
إذا كانت إشارة الشراء: الوقت منذ آخر عملية شراء مفتوحة/مغلقة…
إذا كانت إشارة البيع: الوقت منذ آخر عملية بيع مفتوحة/مغلقة…
عدد الدقائق لفتح الصفقة التالية بناءً على إشارات المؤشرات. يسمح لك بتصفية الصفقات عند استخدام OnlyOnePosbySignal = false.
DistanceToOpenNextPosition
أدنى مسافة لفتح المركز التالي بناءً على الإشارة الرئيسية
(إذا كان OnlyOnePosbySignal = false و OnePosPerDirection = false).
إذا كان DistanceToOpenNextPositionأعلى من 0، فيمكن فتح المركز التالي (الصفقة) فقط عندما يكون المركز السابق (الصفقة) بناءً على الإشارة قد اجتاز DistanceToOpenNextPosition من نقاط (Pips) الربح!
إذا كان DistanceToOpenNextPositionأقل من 0، فيمكن فتح المركز التالي (الصفقة) فقط عندما يكون المركز السابق (الصفقة) بناءً على الإشارة على مسافة DistanceToOpenNextPosition نقطة (Pips) على جانبي الربح أو الخسارة!
OpenOppositePositionAfterStoploss
يفتح المستشار الخبير المركز المعاكس عند إغلاق وقف الخسارة (Stop Loss) الحالي.
يفتح المركز المعاكس (الصفقة) فورًا بعد تلقي وقف الخسارة للصفقة السابقة (المركز) دون استخدام إشارات المؤشر.
إذا تم إغلاق المركز الأخير بسبب وقف الخسارة، فسيقوم الخبير المستشار بفتح المركز المعاكس على الفور.
OnlyOnePosbySignal
تداول مركز رئيسي حالي واحد فقط في اتجاه واحد.
إذا فتح الخبير المستشار مركز بيع، فسيتم تجاهل جميع إشارات البيع الأخرى.
إذا فتح الخبير المستشار مركز شراء، فسيتم تجاهل جميع إشارات الشراء الأخرى.
OnePosPerDirection
فتح صفقة واحدة في اتجاه واحد،
على سبيل المثال:
إذا كان OnePosPerDirection = true و OnlyOnePosbySignal = false، فيمكن للمستشار الخبير فتح صفقة شراء واحدة (مركز) بناءً على إشارة وصفقة بيع واحدة (مركز) بناءً على إشارة؛
إذا كان OnePosPerDirection = false و OnlyOnePosbySignal = true، فيمكن للمستشار الخبير فتح صفقة واحدة فقط (مركز) لكل إشارة، إما شراء أو بيع؛
إذا كان OnePosPerDirection = false و OnlyOnePosbySignal = false، فيمكن للمستشار الخبير فتح صفقات متعددة (مراكز) لكل إشارة مؤشر جديدة؛
OnlyOnePositionPerMagic
فتح مركز واحد لكل رقم سحري (Magic Number).
يتحقق الخبير المستشار مما إذا كانت هناك مراكز (صفقات) مفتوحة لهذا الرقم السحري في أزواج العملات (currency pairs) الأخرى.
إذا لم يكن هناك مركز، فسيقوم المستشار بفتح الصفقة عند الإشارة، وستنتظر المستشارون المتبقون اكتمال هذه الصفقة.
إذا كان OnePosPerDirection = false، فإن OnlyOnePositionPerMagic = true يعمل على النحو التالي: يُسمح بمركز واحد لكل رقم سحري؛
إذا كان OnePosPerDirection = true، فإن OnlyOnePositionPerMagic = true يعمل على النحو التالي: يُسمح بمركز واحد لكل اتجاه (شراء وبيع) لكل رقم سحري؛
OnlyAlternateSignals
يسمح بفتح المراكز واحدة تلو الأخرى فقط.
إذا كان آخر مركز مغلق هو بيع، فلا يمكن فتح المركز التالي إلا كـ شراء!
من الضروري تداول المؤشر الرئيسي في وضع لا إشارة (IndSigToTrade = No Signal).
MAX_BUY_POSITION
معلمة لتحديد الحد الأقصى لعدد صفقات الشراء (المراكز).
يتم أخذ المراكز المفتوحة بواسطة إشارات المؤشرات في الاعتبار.
لا يتم أخذ مراكز التوسيط والمراكز الإضافية في الاعتبار.
MAX_SELL_POSITION
معلمة لتحديد الحد الأقصى لعدد صفقات البيع (المراكز).
يتم أخذ المراكز المفتوحة بواسطة إشارات المؤشرات في الاعتبار.
لا يتم أخذ مراكز التوسيط والمراكز الإضافية في الاعتبار.
MaxSpreadToNotTrade
أقصى انتشار سعري (Spread) يمكن للمستشار فتح مركز عنده.
إذا كان الانتشار السعري الحالي في وقت تلقي الإشارة أكبر من القيمة المحددة، فسيتم تجاهل إشارة المؤشر حتى يصبح الانتشار السعري أقل من القيمة المحددة.
MinSpreadToNotTrade
أدنى انتشار سعري يمكن للمستشار فتح مركز فيه.
تحذير: يستخدم هذا الفلتر فقط لفتح المراكز حسب الإشارة، والتوسيط، والفتح الإضافي.
تعمل جميع الوظائف الأخرى بشكل طبيعي.
تحذير: ينطبق هذا الفلتر فقط على المراكز!
بالنسبة للأوامر المعلقة، لا ينطبق هذا الفلتر. لذلك، يعمل الفلتر فقط عند استخدامك للمراكز.
Include_Commission_Swap
مراعاة حساب المؤلف لـالعمولة (Commission) والتبييت (Swap) عند تمكين الوظائف: نقطة التعادل (BreakEven) (وقف الخسارة عند نقطة التعادل)، ووقف الخسارة المتحرك، والتوسيط.
يعتمد حساب المؤلف للعمولة على صيغة حساب قيمة النقطة الواحدة (Pip) من المراكز المفتوحة لهذا الرمز والرقم السحري؛ يتم تضمين التبييت السلبي والعمولة في الحساب. تُرجع الدالة تكلفة التبييت السلبي والعمولة بالنقاط (Pips) وتأخذ ذلك في الاعتبار عند العمل مع وظائف نقطة التعادل (وقف الخسارة عند نقطة التعادل) ووقف الخسارة المتحرك.
انتباه: إذا كان لديك انتشار سعري عائم (Floating spread) مع وسيطك (broker)، فسيتم تنفيذ تسوية العمولة وتعيينها في لحظة تشغيل وظائف نقطة التعادل (وقف الخسارة عند نقطة التعادل) ووقف الخسارة المتحرك، ولكن قد يزداد الانتشار السعري، مما يؤدي إلى تكبد نقاط خسارة إضافية (Pips).
هذا ليس خطأ في الحساب! ضع في اعتبارك أيضًا أنه عند حدوث تبييت، يعيد المستشار حساب خط نقطة التعادل (وقف الخسارة عند نقطة التعادل) ويضع نقاط وقف جديدة إذا سمح الخادم بذلك (تقييد الحد الأدنى لمستوى الإيقاف لـ StopLevel الخاص بوسيطك). إذا لم يسمح الخادم بتعيين نقطة تعادل وأعاد خطأ في الحد الأدنى لمستوى الإيقاف، فلن يتمكن المستشار الخبير من تعديل المركز، وقد تتكبد نقاط خسارة إضافية (Pips).
لتجنب تكبد خسارة عند استخدام العمولة مع تبييت سلبي، نوصي بزيادة المسافة بين نقطة التعادل (وقف الخسارة عند نقطة التعادل) أو وقف الخسارة المتحرك. يمكن حساب مستوى نقطة التعادل (وقف الخسارة عند نقطة التعادل) (LevelWLoss) بشكل مستقل، مع مراعاة العمولة.
على سبيل المثال، إذا كانت العمولة لفتح وإغلاق مركز = 2 دولار (EURUSD) لكل 1 لوت. لتغطية الخسارة من العمولة، قم بتعيين LevelWLoss = 2 (Pips) + 1 (نقطة تحكم) = 3 نقاط (Pips). وبالتالي، سيقوم المستشار بتعيين نقطة تعادل (وقف الخسارة عند نقطة التعادل) عند +3 نقاط (Pips)، مما يغطي الخسارة من العمولة.
خيارات الإغلاق
ClosePosifChange
إغلاق المراكز عند عكس إشارة المؤشر العامة.
الفرق بين ClosePosifChange و ClosePositionifChangeOWNSignal هو أنه مع ClosePosifChange(true)، يتم اعتبار تغيير الإشارة لـ جميع الفلاتر + الإشارة الأولية (الرئيسية).
عند ClosePositionifChangeOWNSignal(true)، يتم اعتبار تغيير الإشارة فقط على المؤشر الرئيسي (Main Indicator) (IndSigToTrade).
كما أنه يعمل مع الأوامر المعلقة.
ClosePosition_After_X_Minutes
يمكن للمستشار الخبير إغلاق المركز بعد العدد المحدد من الدقائق.
بالإضافة إلى ذلك، يتحقق الخبير المستشار من معلمة CloseChangeOnlyInProfit الممكّنة:
يمكن للمستشار الخبير إغلاق المراكز المربحة فقط.
CloseChangeOnlyInProfit
يمكن للمستشار الخبير إغلاق الصفقات بناءً على إشارة عائدة (تغيير اتجاه الإشارة) فقط عندما يكون المركز الحالي في حالة ربح.
خيار الأوامر المعلقة
StopOrderUSE
فتح أوامر معلقة أو أوامر محددة (Limit Orders) بدلاً من المراكز.
1. FALSE: فتح مراكز (شراء، بيع)؛
2. TRUE: يسمح لك بفتح أمر معلق أو محدد للإشارة المستلمة على مسافة StopOrderDeltaifUSE نقطة (Pips). وبالتالي، نعيد التحقق من الإشارة للربحية.
إذا كانت الإشارة متوافقة مع حركة السعر، فسيتم تنفيذ الأمر المعلق من خلال StopOrderDeltaifUSE نقطة (Pips).
3. استخدام أوامر الإيقاف الافتراضية: يضع أمر إيقاف معلق افتراضي على مسافة StopOrderDeltaifUSE نقطة (Pips)؛
4. استخدام أوامر الحد الافتراضية: يضع أمر حد معلق افتراضي على مسافة StopOrderDeltaifUSE نقطة (Pips)؛
تنبيه: (استخدام أوامر الإيقاف الافتراضية) و (استخدام أوامر الحد الافتراضية) تعمل فقط في وضع التصور (Visualization mode) أو على الرسوم البيانية الحية (Live charts) عندما تعمل المنصة على جهاز الكمبيوتر الخاص بك. لا تعمل في وضع التحسين (Optimization mode)!
StopOrderDeltaifUSE
عدد النقاط (Pips) لأمر الإيقاف أو الحد.
المسافة من السعر الحالي.
StopOrderDayToExpiration
StopOrderDayToExpiration = عدد الأيام حتى انتهاء صلاحية الأمر.
– 0 – ORDER_TIME_GTC: يبقى الأمر في قائمة الانتظار حتى يتم إزالته؛
– 1 – ORDER_TIME_DAY: الأمر صالح فقط ليوم التداول الحالي؛
– X – ORDER_TIME_SPECIFIED: يبقى الأمر صالحًا حتى تاريخ انتهاء الصلاحية.
إذا تلقيت خطأ مرفوض (Rejected error) وقمت بتمرير مؤشر الماوس فوق الأمر في السجل، فسترى: (معلومات FOK غير مكتملة للأمر)،
إذا كان لديك وسيط BCS أو وسيط Open، فأنت بحاجة إلى تعيين: TypeFilling = ImmediateOrCancel أو TypeFilling = Return DayToExpiration = 1
StopOrderBarToExpiration
انتهاء صلاحية الأمر المعلق بالشموع.
إذا كان StopOrderBarToExpiration = 10 و TF = M1، فسيتم إزالة الأمر المعلق بعد 10 دقائق بعد التثبيت.
انتباه: لكل وسيط معلمة زمنية دنيا خاصة به لوقت انتهاء الصلاحية.
ReInstallStopOrdersNewSignalAppears
إعادة تعيين الأوامر المعلقة إذا تم إنشاء إشارة جديدة من المؤشرات.
يسمح لك بحذف الأمر المعلق BUYSTOP الحالي وتثبيت BUYSTOP جديد عند مستوى جديد عندما تنشئ المؤشرات إشارة جديدة.
خيارات التداول
Magic
الرقم السحري (Magic) للمراكز التي يفتحها المستشار EA.
Slippage
أقصى انحراف سعري ممكن عند فتح وإغلاق المراكز (بالنقاط).
مثال: الانزلاق السعري (Slippage) = 1
أقصى انحراف سعري عند فتح مركز = سعر الفتح ± 1 نقطة (Pip). الانزلاق السعري = 100
أقصى انحراف سعري عند فتح مركز = سعر الفتح ± 100 نقطة (Pips).
على سبيل المثال، إذا كان سعر الفتح 1.12345،
ولكن خلال وقت إرسال وفتح المركز (الصفقة)، يتغير السعر في حدود 100 نقطة (إعادة تسعير (Requote))، فسيتم فتح المركز (الصفقة) بسعر ضمن 1.12245 – 1.12445.
MarketWatch
للمراكز المفتوحة مع وقف الخسارة / جني الأرباح (TakeProfit) على حساب مع تنفيذ السوق (MARKET Execution).
أولاً، يمكن للمستشار الخبير فتح المركز (الصفقة)، وبعد الفتح الناجح، يتم تعديل مستويات StopLoss و TakeProfit في هذا المركز (الصفقة).
إذا كان حسابك في مجموعة ECN أو NDD، فيجب عليك تعيين هذا الخيار إلى true.
CommentToOrder
تعليقات إضافية على المراكز المفتوحة.
يمكنك تحديد تعليق إضافي هنا ستتم إضافته إلى المركز المفتوح لتمييز الإعدادات، على سبيل المثال. تعليق قياسي: “The X” + CommentToOrder
RoundingDigits
يمكن للمستشار الخبير تقريب جميع الأسعار عند فتح وتعديل الأوامر والمراكز (الصفقات).
الخيارات:
– لا تقريب،
– التقريب حتى رقم عشري واحد،
– التقريب حتى رقمين عشريين.
تم إنشاء الوظيفة لـ الذهب (Gold) و الفضة (Silver)، وكذلك للوسطاء الذين يطلبون دقة تيك محددة.
مثال:
سعر فتح الصفقة = 1.12345
التقريب إلى رقم عشري واحد = 1.12340
التقريب حتى رقمين عشريين = 1.12300
TypeFilling
نوع ملء المراكز والأوامر.
يستخدم لمنصة MT5. في وضع AUTO، يحاول الخبير المستشار تحديد نوع الملء تلقائيًا. ومع ذلك، في بعض الحالات، تحتاج إلى تعيين نوع الملء يدويًا.
إذا تلقيت خطأ عند فتح مركز: 10030 TRADE_RETCODE_INVALID_FILL، نوع تنفيذ غير مدعوم،
قم بتعيين نوع الملء وفقًا لقواعد وسيطك.
مثال: FillOrKill
تعني سياسة التنفيذ هذه أنه لا يمكن تنفيذ الأمر إلا بالمبلغ المحدد. إذا لم يكن لدى السوق حاليًا كمية كافية من أداة مالية، فلن يتم تنفيذ الأمر. يمكن أن يتكون الحجم المطلوب من عدة عروض متاحة في الوقت الحالي في السوق.
ImmediateOrCancel
هذا يعني الموافقة على تنفيذ الصفقة بأقصى حجم متاح في السوق ضمن الحدود المحددة. إذا لم يكن التنفيذ الكامل ممكنًا، فسيتم تنفيذ الأمر بالحجم المتاح، وسيتم إلغاء حجم الأمر غير المنفذ.
Return
يستخدم هذا الوضع لأوامر السوق والحد وأوامر وقف الحد وفقط في وضعي “تنفيذ السوق” و “تنفيذ الأسهم”. في حالة التنفيذ الجزئي، لا يتم سحب أمر السوق أو الحد ذي الحجم المتبقي ولكنه يستمر في العمل.
بالنسبة لأوامر وقف الحد، سيتم إنشاء أمر حد مطابق بنوع التنفيذ Return عند التنشيط.
خيارات الإيقاف
VirtualStops
تمكين وقف الخسارة / جني الأرباح / وقف الخسارة المتحرك الافتراضي بدلاً من الحقيقي.
يستخدم مستويات افتراضية (غير مرئية) لـ StopLoss/TakeProfit/TrailingStop/BreakEven (وقف الخسارة عند نقطة التعادل).
لقد قمنا بإعادة تصميم الخوارزمية بالكامل لـ Virtual StopLoss/TakeProfit/TrailingStop/BreakEven (تثبيت وقف الخسارة عند نقطة التعادل).
الآن، يتم عرض جميع نقاط الوقف الافتراضية على الرسم البياني وهي أساسية عند إغلاق المراكز عند هذه المستويات. تتم إضافة جميع البيانات حول المستويات الافتراضية في شكل خطوط على الرسم البياني ومتغيرات عامة (Global variables).
ملاحظة: إذا قمت بحذف خط إيقاف على الرسم البياني والمتغيرات العامة، فلن يعمل الإغلاق الافتراضي على هذا الخط.
انتباه: تحقق من الخبراء والمؤشرات الخاصة بك لإزالة الخطوط من الرسم البياني والمتغيرات العامة! انتباه: يتم تشغيل المستويات الافتراضية بالسعر الحالي، وبعد ذلك يحدث الإغلاق. أثناء الإغلاق، قد يكون هناك انزلاق لبضع نقاط! انتباه: في MT4، لا تعمل VirtualStops في وضع التحسين. انتباه: عند تمكين VirtualStops، تنخفض سرعة الاختبار بشكل كبير. انتباه: لا تحتوي نقاط الوقف/جني الأرباح/وقف الخسارة المتحرك الافتراضية على قيود وحظر من الخادم. لذلك، يمكن تعيينها بالسعر الحالي، مما يؤدي إلى الإغلاق الفوري.
SetMinStops
تسوية جميع معلمات الخبير المستشار تلقائيًا إلى أدنى مستويات إيقاف مقبولة.
مع Virtual Stops – لا تؤثر هذه المعلمة.
مع AutoSetMinLevel، سيتم تعديل مستويات الإيقاف إلى أدنى المستويات الممكنة التي يسمح بها الخادم؛
إذا كان مستوى Stop Loss أو Take Profit أقل من الحد الأدنى لمستوى الإيقاف على الخادم، فإن مستوى Stop Loss/Take Profit = الحد الأدنى لمستوى الإيقاف (الانتشار السعري * 2 أو مستوى ثابت على الخادم) + الانتشار السعري.
عند استخدام ManualSet، سيتلقى المستخدم رسالة مفادها أن مستويات إيقاف المستشار الخبير أقل من الحد الأدنى، وسيتلقى المستشار الخبير خطأ من الخادم.
إذا كان مستوى الإيقاف على الخادم عائمًا، فسيتم حساب الحد الأدنى لمستوى الإيقاف تلقائيًا كـ الانتشار السعري * 2.
StopLoss
StopLoss لكل مركز (صفقة) تفتحه بالـ نقاط (Pips).
TakeProfit
TakeProfit لكل مركز (صفقة) مفتوح بالـ نقاط (Pips).
ForcedModifySLTP
تعديل إجباري للمراكز: تعيين وقف الخسارة وجني الأرباح.
سيقوم الخبير المستشاربتعديل إجباري لـ StopLoss و TakeProfit لجميع مراكزه.
على سبيل المثال:
إذا فتح خادم الوسيط صفقة ولكنه لم يُرجع تذكرتها (Ticket)، فسيقوم الخبير بالتحقق الإجباري من جميع مواقفه.
إذا وجد المستشار الخبير أن StopLoss أو TakeProfit للمركز هو 0، فسيقوم الخبير المستشار بفرض تعديل StopLoss و TakeProfit.
TimeToCheckAverageSpread
تم أخذ خوارزمية هذه الوظيفة من مستشار مبيعات TickSniper Scalper الآلي الخاص بنا.
تمت إضافة المعلمات إلى كتلة خيارات الإيقاف (SL TP TS): – TimeToCheckAverageSpread: العدد (بالمللي ثانية، 20000 = 20 ثانية) لتحديد متوسط الانتشار السعري – AutoCheckLowSpread: التحديد التلقائي للانتشار السعري المنخفض. يحدد تلقائيًا ما إذا كان الانتشار السعري منخفضًا جدًا (أقل من نقطة واحدة (Pip)) ويضبط جميع إعدادات النظام على أقل انتشار سعري ممكن. هذا يحمي النظام من تقليل الانتشار السعري من قبل الوسيط.
كيفية الاستخدام: للمعلمة المحسوبة بالـ نقاط (Pips) بناءً على متوسط الانتشار السعري لزوج العملات، حدد الإعداد بعلامة “–“.
على سبيل المثال: StopLoss = 2000 يعني أن StopLoss لكل مركز سيكون 2000 نقطة (Pips)! StopLoss = -100 يعني أن StopLoss لكل مركز سيكون مساويًا لـ 100 * متوسط الانتشار السعري، المحسوب بواسطة الخبير المستشار على مدى TimeToCheckAverageSpread مللي ثانية.
إذا كان الانتشار السعري 20 نقطة (Pips)، فسيكون StopLoss في وقت الفتح 2000 نقطة (Pips). مع انتشار سعري عائم، تتغير هذه القيمة دائمًا.
المعلمات المتاحة للضبط في وضع الانتشار السعري: Distance، DistanceAdditionalOpening، StopOrderDeltaifUSE، StopLoss، TakeProfit، TrailingStop، TakeProfitALL، StopLossALL، LevelWLoss، LevelProfit.
سيتم عرض متوسط الانتشار السعري الحالي، وكذلك مستوى الانتشار السعري المنخفض التلقائي، في لوحتنا في قسم معلومات الاستراتيجية.
خيارات اللوت (Lot)
Lots
يتم استخدام لوت ثابت (حجم (Volume)) لفتح مركز (صفقة) أو أمر.
AdditionalLots – لوت إضافي (حجم) ستتم إضافته إلى كل صفقة جديدة بناءً على إشارة جديدة.
CoefficientLots – معامل اللوت، الذي سيتم ضرب اللوت به لكل صفقة جديدة بناءً على إشارة جديدة.
يعمل فقط (عندما يُسمح للمستشار بفتح أكثر من مركز واحد لكل إشارة OnlyOnePosbySignal = false / OnePosPerDirection = false)
DynamicLot
لوت ديناميكي، اللوت التلقائي (AutoLot)، لمركز مفتوح.
يمكنك تمكين حساب اللوت الديناميكي بناءً على النسبة المئوية من الهامش الحر (Free margin) وعوامل أخرى. حساب اللوت التلقائي الخاص بنا.
نوع حساب اللوت التلقائي: الرصيد (BALANCE) – يتم حساب اللوت التلقائي من الرصيد الحالي. حساب اللوت بناءً على رصيد الحساب! إذا كانت هناك مراكز مفتوحة على الحساب، فسيكون اللوت التالي هو نفسه تقريبًا لأن الرصيد لا ينقص من عدد المراكز المفتوحة الحالية! FREEMARGIN – حساب اللوت القياسي من الهامش الحر الحالي هو أنه كلما زاد عدد المراكز المفتوحة على الحساب، قل اللوت المحسوب للمركز التالي. لأنه عند فتح مركز، ينخفض الهامش الحر، وبالتالي، يكون لكل مركز مفتوح جديد لوت أصغر عند حساب اللوت التلقائي.
DynamicLotStopLoss
المخاطرة من SL – يحسب اللوت التلقائي، مع مراعاة Stop Loss. أقصى خسارة بالنسبة المئوية من الرصيد عند إغلاق صفقة عند StopLoss. عند حساب اللوت، سيأخذ الخبير المستشار الخاص بنا في الاعتبار Stop Loss (في لحظة فتح الصفقة). إذا أغلقت الصفقة عند Stop Loss، فستكون خسارة هذه الصفقة مساوية لـ % من الرصيد (في وقت فتح الصفقة). مهم: إذا تم تغيير Stop Loss الخاص بك بعد فتح الصفقة، فلا يمكن تغيير لوت الصفقة. عند إغلاق الصفقة، يمكن أن تكون الخسارة أكبر أو أقل. مهم: إذا كنت تستخدم Trailing Stop، يتغير Stop Loss مع كل تيك، ولكن لا يمكن تغيير اللوت. الصيغة والكود: https://expforex.com/ar/my-autolot-secrets-dynamiclot-autolot/#eb-table-content-5
LotBalancePercent
النسبة المئوية للوت التلقائي.
RiskRate
سعر عملتك مقابل الدولار (أو عملة حسابك).
بشكل افتراضي، RiskRate = 0، مما يعني أن الخبير المستشار سيحاول العثور على السعر الصحيح في مراقبة السوق (MarketWatch).
لكي يعمل اللوت التلقائي بشكل جيد مع جميع أزواج العملات، تحتاج إلى تمكين “إظهار جميع أزواج العملات” في مراقبة السوق.
MaxLot
أقصى لوت يمكن للخبير المستشار فتحه عند حساب اللوت التلقائي ومارتينجال (Martingale) للمركز الرئيسي الأول.
Martin
مارتينجال. المضاعفة القياسية للوت لآخر مركز مغلق بخسارة.
إذا كان Martin = 1، فإن المارتينجال غير ممكّن (لوتات ثابتة Volumes).
إذا كان Martin = 0، فلا يمكن للخبير المستشار فتح المركز التالي.
إذا كان Martin = 2، فإن اللوت الأول = 0.1، اللوت الثاني = 0.2، وهكذا: 0.4 – 0.8 – 1.6 – 3.2 – 6.4…
إذا كان Martin = 0.5، فإن اللوت الأول = 1، اللوت الثاني = 0.5، وهكذا: 0.25 – 0.125.
خيارات التوسيط (Averager Options): مجموعة وظائف لتوسيط المراكز، وفتح مراكز عكس الاتجاه
يعتبر عدد المراكز (الصفقات) مشتركًا لكل من الصفقات الإضافية وصفقات التوسيط. انتباه! فقط لإصدار MT4!
AverageUSE
تمكين وظيفة التوسيط. إذا خسر المركز الرئيسي عددًا معينًا من النقاط (Pips)، يفتح خبيرنا المستشار مركزًا من نفس النوع (عكس الاتجاه). وبالتالي، يتم توسيط المركز الأول. ستعمل جميع وظائف الخبير المستشار (Trailing Stop، BreakEven (وقف الخسارة عند نقطة التعادل)) من خط المتوسط (الوسط) للمراكز، والذي يتم حسابه من جميع المراكز (الصفقات) من نفس النوع.
على سبيل المثال: تفتح مركز شراء بسعر 1.600؛ ينخفض السعر إلى 1.500، والخسارة الحالية هي -100 نقطة؛ نقطة التعادل (متوسط السعر (Average Price)) = 1.600؛ لتعديل Stop Loss إلى مستوى التعادل، نحتاج إلى ارتفاع 100 نقطة مع الاتجاه؛ إذا فتحنا مركز شراء بسعر 1.500، فسيتم توسيط مركزنا، ويمكن تعيين نقطة التعادل إلى 1.550؛ لإغلاق صفقتين، يجب أن يتحرك السعر لأعلى 50 نقطة، وليس 100 نقطة. يقوم الخبير المستشار (EA) بتنشيط Trailing Stop، ويكتسب المركزان ربحًا لزيادته.
انتباه: بالنسبة لأحجام اللوت المختلفة (Volumes) للمراكز، يتم حساب متوسط السعر باستخدام صيغة رياضية.
TakeProfitALL
إجمالي جني الأرباح لجميع المراكز.
جني الأرباح، الذي سيتم تعيينه على مسافة TakeProfitALL نقطة من متوسط سعر فتح المراكز.
إذا قمت بتعيين TakeProfitALL = 5 نقاط، فهذا يعني أنه سيتم تعيين جني الأرباح من الخط الأوسط على مسافة 5 نقاط.
Distance
مسافة المراكز المفتوحة لـشبكة التوسيط (Averaging Grid).
بعد كم نقطة عكس الاتجاه لفتح مركز التوسيط التالي (الصفقة) من آخر مركز مفتوح من نوع واحد للتوسيط.
يمكنك تعيين 100 نقطة (Pips).
بعد ذلك، سيتم فتح كل مركز توسيط جديد بعد 100 نقطة خسارة من آخر مركز مفتوح.
يمكنك تعيين 50 نقطة (Pips).
بعد ذلك، سيتم فتح كل مركز إضافي جديد (صفقة) بعد 100 + 50 نقطة خسارة من آخر مركز مفتوح (100، 150، 200، 250، 300).
DistanceMartin
عامل الزيادة للمسافة من المتوسط لكل صفقة.
يمكنك تعيينه إلى 1.5.
بعد ذلك، سيتم فتح كل مركز توسيط جديد بعد 100 + 50 (100*1.5) نقطة خسارة (Pips) من آخر مركز مفتوح (100، 150، 225، 337، 506).
LotsMartin
المعامل: زيادة اللوت (الحجم) لمراكز الشبكة. المعامل الذي سيتم ضرب اللوت به لكل مركز توسيط تالٍ. على سبيل المثال: لوت البداية (الحجم) للمركز الرئيسي = 0.1 LotsMartin = 2، ثم سيكون اللوت التالي (الحجم) للمركز المتوسط المفتوح 0.2، 0.4، 0.8، وهكذا.
انتباه: سيتم حساب الخط الأوسط باستخدام الصيغة بناءً على اللوتات. هذا يسمح لك بتقريب مستوى التعادل (الخط الأوسط) من السعر الحالي.
ومع ذلك، يمكن أن يكون المارتينجال خطيرًا على حسابك. يرجى حساب هذه المعلمة حتى يتمكن إيداعك من تحمل هذا العبء.
LotAdditional
لوت إضافي (حجم) لمركز التوسيط التالي.
على سبيل المثال:
لوت البداية (الحجم) للمركز الرئيسي = 0.1؛ LotAdditional = 0.05، ثم
سيكون اللوت التالي للمركز المتوسط المفتوح 0.15، 0.2، 0.25، وهكذا.
MaxOrdersOpen
أقصى عدد من المراكز لزوج العملات هذا في اتجاه واحد (بشكل منفصل للشراء والبيع).
إذا وصلت شبكة المراكز إلى MaxOrdersOpen، فسيتم تجاهل صفقات التوسيط اللاحقة.
الفتح الإضافي (Additional Opening): مجموعة وظائف للفتح الإضافي للمراكز مع الاتجاه
تمكين فتح صفقات إضافية. إذا أصبح المركز الرئيسي مربحًا بعدد معين من الصفقات، يفتح مستشارنا مركزًا من نفس النوع. وبالتالي، يتم توسيط المركز الأول. هذا يساعد على الاستفادة من إشارة مربحة. ستعمل جميع وظائف الخبير المستشار (Trailing Stop، BreakEven …) من الخط الأوسط للمراكز، المحسوب من جميع المراكز (الصفقات) من نفس النوع.
على سبيل المثال: تفتح مركز شراء بسعر 1.600؛ يرتفع السعر إلى 1.700، والربح الحالي هو +100 نقطة؛ نقطة التعادل (متوسط السعر) = 1.600؛ إذا فتحنا مركز شراء بسعر 1.700، فسيتم توسيط مركزنا، ويمكن تعيين نقطة التعادل إلى 1.650؛ يفتح الخبير المستشار 3 مراكز إضافية (صفقات). تراجع السعر. يقوم الخبير المستشار (EA) بتنشيط Trailing Stop، وتكتسب 5 مراكز ربحًا لزيادته.
انتباه: بالنسبة لأحجام اللوت المختلفة (Volumes) للمراكز، يتم حساب متوسط السعر باستخدام صيغة رياضية.
StopLossALL
إجمالي وقف الخسارة لجميع المراكز.
وقف الخسارة الذي سيتم تعيينه على مسافة StopLossALL نقطة من متوسط سعر فتح المراكز.
إذا قمت بتعيين StopLossALL = 5 نقاط، فهذا يعني أنه سيتم تعيين وقف الخسارة من الخط الأوسط على مسافة 5 نقاط.
DistanceAdditionalOpening
المسافة لفتح مراكز شبكة إضافية.
بعد كم نقطة مع الاتجاه لفتح المركز الإضافي التالي (الصفقة)
يمكنك تعيين 50 نقطة (Pips).
بعد ذلك، سيتم فتح كل مركز إضافي جديد (صفقة) بعد 100 + 50 نقطة خسارة من آخر مركز مفتوح (100، 150، 200، 250، 300).
LotsMartinAdditionalOpening
المعامل: زيادة اللوت (الحجم) لمراكز الشبكة. المعامل الذي سيتم ضرب اللوت به لكل مركز إضافي تالٍ. على سبيل المثال: لوت البداية (الحجم) للمركز الرئيسي = 0.1 LotsMartinAdditionalOpening = 2، ثم سيكون اللوت التالي (الحجم) للمركز الإضافي المفتوح 0.2، 0.4، 0.8، وهكذا.
انتباه: سيتم حساب الخط الأوسط باستخدام الصيغة بناءً على اللوتات. هذا يسمح لك بتقريب مستوى التعادل (الخط الأوسط) من السعر الحالي.
ومع ذلك، يمكن أن يكون المارتينجال خطيرًا على حسابك. يرجى حساب هذه المعلمة حتى يتمكن إيداعك من تحمل هذا العبء.
LotAdditionalOpening
لوت إضافي (حجم) للمركز الإضافي التالي.
على سبيل المثال:
لوت البداية (الحجم) للمركز الرئيسي = 0.1؛ LotAdditionalOpening = 0.05، ثم
سيكون اللوت التالي للمركز الإضافي المفتوح 0.15، 0.2، 0.25، وهكذا.
MaxOrdersOpenAdditionalOpening
أقصى عدد من المراكز لزوج العملات هذا في اتجاه واحد (بشكل منفصل للشراء والبيع).
إذا وصلت مراكز الشبكة إلى MaxOrdersOpenAdditionalOpening، فسيتم تجاهل المراكز الإضافية اللاحقة.
خيارات وقت التداول: مجموعة لإدارة وقت التداول والحدود الزمنية
TradeStartStopbyTime
TradeStartStopbyTime هي وظيفة لتمكين المستشار الخبير من العمل ضمن حدود زمنية محددة.
إذا كان TradeStartStopbyTime = false، فإن الخبير المستشار يتداول على مدار الساعة.
إذا كان TradeStartStopbyTime = true، فسيتم تمكين حد وقت التداول:
SeveralTimeWork
يمكنك أيضًا تحديد عدة فترات زمنية للتداول في معلمة SeveralTimeWork.
تنسيق التسجيل: HH:MM-HH:MM;
حيث:
ساعة بدء التداول: دقيقة بدء التداول – ساعة إيقاف التداول: دقيقة إيقاف التداول.
على سبيل المثال،
SeveralTimeWork = 3:00-5:00;7:30-8:50;12:00-15:00;
بعد ذلك، سيتداول الخبير المستشار خلال هذه الفترات الزمنية:
من 3:00 إلى 5:00؛
من 7:30 إلى 8:50؛
ومن 12:00 إلى 15:00.
لن يفتح المستشار صفقات جديدة في أوقات أخرى.
OpenHour OpenMinute
يتحقق الخبير المستشار من وقت التداول وفقًا للمعلمات:
OpenHour: OpenMinute – بداية التداول؛ CloseHour: CloseMinute – نهاية التداول ليوم واحد.
على سبيل المثال: OpenHour = 5 و OpenMinute = 0، وكذلك CloseHour = 18 و CloseMinute = 59،
بعد ذلك، سيتداول المستشار الخبير كل يوم من الساعة 5:00 إلى 18:59.
ClosePeriod_Minute
إذا كنت ترغب في تحديد فترة التداول من وقت البدء، يمكنك تعيين معلمة ClosePeriod_Minute، وهي الفترة بالدقائق.
على سبيل المثال:OpenHour = 6، OpenMinute = 0، و ClosePeriod_Minute = 180.
بعد ذلك، يحدد المستشار وقت التداول من 6:00 إلى 9:00 (6 + 180 دقيقة = 9:00).
CloseAllTradesByOutOfTime
إغلاق جميع الصفقات المفتوحة والأوامر المعلقة خلال ساعات عدم العمل إذا كان CloseAllTradesByOutOfTime = true.
في هذه الحالة، سيتداول الخبير المستشار خلال الأوقات المحددة، وعند انتهاء وقت التداول، سيقوم المستشار بإغلاق جميع المراكز و الأوامر المفتوحة.
– Not Use = عدم استخدام الوظيفة؛
– Positions and Orders = إغلاق المراكز والأوامر المعلقة؛
– Only Positions = إغلاق المراكز فقط (شراء و بيع)؛
– Only Orders = إغلاق الأوامر المعلقة فقط (BUYSTOP، SELLSTOP، BUYLIMIT، و SELLLIMIT).
TradeByDays
في هذه الكتلة، يمكنك تحديد أيام التداول (Trading Days) للتداول: TradeByDays.
على سبيل المثال، TradeByDays = true و Days = 1,2,3
– في هذه الحالة، سيتداول الخبير المستشارفقط أيام الاثنين، الثلاثاء، و الأربعاء، وفقًا للوقت المحدد أعلاه.
أو يتداول على مدار الساعة لهذه الأيام الثلاثة إذا لم يتم تعيين الوقت.
إذا قمت بتعيين Days = 1,2,3,4,5 ولكن المعلمة TradeStartStopbyTimeFriday = false، فلن يتداول الخبير المستشار يوم الجمعة.
DayForOptimization
تعيين يوم واحد للتحسين في معلمة DayForOptimization.
هذا الخيار مفيد لتحديد الأيام التي كانت الأكثر ربحية أثناء التحسين.
على سبيل المثال،
إذا كان DayForOptimization = 3، فسيتداول المستشار الخبير فقط أيام الأربعاء.
TradeStartbyTimeMonday
يبدأ الخبير المستشار العمل يوم الاثنين إذا تم تعيين TradeStartbyTimeMonday = true في الوقت OpenHourMonday: OpenMinuteMonday.
على سبيل المثال، OpenHourMonday = 3 و OpenMinuteMonday = 40، ثم يبدأ المستشار الخبير التداول يوم الاثنين في الساعة 03:40 بتوقيت الخادم.
(وقت وسيطك، كما هو موضح في مراقبة السوق).
TradeStartStopbyTimeFriday
TradeStartStopbyTimeFriday – وقت التداول ليوم الجمعة.
في خبيرنا المستشار، يمكنك تعيين وقت التداول ليوم الجمعة.
خيارات الوقت ليوم الجمعة: OpenHourFriday: OpenMinuteFriday – CloseHourFriday: CloseMinuteFriday
على سبيل المثال، إذا كنت بحاجة إلى ألا يفتح المستشار صفقات جديدة يوم الجمعة بعد الساعة 18:00، فقم بتعيين: OpenHourFriday = 0: OpenMinuteFriday = 0
– CloseHourFriday = 18: CloseMinuteFriday = 0
في هذه الحالة، لن يفتح المستشار صفقات جديدة بعد الساعة 18:00.
CloseFriday
يمكنك أيضًا إغلاق جميع الصفقات المفتوحة والأوامر المعلقة يوم الجمعة في الوقت المحدد وهو 18:00 إذا كان CloseFriday = true.
خيارات نقطة التعادل بدون خسارة (BreakEven Without LOSS Options): مجموعة وظائف لنقطة التعادل (تعيين وقف الخسارة إلى نقطة التعادل في لحظة محددة)
مثال: LevelWLoss = 50، LevelProfit = 200 بمجرد أن يجمع المركز 200 نقطة من الربح، سيتم تعديل Stop Loss للمركز إلى سعر فتح المركز (+ الانتشار السعري) + 50 نقطة.
مثال: LevelWLoss = 0، LevelProfit = 100 بمجرد أن يجمع المركز 100 نقطة من الربح، سيتم تعديل Stop Loss للمركز إلى سعر فتح المركز (+ الانتشار السعري).
انتباه: إذا تم تمكين وظيفة التوسيط أو الوظيفة الإضافية (true): بعد ذلك، عند فتح مركزين أو أكثر، يقوم المستشار بتمكين وظيفة نقطة التعادل من الخط الأوسط وليس من سعر فتح المراكز.
LevelWLoss
مستوى الربح (LevelWLoss) بالنقاط الذي يتم عنده تعيين Stop Loss عند تمكين هذه الوظيفة.
1 = 1 نقطة ربح؛
0 = وضع الربح الأدنى التلقائي.
إذا كان 0، فإن عدد نقاط الربح لنقطة التعادل (وقف الخسارة عند نقطة التعادل) = انتشار زوج العملات الحالي.
LevelProfit
عدد نقاط الربح (LevelProfit) التي اكتسبها المركز لتعيين Stop Loss عند LevelWLoss نقطة (Pips). يجب أن يكون LevelProfit أكبر من LevelWLoss.
خيارات الوقف المتحرك القياسية
(تتبع المراكز عن طريق تعديل وقف الخسارة إلى الربح!)
TrailingStopUSE
تمكين وظيفة وقف الخسارة المتحرك القياسية.
ملاحظة: إذا تم تمكين وظيفة التوسيط أو الوظيفة الإضافية، وقمت بفتح مركزين أو أكثر، فإن الخبير المستشار يقوم بتمكين وظيفة وقف الخسارة المتحرك من الخط الأوسط وليس من سعر المركز المفتوح. يتم عرض متوسط السعر على الرسم البياني.
IfProfTrail
إذا كان “true” – يبدأ الخبير المستشار في التعديل فقط من اللحظة التي يصل فيها المركز إلى نقطة التعادل (وقف الخسارة عند نقطة التعادل) + TrailingStop من نقاط الربح (Pips).
إذا كان “false”، يعمل Trailing Stop فورًا بعد فتح المركز، ويتم تعيين المركز على الربح ويتم سحبه بعد تحرك السعر.
TrailingStop
المسافة بالنقاط من السعر الحالي إلى وقف الخسارة.
إذا كان الربح الحالي 200 نقطة (Pips)، و TrailingStop = 100، فسيتم تعيين Stop Loss عند +100 نقطة.
وبالتالي، فإن السعر لديه إمكانية التراجع حتى 100 نقطة (Pips).
وإلا، سيتم تنشيط StopLoss، وسيتم إغلاق المركز عند +100 نقطة (Pips).
TrailingStep
خطوة StopLoss عند تمكين وظيفة وقف الخسارة المتحرك.
SaveTPafterTrailingStop
عند التمكين، لن يتم تغيير Take Profit للمراكز المعدلة بعد تنشيط Trailing Stop.
على سبيل المثال: SaveTPafterTrailingStop = false:
عند تشغيل Trailing Stop، سيتم حذف TakeProfit للمركز المعدل (سيتم تعيينه إلى 0)؛
SaveTPafterTrailingStop = true:
عندما يكون Trailing Stop نشطًا، سيتم الحفاظ على TakeProfit للمركز المعدل.
وقف الخسارة المتحرك بواسطة مؤشر بارابوليك سار (Parabolic SAR)
(تعيين وتعديل وقف الخسارة على مؤشر بارابوليك سار)
TrailingStopSAR
يمكنك تمكين (true) وظيفة Trailing Stop بناءً على مؤشر Parabolic SAR.
انتباه: إذا كان المؤشر في حالة خسارة للمركز، ينتظر الخبير المستشار (EA) حتى تصبح نقطة البارابوليك مربحة للمركز.
إذا كان لديك مركزان أو أكثر للتوسيط، فسيتم اعتبار نقطة التعادل (وقف الخسارة عند نقطة التعادل) من متوسط سعر المراكز.
إغلاق المراكز في MetaTrader عند الوصول إلى إجمالي الربح/الخسارة مع وظيفة تتبع الربح.
هذه الوظيفة جزء من CloseIfProfitorLoss مع التتبع. التحكم في إجمالي الربح أو الخسارة مع تتبع الربح.
TypeofClose
نوع الإغلاق عند إجمالي الربح أو الخسارة، بـالدولار (عملة الإيداع) (Dollars (deposit currency))، أو النقاط (Pips)، أو النسبة المئوية من الرصيد، أو النسبة المئوية من حقوق الملكية (equity).
تسمح لك هذه الكتلة بإغلاق جميع المراكز على هذا الرمز إذا وصل إجمالي ربح أو خسارة جميع المراكز إلى القيمة المحددة.
SeparateBuySell
حساب وإغلاق منفصل للمراكز في اتجاهين مختلفين: شراء وبيع.
إذا كان SeparateBuySell = true، فإن الخبير المستشار (EA) يغلق بشكل منفصل اتجاهي الشراء و البيع لتحقيق إجمالي الربح أو الخسارة.
إذا كان SeparateBuySell = false، فإن الخبير المستشار (EA) يغلق اتجاهي الشراء و البيع معًا لتحقيق إجمالي الربح أو الخسارة.
لكي يغلق الخبير المستشار كلا النوعين من المراكز (الصفقات، الشراء و البيع)، يجب أن يتجاوز إجمالي ربح هذين المركزين القيمة المحددة.
ملاحظة: إذا كان OnlyOnePosbySignal = false و OnePosPerDirection = false، أو أي إعدادات تسمح لك بفتح اتجاهات متعددة ومراكز متعددة في كل اتجاه.
CloseProfit
إغلاق المراكز بإجمالي الربح. True – تمكين، False – تعطيل.
prifitessss
عدد الوحدات (الدولار (أو عملة الإيداع)، النقاط (Pips)، والنسبة المئوية) للإغلاق.
إذا كان إجمالي الربح على مراكز زوج العملات أكبر من أو يساوي قيمة prifitessss، فسيتم إغلاق جميع المراكز.
CloseLoss
إغلاق المراكز عند إجمالي الخسارة. True – تمكين، False – تعطيل.
lossss
عدد الوحدات (الدولار (أو عملة الإيداع)، النقاط (Pips)، والنسبة المئوية) للإغلاق.
إذا كانت إجمالي الخسارة على مراكز زوج العملات أكبر من أو تساوي قيمة lossss، فسيتم إغلاق جميع المراكز.
TrailOptions
تمكين تتبع إجمالي الربح عند تجاوز وحدات prifitessss.
يحدد هذا الخيار المسافة من معلمة prifitessss لتمكين تتبع الربح.
على سبيل المثال،
_ prifitessss = 100 دولار (عملة الإيداع)، TrailOptions = 10 دولارات.
بعد ذلك، عندما يحقق المركز ربحًا قدره 100 دولار، لن يغلق الخبير المستشار هذه المراكز ولكنه سيحدد مستوى ربح قدره 90 دولارًا.
علاوة على ذلك، إذا زاد الربح بمقدار 1 دولار وأصبح 101 دولار، فسيتم تثبيت مستوى الربح عند 91 دولارًا.
إذا انخفض الربح ووصل إلى 91 دولارًا، فسيتم إغلاق جميع المراكز عند هذا المستوى.
TrailOptionsStep
خطوة زيادة مستوى الربح الثابت.
BalanceStart
رصيد البداية، الذي سيتم من خلاله حساب النسبة المئوية للرصيد.
إذا تم تعيينه على 0، فسيتم استخدام رصيد الحساب الحالي.
ForcedClose
إغلاق إجباري لجميع المراكز (الصفقات) بعد وصول السعر إلى إجمالي الربح أو الخسارة.
MailSend
إرسال بريد إلكتروني عند إغلاق المراكز (الصفقات) بسبب إجمالي الربح أو الخسارة.
Orderdelete
حذف الأوامر المعلقة عند إغلاق المراكز (الصفقات) بسبب إجمالي الربح أو الخسارة.
OFFAfterClosePROF
تعطيل الخبير المستشار (EA) بعد الإغلاق عند إجمالي الربح.
سيتوقف الخبير المستشار عن العمل ولن يفتح مراكز (صفقات) وأوامر جديدة!
OFFAfterCloseLOSS
تعطيل الخبير المستشار (EA) بعد الإغلاق عند إجمالي الخسارة.
سيتوقف الخبير المستشار عن العمل ولن يفتح مراكز (صفقات) وأوامر جديدة!
CloseTerminalAfterClosePROF
إغلاق المنصة بعد الإغلاق عند إجمالي الربح.
CloseTerminalAfterCloseLOSS
إغلاق المنصة بعد الإغلاق عند إجمالي الخسارة.
تحديد الخسائر والأرباح
تحديد الخسائر والأرباح لفترة معينة. تحديد الخسارة والربح ليوم واحد/أسبوع/شهر.
تحديد LimitFor – نوع التحديد يوم/أسبوع/شهر؛ LimitForLosses – تحديد الخسارة؛ LimitForProfits – تحديد الربح؛ LimitType – نوع التحديد بالدولار، النقاط، فائدة الإيداع؛ ClosebyLIMITING – إغلاق صفقات المستشار عند تجاوز الحد؛ UseCurrentProfit – مراعاة الربح/الخسارة الحالية عند حساب الحد؛
يمكن لهذه الوظيفة إيقاف تشغيل الخبير المستشار إذا حقق ربحًا/خسارة معينة بعملة الإيداع لـ اليوم/الشهر/الأسبوع.
سيكون التشغيل التالي لـ الخبير المستشار في اليوم أو الأسبوع أو الشهر التالي.
على سبيل المثال، LimitFor = DAY، LimitForProfits = 10 دولارات؛
يمكنك أيضًا تحديد LimitType للحسابات (بالدولار، النقاط، النسبة المئوية من رصيد الحساب).
إذا كنت بحاجة إلى إغلاق وحذف جميع الصفقات لهذا الخبير المستشار عند تجاوز الحدود، فقم بتعيين ClosebyLIMITING = true.
UseCurrentProfit يمكّن/يعطّل حساب الربح/الخسارة العائم الحالي لهذا الخبير المستشار.
خيارات التراجع (Drawdown)
مجموعة للتحكم في فتح المراكز عند التراجع.
DrawDown_Level – تمكين مجموعة التحكم في التراجع؛ Type_DrawDownHR – نوع حساب التراجع بناءً على الصفقات في السجل والصفقات الحالية؛ DrawDown_Level_One – المستوى الأول للتراجع بالنسبة المئوية؛ Type_Deal_Level_One – الإجراء عند تجاوز المستوى الأول للتراجع (إيقاف الإشارات الجديدة، إيقاف توسيط الصفقات أو الفتح الإضافي، إغلاق جميع الصفقات)؛ DrawDown_Level_Two – المستوى الثاني للتراجع بالنسبة المئوية؛ Type_Deal_Level_Two – الإجراء عند تجاوز المستوى الثاني للتراجع (إغلاق جميع المراكز المربحة، إغلاق جميع المراكز الخاسرة، إغلاق الكل).
على سبيل المثال:
DrawDown_Level = true،
DrawDown_Level_One = 50،
Type_Deal_Level_One = No_NewDeal،
DrawDown_Level_Two = 90،
Type_Deal_Level_Two = Close_All.
مع هذه الإعدادات، بمجرد أن يتجاوز التراجع الحالي لـ الصفقات في السجل والصفقات الحالية 50% من الإيداع الحالي، لا يمكن للمستشار الخبير فتح صفقات جديدة بناءً على إشارات جديدة.
في نفس الوقت، ستعمل وظائف التوسيط.
عندما يتجاوز التراجع 90%، يغلق المستشار الخبير جميع الصفقات على الفور.
السحب الافتراضي
تُستخدم أداة السحب الافتراضي في اختبار الاستراتيجية لمحاكاة عمليات الإيداع (إيداع إضافي في الحساب (Deposit Top-Up)، سحب من الحساب (Deposit Withdrawal)).
تمت إضافة سحب افتراضي للأموال في المختبر:
السحب (Withdrawal) – تمكين السحب الافتراضي للأموال عند الاختبار في مختبر الاستراتيجيات؛ Withdrawal_mode – وضع السحب، بعملة الإيداع أو كنسبة مئوية من الرصيد الحالي؛ Withdrawal_amount – عدد عمليات السحب؛ Withdrawal_periodicity_days – تكرار السحب بالأيام؛ Withdrawal_Max – أقصى مبلغ للسحب؛ Withdrawal_EndOfTest – السحب بعد انتهاء الاختبار؛
OnTester_Custom
في كتلة المختبر، تمت إضافة المتغير OnTester_Custom_max، والذي يمكنك من خلاله تحديد معيارك الخاص لـالتحسين الجيني (Genetic optimization).
مزيد من التفاصيل حول نتائج الاختبار: الإحصائيات (Statistics)
سجل في شكل صيغة. على سبيل المثال: OnTester_Custom_max = “STAT_PROFIT * STAT_TRADES / STAT_EQUITY_DD”
من الضروري تحديد أسماء المتغيرات، كما في الوثائق المرجعية!
يمكنك تعيين قيم دنيا يعتبر عندها التحسين النتيجة أثناء التعداد الجيني!
بعبارة أخرى، يمكنك تعيين شرط: “الحد الأدنى لعدد الصفقات” (أو معلمات أخرى)، والذي بناءً عليه سيتم احتساب هذا التشغيل كنتيجة.
إذا فتح المستشار، أثناء الاختيار، عددًا أقل من الصفقات مما هو محدد في الإعدادات، فلن يتم احتساب هذا التشغيل للمحسن كنتيجة!
—انتباه! للمستخدمين المتقدمين فقط. OnTester_Min_Trades = 0; // أدنى عدد صفقات للتحسين OnTester_Min_Profit = 0; // أدنى ربح للتحسين OnTester_Min_ProfitFactor = 0; // أدنى عامل ربح للتحسين OnTester_Min_Balance = 0; // أدنى رصيد للتحسين OnTester_Min_Equity = 0; // أدنى حقوق ملكية للتحسين OnTester_Max_Balance_DD = 0; // أقصى تراجع في الرصيد % للتحسين OnTester_Max_Equity_DD = 0; // أقصى تراجع في حقوق الملكية % للتحسين دليل المستخدم (USER GUIDE) المفصل لهذا
الأسئلة الشائعة حول xCustomEA (FAQ about xCustomEA)
لماذا تختلف النتائج بشكل كبير بين وقف الخسارة الافتراضي (Virtual Stop Loss) ووقف الخسارة الحقيقي (real Stop Loss)؟
لا يمكن أن يواجه وقف الخسارة الافتراضي أخطاء تعديل الأوامر (order modification errors) بسبب زيادة السبريد (spread increases)، أو زيادة مستوى الوقف (stop level increases)، أو تغييرات الأسعار. إنه يتكيف دائمًا مع المستوى المطلوب في أي موقف. تُكتب جميع إدخالات المستشار في متغيرات عامة (global variables). يمكن أن يواجه وقف الخسارة الحقيقي أخطاء تعديل بسبب زيادة السبريد، وزيادة الحد الأدنى لمستوى الوقف، وتغييرات الأسعار. لذلك، لا يمكنه التكيف إلا مع المستوى الذي يسمح به الخادم (server). بسبب هذا الانزياح (shift)، عند إغلاق مثل هذه المراكز، يمكن أن يكون للإغلاقات الافتراضية فترات زمنية مختلفة تمامًا. يمكن إغلاق وقف الخسارة الحقيقي في أوقات أخرى، مما يعطل منطق فتح وإغلاق المراكز بالكامل. على سبيل المثال، بينما يكون مركز واحد مفتوحًا، لا يتم فتح مركز ثانٍ!
لماذا تختلف نتائج الإصدار الجديد عن الإصدار الأقدم؟
هل يمكنني استخدام ملف SET (SET file) مع إعدادات المستشار بين منصتي MT4 و MT5؟ لماذا لا تعمل الإعدادات من MT5 إلى MT4؟
نعم، يمكنك استخدام ملفات SET مع الإعدادات بين المنصتين. جميع المتغيرات هي نفسها.
ولكن هناك مشكلة واحدة:
تدعم منصة MT5 أي ترميز (encoding)، بينما تدعم MT4 نص ANSI فقط.
لذلك، لن يتم فتح ملف الإعدادات المحفوظ في منصة MetaTrader 5 بشكل صحيح في منصة MetaTrader 4.
لاستخدام ملف إعدادات من منصة MT5 في MT4، تحتاج إلى فتح ملف SET وحفظه بترميز ANSI.
ما هو xCustomEA؟
xCustomEA هو مستشار تداول عالمي مصمم للعمل مع المؤشرات المخصصة. يسمح للمتداولين ببرمجة وأتمتة استراتيجيات التداول الخاصة بهم لكل من منصات MT4 و MT5 باستخدام أي مؤشر مخصص.
كيف يختلف xCustomEA عن The X؟
يكرر xCustomEA جميع معلمات مستشار The X ولكنه يضيف القدرة على استخدام المؤشرات المخصصة عبر iCustom. يوفر هذا مرونة أكبر في إنشاء واختبار استراتيجيات التداول.
ما هي منصات التداول التي يدعمها xCustomEA؟
يتوافق xCustomEA مع كل من منصتي MetaTrader 4 (MT4) و MetaTrader 5 (MT5)، مما يسمح للمتداولين باستخدامه عبر منصات مختلفة.
هل يمكن لـ xCustomEA العمل مع أي مؤشر مخصص؟
نعم، يمكن لـ xCustomEA التكامل مع أي مؤشر مخصص متوافق مع منصات ميتاتريدر. يمكنك تنزيل المؤشرات من الإنترنت أو سوق mql5 واستخدامها مع xCustomEA.
كيف أقوم بتثبيت مؤشر مخصص في xCustomEA؟
لتثبيت مؤشر مخصص، حدد اسم المؤشر وأرقام المخازن المؤقتة في إعدادات xCustomEA. تأكد من وضع المؤشر في مجلد المؤشرات (Indicators folder) الصحيح في منصة ميتاتريدر الخاصة بك.
ما هي فوائد استخدام xCustomEA؟
يوفر xCustomEA مرونة لبرمجة وتعديل المستشارين للمؤشرات الجديدة دون تكاليف إضافية. وهو يدعم كلاً من الاستراتيجيات القياسية والمخصصة، مما يوفر الوقت والمال للمتداولين.
كيف أبرمج استراتيجية تداول باستخدام xCustomEA؟
يمكنك برمجة استراتيجياتك الخاصة من خلال دمج المؤشرات المخصصة مع xCustomEA. اتبع خطوات البرمجة المتوفرة لـ MT4 أو MT5 لتحديد الإشارات والفلاتر ومنطق التداول.
هل البرمجة مطلوبة لاستخدام xCustomEA؟
الاستخدام الأساسي لـ xCustomEA لا يتطلب برمجة، لأنه يتضمن استراتيجيات مسبقة الصنع (pre-built strategies). ومع ذلك، للاستفادة الكاملة من المؤشرات المخصصة وإنشاء استراتيجيات شخصية، فإن بعض المعرفة البرمجية مفيدة.
هل يمكنني استخدام xCustomEA مع MetaTrader 4 و 5؟
نعم، يتوافق xCustomEA تمامًا مع كل من منصتي MetaTrader 4 (MT4) و MetaTrader 5 (MT5)، مما يسمح بالتكامل السلس وتنفيذ الاستراتيجيات.
كيف يتعامل xCustomEA مع إدارة الأموال (money management)؟
يتضمن xCustomEA ميزات مثل حساب اللوت التلقائي (Autolot Calculation) وخيارات اللوت الثابت (Fixed Lot Options) لحساب أحجام اللوت تلقائيًا بناءً على رصيدك وضمان تحجيم ثابت للصفقات.
ما هي الاستراتيجيات المدمجة التي يقدمها xCustomEA؟
يتضمن xCustomEA ما يقرب من 20 استراتيجية تداول مدمجة تعتمد على مؤشرات قياسية مثل المتوسطات المتحركة، وMACD، وRSI، وخطوط بولينجر.
كيف يقوم xCustomEA بإجراء التحسين والاختبار؟
يسمح xCustomEA بإجراء اختبار رجعي (backtesting) شامل وتحسين باستخدام البيانات التاريخية (historical data) لتعزيز أداء الاستراتيجية وضمان الموثوقية قبل التداول المباشر.
ما الفرق بين الإشارات والفلاتر في xCustomEA؟
تُطلق الإشارات إجراءات التداول بناءً على شروط المؤشر، بينما تعمل الفلاتر على تحسين هذه الإشارات من خلال تطبيق معايير إضافية لتعزيز دقة التداول.
كيف أحدد أرقام المخازن المؤقتة في xCustomEA؟
حدد أرقام المخازن المؤقتة في إعدادات xCustomEA عن طريق تحديد مخازن المؤشر المؤقتة المناسبة التي تتوافق مع إشارات الشراء (BUY) والبيع (SELL)، مما يضمن التعرف الدقيق على الإشارة.
هل يمكنني استخدام xCustomEA في الوضع شبه الآلي (semi-automatic mode)؟
نعم، يوفر xCustomEA وضعًا شبه آلي حيث تتلقى تنبيهات (alerts) لفرص التداول ويمكنك تأكيد إدخالات الصفقات يدويًا، مما يوفر تحكمًا أكبر في تداولاتك.
ما هو حساب اللوت التلقائي في xCustomEA؟
يقوم حساب اللوت التلقائي تلقائيًا بتحديد حجم اللوت المناسب بناءً على رصيد حسابك الحالي، مما يحسن إدارة المخاطر لكل صفقة.
كيف تعمل استراتيجية مارتينجال (Martingale strategy) في xCustomEA؟
تزيد استراتيجية مارتينجال في xCustomEA حجم اللوت بعد صفقة خاسرة لاسترداد الخسائر، مع معلمات قابلة للتخصيص لإدارة المخاطر وتعزيز الربحية المحتملة.
كيف يدير xCustomEA الوقف المتحرك (trailing stops)؟
يقدم xCustomEA وظائف وقف متحرك متنوعة، بما في ذلك الوقف المتحرك القياسي (Standard Trailing Stop) والوقف المتحرك بارابوليك سار (Parabolic SAR Trailing Stop)، لإدارة الصفقات ديناميكيًا بناءً على تحركات الأسعار.
كيف أتعامل مع الأخطاء مع xCustomEA على الحسابات الحقيقية (real accounts)؟
يتضمن xCustomEA آليات معالجة الأخطاء (Error Handling) لضمان التشغيل السلس على الحسابات المباشرة من خلال الاسترداد التلقائي من أخطاء ومشكلات التداول الشائعة.
هل يمكنني استيراد الاستراتيجيات من The X إلى xCustomEA؟
نعم، يمكنك استيراد الاستراتيجيات من The X إلى xCustomEA، مما يسمح لك بتطبيق استراتيجيات مثبتة مع إضافة تعديلاتك المخصصة لتعزيز المرونة.
ما هي خطوات برمجة استراتيجية في MT4 باستخدام xCustomEA؟
تتضمن برمجة استراتيجية في MT4 باستخدام xCustomEA تحميل المؤشرات في الموارد (resources)، وإنشاء الاستراتيجيات والإشارات، وتحديد الفلاتر، وتحديد منطق التداول من خلال خطوات البرمجة المتوفرة.
كيف أقوم بإنشاء مقابض (handles) للمؤشرات في MT5 باستخدام xCustomEA؟
في MT5، قم بإنشاء مقابض عن طريق تعريف متغيرات لمقابض المؤشرات وتهيئتها (initializing) باستخدام وظيفة iCustom. وهذا يسمح لـ xCustomEA بالتفاعل مع المؤشرات المخصصة أثناء تنفيذ الاستراتيجية.
هل يأتي xCustomEA باستراتيجيات تداول معدة مسبقًا؟
نعم، يتضمن xCustomEA ما يقرب من 20 استراتيجية تداول معدة مسبقًا تعتمد على مؤشرات قياسية، والتي يمكن استخدامها على الفور أو تخصيصها بشكل أكبر وفقًا لتفضيلات التداول الخاصة بك.
كيف يمكنني اختبار استراتيجيتي رجعيًا باستخدام xCustomEA؟
يدعم xCustomEAالاختبار الرجعي من خلال السماح لك بتشغيل استراتيجيات التداول الخاصة بك مقابل البيانات التاريخية في مختبر استراتيجيات ميتاتريدر، مما يساعدك على تقييم وتحسين الأداء قبل التداول المباشر.
ما هي موارد الدعم المتاحة لمستخدمي xCustomEA؟
يمكن لمستخدمي xCustomEA الوصول إلى وثائق شاملة (comprehensive documentation)، وأدلة برمجة، وأمثلة استراتيجيات على المنتدى الرسمي، بالإضافة إلى دعم العملاء (customer support) لاستكشاف الأخطاء وإصلاحها والمساعدة.
تحذير المخاطر:
الأداء السابق في التداول لا يضمن النتائج المستقبلية.
ينطوي تداول العملات الأجنبية (foreign exchange) بالهامش (margin) على درجة عالية من المخاطر وقد لا يكون مناسبًا لجميع المستثمرين.
كن على علم بأن استخدام روبوتات التداول ينطوي على مخاطر كبيرة، وقد تخسر أكثر من استثمارك الأولي.
يرجى المتابعة بحذر، وتقييم وضعك المالي بعناية، والنظر في طلب المشورة من متخصص مؤهل.
سجل التغييرات لـ xCustomEA (Changelog for xCustomEA)
Version 25.9012025.08.25
WHAT’S NEW — CUSTOM OPTIMIZATION CRITERION (USER GUIDE)
This feature is for Strategy Tester optimization in MetaTrader 5. It does not change live trading behavior. It helps the Tester pick the best parameters by a number YOU define.
WHAT IT IS & WHY IT MATTERS
During optimization, the Tester ranks results by a single number (criterion). Usually that’s profit, drawdown, etc. Now you can provide your own number with a simple formula, so you decide what “best” means (e.g., maximize profit while penalizing drawdown, reward more trades, prefer higher Profit Factor, etc.).
Example idea:
STAT_PROFIT / (STAT_EQUITY_DD + 1)
WHAT’S NEW
String input “OnTester_Custom_max” to define a custom ranking formula.
Full expression support:
Operators: + - * /
Precedence: * and / before + and -
Parentheses: ( )
Unary minus: -X
Numeric constants: 1, 0.5, 10.0
No limits on formula length or number of metrics used.
All TesterStatistics variables supported (incl. STAT_COMPLEX_CRITERION).
Formula normalization: spaces/tabs and case handled automatically.
Optional pre-filters before calculation (min trades, min profit, max drawdown, min Profit Factor, etc.) to discard invalid runs early.
Improved logs: original formula, normalized expression, final score.
Safe division policy by default (division by zero returns 0.0; can be changed in code if desired).
Note: OnTester() affects only optimization ranking. It does not change the EA’s live trading logic.
WHERE TO FIND IT IN METATRADER 5
Open Strategy Tester (Ctrl+R).
Select the EA, symbol, timeframe, dates, deposit.
Enable Optimization.
Set Optimization Criterion:
Custom max (to maximize your formula), or
Custom min (to minimize it).
In Inputs, find the string parameter: OnTester_Custom_max — enter your formula here.
(Optional) Set filters in Inputs to prune junk runs:
Quality-focused (expected payoff and PF), normalized by % risk:
STAT_EXPECTED_PAYOFF * STAT_PROFIT_FACTOR / (1 + STAT_EQUITYDD_PERCENT)
Strong penalty for large risk (quadratic):
STAT_PROFIT - 0.1 * (STAT_EQUITY_DD * STAT_EQUITY_DD)
Classic:
STAT_RECOVERY_FACTOR
Choose “Custom max” in Optimization Criterion for all examples above (unless you specifically need to minimize your metric).
HOW TO ENABLE & USE (STEP-BY-STEP)
Set reasonable filters first (e.g., OnTester_Min_Trades, OnTester_Max_Equity_DD) to discard poor runs.
Enter your formula in OnTester_Custom_max.
Select Optimization Criterion = Custom max (or Custom min if you really want to minimize the metric).
Run optimization (Genetic recommended).
Sort results by “Custom” — this is your score.
Open top 5–10 runs and check secondary stats (drawdown, PF, number of trades).
Run Forward testing on finalists to verify robustness and avoid overfitting.
BEST PRACTICES
Scale your metric sensibly (avoid extremely large/small values).
Keep units consistent when mixing money and percentages (normalize when needed).
Use penalties for risk (e.g., quadratic in drawdown) to discourage extreme settings.
If many scores are zero, loosen filters or check variable names and denominators.
Division by zero policy can be customized in code (0.0 by default; change to DBL_MAX or a large constant if preferred).
FAQ
Q: Does this affect live trading?
A: No. It only changes how the Tester ranks optimization runs.
Q: “Custom” is always zero. Why?
A: Usually too-strict filters, division by zero, or a typo in a variable name. Simplify filters and double-check the formula.
Q: Custom max or Custom min?
A: Typically Custom max. Use Custom min only if your formula is an error/risk/cost you want to minimize.
Q: Can I use numbers in formulas?
A: Yes (e.g., 0.5, 10, 1000). Example: STAT_PROFIT - 0.05 * STAT_EQUITY_DD
SUMMARY
Define your goal as a single number, let the Tester search for parameters that optimize your own definition of “best,” and verify the winners with forward testing for stability.
Version 25.2012025.02.02
🚀 Added support for the Expforex AI chatbot!
A built-in technical support chat is now available in the terminal for urgent program-related questions.📌 How does it work?
The chat connects to the main module on our website. For a more detailed response from Expforex AI, please visit our website.
⚠ Attention! Beta version! Some functionality may be temporarily limited.
⚠ Attention! It takes about 5 seconds to connect to the server and receive a response (depending on the quality of your internet connection). If the connection fails, please try again later.
⚠ Attention! In Beta Testing, there are limits on the use of the Expforex AI assistant
🔧 How to set it up?
To ensure the chat works correctly, you need to allow WebRequest for the following URL in the terminal settings:
Open terminal settings → go to the Expert Advisors tab
Enable the option Allow WebRequest for listed URL:
Add the following URL
FULL GUIDE: https://expforex.com/eapadpro/#Documentation/expforex-ai-chatbot
📌 See the image above for a setup example.
🌍 Language Updates
Several translations have been corrected.
Arabic language: text and symbol direction are now displayed correctly.
If you find any issues, please let us know!
Version 25.1112025.01.15
EAPADPRO v61
We are excited to introduce new languages to our functionality. Users can now enjoy an even wider range of language options for their convenience and comfort. Here’s the list of newly added languages:
THAI=12 — Thai
INDI=13 — Hindi
MALAY=14 — Malay
INDONEZIA=15 — Indonesian
ARAB=16 — Arabic
VETNAM=17 — Vietnamese
BALKAN=20 — Balkan
POLAND=21 — Polish
CHEZH=22 — Czech
Update your application and enjoy working in your native language! 🌐
-Fixed the error excessive use of disk space when optimizing Expert in MQL5 CLOUD NETWORK
-Performance improvements and fixes based on crash logs.
Version 24.9782024.11.04
--Solution to the problem with downloading advisors from the market. MQL4 Market: failed download product ' ' [500]
--EAPADPRO v60
--Added Language for links;
--Recompiled in last build of MetaTrader;
Version 24.9772024.11.04
EAPADPRO v60
Added Language for links;
Recompiled in last build of MetaTrader;
Version 24.934 2024.10.04
Fixed a bug in the parameters:
input double AdditionalLots=0; //AdditionalLots –> Additional lot for each new Signal
input double CoeficienteLots=1; //CoeficienteLots –> Coeficiente lot for each new Signal
At the first launch and in the absence of open transactions – Expert Advisor set the minimum lot. – Fixed.
Version 24.918 2024.09.18
EAPADPRO v59
–Enhanced Graphical Interface Translation
We have completely revamped and updated the translations across all elements of the graphical interface. This ensures a more accurate and natural localization, allowing the interface to better reflect the linguistic and cultural nuances of our diverse user base. As a result, interacting with the application is now even more seamless and intuitive, providing a more personalized and comfortable user experience.
–Introduced Informative Tooltips for Panel Elements
To elevate user convenience, we’ve added descriptive tooltips to various panel components. When you hover over buttons and icons, informative explanations about each element’s functionality will appear instantly. This enhancement significantly simplifies navigation and interaction within the application, making it easier for both new and experienced users to utilize all features effectively.
–Resolved Minor Bugs and Boosted Stability
In this update, we’ve addressed and fixed several minor bugs that were affecting the application’s performance. These corrections enhance the overall stability and reliability of the program, ensuring a smoother and more consistent user experience. By eliminating these small issues, we’ve laid the groundwork for a more robust and efficient application.
Version 24.805 2024.08.05
Last build compilation MetaTrader
Fixed error in profit/price/time of closed position in notifications.
Fixed INFOBOX error when deleting the EAPADPRO window.
EAPADPRO v58
Version 24.728 2024.07.29
EAPADPRO v57
Compiled in the last version of MT4
Version 24.404 2024.04.04
Global Update EAPADPRO v55
Attention! Support of visual Graph Elements (Buttons, input line, Edit Box, CheckBox) is no longer supported by VPS server from MetaQuotes!!!!
–Added: information about profit from closed positions to the chart.
The information is displayed for each bar of the current timeframe.
You can change the timeframe to see the result of trading on a certain bar of the current timeframe.
If several positions/deals are closed on one bar of the current timeframe, the trading result is summarized, and the total information for a certain bar is displayed.
The information is updated when the next position/deal is closed.
You can turn off showing history in the panel settings.
–Added: The status of the Expert Advisor operation if it was launched on the server from “VPS MQL MetaQuotes”.
When Expert Advisor is running on the server from MetaQuotes, a message will be created on the home computer that Expert Advisors are running on the server “VPS MQL MetaQuotes”. The smiley face is blue.
Attention: If an Expert Advisor is launched on both the server and the home computer, it can trade in parallel on 2 terminals (server “VPS MQL MetaQuotes” + home computer); there may be conflicts.
Attention: If the Expert Advisor is launched on the server “VPS MQL MetaQuotes”, do not Turn it on work on the home computer to avoid conflicts.
Frequency of polling the status of work on the server = 1 day.
After deinitialization of the Expert Advisor on the server – It will get the status – stopped.
To test the work on the server from “VPS MQL MetaQuotes”, pending orders are created!
–Added: The error status of the Expert Advisor operation can now be read on the EAPADPRO panel.
You can click on the Smile or the Expert Advisor operation status bar and you will be shown a message about current errors of Expert Advisor operation.
If you click on the Smile button on the panel, you will be shown the causes and errors and their solutions with pictures.
==input ENUM_UPDATE_MODE TG_UpdateMode=UPDATE_SLOW –> Update Mode. Timer speed, to receive commands from Telegram bot. The faster the timer runs, the more computer resources will be used! Please do not change it unnecessarily. 2sec,3sec,10sec
==TG_PRIORITY=TG_HOME_VPS –> Priority of work. This is the priority mode when the Telegram bot works on the MetaQuotes VPS server and your home computer.
TG_HOME_ONLY=1, // Only the HOME bot. The Telegram bot works only on the home computer.
TG_VPS_ONLY=2, // Only the VPS bot. The Telegram bot works only on the MetaQuotes VPS server.
TG_VPS_HOME=3, // First VPS bot, second HOME bot. The Telegram bot works on the MetaQuotes VPS server if you upload it to the server. If not, it will work on your home terminal. Check the work on the VPS server every 10 minutes.
TG_HOME_VPS=4, // First HOME bot, second VPS bot. The Telegram bot works on a home computer, but if the home computer/terminal is turned off, it will work on the VPS server from MetaQuotes. Check the VPS server’s work every 10 minutes.
Attention! Screenshots are not available on the VPS server from MetaQuotes!
==TG_Token=”” –> Token bot. Token (unique code) of the bot that will send notifications and receive commands
==TG_ChannelName=”” –> –> Public Channel Name @. Or “private” ID starts -100 of the private channel. That will send notifications about opening/closing/modification/errors and screenshots from the terminal.
==TG_UserNameFilter=”” –> Whitelist Usernames. List of users, starting with @, who can use the bot.
Attention! Sending notifications and working with commands takes computer resources! Use the Telegram bot only for your own needs.
==TG_UseBotTimer=false;//TG_UseBotTimer –> Working with the bot from the phone
New notification type added to EAPADPRO panel settings:
==Notice Open TG – Send a notification to the Telegram channel if a trade is open;
==Notice Close TG – Send a notification to the Telegram channel if a trade is closed;
==Notice Modify TG – Send a notification to the Telegram channel if a trade is modified;
==Notice Error TG – Send a notification to the Telegram channel if an error is received;
==ScreenShot TG – Send a screenshot to the Telegram channel if a trade is opened or closed;
Attention! This is a beta version of working with the Telegram bot. We are working on improving and adding new features.
If you have any suggestions, please write in the “Comments” section.
–Improvement: Code optimization to increase speed.
–Improvement: The speed of the panel update in the strategy tester is now calculated automatically depending on the speed of quotes arrival.
This is done to increase the speed of the program in the strategy tester.
Information update is now equal to 1 real second.
–Improvement: The speed of the program running EAPADPRO in the strategy tester.
Attention! Events in the strategy tester are processed only when a new tick is created.
If a new tick (minimum price movement) is not created, then the panel waits for the next tick.
With Visualization:
Version 48: 390sec (TickSniper 2024-2024)
Version 55: 244sec >>159% (TickSniper 2024-2024)
w/o Visualization:
Version 48: 363sec (TickSniper 2020-2024)
Version 55: 220sec >>165% (TickSniper 2020-2024)
with Visualization:
Version 48: 15750sec (TickSniper 2020-2024)
Version 55: 6220sec >>253% (TickSniper 2020-2024)
–Improvement: The color of the button to close a position on the chart changes depending on the current profit of this position.
–Improvement: Graphic improvements to optimize the Expert Advisor’s performance
–Improvement: The account deposit Symbol is cent ¢, USD $, or eur €. All others are the first letter of the deposit currency name.
–Improvement: When visual testing is completed, objects are not removed from the graph.
–Improvement: When creating screenshots after opening/closing positions, the EAPAPDPRO Control Panel will be expanded to show full information.
This is done in order to study the trading history of Expert Advisor on the visualization graph after testing is completed.
–Fixed: Managing positions and orders from the chart when the panel is minimized.
–Fixed: Corrected the error of clearing the chart from unused order labels.
–Fixed: AutoSize when switching charts.
–Fixed: Drawing errors to Print when the Expert Advisor runs on “VPS MQL MetaQuotes”
Version 24.126 2024.01.26
EAPADPRO v47
DynamicLot for Non-Currency Symbols fixed
New inputs:
Commission_Coefficient –> Commission coefficient (default 2)
DynamicLotStopLoss –> The calculation lot from StopLoss and free margin
Version 23.913 2023.09.19
-EAPADPRO v44
——————————
-Last Build Compilation
Version 23.101 2023.01.08
-EAPADPRO v43 (Added new languages)
-Last Build Compilation
Version 22.130 2022.01.30
Обновление индикатора ZigZag
Version 22.110 2022.01.12
Fixed a bug with drawing objects for new versions of MT5 terminal
Version 21.971 2021.11.10
Update EAPADPRO
Version 21.958 2021.10.28
-EAPADPRO v42 (Added new languages, Added Auto-pause when opening a new bar in the Strategy Tester)
-MT5:
Added the type of indicator signals (xColorArrow with 1 Buffer and 2 colors), for which the signal arrows have 2 different colors (DRAW_COLOR_ARROW)
When using the xColorArrow signal type, you need to set the following values:
SignalBuferforBUY = Buffer number for arrows (Check with the author) or by empirically calculating this buffer number.
SignalBuferforSELL = The number of the color buffer for these arrows (Check with the author), usually following the arrow buffer.
Attention! This type supports 2 colors, where:
0 (the first color of the arrow) is a signal to open a BUY;
1 (the first color of the arrow) is a signal to open SELL;
If your indicator has these colors reversed, then you can additionally use the Signal_Reverse parameter
For more information, we have made an example of using such an indicator with a DRAW_COLOR_ARROW buffer!
An example of using: https://www.mql5.com/ru/market/product/32116#!tab=comments&page=13&comment=25503972
Version 21.953 2021.10.23
-Модернизация сигнала от xArrow для некоторых индикаторов.
Version 21.923 2021.09.24
Recompiling in the latest version of the terminal
Version 21.904 2021.09.04
Recompiled in the latest version of the MetaTrader terminal
Version 21.813 2021.08.13
–Global update of The xCustomEA!
In the block for selecting the type of signal / filter SignalTypeIndicator / FilterTypeIndicator:
Added signals and filters for standard indicators from our Expert Advisor The X!
$$$ THE X MT4: https://www.mql5.com/en/market/product/11536
$$$ THE X MT5: https://www.mql5.com/en/market/product/1230
All 20 standard signals and filters have been added as the main signal / Filter / Signal to close positions!
You can use the standard indicator signals and filters from our The X along with your custom indicator signals.
This means that you can filter custom indicator signals from the market or the Internet using our standard filters.
And also use our standard strategies from The X as the main signal and apply a custom indicator as a filter!
A description of each signal and filter can be found in the user manual for The X: https://www.mql5.com/en/blogs/post/680043
Attention: when you select Standard Indicators, the SignalNameIndicator / SIGNALStrategyInputs / SignalBuferforBUY / SignalBuferforSELL fields do not work!
Attention: when you select Standard Indicators, the FilterNameIndicator / FilterStrategyInputs / FilterBuferforBUY / FilterBuferforSELL fields do not work!
– Added the TrailingStart = Starting point for the start of the Trailing function to the Trailingstop block.
The Expert Advisor will turn on the TrailingStop function when the position gains TrailingStart profit points.
If TrailingStart = 0 then TrailingStart = TrailingStop !!!
Version 21.724 2021.07.24
Added handling of SIGNALStrategyInputs settings for .wav and .bmp files
Version 21.616 2021.06.16
Update for Update
Version 21.612 2021.06.12
EAPADPRO v40 update, according to the new rules for using the MQL5 Market
Version 21.527 2021.05.27
Исправлена работа ClosePositionifChangeOWNSignal = OnlyIfProfit при работе с TypeTradeBUYSELL = Only Sell
Version 21.520 2021.05.21
A new parameter has been added to the “Averaging” block:
— CloseFirstAfterMaxAverage – Close the first averaging deal (the very first of the currently open averaging deals),
when the advisor has opened the maximum number of deals with the MaxOrdersOpen parameter.
If you want to keep a fixed number of Averager grid items (e.g. 5 grid items),
the smallest element must be closed with a loss when the 6th element is opened.
– A new parameter has been added to the “Additional opening” block:
— CloseFirstAfterMaxAdd – Close the first additional opening deal along the trend (the very first of the current open deals),
when the EA opened the maximum number of deals with the MaxOrdersOpenAdditionalOpening parameter.
Same as CloseFirstAfterMaxAverage Paramter.
Version 21.517 2021.05.17
— EAPADPRO v39
— Added custom optimization criteria in genetic mode when choosing the Custom Max optimization mode.
You can set the minimum values ??at which the optimization will take into account the result during genetic enumeration!
In other words: You can set a condition: “the minimum number of deals” (or other parameters),
upon which this run will be counted as a result.
If during selection the advisor opens fewer deals than specified in the settings, then this run of the optimizer will not be counted as a result!
–Attention! For advanced users only.
OnTester_Min_Trades = 0; // Min Deals for optimization
OnTester_Min_Profit = 0; // Min Profit for optimization
OnTester_Min_ProfitFactor = 0; // Min ProfitFactor for optimization
OnTester_Min_Balance = 0; // Min Balance for optimization
OnTester_Min_Equity = 0; // Min Equity for optimization
OnTester_Max_Balance_DD = 0; // Max Balance DD% for optimization
OnTester_Max_Equity_DD = 0; // Max Equity DD% for optimization
– You can find a detailed description of this block of settings in the user manual!
Version 21.425 2021.04.25
Work with the StopTrading button has been modernized. Fixed a bug with random permission of signals to open positions when minimizing the panel.
Version 21.313 2021.03.13
EAPADPRO v38
–Fixed the main signal reversal error when using the Signal_Reverse (true) and ClosePositionifChangeOWNSignal (OnyProfit) functions.
Version 21.216 2021.02.16
Added new parameters of Lots when opening a position by signals:
AdditionalLots – An additional lot that will be added to each new deal based on a new signal
CoeficienteLots – Lot coefficient, by which the lot will be multiplied for each new deal on a new signal
(When the advisor is allowed to open more than one position for each signal ONlyOnePosbySignal = false / OnePosPerDirection = false)
Version 20.731 2020.07.31
MT5: Fixed the conflict of the Additional Opening when using a common stop loss (StopLossALL) and a common trailing stop.
Version 20.608 2020.06.08
Компиляция 2485
Version 20.220 2020.02.19
Dear friends!
We made a very important and difficult decision regarding The X/The xCustomEA for MetaTrader 5 and the use of the multi-currency mode (PAIR1-PAIR12)
Due to the fact that the use of different methods of multi-currency operation does not bring 100% accuracy in obtaining quotes,
we were forced to turn off this mode.
We explored many topics on the forum about the problem of using multi-currency mode in MetaTrader!
Each method of implementing a multi-currency trading mode has its pros and cons!
But in each of these methods there are Cons: Reward resources on computers, skipping ticks, looping the main trade flow.
We made the decision: Remove the multi-currency trading algorithm in The X/The xCustomEA to eliminate trading problems on real charts!
We apologize for any inconvenience caused.
IMPORTANT: As soon as we find the ideal solution for working in multi-currency mode (PAIR1-PAIR12) we will turn on these parameters again, for the convenience of taming and optimization.
IMPORTANT: On a real chart, I recommend installing an adviser on each chart of a currency pair separately from each other (do not use PAIR1-PAIR12)
Version 20.216 2020.02.16
Forced modifying comment length CommentToOrder up to 12 characters!
If the comment is longer than 12 characters, then the advisor will trim the extra characters.
Attention! For the EA to work correctly, set a comment no longer than 12 characters.
eg:
Right: ExpforexTheX
Not Right: Expforex The X Set # 12345
Version 20.212 2020.02.12
– EAPADPRO v35
– Fixed the Work on time error if the advisor TF is greater than the Minutes of the time function.
(For example, closing at 22:49 and TF = H1)
Version 19.994 2019.12.05
Added parameter Send_Push_without_opening_positions:
Sending PUSH notifications to the phone instead of opening positions!
When this parameter is enabled, the adviser will not open a new position on a signal, but only notify the user that
that a new signal has appeared. At the same time, all other functions will work as usual.
Allows the user to open a position on their own if the EA gives a signal.
But the adviser does not make this transaction and does not open a position, but only notifies the user about the signal.
Version 19.905 2019.09.05
Исправлена ошибка алертов при открытии и закрытии позиций.
Version 19.903 2019.09.03
IfProfTrail:
– if true, the Advisor starts the modification only when the position is gaining profit to Breakeven (setting stop loss on the break-even point) + TrailingStop profit points.
– if false – TrailingStop starts working immediately after opening a position and making a profit of 0 points and leaving a position as a profit.
In other words: IfProfTrail = false, then the trailing stop starts working immediately after the position is in profit.
Version 19.820 2019.08.20
-. Alert has been added if the specified indicator is not found!
The adviser will check the existence of the indicator and give a message stating that the indicator was not found with a request to check the correctness of the name!
1. Function ControlNewBarforSIGNAL Changed:
Added values:
ControlNewBarforSIGNALType = 1 = True smallest TF of the settings: New mode!
The EA selects the smallest TimeFrame, which was set by the parameters TF_IndSigToTrade1, FILTER_TF_IndSigToTrade1, FILTER_TF_IndSigToTrade2 ….
In this mode, the EA does not check the signal on the currently set TimeFrame, but on the TimeFrame for receiving a signal from indicators!
This mode is useful for those who use TF_IndSigToTrade1, FILTER_TF_IndSigToTrade1, FILTER_TF_IndSigToTrade2, other than Current.
ControlNewBarforSIGNALType = 2 = True current bar of the current TF: Old mode!
In this mode, the EA checks signals every new bar of the current TimeFrame!
If you use TF_IndSigToTrade1, FILTER_TF_IndSigToTrade1, FILTER_TF_IndSigToTrade2 other than Current, the results on each TimeFrame may be different.
We advise you to install the adviser on the TimeFrame M1!
ControlNewBarforSIGNALType = 1 = False: Do not use the control of the new bar to determine the signal!
Attention: When off, the EA checks signals every new tick! There may be delays in tapping and optimization!
2. Added variable ControlNewBarforOpenbySignal:
ControlNewBarforOpenbySignal = true: Old mode! Open positions on a signal only every new current bar of the current TimeFrame!
The EA opens positions, if there is a signal, only when a new bar of the current TimeFrame arrives!
ControlNewBarforOpenbySignal = false: New mode! Open positions on a signal every new bar from the signal Timeframe!
The EA opens positions, if there is a signal, immediately upon detection of a signal.
This mode is useful for those who use TF_IndSigToTrade1, FILTER_TF_IndSigToTrade1, FILTER_TF_IndSigToTrade2, other than Current.
Version 19.816 2019.08.17
Fixed bug:
When two different directions BUY and SELL are in operation and averaging works, then BUY does not allow to modify the take profit for SELL positions!
Version 19.814 2019.08.14
Update Update
Version 19.808 2019.08.07
Added DistanceMartinAdditional – Coefficient of distance for additional order opening.
Added MinTimebeforenextAverage – Minimum time to the next averaging in minutes.
Code optimization, increased testing speed and optimization.
Starting the calculation of the average spread only when the user uses at least one parameter for the average spread.
EAPADPRO v31.
Version 19.525 2019.05.25
Added function to check different take profit for the averaging function.
If the positions have a different take profit, then the expert sets a single total take profit.
Version 19.517 2019.05.17
Forced modification only when stop loss = 0 or take profit = 0
Version 19.514 2019.05.16
Fixed double opening of averaging deals on accounts with MARKET execution.
Version 19.123 2019.01.23
Indicator example file updated! + StrategyShift removed from indicator file !!!
Added operation mode for the current zero bar(Shift=0)!
Attention! The current bar only forms a signal, so we do not recommend using Bar # 0(Shift=0) to receive signals!
Attention! Some indicators forcibly do not draw a signal at 0 bar! – It is right. Therefore, the adviser will not open positions using Shift = 0.
Version 19.111 2019.01.10
The SaveTPafterTrailingStop function has been updated to work in virtual stop loss / take profit mode with VirtualStops = true
Version 19.110 2019.01.10
ReloadReload
Version 19.107 2019.01.07
– The ClosePositionifChangeOWNSignal parameter is divided into 3 values: False (disabled), True (enabled), OnlyifProfit (Only if the positions are in profit);
– EAPADPRO v25 update
– Additional languages added to the panel: Spanish, Portuguese (Brazil), German, Chinese, Japanese;
The translation was made using the GOOGLE Translator + MQL + Terminal site!
If you find an error in your language, please report it in messages. Thank!
– Increase the speed of the panel;
Version 19.0 2018.12.29
Fix Fix Fix
Version 18.999 2018.12.28
– Optimization of the code, increasing the speed of testing.
– When you first start the advisor, an indicator template file is created for programming your strategy.
A file is created in your terminal Files folder with name “Ind – The xCustomEA TEMPLATE.mq*”
You can open this file and follow the programming instructions of your custom strategy.
Version 18.998 2018.12.28
– Optimization of the code, increasing the speed of testing.
Version 18.992 2018.12.23
– The ability to specify and fill in external variables (which can be configured from the advisor) has been added to the xCustom signal type
SIGNALStrategyInputs, CloseStrategyInputs, FILTERStrategyInputs can now be used with indicators written in our example (xCustomEA)
– In connection with the update of the sample files and our custom indicator Ind – The xCustomEA TEMPLATE, we updated all the variables of the adviser and added an additional type: to the SLTPTypeIndicator type xCustomEA, to call from our example indicator.
Also added is the variable SLTP_IndSigToSlTp to specify the strategy number in the Ind file – The xCustomEA TEMPLATE
Version 18.988 2018.12.10
– Fixed bugs according to user messages
– Reworked system for receiving signals
– Modified indicator indicator files for receiving signals for the operation of new functions and blocks! Be attentive!
================================================= ===============================
– Update EAPADPRO to version 23:
Added controls for speed testing and pause in the strategy tester;
Added a table of current open positions in the strategy tester;
================================================= ===============================
– Added block control signal closure for custom indicator.
This block allows you to close open positions by signals of a custom indicator.
It is used if a custom indicator provides signals for closing positions (separately from the signals for opening a new position).
If you need to tell the adviser signals to close positions, then you need to specify: the indicator name (may be identical with the indicator name for closing positions), a set of parameters (If they differ from the default indicator parameters), TimeFrame, Bar Shift, and number buffers to receive signals for closing. Separately for BUY and SELL positions.
Attention: If you want to close a position when receiving the opposite signals, then you do not need to use this block.
– External parameters Signal for Close options:
CloseNameIndicator = “”; // CloseNameIndicator -> Indicator name to get the signal to close pos
CloseTypeIndicator = xArrow; // CloseTypeIndicator -> Type of indicator signal to close
CloseTimeFrame = PERIOD_CURRENT; // CloseTimeFrame -> TimeFrame of signal to close
Close_shift = 1; // Close_shift -> Bar number to receive signal to close
CloseStrategyInputs = “”; // CloseStrategyInputs -> Inputs Of Ind, separated by commas
CloseBuferforBUY = 4; // CloseBuferforBUY -> Buffer number for close BUY
CloseBuferforSELL = 5; // CloseBuferforSELL -> Buffer number for close SELL
Close_IndSigToClose = 0; // Close_IndSigToClose -> Indicator number to get Close signal
================================================= ===============================
– Added Stop Loss and Take Profit control unit based on custom indicator signals.
This block allows you to set a stop loss or take profit when opening positions on the signal, which can be taken from the values of the custom indicator buffers.
If the Custom Indicator has separate buffers for getting Stop Loss or Take Profit, you can use these values when opening a new position.
Attention: Stoploss or take profit is set only when a new position is opened using a new signal. The functions of averaging, additional opening use the parameters of stop loss and take profit from past variables. Stoploss and take profit obtained from the custom indicator in Averaging and additional opening are not accepted.
Stop loss and take profit from a custom indicator is also set when using the ForcedModifySLTP function.
If you need to tell the adviser the stop loss and take profit values from the custom indicator, then you need to specify: the indicator name
(may be identical with the name of the indicator for opening / closing positions), a set of parameters (If they differ from the parameters of the indicator by
default), TimeFrame, Shift bar, and the number of buffers to get values. Separately for BUY and SELL positions and separately for StopLoss and TakeProfit.
– External parameters Custom StopLoss and TakeProfit from Indicators options:
SLTPNameIndicator = “”; // SLTPNameIndicator -> Indicator name to get the signal of SL / TP
SLTPTypeIndicator = xPrice; // SLTPTypeIndicator -> Type of indicator signal of SL / TP
SLTPTimeFrame = PERIOD_CURRENT; // SLTPTimeFrame -> TimeFrame of signal of SL / TP
SLTP_shift = 1; // SLTP_shift -> Bar number to receive signal of SL / TP
SLTPStrategyInputs = “”; // SLTPStrategyInputs -> Inputs of the ind, separated by commas
SLTPBuferforBUY_StopLoss = -1; // SLTPBuferforBUY_StopLoss -> Buffer number of SL for BUY
SLTPBuferforSELL_StopLoss = -1; // SLTPBuferforSELL_StopLoss -> Buffer number of SL for SELL
SLTPBuferforBUY_TakeProfit = -1; // SLTPBuferforBUY_TakeProfit -> Buffer number of TP for BUY
SLTPBuferforSELL_TakeProfit = -1; // SLTPBuferforSELL_TakeProfit -> Buffer number of TP for SELL
================================================= ===============================
Version 18.970 2018.11.10
– Global update and improvement of the working code.
-Add EAPADPRO v21 panel
-Add short hints to external variables
-Add parameters for calling indicators SIGNALStrategyInputs, for indicators with the type SignalTypeIndicator = xArrow
Read more in our blog.
Atila R Akdeniz
I just bought the EA. I have been using The X Universal for a long time now, with great results.
This EA does everything TheX Universal does and much more, including integration of other EA's and signals and independent strategies etc.
I guess there will be a little bit of a learning curve to understand its full functionality and use it to its full power.
5 stars for such an innovative product from a great designer.
leachimk
Присоединяюсь к словам предыдущего автора. Советник обладает всеми необходимыми инструментами для успешной торговли. Ключевое слово - оптимизация. Особая благодарность разработчику за то, что он постоянно продолжает усовершенствовать советник.
Респект и так держать!
ROBERT URBANSKI
I rent this EA for one month for testing.
I give 5 stars in begin for Suport.
After month I will update info about EA but now I can tell.
It have many interesting settings.
I tried work with many custom indicator (not build).
Works very impresive.
DadeSubandryo
Great support for consumers. still learning stage & EA started to work as i want. I will update the stars & comments if necessary. Thank you
189114nickynomates
This has opened up a whole new world to my trading. The concept is pure brilliant. The forums very informative and you always get help to questions detailed in the correct way. The biggest gain I have received is widening my understanding of the scope that can be achieved in cleaver trading with this ea. Keep up the good work.
Pia Basson 2022.08.23 18:17
I bought this EA hoping to convert my indicators into trading EAs. No luck, it does not work, and the instructions are incomplete and half translated from Russian , and when I requested support, I followed their instructions to provide full descriptions of problem together with screen shots, they then replied and wrote that they don't support this product - they don't support users to even get started or learn to make their software work - how useless. I strongly do not recommend this product. It shows promise but does not deliver. I am sure that just a proper user manual would solve this problem - I checked all their links, blogs, etc. I am now $129 out of pocket a week of time wasted trying to make it work.
Reply from developer Vladislav 2022.08.23 20:20
I don't have the technical ability to help. before buying, you can use the product for free. until we have peace, I cannot work. sorry.
Stanimir Stanchev
I am using xCustomEA for two months and i am extreamly happy with it and the support i'd received from Vladislav. His Exp4 Tester PAD for Strategy Tester is also very useful when it comes to test a strategy in visual mode. My favorite developer as of now!
Valter Oliveira
Excellent product for implementing Expert Advisors (EA) using existing indicators in the MQL5 market. I thank the developer for making this tool available to us.
Hanxyork
I purchased the xCustomEA few days ago, Vladislav answered all my questions quickly, he is very professional, responsible, knowledgeable, honest and dedicated, he helped me to start up my xCustomEA in a VPS.
I am buying more of his products, definitely.
Thank you very much Vladislav.
Vasil lupanov 2020.01.16 19:45
Friends, don't bother looking for experts and utilities. Look for Vladislav !!!! He has everything! Five gold stars for his products and 10 stars for him !!!
Al Bundy 2021.08.14 09:26
====================================================================================================================
*****
Very best EA on market. With new update, you are topping yourself :-)) ! Congratulations! I am very ambitious, but it's so rich with features for grid, averaging, ... I can only be satisfied. Technically I just have one wish: one (or a few) of parameters for custom indicators in separate fields, for iterations of strategy tester. (1. Field for custom indicator, 2. Replaces {with comma separated} custom parameter x) If I will be unsuccessful in trading, it is certainly not due to this advisor!
Al Bundy
Update 3.4.2022
Zero stars
Complete useless EA...
Meanwhile I programmed my own EA and so I know, how easy my suggestions could have been implemented.
The indicators are worthless, because no good parameters to set. Some are buggy.
Even a single moving average trend filter is not possible to set.
Update 18.11.2021
Issue 7 solved. Stars upgraded.
My wish for hedging same pair in direction of trend is also obsolete. I studied the mathematical theory and it can gain nothing.
(+1 -1 = 0)
(+1 -1.1 = -0.1) == (+0 -0.1 = -0.1) but additional spread,slip,commission, lower equity, margin.
This understanding has burst my illusion...
=======================================================================
Update
17.11.2021
*----
Not one single issue is solved so long - very bad support. Mainly Gold for 10.000 sells - I'm so proud of you - this should only given for 10.000 succesful traders or solutions...
Meanwhile my real account is 25% in draw down, because this expert has only very risky averaging martingale against the trend. EA can nothing do to solve this big issue! I have to solve it with another EA or manually. Shame it!
Till there is no function for opening a position with the trend when reaching stop loss (instead of closing position), this EA is NOT to recommend.
For instance ADX is not usable for me without two additional fields: 1. Time frame (I want to filter with W1) 2. ADX minimum level. The standard (25) is not good.
Many thanks for your advise to use strategy tester with cloud network (in your manuals and web page of your expert advisor). There is no negative balance protection and this is not communicated. So my test run 45 minutes and I'm billed with $812,-
I would like this advisor, but all these issues reduces my score again. Maybe eventually I get support or this EA will be better, than I think of better rating again.
I'm tired to read always why something doesn't work.
Best regards
==========================================================================================================
Update 14. Oct 2021
***--
Next star is gone, because an EA without a good indicator is useless... It seems, that many functions are not possible to function if one uses a custom indicator with this EA. See following issue number 7.
Since it is not possible to optimize parameters (see 16) and others are too complex, it lacks of at least four major functions.
So it seems better to use an EA with integrated indicator signals.
==========================================================
14.10.2021
Addition to issue 6. Sometimes the calculated values of my indicator are changed or not used. My indicator delivers stop loss. I check stop level but nonetheless xCustom uses SL=0 !!!!! This is a NO GO!
Journal: 2021.10.14 22:01:12.612 2021.09.20 21:24:03 OPEN DEAL sy=EURUSD op=1 ll=0.16 sl=-1 tp=-1
But I have set an Indicator and a buffer number for stop loss!
Issue 18. In strategy tester virtual stop loss doesn't work!
====================================================================================================================
7.10.2021
BUMP - When are you willing to answer all my questions? Seems as there is no support...
====================================================================================================================
2021-09-27
****-
Meanwhile there are several inconsistencies, which I recognized.
It is possible, that the causes are elsewhere, but so long I can't find out.
5. I have written an indicator with arrow buffers, but not all arrows are caught - what can be wrong? (Some can bet got with OWNSIGNAL_shift=0!)
6. I deliver SL and TP, but they are sometimes not set. I have included spread and corrected the values against stoplevel. In journal there is no error.
7. With another indicator I use iCustom with a second indicator to convert non-arrow buffers to arrow buffers.
My indicator receives the signal at bar 1. The bar number to receive the signal in xCustomEA can't be lower than 2 to get the signals - is this a fact? If so, double indis are not usable.
8. Some times there are errors related to the parameter without error number and metatrader freezes. They are gone if SignalStrategyInputs="".
9. in Strategy Tester visual mode it trades normal, in non visual I get a flat line. How comes?
10. If I set OnTester_custom_max = STAT_PROFIT_TRADES_PERCENT I always get 0.
11. I want to filter trades with FilterTypeIndicator = "Moving Average".
If SMA200 goes up it should allow buy, if it goes down it should allow sell. Other should be prohibited.
How can I do this?
12. I want the simplest setup: Indicator with up/down arrows, SL=50, TP=50, no other confounding factors. I couldn't find out since 3 months! Is this not possible? That just can't be true!
13. Documentation lacks at a few places - TrailingStart, standard indicators.
14. I can't find out how to set parameters so, that trailing starts at 0. It is too complex for me to understand MovingInWLUse + LevelWLoss + LevelProfit + TrailingStart + TrailingStep.
There should be a few examples in documentation for different usage.
I need 3 cases: Trailing starts at SL, Trailing starts at 0, Trailing starts at 50. Rest is ballasted.
15. I need a solution for stopping multiple consecutive stop losses like written before (2021-09-20)!
16. It is awfully well to make fields for parameters and to optimize them. I have written an EA with 60 int, 60 double and 60 bool parameters, which are compound to 60 and delivered to iCustom. They can be optimized.
After 3 months 12 hours per day 7 times the week learning trading, learning MQL5, coding, testing, trying, I have no satisfying combination from bought or self made indicators with xCustomEA.
Either no/poor profits or large draw downs. Maybe this is forex...
==================================================
2021.09.20 00:10 #237 DE - copy from comments
***--
Hi, after heavy strategy testing I have a few wishes:
1. Your EA has "Open Opposite Position After Stop Loss" - I'm missing "Open Opposite Position After Close Pos If Change".
2. I can't get rid of cascades of Stop Loss losses (eg.: March 2020, Feb 2021, July 2021 , which egalize all previous profits.
So I wish "Minutes Pause from Trading After (multiple/heavy) Stop Loss", to wait till the time of worst trading is over.
3. Withdrawal in tester: starting balance 1000. If balance greater than 1100 withdraw to 1000. I think this is how many trader are doing.
4. Don't trade during important news.
I hope you can see the importance of these enhancements.
Many thanks in advance
BUMP, because of long time no response!
jewboy 2019.07.22 17:50
i bought this EA yesterday and with the help of Vladislav, it is working smoothly.
I will make it work on different fx pairs.
Thanks again for your time Vladislav
talha8877 2018.12.16 18:49
I was using The X Universal EA and it was great, but it was missing the ability to add custom indicators.
Now the Author created this expert and it's possible to add those custom indicators or other Experts for signal triggers.
It requires a bit more effort to learn how to integrate those additional functions but thankfully the author has very detailed documentation about the EA.
To set the period for your custom indicator Turbo Trend in Exp4 The xCustomEA for MT4, you need to enter the parameters in the SIGNALStrategyInputs field. Based on your indicator settings, the correct input format should be:
19.0,false,false
This ensures the period (MidasPeriod) is set to 19.0, and both alert options (OnAlert and OnEmail) remain disabled.
For a detailed explanation of all parameter settings, please refer to the following documentation:
Exp4 The xCustomEA for MT4 – Settings
I have also attached a screenshot for clarification. If you have any further questions, feel free to ask.
Best regards,
Vladislav
لوحة المعلومات لجميع مستشارينا والأدوات المساعدة في منصة MetaTrader
إرشادات تفصيلية حول أساسيات إدارة واستخدام لوحة EAPADPRO في مستشاري التداول لدينا
واجهة…
الوصف
لقد قمنا بتلخيص نتائج التداول الموجزة والمفصلة لخبرائنا TickSniper, Good Santa, Tick Hamster, The X, على حسابات التداول الحقيقية (real trading accounts) الخاصة بنا. إحصائيات…
التداول بنقرة واحدة (One-click trading) على مخطط مختبر الإستراتيجيات. تتيح لك الأداة (Utility) اختبار استراتيجياتك يدويًا في مختبر الإستراتيجيات. التداول…
اترك تعليقاً