عضو بالفيدرالي: الخيارات الحالية بين التريث أو رفع الفائدة لكبح التضخم ( الخميس 04 يونيو 2026 07:39 م ) مسؤولة بالفيدرالي: الذكاء الاصطناعي لا يدفع التضخم صعوداً أو هبوطاً في الوقت الحالي ( الخميس 04 يونيو 2026 07:37 م ) الفيدرالي في نيويورك يرصد استمرار الضغوط على سلاسل الإمداد العالمية في مايو ( الخميس 04 يونيو 2026 07:29 م ) سوق العمل الأمريكي في اختبار حاسم.. كيف ستتفاعل الأسواق مع البيانات؟ ( الخميس 04 يونيو 2026 07:29 م ) بينتريست تعمّق شراكتها مع أمازون عبر صفقة سحابية بقيمة 4 مليارات دولار ( الخميس 04 يونيو 2026 07:27 م ) ترامب يوقع أمراً تنفيذياً لتسهيل فصل 8 آلاف موظف فيدرالي ( الخميس 04 يونيو 2026 07:25 م ) كندا: استراتيجية الذكاء الاصطناعي ستوفر 250 ألف وظيفة وتدعم الناتج المحلي بنسبة 3% ( الخميس 04 يونيو 2026 07:20 م ) صندوق النقد يدعو الاحتياطي الفيدرالي إلى الحذر بشأن التضخم ( الخميس 04 يونيو 2026 07:18 م ) شركة BitMine تضخ 300 مليون دولار لزيادة حيازاتها من إيثريوم ( الخميس 04 يونيو 2026 07:15 م ) الصين تخفض أسعار البنزين والديزل المحلية اعتبارًا من 5 يونيو ( الخميس 04 يونيو 2026 07:14 م ) البيتكوين والعملات المستقرة.. توقع صادم من بيتر شيف! ( الخميس 04 يونيو 2026 07:04 م ) محافظ الفيدرالي الأمريكي الجديد تحت المجهر بعد قرارات تعيين مثيرة للجدل ( الخميس 04 يونيو 2026 07:01 م ) لماذا انخفض الدولار رغم استمرار ترقب بيانات التوظيف الأمريكية؟ ( الخميس 04 يونيو 2026 04:22 م ) إيرباص تسلم 81 طائرة... هل تنجح في تحقيق هدف 870 طائرة هذا العام؟ ( الخميس 04 يونيو 2026 04:06 م ) كيف يمكن للذكاء الاصطناعي إعادة تشكيل مستقبل سبيس إكس؟ غولدمان ساكس يوضح! ( الخميس 04 يونيو 2026 03:37 م ) فيتش تخفض نظرتها المستقبلية لقطاع الطيران العالمي إلى متدهورة ( الخميس 04 يونيو 2026 03:30 م ) جوجل تراهن على الطاقة المتجددة في أحدث مشاريع مراكز البيانات ( الخميس 04 يونيو 2026 03:16 م ) أمين عام أوبك: الطلب على النفط سيظل قوياً ولا تغيير في التقديرات ( الخميس 04 يونيو 2026 02:55 م ) إيران تكشف تفاصيل جديدة عن الاتفاق المرتقب مع الولايات المتحدة ( الخميس 04 يونيو 2026 02:54 م ) عاجل| ارتفاع دون التوقعات في مخزونات الغاز الطبيعي الأمريكية ( الخميس 04 يونيو 2026 02:34 م )

النتائج 1 إلى 5 من 5
  1. #1
    الصورة الرمزية wajdyss
    wajdyss غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Sep 2006
    الإقامة
    جزر الملديف
    المشاركات
    3,022

    افتراضي مطلوب تعديل بسيط على هذا الاكسبيرت

    السلام عليكم ورحمة الله وبركاته

    هذا اكسبيرت يقوم بالشراء من ادنى سعر للامس ويبيع من اعلى سعر للامس ولا يقفل الصفقات الا عندما تصل للهدف او الوقف، وتم صنعه عن طريق موقع :

    ###sufx.core.t3-ism#

    وهذا هو الكود

    كود PHP:
    //+------------------------------------------------------------------+
    //| This MQL is generated by Expert Advisor Builder                  |
    //|                http://sufx.core.t3-ism.net/ExpertAdvisorBuilder/ |
    //|                                                                  |
    //|  In no event will author be liable for any damages whatsoever.   |
    //|                      Use at your own risk.                       |
    //|                                                                  |
    //+------------------- DO NOT REMOVE THIS HEADER --------------------+
    #define SIGNAL_NONE 0
    #define SIGNAL_BUY   1
    #define SIGNAL_SELL  2
    #define SIGNAL_CLOSEBUY 3
    #define SIGNAL_CLOSESELL 4
    #property copyright "Expert Advisor Builder"
    #property link      "http://sufx.core.t3-ism.net/ExpertAdvisorBuilder/"
    extern int MagicNumber 0;
    extern bool SignalMail False;
    extern bool EachTickMode True;
    extern double Lots 1.0;
    extern int Slippage 1;
    extern bool UseStopLoss True;
    extern int StopLoss 50;
    extern bool UseTakeProfit True;
    extern int TakeProfit 100;
    extern bool UseTrailingStop False;
    extern int TrailingStop 0;
    int BarCount;
    int Current;
    bool TickCheck False;
    //+------------------------------------------------------------------+
    //| expert initialization function                                   |
    //+------------------------------------------------------------------+
    int init() {
       
    BarCount Bars;
       if (
    EachTickModeCurrent 0; else Current 1;
       return(
    0);
    }
    //+------------------------------------------------------------------+
    //| expert deinitialization function                                 |
    //+------------------------------------------------------------------+
    int deinit() {
       return(
    0);
    }
    //+------------------------------------------------------------------+
    //| expert start function                                            |
    //+------------------------------------------------------------------+
    int start() {
       
    int Order SIGNAL_NONE;
       
    int TotalTicket;
       
    double StopLossLevelTakeProfitLevel;
     
       if (
    EachTickMode && Bars != BarCountTickCheck False;
       
    Total OrdersTotal();
       
    Order SIGNAL_NONE;
       
    //+------------------------------------------------------------------+
       //| Variable Begin                                                   |
       //+------------------------------------------------------------------+
     
    double Buy1_1 iClose(NULL0Current 0);
    double Buy1_2 iLow(NULL0Current 1);
    double Sell1_1 iClose(NULL0Current 0);
    double Sell1_2 iHigh(NULL0Current 1);
     
     
       
    //+------------------------------------------------------------------+
       //| Variable End                                                     |
       //+------------------------------------------------------------------+
       //Check position
       
    bool IsTrade False;
       for (
    int i 0Total++) {
          
    OrderSelect(iSELECT_BY_POSMODE_TRADES);
          if(
    OrderType() <= OP_SELL &&  OrderSymbol() == Symbol()) {
             
    IsTrade True;
             if(
    OrderType() == OP_BUY) {
                
    //Close
                //+------------------------------------------------------------------+
                //| Signal Begin(Exit Buy)                                           |
                //+------------------------------------------------------------------+
     
                //+------------------------------------------------------------------+
                //| Signal End(Exit Buy)                                             |
                //+------------------------------------------------------------------+
                
    if (Order == SIGNAL_CLOSEBUY && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount)))) {
                   
    OrderClose(OrderTicket(), OrderLots(), BidSlippageMediumSeaGreen);
                   if (
    SignalMailSendMail("[Signal Alert]""[" Symbol() + "] " DoubleToStr(BidDigits) + " Close Buy");
                   if (!
    EachTickModeBarCount Bars;
                   
    IsTrade False;
                   continue;
                }
                
    //Trailing stop
                
    if(UseTrailingStop && TrailingStop 0) {                 
                   if(
    Bid OrderOpenPrice() > Point TrailingStop) {
                      if(
    OrderStopLoss() < Bid Point TrailingStop) {
                         
    OrderModify(OrderTicket(), OrderOpenPrice(), Bid Point TrailingStopOrderTakeProfit(), 0MediumSeaGreen);
                         if (!
    EachTickModeBarCount Bars;
                         continue;
                      }
                   }
                }
             } else {
                
    //Close
                //+------------------------------------------------------------------+
                //| Signal Begin(Exit Sell)                                          |
                //+------------------------------------------------------------------+
     
                //+------------------------------------------------------------------+
                //| Signal End(Exit Sell)                                            |
                //+------------------------------------------------------------------+
                
    if (Order == SIGNAL_CLOSESELL && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount)))) {
                   
    OrderClose(OrderTicket(), OrderLots(), AskSlippageDarkOrange);
                   if (
    SignalMailSendMail("[Signal Alert]""[" Symbol() + "] " DoubleToStr(AskDigits) + " Close Sell");
                   if (!
    EachTickModeBarCount Bars;
                   
    IsTrade False;
                   continue;
                }
                
    //Trailing stop
                
    if(UseTrailingStop && TrailingStop 0) {                 
                   if((
    OrderOpenPrice() - Ask) > (Point TrailingStop)) {
                      if((
    OrderStopLoss() > (Ask Point TrailingStop)) || (OrderStopLoss() == 0)) {
                         
    OrderModify(OrderTicket(), OrderOpenPrice(), Ask Point TrailingStopOrderTakeProfit(), 0DarkOrange);
                         if (!
    EachTickModeBarCount Bars;
                         continue;
                      }
                   }
                }
             }
          }
       }
       
    //+------------------------------------------------------------------+
       //| Signal Begin(Entry)                                              |
       //+------------------------------------------------------------------+
       
    if (Buy1_1 == Buy1_2Order SIGNAL_BUY;
       if (
    Sell1_1 == Sell1_2Order SIGNAL_SELL;
     
       
    //+------------------------------------------------------------------+
       //| Signal End                                                       |
       //+------------------------------------------------------------------+
       //Buy
       
    if (Order == SIGNAL_BUY && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount)))) {
          if(!
    IsTrade) {
             
    //Check free margin
             
    if (AccountFreeMargin() < (1000 Lots)) {
                Print(
    "We have no money. Free Margin = "AccountFreeMargin());
                return(
    0);
             }
             if (
    UseStopLossStopLossLevel Ask StopLoss Point; else StopLossLevel 0.0;
             if (
    UseTakeProfitTakeProfitLevel Ask TakeProfit Point; else TakeProfitLevel 0.0;
             
    Ticket OrderSend(Symbol(), OP_BUYLotsAskSlippageStopLossLevelTakeProfitLevel"Buy(#" MagicNumber ")"MagicNumber0DodgerBlue);
             if(
    Ticket 0) {
                if (
    OrderSelect(TicketSELECT_BY_TICKETMODE_TRADES)) {
        Print(
    "BUY order opened : "OrderOpenPrice());
                    if (
    SignalMailSendMail("[Signal Alert]""[" Symbol() + "] " DoubleToStr(AskDigits) + " Open Buy");
       } else {
        Print(
    "Error opening BUY order : "GetLastError());
       }
             }
             if (
    EachTickModeTickCheck True;
             if (!
    EachTickModeBarCount Bars;
             return(
    0);
          }
       }
       
    //Sell
       
    if (Order == SIGNAL_SELL && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount)))) {
          if(!
    IsTrade) {
             
    //Check free margin
             
    if (AccountFreeMargin() < (1000 Lots)) {
                Print(
    "We have no money. Free Margin = "AccountFreeMargin());
                return(
    0);
             }
             if (
    UseStopLossStopLossLevel Bid StopLoss Point; else StopLossLevel 0.0;
             if (
    UseTakeProfitTakeProfitLevel Bid TakeProfit Point; else TakeProfitLevel 0.0;
             
    Ticket OrderSend(Symbol(), OP_SELLLotsBidSlippageStopLossLevelTakeProfitLevel"Sell(#" MagicNumber ")"MagicNumber0DeepPink);
             if(
    Ticket 0) {
                if (
    OrderSelect(TicketSELECT_BY_TICKETMODE_TRADES)) {
        Print(
    "SELL order opened : "OrderOpenPrice());
                    if (
    SignalMailSendMail("[Signal Alert]""[" Symbol() + "] " DoubleToStr(BidDigits) + " Open Sell");
       } else {
        Print(
    "Error opening SELL order : "GetLastError());
       }
             }
             if (
    EachTickModeTickCheck True;
             if (!
    EachTickModeBarCount Bars;
             return(
    0);
          }
       }
       if (!
    EachTickModeBarCount Bars;
       return(
    0);
    }
    //+------------------------------------------------------------------+ 
    المطلوب اضافة متغير منطقي خارجي (اذا كان falce فيبقى الاكسبيرت في الوضع الحالي ، واذا كان true فيقفل جميع الصفقات المفتوحة في نهاية اليوم سواءً رابحة او خاسرة ويبدأ من جديد)

    ارجو ان يكون المطلوب واضح

    وارجو ان تكون الاضافة بلون مختلف لنعرف ما هي الاضافات (لكي نتعلم)
    الملفات المرفقة الملفات المرفقة
    • نوع الملف: mq4 udate.mq4‏ (9.1 كيلوبايت, المشاهدات 117)
    آخر تعديل بواسطة wajdyss ، 13-12-2007 الساعة 05:26 PM
    توقيع العضو
    مبرمج MT4 , MT5

    MT4 & MT5 Programmer

  2. #2
    الصورة الرمزية وضاح عطار
    وضاح عطار غير متواجد حالياً عضو مميز ومشرف سابق
    تاريخ التسجيل
    Apr 2006
    الإقامة
    السعودية
    العمر
    54
    المشاركات
    7,043

    افتراضي رد: مطلوب تعديل بسيط على هذا الاكسبيرت

    أهلا بك أخي

    سوف نضيف الوظيفة CloseOrders آخر الكود في الاكسبيرت .

    وهي تقوم بإغلاق كل العقود المفتوحة

    كود PHP:
    int CloseOrders(int Magic)
    {
      
    int total  OrdersTotal();
      
      for (
    int cnt cnt total cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol())
        {
          if (
    OrderType()==OP_BUY)
          {
            if(
    OrderClose(OrderTicket(),OrderLots(),Bid,3)==false)
             {
               
    RefreshRates();
             }
             else
             {
               
    cnt=0;
               
    total=OrdersTotal();
             }
          }
          
          if (
    OrderType()==OP_SELL)
          {
            if(
    OrderClose(OrderTicket(),OrderLots(),Ask,3)==false)
             {
               
    RefreshRates();
             }
             else
             {
               
    cnt=0;
               
    total=OrdersTotal();
             }
          }
        }
      }
      return(
    0);


    وسوف نضيف في الخصائص المتحول التالي :

    كود PHP:
    extern bool AutoClose=false

    بعد ذلك في أول الوظيفة start سوف نضيف الشرط التالي :

    كود PHP:
    if (AutoClose==true && Hour()==23)
    {
       
    CloseOrders(MagicNumber);

    وبذلك سوف يتم إغلاق كل العقود المفتوحة في الساعة 23 .
    توقيع العضو
    اثنان لا يجتمعان علم وسوء خلق

  3. #3
    الصورة الرمزية wajdyss
    wajdyss غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Sep 2006
    الإقامة
    جزر الملديف
    المشاركات
    3,022

    افتراضي رد: مطلوب تعديل بسيط على هذا الاكسبيرت

    جزاك الله كل خير

    انت
    آخر تعديل بواسطة wajdyss ، 14-12-2007 الساعة 12:05 AM
    توقيع العضو
    مبرمج MT4 , MT5

    MT4 & MT5 Programmer

  4. #4
    الصورة الرمزية Mustapoiha
    Mustapoiha غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Feb 2011
    الإقامة
    الجزائر
    المشاركات
    128

    افتراضي

    السلام عليكم



    بعد متابعتي لبكتست لهدا الاكسبرت من 2000 الى 2011 على EUR/USD فريم 1H و مراقبة صفقاته الخاسر 90 % منها سوف تكون رابحه ادا
    قمنا باجراء عليه بعض الاضافات و هي
    ان يقوم بفتح صفقة معاكسة ومضاعفة ( دون التغيير في TakeProfit) لكل صفقة خاسرة مرة واحدة فقط
    اي ادا عادت هده الصفقة المعاكسة مرة اخرى بالخسارة فلا يقوم بعكسها لانها سوف تخسر حتما

    مثلا لو فتح صفقة ( شراء ) بالاعدادات التالية
    Lots = 1
    TakeProfit = 10
    StopLoss = 80
    وتم ضرب الستوبلوز يقوم بفتح صفقة ( بيع ) بالاعدادات التالية
    Lots = 8
    TakeProfit = 10
    StopLoss =80
    وينتهي عمل هده الدالة
    و في هده الحالة اضن انه يجب عليه الغاء خاصية ادارة راس المال

    مثال اخر
    ادا كانت الصفقة الخاسرة بهده الاعدادات
    Lots = 1
    TakeProfit = 10
    StopLoss = 77
    يقوم بفتح صفقة معاكسة بالاعدادات التالية
    Lots = 7.7
    TakeProfit = 10
    StopLoss = 77


    اي يقوم بحساب اللوت الثاني حسب الستوبلوز الاول للصفقة الخاسرة
    و تكون هده العملية كما قلنا مرة واحدة فقط وليست متسلسل

    ادا ربحت الصفقة او خسرت يعود للعمل كما كان في الاول
    مع ادارة راس المال الرائع هدا كما كان في الاول

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

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

  5. #5
    الصورة الرمزية hamza012
    hamza012 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Dec 2010
    المشاركات
    30

    افتراضي

    لرفع

المواضيع المتشابهه

  1. مطلوب تعديل بسيط على هذا الإكسبيرت وجزاكم الله خيرا
    By mrmoha in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EA
    مشاركات: 8
    آخر مشاركة: 05-09-2010, 11:51 PM
  2. مطلوب تعديل على هذا الاكسبيرت
    By asd111 in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EA
    مشاركات: 8
    آخر مشاركة: 15-06-2010, 03:16 PM
  3. ممكن تعديل بسيط على هاذا الاكسبيرت الله يخليكم
    By fxpro in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EA
    مشاركات: 2
    آخر مشاركة: 09-06-2010, 11:18 AM
  4. ممكن تعديل ع ملف اكسل تعديل بسيط
    By 300 in forum سوق تداول العملات الأجنبية والسلع والنفط والمعادن
    مشاركات: 3
    آخر مشاركة: 30-12-2009, 11:57 PM
  5. مطلوب تعديل الاكسبيرت
    By الـوليد in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EA
    مشاركات: 2
    آخر مشاركة: 09-11-2009, 05:58 PM

الاوسمة لهذا الموضوع


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