صفحة 492 من 686 الأولىالأولى ... 392442482486487488489490491492493494495496497498502542592 ... الأخيرةالأخيرة
النتائج 7,366 إلى 7,380 من 10283
  1. #7366
    الصورة الرمزية hre007
    hre007 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Oct 2007
    العمر
    54
    المشاركات
    726

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    وعليكم السلام ورحمة الله وبركاته
    بالإضافة إلى جواب الأخ goldfile إذا لم تكن تريد إستخدام المصفوفات يمكنك عمل حلقة بحث بسيطه لمعرفة أعلى سعر وأقل سعر
    مثال
    كود PHP:
    double MaxPriceOrder()
    {
     
    double MaxPrice;
     for(
    int i=0;i<OrdersTotal();i++)
     {
      
    bool select=OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
      if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber)
      {
       if(
    OrderOpenPrice()>MaxPrice)MaxPrice=OrderOpenPrice();
      }
     }
     return(
    MaxPrice);

    بالنسبه الطريقه سوف تستخدم الداله لأقل سعر
    استاذي العزيز هناك تحذير على الدالة رقمة 24
    possible use of uninitialized variable 'MaxPrice'

    فما معناه وهل هذا يوقف عمل الدالة ؟؟؟؟

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

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة hre007 مشاهدة المشاركة
    استاذي العزيز هناك تحذير على الدالة رقمة 24
    possible use of uninitialized variable 'MaxPrice'

    فما معناه وهل هذا يوقف عمل الدالة ؟؟؟؟
    لن يؤثر على عمل الداله
    معناه أنك لم تعطي قيمة مبدئيه للمتغير MaxPrice ضع قيمه مبدئيه للمتغير = 0 في نفس سطر تعريف الداله

  3. #7368
    الصورة الرمزية hre007
    hre007 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Oct 2007
    العمر
    54
    المشاركات
    726

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    لن يؤثر على عمل الداله
    معناه أنك لم تعطي قيمة مبدئيه للمتغير MaxPrice ضع قيمه مبدئيه للمتغير = 0 في نفس سطر تعريف الداله
    تسلم استاذي العزيز كله تمام بارك الله فيك

  4. #7369
    الصورة الرمزية Ordla
    Ordla غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    May 2010
    الإقامة
    المغرب
    المشاركات
    376

    افتراضي

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

    الكود الأول

    كود:
       for(int o_pos=0;o_pos<OrdersHistoryTotal();o_pos++)
       {
          OrderSelect(o_pos, SELECT_BY_POS,MODE_HISTORY);     
          if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber)
          {
    			LastOrderTicket = OrderTicket();
          }
       }

    الكود الثاني

    كود:
       for(int o_pos=OrdersHistoryTotal()-1;o_pos<=0;o_pos--)
       {
          OrderSelect(o_pos, SELECT_BY_POS,MODE_HISTORY);     
          if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber)
          {
    			LastOrderTicket = OrderTicket();
          }
       }

    الكود الثالث
    وهو الكود الذي يظهر أقرب إلى أن يقوم بدوره بحيث وجدت من يعلق ويقول أن آخر صفقة أقفلت ليس بالضورة أن يكون ترتيبها هو الأول أو الآخر في OrdersHistoryTotal() لذا يتم الاعتماد على OrderCloseTime() لتحديد آخر صفقة في History

    كود:
       static datetime lastOrderCloseTime=0;
       for(int iPos=OrdersHistoryTotal()-1; iPos >= 0; iPos--)
       {
           if(
               OrderSelect(iPos, SELECT_BY_POS, MODE_HISTORY)
           &&  OrderMagicNumber()  == MagicNumber
           &&  OrderSymbol()       == Symbol()
           &&  OrderCloseTime()    >  lastOrderCloseTime
           )
           {
               lastOrderCloseTime = OrderCloseTime();
               LastOrderTicket = OrderTicket();
           }
       }

    من منكم يستطيع أن يحسم لي في هذا الأمر ويعطيني كون نهائي يفي بالغرض جزاكم الله خيرا

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

    افتراضي

    بل هناك كود رابع، ما العمل؟؟
    كود:
           OrderSelect(OrdersHistoryTotal()-1, SELECT_BY_POS,MODE_HISTORY);     
          if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber)
          {
    			LastOrderTicket = OrderTicket();
          }

  6. #7371
    الصورة الرمزية أبو نـاصر
    أبو نـاصر غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Jun 2013
    الإقامة
    السعودية
    المشاركات
    3,189

    افتراضي

    stop levels
    وهو الحد الذي لا يسمح بتحريك الوقف أو الهدف اليه

    اضغط على الصورة لعرض أكبر

الاســـم:	222.png
المشاهدات:	58
الحجـــم:	13.2 كيلوبايت
الرقم:	456206
    هل ممكن كود استخراجه

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

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة Ordla مشاهدة المشاركة
    السلام عليكم
    أرجو المساعدة في تحديد آخر صفقة أقفلت، لأني وجدت ثلاثة أكواد تؤدي نفس الدور غير أنها ربما تحتاج إلى تصحيح

    الكود الأول

    كود:
       for(int o_pos=0;o_pos<OrdersHistoryTotal();o_pos++)
       {
          OrderSelect(o_pos, SELECT_BY_POS,MODE_HISTORY);     
          if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber)
          {
                LastOrderTicket = OrderTicket();
          }
       }

    الكود الثاني

    كود:
       for(int o_pos=OrdersHistoryTotal()-1;o_pos<=0;o_pos--)
       {
          OrderSelect(o_pos, SELECT_BY_POS,MODE_HISTORY);     
          if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber)
          {
                LastOrderTicket = OrderTicket();
          }
       }

    الكود الثالث
    وهو الكود الذي يظهر أقرب إلى أن يقوم بدوره بحيث وجدت من يعلق ويقول أن آخر صفقة أقفلت ليس بالضورة أن يكون ترتيبها هو الأول أو الآخر في OrdersHistoryTotal() لذا يتم الاعتماد على OrderCloseTime() لتحديد آخر صفقة في History

    كود:
       static datetime lastOrderCloseTime=0;
       for(int iPos=OrdersHistoryTotal()-1; iPos >= 0; iPos--)
       {
           if(
               OrderSelect(iPos, SELECT_BY_POS, MODE_HISTORY)
           &&  OrderMagicNumber()  == MagicNumber
           &&  OrderSymbol()       == Symbol()
           &&  OrderCloseTime()    >  lastOrderCloseTime
           )
           {
               lastOrderCloseTime = OrderCloseTime();
               LastOrderTicket = OrderTicket();
           }
       }

    من منكم يستطيع أن يحسم لي في هذا الأمر ويعطيني كون نهائي يفي بالغرض جزاكم الله خيرا
    وعليكم السلام ورحمة الله وبركاته
    الكود الأول
    صحيح لكن عيبه أنك ستبحث في جميع الصفقات المغلقه من البداية والأفضل أن تبحث عن الصفقات المغلقه من النهاية حتى تقلل حلقة البحث
    الكود الثاني
    هو الصحيح مع بعض التعديل بحيث يجب أن تستخدم الداله Break عندما تجد آخر صفقة التي تطابق الشروط
    مثال
    كود PHP:
     for(int o_pos=OrdersHistoryTotal()-1;o_pos<=0;o_pos--)
       {
          
    OrderSelect(o_posSELECT_BY_POS,MODE_HISTORY);     
          if(
    OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber)
          {
                
    LastOrderTicket OrderTicket();
                break;
          }
       } 
    الكود الثالث
    صحيح لكن لا داعي للبحث في جميع الصفقات ووضع المقارنه لأن آخر صفقة في الهيستوري هي آخر صفقة أغلقت
    الكود الرابع
    صحيح إذا كان الإكسبرت يعمل لوحده على الحساب ولا تفتح صفقات أخرى سواء يدويا أو بواسطة إكسبرت آخر و غير صحيح لأن الصفقة الأخيرة في الهيستوري ليست بالضروره هي الصفقة التي فتحها الإكسبرت قد تكون فتحت بواسطة إكسبرت آخر أو يدويا

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

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة أبو نـاصر مشاهدة المشاركة
    stop levels
    وهو الحد الذي لا يسمح بتحريك الوقف أو الهدف اليه

    اضغط على الصورة لعرض أكبر

الاســـم:	222.png
المشاهدات:	58
الحجـــم:	13.2 كيلوبايت
الرقم:	456206
    هل ممكن كود استخراجه
    نعم يمكن
    مثال
    كود PHP:
    double stoplevel=MarketInfo(Symbol(),MODE_STOPLEVEL); 

  9. #7374
    الصورة الرمزية أبو نـاصر
    أبو نـاصر غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Jun 2013
    الإقامة
    السعودية
    المشاركات
    3,189

    افتراضي

    اشكرك بعمق استاذي الفاضل

  10. #7375
    الصورة الرمزية Ordla
    Ordla غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    May 2010
    الإقامة
    المغرب
    المشاركات
    376

    افتراضي

    لك الشكر الجزيل أخي Mr. Dollar لقد أفدتني كثيرا بتعليقك على الأكواد
    إذا أفضل كود بينهم هو الكود الثاني باضافة الدالة Break

    كود:
     for(int o_pos=OrdersHistoryTotal()-1;o_pos<=0;o_pos--)
       {
          OrderSelect(o_pos, SELECT_BY_POS,MODE_HISTORY);     
          if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber)
          {
                LastOrderTicket = OrderTicket();
                break;
          }
       }
    آخر تعديل بواسطة Ordla ، 10-05-2016 الساعة 09:00 PM

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

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة Ordla مشاهدة المشاركة
    لك الشكر الجزيل أخي Mr. Dollar لقد أفدتني كثيرا بتعليقك على الأكواد
    إذا أفضل كود بينهم هو الكود الثاني باضافة الدالة Break

    كود:
     for(int o_pos=OrdersHistoryTotal()-1;o_pos<=0;o_pos--)
       {
          OrderSelect(o_pos, SELECT_BY_POS,MODE_HISTORY);     
          if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber)
          {
                LastOrderTicket = OrderTicket();
                break;
          }
       }
    نعم بالضبط
    وإذا كنت ستستخدم الكود بداخل دالة فسوف تستخدم مباشرة الأمر return لتعود برقم التيكيت

  12. #7377
    الصورة الرمزية Ordla
    Ordla غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    May 2010
    الإقامة
    المغرب
    المشاركات
    376

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    نعم بالضبط
    وإذا كنت ستستخدم الكود بداخل دالة فسوف تستخدم مباشرة الأمر return لتعود برقم التيكيت
    نعم بالضبط عزيزي MR.dollar

  13. #7378
    الصورة الرمزية msh3al
    msh3al غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Nov 2012
    الإقامة
    الكويت
    المشاركات
    410

    افتراضي

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

    قمت بوضع أمر شراء معلق عند تحقق شرط معين

    كود PHP:
    if ( // شرط فتح امر شراء معلق )
    {
    OrderSend(Symbol(),OP_BUYSTOP,0.01,Ask,5,low,high,"Me",MagicNumber,0,Blue);  
       } 


    كيف ستكون آلية حذف هذا الأمر المعلق عند تحقق شرط آخر ،
    وكيف ستكون الآليه مع الماجيك نمبر ( اذا كان هناك اكثر من أمر معلق )

    وفقكم الله
    توقيع العضو
    إذا لم يكن عونٌ من الله للفتى *** فأولُ ما يجني عليه اجتهادُهُ
    ( اللهم أسألك التوفيق )

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

    افتراضي

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

    قمت بوضع أمر شراء معلق عند تحقق شرط معين

    كود PHP:
    if ( // شرط فتح امر شراء معلق )
    {
    OrderSend(Symbol(),OP_BUYSTOP,0.01,Ask,5,low,high,"Me",MagicNumber,0,Blue);  
       } 


    كيف ستكون آلية حذف هذا الأمر المعلق عند تحقق شرط آخر ،
    وكيف ستكون الآليه مع الماجيك نمبر ( اذا كان هناك اكثر من أمر معلق )

    وفقكم الله
    وعليكم السلام ورحمة الله وبركاته
    نفس طريقة حذف الأوامر المعلقه هي طريقة إغلاق الصفقات
    قم بعمل دالة لإغلاق الصفقات
    كود PHP:
    void CloseOrders(int type)
    {
     for(
    int i=OrdersTotal()-1;i>=0;i--)
     {
      
    bool select=OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
      if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber&&OrderType()==type)
      {
       if(
    OrderType()==OP_BUY)
       {
        
    bool close=OrderClose(OrderTicket(),OrderLots(),Bid,3*P);
       }
       else if(
    OrderType()==OP_SELL)
       {
        
    bool close=OrderClose(OrderTicket(),OrderLots(),Ask,3*P);
       }
       else if(
    OrderType()>OP_SELL)
       {
        
    bool del=OrderDelete(OrderTicket());
       }
      }
     }

    على حسب نوع الصفقه

  15. #7380
    الصورة الرمزية msh3al
    msh3al غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Nov 2012
    الإقامة
    الكويت
    المشاركات
    410

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    وعليكم السلام ورحمة الله وبركاته
    نفس طريقة حذف الأوامر المعلقه هي طريقة إغلاق الصفقات
    قم بعمل دالة لإغلاق الصفقات
    كود PHP:
    void CloseOrders(int type)
    {
     for(
    int i=OrdersTotal()-1;i>=0;i--)
     {
      
    bool select=OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
      if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber&&OrderType()==type)
      {
       if(
    OrderType()==OP_BUY)
       {
        
    bool close=OrderClose(OrderTicket(),OrderLots(),Bid,3*P);
       }
       else if(
    OrderType()==OP_SELL)
       {
        
    bool close=OrderClose(OrderTicket(),OrderLots(),Ask,3*P);
       }
       else if(
    OrderType()>OP_SELL)
       {
        
    bool del=OrderDelete(OrderTicket());
       }
      }
     }

    على حسب نوع الصفقه
    جزاك الله خير اخي اسامه ،
    هل ممكن مثال بسيط لاستدعاء الداله عن تحقق الشرط للإيضاح فضلاً
    توقيع العضو
    إذا لم يكن عونٌ من الله للفتى *** فأولُ ما يجني عليه اجتهادُهُ
    ( اللهم أسألك التوفيق )

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

  1. موضوع مخصص للاكسبيرتات اللتي يستخدمها الاعضاء على الحقيقي,,عندك اكسبيرت ممتاز ضعه هنا
    By محمد معمو in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EA
    مشاركات: 11
    آخر مشاركة: 15-12-2023, 02:03 PM
  2. عااااااااااااجل ( موضوع مخصص للفرص الفورية)!!!
    By عاشق الذبذبـة in forum توقعات وتوصيات سوق العملات
    مشاركات: 280
    آخر مشاركة: 27-08-2009, 10:30 PM

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


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