مساعدة في إدارة الأموال المال من فضلك! (EA مجاني)
Results 1 to 5 of 5

Thread: مساعدة في إدارة الأموال المال من فضلك! (EA مجاني)

  1. #1
    4 مرفق (ق).


    مرحبا جميعا وسنة جديدة سعيدة لك!


    أدرج في مقالتي مدونة للحصول على EA لقد وضعت.

    أنا جعلت ذلك باستخدام:


    http://sufx.core.t3-ism.net/ExpertAdvisorBuilder/


    نظرًا لأن الرسم البياني يظهر لزوج العملة اليوروالدولار الأمريكي ، فإنه يعمل جيدًا بالنسبة إلى الفروات في بعض الأحيان على إعدادات الرسم البياني اليومي ، وإن كان عدد قليل جدًا من الصفقات خلال فترة العامين ونصف العام.


    كما أنه يعمل بشكل جيد مع بعض التخصصات الإضافية ولكن ليس كلها.


    لقد اختبرت أنه يحتوي على TP كإعداد مسبق ، وقم بتعطيل TP بحيث تلتزم SL بالتوجيه إلى إغلاق الصفقات نظرًا لأن عددًا قليلاً إذا وصل البعض إلى مستوى TP.


    لقد أضفت إدارة الأموال إليها حيث تمتعت الأشياء.



    إن المشكلة التي أواجهها هي بغض النظر عن ما أقوم به من خلال إعدادات الإدخال ، حيث لا يمكنني البحث عن تحديد قيم التجارة بأقل من 0.1 لكل 1 كيلو. من المثير للاهتمام أن العواقب تظهر من خلال ما سبق ذكره بناءً على 1000 رصيد أول وتداول تبدأ من 1 دولار لكل نقطة !!!


    أمنيتي ذات شقين مع الثانية ذات الأهمية الأقل:


    1. لامتلاك تصريح إدارة الأموال ل Microlots.

    2. لامتلاك EA متناغم مع 5 أرقام وسطاء.

    3. هل قلت الثالثة؟

    لا ، ولكن واجهت صعوبة في أن تكون لعبة Stealth Trailing Stop بمثابة مكافأة رائعة



    يا رب أحس صفيق الآن







    إذا كان أي شخص يمكن أن يساعد في هذا سأكون في غاية الامتنان ومشاركة EA لاستخدام الآخرين.




    شكرا لك مقدما!


    مع تحياتي،

    ديفيد (وزير الخارجية).



    رمز EA:




    //p ----------------------------------------------- -------------------
    //| يتم إنشاء هذا MQL بواسطة Expert Advisor Builder |
    //|
    http://sufx.core.t3-ism.net/ExpertAdvisorBuilder/|
    //| |
    //| في أي حال من الأحوال المؤلف سيكون مسؤولا عن أي أضرار على الإطلاق. |
    //| استخدام على مسؤوليتك الخاصة. |
    //| *************** تم تجميعها من أجل مخططات DAY *************** |
    //| |
    //| **** من إنتاج: **** |
    //| **** ديفيد كولسون () **** |
    //| |
    ------------------- لا تقم بإزالة هذا الرأس --------------------



    #define SIGNAL_NONE 0
    #define SIGNAL_BUY 1
    #define SIGNAL_SELL Two
    #define SIGNAL_CLOSEBUY 3
    #define SIGNAL_CLOSESELL 4

    #property
    #property Hyperlink http://sufx.core.t3-ism.net/ExpertAdvisorBuilder/

    extern int MagicNumber = 0123490؛
    extern bool SignalMail = False؛
    منطوق خارجي EveryTickMode = خطأ
    الكثير مزدوجة الخارجي = 0.1.
    منطق خارجي UseMM = صحيح ؛
    خارجي مزدوج LotsPer1000 = 0.1 ؛
    extern int Slippage = 3؛
    منطوق خارجي UseStopLoss = True؛
    extern int StopLoss = 2000؛
    منطوق خارجي UseTakeProfit = صحيح
    extern int TakeProfit = 2000 ؛
    منطوق خارجي UseTrailingStop = صحيح ؛
    extern int TrailingStop = 350 ؛


    كثافة العمليات
    الحالية الحالية ؛
    منطقي TickCheck = خطأ ؛
    // ----------------------------------------------- -------------------
    //| وظيفة التهيئة المؤيدة |
    //p ----------------------------------------------- -------------------
    int init ()
    BarCount = القضبان ؛

    إذا (EveryTickMode) الحالي = 0؛ خلاف ذلك الحالي = 1 ؛

    عودة (0)؛

    // ----------------------------------------------- -------------------
    //| وظيفة إزالة التطهير الموالية |
    // ----------------------------------------------- -------------------
    int deinit ()
    عودة (0)؛

    // ----------------------------------------------- -------------------
    //| خبير يبدأ العمل |
    // ----------------------------------------------- -------------------
    int start () {
    int order = SIGNAL_NONE؛
    int كاملة ، تذكرة ؛
    وضع StopLossLevel مزدوجًا ،



    إذا كان (EveryTickMode Bars! = BarCount) TickCheck = False؛
    Complete = OrdersTotal () ؛
    الطلب = SIGNAL_NONE ؛

    // ----------------------------------------------- -------------------
    //| متغير يبدأ |
    // ----------------------------------------------- -------------------


    double Buy1_1 = iStochastic (NULL، 0، 15، 8، 4، MODE_SMA، 0، MODE_MAIN، Current 0)؛
    ضعف Buy1_2 = 65 ؛
    double Buy2_1 = iStochastic (NULL، 0، 15، 8، 4، MODE_SMA، 0، MODE_MAIN، Current 1)؛
    ضعف Buy2_2 = 65 ؛
    double Buy3_1 = iStochastic (NULL ، 0 ، 15 ، 8 ، 4 ، MODE_SMA ، 0 ، MODE_MAIN ، Current 2)
    ضعف Buy3_2 = 65 ؛

    double Sell1_1 = iStochastic (NULL ، 0 ، 15 ، 8 ، 4 ، MODE_SMA ، 0 ، MODE_MAIN ، Current 0)
    مضاعفة Sell1_2 = 35 ؛
    double Sell2_1 = iStochastic (NULL، 0، 15، 8، 4، MODE_SMA، 0، MODE_MAIN، Current 1)؛
    مضاعفة Sell2_2 = 35 ؛
    double Sell3_1 = iStochastic (NULL ، 0 ، 15 ، 8 ، 4 ، MODE_SMA ، 0 ، MODE_MAIN ، Current 2)
    مضاعف Sell3_2 = 35 ؛





    // ----------------------------------------------- -------------------
    //| نهاية متغير |
    // ----------------------------------------------- -------------------

    //تقييم المكان
    منطقي IsTrade = خطأ ؛

    لـ (int I = 0 ؛ I lt؛ Total ، I )
    OrderSelect (I، SELECT_BY_POS، MODE_TRADES)؛
    إذا كان (OrderType () lt؛ = OP_SELL OrderSymbol () == Symbol ())
    IsTrade = صحيح ؛
    إذا (OrderType () == OP_BUY)
    // ----------------------------------------------- -------------------



    // ----------------------------------------------- -------------------
    //آخر
    // ----------------------------------------------- -------------------

    إذا (Order == SIGNAL_CLOSESELL ((EveryTickMode!))



    //p ----------------------------------------------- -------------------
    //| تبدأ الإشارة (الدخول) |
    // ----------------------------------------------- -------------------

    if (Buy1_1 gt؛ Buy1_2 Buy2_1 lt؛ Buy2_2 Buy3_1 lt؛ Buy3_2) Order = SIGNAL_BUY؛

    if (Sell1_1 lt؛ Sell1_2 Sell2_1 gt؛ Sell2_2 Sell3_1 gt؛ Sell3_2) Order = SIGNAL_SELL؛


    // ----------------------------------------------- -------------------
    //| نهاية الإشارة |
    // ----------------------------------------------- -------------------

    //يشترى
    إذا (Order == SIGNAL_BUY ((EveryTickMode!) TickCheck) || (! EveryTickMode (أشرطة! = BarCount)))) {
    إذا (! IsTrade) {
    //تقييم الهامش المجاني
    if (AccountFreeMargin () lt؛ (1 * Lots))
    طباعة (ليس لدينا أي أموال. الهامش المجاني = ، AccountFreeMargin ()) ؛
    عودة (0)؛


    إذا كان (UseStopLoss) StopLossLevel = Ask - StopLoss * Stage؛ آخر StopLossLevel = 0.0 ؛
    إذا كان (UseTakeProfit) TakeProfitLevel = اسأل TakeProfit * Point ؛ آخر TakeProfitLevel = 0.0 ؛

    تذكرة = OrderSend (Symbol () ، OP_BUY ، CalculateLots (UseMM، LotsPer1000، Lots) ، اسأل ، Slippage ، StopLossLevel ، TakeProfitLevel ، Buy (# MagicNumber ) ، MagicNumber ، 0 ، DodgerBlue)
    if (تذكرة gt ؛ 0)
    if (OrderSelect (تذكرة ، SELECT_BY_TICKET ، MODE_TRADES))
    طباعة (فتح أمر الشراء: ، OrderOpenPrice ())
    if (SignalMail) SendMail ([تنبيه الإشارة] ، [ الرمز () ] DoubleToStr (اسأل ، أرقام) فتح الشراء)
    آخر
    طباعة (خطأ في فتح أمر BUY: ، GetLastError ()) ؛


    إذا (EveryTickMode) TickCheck = صحيح ؛
    إذا (! EveryTickMode) BarCount = أشرطة؛
    عودة (0)؛
    }
    }

    //يبيع
    إذا كان (Order == SIGNAL_SELL ((EveryTickMode!) TickCheck) || (!
    إذا (! IsTrade)
    //تقييم الهامش الحر
    if (AccountFreeMargin () lt؛ (1 * Lots))
    طباعة (ليس لدينا أي أموال. الهامش المجاني = ، AccountFreeMargin ()) ؛
    عودة (0)؛


    إذا كان (UseStopLoss) StopLossLevel = Bid ​​ StopLoss 0.0 Point؛ آخر StopLossLevel = 0.0 ؛
    إذا كان (UseTakeProfit) TakeProfitLevel = Bid ​​- TakeProfit * Point؛ آخر TakeProfitLevel = 0.0 ؛

    تذكرة = OrderSend (Symbol () ، OP_SELL ، CalculateLots (UseMM، LotsPer1000، Lots)، Bid، Slippage، StopLossLevel، TakeProfitLevel، Economy (# MagicNumber )، MagicNumber، 0، DeepNink
    if (تذكرة gt ؛ 0)
    if (OrderSelect (تذكرة ، SELECT_BY_TICKET ، MODE_TRADES))
    طباعة (تم بيع طلب البيع: ، OrderOpenPrice ())
    if (SignalMail) SendMail ([Signal Alert] ، [ Symbol () ] DoubleToStr (Bid، Digits) Open Economy)؛
    آخر
    طباعة (خطأ في فتح ترتيب SELL: ، GetLastError ()) ؛


    إذا (EveryTickMode) TickCheck = صحيح ؛
    إذا (! EveryTickMode) BarCount = أشرطة؛
    عودة (0)؛



    إذا (! EveryTickMode) BarCount = أشرطة؛

    عودة (0)؛
    }
    // ----------------------------------------------- -------------------


    #define LOTS_PRECISION 1

    CalculateLots (الاستخدام المنطقي ، والكثير المزدوج ، 1000)

    إذا كان (! UseMM) بإرجاع (الكثير) ؛

    عودة (NormalizeDouble (AccountBalance ()1000 * lotsPer1000، LOTS_PRECISION))؛












    .

    https://www.cavemantrading.com/crypt...te-orders.html

    https://www.cavemantrading.com/crypt...dealer-ea.html

    https://www.cavemantrading.com/forex...os-system.html

    https://www.cavemantrading.com/crypt...de-copier.html

  2. #2
    لم ألق نظرة ممتازة على الكود ، ولكن قد تكون حل مشكلتك في استخدام أحجام الكثير أكبر عن طريق استبدال الكود المدرج #define LOTS_PRECISION 1 حساب مزدوج واحد (إستخدام منطقي MM ، عدد لوت مضاعف 1000 ، الكثير مضاعفة) إذا تم تحقيق (! UseMM) الكثير)؛ عودة (NormalizeDouble (AccountBalance ()1000 * lotsPer1000، LOTS_PRECISION))؛ مع رمز المدرج double CalculateLots (منطقي useMM ، لوتس مزدوج 1000 ، الكثير مزدوجة) إذا (! UseMM) العائد (الكثير) ؛ double double = MarketInfo (Symbol ()، MODE_LOTSTEP)؛ minlot المزدوج = MarketInfo (Symbol () ، MODE_MINLOT) ؛ double lot = MathMax (MathFloor (AccountBalance ()1000 * LotsPer1000step) * القياس ، مينلوت) ؛ العودة (الكثير)؛

  3. #3

    Quote Originally Posted by ;
    . مرحبا جميعا وسنة جديدة سعيدة لك! أقوم بتضمين الرمز الخاص ببرنامج EA الذي قمت بتطويره في مشاركتي. أنا جعلت ذلك باستخدام:
    http://sufx.core.t3-ism.net/ExpertAdvisorBuilder/
    كود سيء للغاية ... اقرأ:
    http://forum.mql4.com/48594ثم قراءة وتنفيذ:
    http://forum.mql4.com/48352
    http://forum.mql4.com/48276

  4. #4

    Quote Originally Posted by ;
    لم ألق نظرة رائعة على الكود ، ولكن قد تكون حل مشكلتك في استخدام أحجام الكثير أكبر عن طريق استبدال #define LOTS_PRECISION 1 حساب مزدوج (حساب منطقي ، MM ، عدد كبير مزدوج 1000 ، الكثير) إذا تم إنتاج (! UseMM) (الكثير) . return (NormalizeDouble (AccountBalance ()/1000 * lotsPer1000، LOTS_PRECISION))؛ مع CalculateLots المزدوجة (استخدام منطقي ، عدد كبير مزدوج 1000 ، عدد مزدوج) {if (! UseMM) العائد (الكثير) ؛ التدبير المزدوج = MarketInfo (Symbol () ، MODE_LOTSTEP) ؛ minlot المزدوج = MarketInfo (Symbol () ، MODE_MINLOT) ؛ الكثير المزدوج = MathMax (MathFloor (AccountBalance ()1000 * LotsPer1000step) * القياس ، مينلوت) ؛ ...
    شكرا لكم Gumrai ~ سأحاول هذا في وقت لاحق وأعلمك

  5. #5

    Quote Originally Posted by ;
    اقتباس المزيد من الرموز السيئة ... اقرأ:
    http://forum.mql4.com/48594وقراءة وتنفيذ:
    http://forum.mql4.com/48352
    http://forum.mql4.com/48276
    شكرا رابتور ، لقد قرأت الكثير من مشاركاتك حول موقع MQL أثناء استكشافها اقتراحك هو موضع تقدير

أذونات النشر

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  
  • رمز BB مفعل
  • الابتسامات مفعلة
  • رمز[IMG] مفعل
  • رمز [VIDEO] مفعل
  • رمز HTML غير مفعل
This website uses cookies
We use cookies to store session information to facilitate remembering your login information, to allow you to save website preferences, to personalise content and ads, to provide social media features and to analyse our traffic. We also share information about your use of our site with our social media, advertising and analytics partners.