النتائج 1 إلى 14 من 14
  1. #1
    الصورة الرمزية batttot
    batttot غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jan 2010
    الإقامة
    مصر
    المشاركات
    921

    افتراضي ...:::@@مساعدة في كود برمجي للاوامر المعلقة @@:::..

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

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

    الاخوة المبرمجين
    انا اكتب الان اكسبرت وواجهتني مشكله احتاج لها حل

    المشكله ببساطه كالاتي

    الاكسبرت يقوم بالمتاجره من تلقاء نفسه بدون اي مشاكل مطلقا ولكن

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

    المشكله التي تواجهني هي انه اعلي امر علي المنصه واقل امر علي المنصه يتغيرون بأستمرار لان الاومر تحقق اهداف واستوبات وتغلق ويفتح غيرها
    لذلك اريد ان يتغير بأستمرار الامر المعلق العلوي الشراء والسفلي البيع بأستمرار مع تغير الاوامر علي المنصه

    بحيث يكون دائما مهما كانت انواع الاوامر المفتوحه دائما يكون هناك امر شراء اعلي من اعلي امر علي المنصه ويتغير مع تغير سعر افتتاح اعلي امر ليكون دائما اعلي من اعلي امر مفتوع علي المنصه بقيمة x من النقاط

    ومثله البيع دائما يكون هناك امر بيع اقل من اقل امر علي المنصه ويظل يتغير معه كلما تغير اقل امر علي المنصه بأستمرار وهكذا

    طبعا غني عن الذكر ان الاوامر من نوع
    Op_buystop و Op_Sellstop فقط وليس اي نوع اخر

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

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

  2. #2
    الصورة الرمزية batttot
    batttot غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jan 2010
    الإقامة
    مصر
    المشاركات
    921

    افتراضي

    للرفع للاهمية

    هل يمكن لاحد الاخوة المبرمجين المساعده ..... جازاكم الله خيرا .

  3. #3
    الصورة الرمزية tsaheel
    tsaheel غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Sep 2012
    الإقامة
    الكويت
    المشاركات
    957

    افتراضي

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

  4. #4
    الصورة الرمزية 4N45PRO
    4N45PRO غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Apr 2006
    الإقامة
    المغرب
    المشاركات
    521

    افتراضي

    السلام عليكم

    حقيقة أخي لم أفهم جيدا

    إذا كان الأمر أنه عليك تغيير الصفقتين BuyStop و SellStop كلما اغلقت أكبر صفقة و أصغر صفقة
    فكل ما عليك فعله هو كل ما أغلقت صفقة تنظر إن كانت الأكبر فتغلق معها ال BuyStop و تعيد البحث في الصفقات المفتوحة عن أكبر صفقة تسجل معلوماتها و تفتح BuyStop جديدة وفقا للمعلومات الجديدة
    و كذلك بالنسبة لل SellStop

    إذا كان ممكن مثال حتى توضح الفكرة

  5. #5
    الصورة الرمزية batttot
    batttot غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jan 2010
    الإقامة
    مصر
    المشاركات
    921

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة tsaheel مشاهدة المشاركة
    السلام عليكم
    الدكتور بطوط ليك وحشة
    انت فينك يا راجل
    هو الطب يخليك تنسى اصحابك
    اتمنى لك التوفيق الدائم
    وان شاء الله يرد عليك احد الاخوة المتخصصين في البرمجة

    الله يكرمك اخي ........ شكرا علي سؤالك صدقني عدم تفرغي لظروف خارجه عن ارادتي ان شاء الله تنتهي علي خير و صدقني انا لا انسي اصحابي ابدا و لم انسي ايضا الكلام الذي قلته لك من قبل اخي الكريم ....... ان شاء الله خير الله قريب ......


    اقتباس المشاركة الأصلية كتبت بواسطة 4N45PRO مشاهدة المشاركة
    السلام عليكم

    حقيقة أخي لم أفهم جيدا

    إذا كان الأمر أنه عليك تغيير الصفقتين BuyStop و SellStop كلما اغلقت أكبر صفقة و أصغر صفقة
    فكل ما عليك فعله هو كل ما أغلقت صفقة تنظر إن كانت الأكبر فتغلق معها ال BuyStop و تعيد البحث في الصفقات المفتوحة عن أكبر صفقة تسجل معلوماتها و تفتح BuyStop جديدة وفقا للمعلومات الجديدة
    و كذلك بالنسبة لل SellStop

    إذا كان ممكن مثال حتى توضح الفكرة
    اخي الفاضل ..... هذا هو مثال توضيحي كما اردت

    الاكسبرت لنقل انه فتح 7 صفقات بيع وشراء ولنقل مثلا انهم 4 بيع و ثلاثه شراء في وقت واحد ولكل صفقه هدف واستوب واضح ومحدد
    وهنا نجد انه لدينا علي المنصه سبعه ضفقات بغض النظر عن نوعهم ..........
    وايضا لدينا اكيد صفقه سعر افتتاحها هو اعلي سعر في السبعه صفقات واخري سعر افتتاحها هو اقل سعر في السبعة صفقات
    وهنا انا اريد الاتي
    ان يضع امر بيع معلق من نوع SellStop علي مسافة ولتكن 15 نقطة اقل من سعر افتتاح اقل صفقه في السبعة صفقات بغض النظر عن نوعها
    وايضا يضع الاكسبرت امر من نوع BuyStop علي مشافه ولتكن مثلا 15 نقطه اعلي من اعلي سعر افتتاح في الصفقات السبعه بغض النظر عن نوع الامر

    وايضا الاتي

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

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

    ان يكون سعر افتتاح الصفقه الجديده اعلي من اعلي سعر افتتاح في الصفقات السبعه المفتوحه ........... حالة (2)

    ان يكون سعر افتتاح الصفقه الجديده اقل من اقل سعر افتتاح في الصفقات السبعه المفتوحه ............... حالة ( 3)

    وهنا المطلوب الاتي
    في الحاله 1 .......... يبقي الوضع علي ماهو عليه بدون اي تعديل
    في الحاله 2 ........ يتم تغيير الامر المعلق للشراء ليكون اعلي من سعر افتتاح الصفقه الجديده لانها هي التي اصبحت اعلي سعر علي المنصه
    في الحاله 3 ........ يتم تغيير الامر المعلق للبيع ليكون اقل من سعر افتتاح الصفقه الجديده لانها هي التي اصبحت اقل سعر علي المنصه
    ويستمر هكذا دائما بأستمرار يتغير مع تغير قيم اعلي سعر واقل سعر للصفقات المفتوحه بأستمرار

    اتمني ان يكون الشرح واضحا وانا تحت امرك في اي توضيح اكثر

    والف الف شكر عل يردك واهتمامك اخي الكريم

  6. #6
    الصورة الرمزية 4N45PRO
    4N45PRO غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Apr 2006
    الإقامة
    المغرب
    المشاركات
    521

    افتراضي

    السلام عليكم

    كل ما علي أخي أن تأخد تيكت أكبر صفقة و أصغر صفقة تسجلهم في متغير و تقوم كل مرة بإعادة فحص هل تبدلو فإذا تبدلو تقوم بتبديل ال BUYSTOP و SELLSTOP

    لكن سؤال هنا
    إذا ما فتحت ال BUYSTOP فهل الصفقة الجديدة تصبح أكبر صفقة مفتوحة ؟؟

    يلزمني معرفة هته الحالة حتى أكتب لك كود

  7. #7
    الصورة الرمزية batttot
    batttot غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jan 2010
    الإقامة
    مصر
    المشاركات
    921

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة 4N45PRO مشاهدة المشاركة
    السلام عليكم

    كل ما علي أخي أن تأخد تيكت أكبر صفقة و أصغر صفقة تسجلهم في متغير و تقوم كل مرة بإعادة فحص هل تبدلو فإذا تبدلو تقوم بتبديل ال BUYSTOP و SELLSTOP

    لكن سؤال هنا
    إذا ما فتحت ال BUYSTOP فهل الصفقة الجديدة تصبح أكبر صفقة مفتوحة ؟؟

    يلزمني معرفة هته الحالة حتى أكتب لك كود

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

    بالنسبه لملاحظتك : عند تفعيل الامر المغلق نعم يعتبر هو اعلي سعر او اقل سعر لانه لن يكون buystop او SELLSTOP وانا سوف يصبح امر بيع عادي اوامر شراء عادي

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

    كود:
     
    int placePending()
       {  int toto;
        if(OrdersTotal()>=1&&toto!=OrdersTotal())
         { 
            for (double i=OrdersTotal()+1;i>0;i--)
                 {
                 OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
                  if(OrderSymbol()==Symbol()&&OrderMagicNumber()==magicn_BRG_ecase&&OrderComment()=="BRG-ecase")
                   {
                     if(OrderType()==OP_BUYSTOP)
                       {OrderDelete(OrderTicket(), Red);}  
                     if(OrderType()==OP_SELLSTOP)
                       {OrderDelete(OrderTicket(), Red);}   
                    }
                }
          if(PendingOrderBuysCount()< 1&&PendingOrderSellsCount()< 1)
          { 
          OrderSend(Symbol(),OP_BUYSTOP,lotsize ,highorderprice()+(dispips*pt*Point),slippage*pt,0,0,"BRG-ecase",magicn_BRG_ecase,0,Green);
          OrderSend(Symbol(),OP_SELLSTOP,lotsize ,loworderprice()-(dispips*pt*Point),slippage*pt,0,0,"BRG-ecase",magicn_BRG_ecase,0,Green);
    
            toto =OrdersTotal();
           } 
            
        }
          
          
               return(0);
        }
        ////////////////////////////////////////////////////////////
        
    double highorderprice()
    {
    for (double i=OrdersTotal()+1;i>0;i--)
        {
            OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
        datetime ordertime1=OrderOpenTime();double price1=OrderOpenPrice();
            OrderSelect(i-1,SELECT_BY_POS,MODE_TRADES);
        datetime ordertime2= OrderOpenTime();double price2=OrderOpenPrice();
       
       if(OrderType()==OP_BUY||OrderType()==OP_SELL)
       {
        if (price1<price2)
          {
       
        price1=price2;
          }
          else if(price1>price2){ price1=price1;}
       }
      }      
    return(price1);
    }
    //////////////////////////////////
    double loworderprice()
    {
    for (double i=OrdersTotal()+1;i>0;i--)
        {
            OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
        datetime ordertime1=OrderOpenTime();double pricelast1=OrderOpenPrice();
            OrderSelect(i-1,SELECT_BY_POS,MODE_TRADES);
        datetime ordertime2= OrderOpenTime();double pricelast2=OrderOpenPrice();
       
       if(OrderType()==OP_BUY||OrderType()==OP_SELL)
       {
        if (pricelast1<pricelast2)
          {
         pricelast1=pricelast1;
          }
          else if(pricelast1>pricelast2){ pricelast1=pricelast2;}
       }
      }      
    return(pricelast1);
    }
    
    ////////////////////////////////////
    
    
     
    /////////////////////////////////////////////////
     
      
       
    int  PendingOrderBuysCount( )
    {int bb;
     for(int i=OrdersTotal()-1;i>=0;i--)
     {
      OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
      if(OrderSymbol()==Symbol()&&OrderMagicNumber()==magicn_BRG_ecase&&OrderComment()=="BRG-ecase")
      {
       if(OrderType()==OP_BUYSTOP)bb++;
      // if(OrderType()==OP_SELLSTOP)return(false);
      }
     }
     return(bb );
    }
    
    
       
    int  PendingOrderSellsCount( )
    {int ss;
     for(int i=OrdersTotal()-1;i>=0;i--)
     {
      OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
      if(OrderSymbol()==Symbol()&&OrderMagicNumber()==magicn_BRG_ecase&&OrderComment()=="BRG-ecase")
      {
       //if(OrderType()==OP_BUYSTOP)
       if(OrderType()==OP_SELLSTOP)ss++; 
      }
     }
     return(ss );
    }

  8. #8
    الصورة الرمزية 4N45PRO
    4N45PRO غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Apr 2006
    الإقامة
    المغرب
    المشاركات
    521

    افتراضي

    لتغيير الأمر المعلق قم بوضع متغيرين بهما رقم صفقة ال BUYSTOP و SELLSTOP
    و كلما فتحت صفقة جديدة نقوم برؤية هل هي أكبر من أكبر صفقة أو أصغر من أصغر صفقة
    لنحدد هل نغلق ال BUYSTOP القديمة و نفتح واحدة جديدة أو نغلق ال SELLSTOP القديمة و نفتح واحدة جديدة

    انظر لهذا الكود ستجده في المرفقات في ملف txt أيضا

    كود PHP:
     
    int ob 
    0;int os 0;double highest_price = -1;double lowest_price = -1;
     
     
    int high_low_order(){    for(int i 0:i<OrdersTotal():i++)    {        OrderSelect(iSELECT_BY_POS);        if(highest_position != -1)        {
                if(
    OrderOpenPrice()>highest_price )            {                highest_price OrderOpenPrice();                //Close Open OB                ob = OrderSend(.......);            }
            
    }else{            highest_position i;
            }
            if(
    lowest_position != -1)        {
                if(
    OrderOpenPrice()>highest_price )            {                highest_price OrderOpenPrice();                //Close Open OS                os = OrderSend(.......);            }
            
    }else{            lowest_position i;
            }
     
        }

    الملفات المرفقة الملفات المرفقة

  9. #9
    الصورة الرمزية batttot
    batttot غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jan 2010
    الإقامة
    مصر
    المشاركات
    921

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة 4N45PRO مشاهدة المشاركة
    لتغيير الأمر المعلق قم بوضع متغيرين بهما رقم صفقة ال BUYSTOP و SELLSTOP
    و كلما فتحت صفقة جديدة نقوم برؤية هل هي أكبر من أكبر صفقة أو أصغر من أصغر صفقة
    لنحدد هل نغلق ال BUYSTOP القديمة و نفتح واحدة جديدة أو نغلق ال SELLSTOP القديمة و نفتح واحدة جديدة

    انظر لهذا الكود ستجده في المرفقات في ملف txt أيضا

    كود PHP:
     
    int ob 
    0;int os 0;double highest_price = -1;double lowest_price = -1;
     
     
    int high_low_order(){    for(int i 0:i<OrdersTotal():i++)    {        OrderSelect(iSELECT_BY_POS);        if(highest_position != -1)        {
                if(
    OrderOpenPrice()>highest_price )            {                highest_price OrderOpenPrice();                //Close Open OB                ob = OrderSend(.......);            }
            
    }else{            highest_position i;
            }
            if(
    lowest_position != -1)        {
                if(
    OrderOpenPrice()>highest_price )            {                highest_price OrderOpenPrice();                //Close Open OS                os = OrderSend(.......);            }
            
    }else{            lowest_position i;
            }
     
        }


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

    هذا هو الكود كاملا كما اضفته للاكسبرت
    ارجو ملاحظة الاتي
    المتغيرات التي كتبتها انت اخي الكريم كانت

    highest_price // lowest_price
    لكن في الكود من الدخلي استخدمت
    lowest_position
    highest_position
    فهل هذا امر محدد لم افهمه لانني غيرتهم لكي يكونو كلهم متغير واحد

    هذا هو الكود الكامل بالاوامر كما عدلته انا ارجو التوضيح والغير المناسب لانه لا يعمل

    يمكنك ان تضيف هذه الداله لاي اكسبرت المفروض انها تضع الاوامر اعلقه اعلي الصفقات واسفلها لكن هذا لا يحدث
    فصلا لا امرا راجع الكود لتصويبه جازاك الله خيرا اخي الكريم
    كود PHP:
    int high_low_order()
    {
        for(
    int i 0;i<OrdersTotal();i++)
        {
            
    OrderSelect(iSELECT_BY_POS);
            if(
    highest_price != -1)
            {

                if(
    OrderOpenPrice()>highest_price )
                {
                    
    highest_price OrderOpenPrice();
                    
    //Close Open OB
                    
                     
    for (  i=OrdersTotal()+1;i>0;i--)
                 {
                 
    OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
                  if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==magicn_BRG_ecase&&OrderComment()=="BRG-ecase")
                   {
                     if(
    OrderType()==OP_BUYSTOP)
                       {
    OrderDelete(OrderTicket(), Red);}  
                        
                    }
                }
                    
    ob OrderSend(Symbol(),OP_BUYSTOP,lotsize ,highest_price+(dispips*pt*Point),slippage*pt,0,0,"BRG-ecase",magicn_BRG_ecase,0,Green);

                }

            }
            else{
    highest_price i;}

            if(
    lowest_price != -1)
            {

                if(
    OrderOpenPrice()>lowest_price )
                {
                    
    lowest_price OrderOpenPrice();
                    
    //Close Open OS
                    
                      
    for (  i=OrdersTotal()+1;i>0;i--)
                 {
                 
    OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
                  if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==magicn_BRG_ecase&&OrderComment()=="BRG-ecase")
                   {
                     
                     if(
    OrderType()==OP_SELLSTOP)
                       {
    OrderDelete(OrderTicket(), Red);}   
                    }
                }
                    
    os OrderSend(Symbol(),OP_SELLSTOP,lotsize ,lowest_price-(dispips*pt*Point),slippage*pt,0,0,"BRG-ecase",magicn_BRG_ecase,0,Green);

                }

            }
            else{
    lowest_price i;}

        }
        
     

    آخر تعديل بواسطة batttot ، 14-05-2014 الساعة 12:33 AM

  10. #10
    الصورة الرمزية 4N45PRO
    4N45PRO غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Apr 2006
    الإقامة
    المغرب
    المشاركات
    521

    افتراضي

    إن شاء الله أحاول أعطيك الكود كاملا بدون مشاكل غدا إن شاء الله
    اليوم بي عياء لذلك لم أكمله فقط وضعت لك الفكرة

  11. #11
    الصورة الرمزية batttot
    batttot غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jan 2010
    الإقامة
    مصر
    المشاركات
    921

    افتراضي

    الف سلامه عليك .......... ان شاء الله غدا تصبح في خير حال
    خد راحتك وانا في انتظارك

  12. #12
    الصورة الرمزية MR.dollar
    MR.dollar غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Jun 2009
    الإقامة
    مصر
    المشاركات
    13,851

    افتراضي

    تفضل راجع الكود بشكل كامل وأخبرني إذا لم تفهم أي جزء فيه
    كود PHP:
    double GetMaxPrice()
    {
     
    double MaxPrice;
     for(
    int i=0;i<OrdersTotal();i++)
     {
      
    OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
      if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber&&OrderType()<=OP_SELL)
      {
       if(
    OrderOpenPrice()>MaxPrice)MaxPrice=OrderOpenPrice();  
      }
     }
     return(
    MaxPrice);
    }
    double GetMinPrice()
    {
     
    double MinPrice=999999;
     for(
    int i=0;i<OrdersTotal();i++)
     {
      
    OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
      if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber&&OrderType()<=OP_SELL)
      {
       if(
    OrderOpenPrice()<MinPrice)MinPrice=OrderOpenPrice();  
      }
     }
     return(
    MinPrice);
    }
    void OpenModifyOrder()
    {
     
    bool MaxOrderSet,MinOrderSet;
     for(
    int i=OrdersTotal()-1;i>=0;i--)
     {
      
    OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
      
    string comment=OrderComment();
      
    double OpenPrice=OrderOpenPrice();
      if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber&&OrderType()>OP_SELL)
      {
       if(
    comment="MaxPriceOrder")
       {
        
    MaxOrderSet=true;   
        if(
    OPenPrice!=GetMaxPrice()+15*Point)
        {
         
    OrderModify(OrderTicket(),GetMaxPrice()+15*Point,0,0,0);
        }
       }
       if(
    comment="MinPriceOrder")
       {
        
    MinOrderSet=true;   
        if(
    OPenPrice!=GetMinPrice()-15*Point)
        {
         
    OrderModify(OrderTicket(),GetMinPrice()-15*Point,0,0,0);
        }
       }
      }
     }
     if(
    MaxOrderSet==false)OrderSend(Symbol(),OP_BUYSTOP,Lots,GetMaxPrice()+15*Point,3,0,0,"MaxPriceOrder",MagicNumber,0,Blue);
     if(
    MinOrderSet==false)OrderSend(Symbol(),OP_SELLSTOP,Lots,GetMinPrice()-15*Point,3,0,0,"MinPriceOrder",MagicNumber,0,Red);


  13. #13
    الصورة الرمزية batttot
    batttot غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jan 2010
    الإقامة
    مصر
    المشاركات
    921

    افتراضي

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

    مستر دولار شخصيا ............ فعلا الكمات لا تكفي لشكرك

    انا راجعت الكود بالكامل وبدقه
    لم اغير فيه اي شيئ سوي فقط 15 استبدلتها بمتغير خارجي اسمه dispips والماجيك نمبر حتي لا يتداخل مع باقي صفقات الاكسبرت

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

    همسة : الكود به اخطأ برمجيه فالجمله او يبدو انني لم افهمها

    الجمله الشرطيه
    كود PHP:
      if(comment="MaxPriceOrder")
       {
        
    MaxOrderSet=true;   
        if(
    OpenPrice!=GetMaxPrice()+ dispips *Point )
        {
         
    OrderModify(OrderTicket(),GetMaxPrice()+ dispips *Point ,0,0,0);
        }
       } 
    هذا هوالكود ........ اليس الجمله الشرطيه تكون هكذا
    كود PHP:
    if(comment=="MaxPriceOrder 
    وليس
    كود PHP:
    if(comment="MaxPriceOrder 
    ايضا المغير
    كود PHP:
    double OpenPrice=OrderOpenPrice(); 
    حينما استدعيته كتبته هكذا
    كود PHP:
     if(OPenPrice!=GetMaxPrice()+ dispips *Point 
    وهذا اوجد اخطاء عند عمل compile

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

  14. #14
    الصورة الرمزية MR.dollar
    MR.dollar غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Jun 2009
    الإقامة
    مصر
    المشاركات
    13,851

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة batttot مشاهدة المشاركة
    السلام عليكم ورحمة الله وبركاته

    مستر دولار شخصيا ............ فعلا الكمات لا تكفي لشكرك

    انا راجعت الكود بالكامل وبدقه
    لم اغير فيه اي شيئ سوي فقط 15 استبدلتها بمتغير خارجي اسمه dispips والماجيك نمبر حتي لا يتداخل مع باقي صفقات الاكسبرت

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

    همسة : الكود به اخطأ برمجيه فالجمله او يبدو انني لم افهمها

    الجمله الشرطيه
    كود PHP:
      if(comment="MaxPriceOrder")
       {
        
    MaxOrderSet=true;   
        if(
    OpenPrice!=GetMaxPrice()+ dispips *Point )
        {
         
    OrderModify(OrderTicket(),GetMaxPrice()+ dispips *Point ,0,0,0);
        }
       } 
    هذا هوالكود ........ اليس الجمله الشرطيه تكون هكذا
    كود PHP:
    if(comment=="MaxPriceOrder 
    وليس
    كود PHP:
    if(comment="MaxPriceOrder 
    ايضا المغير
    كود PHP:
    double OpenPrice=OrderOpenPrice(); 
    حينما استدعيته كتبته هكذا
    كود PHP:
     if(OPenPrice!=GetMaxPrice()+ dispips *Point 
    وهذا اوجد اخطاء عند عمل compile

    ارجو التصويب لي ان كنت اخطأت
    وارجو مراجعة الكود لانه فعلا لاي يعدل الامر المعلق بأستمرار مع تغير قيم اعلي صفقه واقل صفقه
    وعليكم السلام ورحمة الله وبركاته
    تفضل هذا مثال لإكسبرت أضفت له الكود لا يجب أن تقوم بتغيير كومنت الأوامر التي يتم فتحها عند أعلى و أدنى سعر بما أن الإكسبرت يستخدمها في المقارنه
    الملفات المرفقة الملفات المرفقة


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