النتائج 1 إلى 2 من 2
  1. #1
    الصورة الرمزية petra_b2
    petra_b2 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Dec 2017
    الإقامة
    مصر
    المشاركات
    3

    افتراضي كيف يكتب هذا الشرط داخل الكود

    رجاء المساعده ... كيف اكتب الشرط التالي ..
    (داخل اكسبرت ريكفري زون)
    لما يوصل السعر لمضاعفه ( الباي ستوب او السيل ستوب ) و ميقدرش يفتحها بسبب الهامش او لاي سبب .
    في هذه الحاله
    (يمسح التيك بروفت) للصفقات الرابحه اللي حتكون عقودها اقل لان مفتحش المضاعفه الاخيره بسبب الهامش

    و ايضا (يمسح الاستوب لوز ) للصفقات الخاسره اللي حيكون مجموع عقودها اكبر من الرابحه

    بمعني . لو عقود الشراء مجموعها 1.28
    والبيع 2.56
    وطلع يفتح الشرا ب 5.12 .. وما كان في هامش يكفي ..
    يستمر فالانعكاس بعد ما يلغي التيك بروفت لعقود الشرا ب1.28 ويكمل بعقود الانعكاس بعقود 2.56 بعد ما يلغي الاستوب لوز ليهم

  2. #2
    الصورة الرمزية petra_b2
    petra_b2 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Dec 2017
    الإقامة
    مصر
    المشاركات
    3

    افتراضي

    هل هذا الكود صحيح ؟


    int OnInit()
    {
    // variables
    double USD_Profit = 100;
    double USD_Loss = -100;
    double TotalContracts = 0;
    double ProfitContracts = 0;
    double LossContracts = 0;

    return(INIT_SUCCEEDED);
    }


    void OnTick()
    {
    // التأكد من الصفقات المفتوحه
    if(OrdersTotal() > 0)
    {
    // التأكد من الصفقات الرابحه
    if(USD > 0 && SymbolProfit() >= USD_Profit)
    {
    // اغلا ق الصفقات
    CloseAllPositions();
    }
    // Check if the position is in loss
    else if(USD < 0 && SymbolLoss() >= USD_Loss)
    {
    // اغلاق الصفقات
    CloseAllPositions();
    }
    }

    // شرط وصول السعر للمضاعفه
    if(Symbol() == "EURUSD" && CurrentBar() == 100)
    {
    // احسب عدد العقود
    TotalContracts = Total();

    //احسب العقود الرابحه
    ProfitContracts = GetLongPositionsTotal();

    // احسب العقود الخاسره
    LossContracts = GetShortPositionsTotal();

    // Clear the take profit for the profitable contracts
    for(int i = 0; i < ProfitContracts; i++)
    {
    OrderSelect(i, SELECT_BY_POS, MODE_TRADES);
    // اغلاق العقود
    CloseOrder(OrderTicket(), OrderClosePrice(), 0, 0);
    }

    // مسح ستوب لوز للصفقات الخاسره
    for(int i = 0; i < LossContracts; i++)
    {
    OrderSelect(i, SELECT_BY_POS, MODE_TRADES);
    // اغلاق الصفقات
    CloseOrder(OrderTicket(), OrderClosePrice(), 0, 0);
    }
    }
    }


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17