صفحة 8 من 689 الأولىالأولى ... 2345678910111213141858108508 ... الأخيرةالأخيرة
النتائج 106 إلى 120 من 10335
  1. #106
    الصورة الرمزية ماجد كو
    ماجد كو غير متواجد حالياً مـتداول مـميـز
    تاريخ التسجيل
    Sep 2004
    المشاركات
    2,010

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    اشكرك اخي ابو ايمن
    لكن قل لي ما المقصود بالعبارة التاليه بالعربي

    (StopLoss*Point)

    وفعلا قمت بوضع الكود وسأجربه واقول النتيجه

    اخي العزيز محمود ما شاء الله عليك حل ممتاز ايضا ولكن كيف تحوله مره اخرى الى تروفي النهايه .


    هناك سؤال قريب ايضا اريد ان اضع شرطا ان تكون الشمعه ليست ليموزين يعني فوق 100 نقطه لا ندخل مثلا هل اعمل التالي :

    كود PHP:
    High[0]-Low[0]<100 

    وتسلممممممممممممممممممممممممممون

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

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

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

    (StopLoss*Point)

    وفعلا قمت بوضع الكود وسأجربه واقول النتيجه

    اخي العزيز محمود ما شاء الله عليك حل ممتاز ايضا ولكن كيف تحوله مره اخرى الى تروفي النهايه .


    هناك سؤال قريب ايضا اريد ان اضع شرطا ان تكون الشمعه ليست ليموزين يعني فوق 100 نقطه لا ندخل مثلا هل اعمل التالي :

    كود PHP:
    High[0]-Low[0]<100 
    وتسلممممممممممممممممممممممممممون
    اخي الكريم

    المقصود بعبارة (StopLoss*Point) هو جعل قيمة الاستوب لوز متناسبة مع الارقام العشرية للزوج (لأن هناك ازواج ذات اربع ارقام عشرية مثل معظم ازواج الدولار ، وهناك ازواج ذات رقمين عشريين مثل ازواج الين).

    وبالنسبة لشرط ان تكون الشمعه ليست ليموزين يعني ليست فوق 100 نقطه يكون الشرط


    كود PHP:
    if ((High[1] - Low[1])<100) {buy order or sell order}; 
    هذا ما اعرفه

    ولو كان هناك اي خطأ الرجاء التصحيح
    آخر تعديل بواسطة wajdyss ، 22-01-2008 الساعة 12:24 AM
    توقيع العضو
    مبرمج MT4 , MT5

    يمكنكم الاستماع للقرآن الكريم 24/7
    https://forum.arabictrader.com/t265331.html

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

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    اخواني الكرام
    الرجاء المساعدة في التعديل على كود الاكسبيرت التالي بحيث يجب ان يضع اوردر شراء فوق السعر الحالي بـ 25 نقطة ويضع اوردر بيع تحت السعر الحالي بـ 25 نقطة ، والهدف 105 نقطة والاستوب 20 نقطة، وعند ضرب الاستوب وضع اوردر جديد للصفقة التي خسرت بنفس السعر الذي بدأت منه ، وهكذا حتى تحقيق الهدف ثم حذف جميع الاوردرات المعلقة، ثم اعتماد هذا السعر الجديد ووضع الاوردرات فوقه وتحته للشراء والبيع (البدء من جديد)

    مثال: السعر الآن 11100 نضع اوردر شراء عند 11125 واوردر بيع عند 11075 بهدف 105 واستوب 20 ، فرضاً تفعل عقد الشراء عند 11125 ثم ضرب الاستوب نضع اوردر جديد للشراء عند 11125 مرة اخرى ونفس الشيئ للبيع حتى يتحقق هدف احدهما، ولو فرضنا ان هدف الشراء تحقق عند 11230 ، نلغي اي عقود معلقة سابقة ونضع اوردر شراء عند 11255 واوردر بيع عند 11205 وهكذا


    ارجو ان يكون الشرح واضح


    واي استفسار انا موجود


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

    وهذا هو الكود

    كود PHP:
    #property link      "[email protected]"
     
    extern int     Step=25;
    extern double stop=0.20;
    extern double  IncLot=1;
    extern double  MinProfit=105;
    extern int     Count=1;
    extern int     Magic 2008;
     
    int init()
    {
      
    Comment("Waddah Attar Win");
      
    GlobalVariableSet("OldBalance",AccountBalance());
      return(
    0);
    }
    int deinit()
    {
      
    Comment("");
      return(
    0);
    }
    int start()
    {
      
    int i;
      
    double sl,p;
      if (
    AccountEquity()>=GlobalVariableGet("OldBalance")+MinProfit)
      {
        
    DeletePendingOrders(Magic);
        
    CloseOrders(Magic);
        
    GlobalVariableSet("OldBalance",0);
      }
      if (
    MyOrdersTotal(Magic)>0) return(0);
      
    //if (Hour()!=HourStart) return(0);
     
      
    GlobalVariableSet("OldBalance",AccountBalance());
     
      for(
    i=1;i<=Count;i++)
      {
        
    p=Bid+(i*Step)*Point;
        
    sl=p+(Step)*Point;
        
    OrderSend(Symbol(),OP_BUYSTOP,(i*IncLot),p,3,p-stop,0,"",Magic,0,Red);
      }
      for(
    i=1;i<=Count;i++)
      {
        
    p=Bid-(i*Step)*Point;
        
    sl=p-(Step)*Point;
        
    OrderSend(Symbol(),OP_SELLSTOP,(i*IncLot),p,3,p+stop,0,"",Magic,0,Green);
      }
      return(
    0);
    }
    int DeletePendingOrders(int Magic)
    {
      
    int total  OrdersTotal();
     
      for (
    int cnt total-cnt >= cnt--)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()!=OP_BUY || OrderType()!=OP_SELL))
        {
          
    OrderDelete(OrderTicket());
        }
      }
      return(
    0);
    }
    int CloseOrders(int Magic)
    {
      
    int total  OrdersTotal();
     
      for (
    int cnt total-cnt >= cnt--)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol())
        {
          if (
    OrderType()==OP_BUY)
          {
            
    OrderClose(OrderTicket(),OrderLots(),Bid,3);
          }
     
          if (
    OrderType()==OP_SELL)
          {
            
    OrderClose(OrderTicket(),OrderLots(),Ask,3);
          }
        }
      }
      return(
    0);
    }
    double MyOrdersProfit(int Magic)
    {
      
    double c=0;
      
    int total  OrdersTotal();
     
      for (
    int cnt cnt total cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()==OP_BUY || OrderType()==OP_SELL))
        {
          
    c=c+OrderProfit();
        }
      }
      return(
    c);
    }
    int MyOrdersTotal(int Magic)
    {
      
    int c=0;
      
    int total  OrdersTotal();
      for (
    int cnt cnt total cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol())
        {
          
    c++;
        }
      }
      return(
    c);

    أعرف طبعاً ان هناك اوامر غير مطلوبة يجب حذفها

    المهم نتوصل للمطلوب
    توقيع العضو
    مبرمج MT4 , MT5

    يمكنكم الاستماع للقرآن الكريم 24/7
    https://forum.arabictrader.com/t265331.html

  4. #109
    الصورة الرمزية ماجد كو
    ماجد كو غير متواجد حالياً مـتداول مـميـز
    تاريخ التسجيل
    Sep 2004
    المشاركات
    2,010

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    حياكم يا اخوان وبياكم
    اخي الكريم وجدي بصراحه سؤالك صعب علي وياليت احد الاخوان يفيدك كان بودي اساعد

    بالنسبه لاجابتك حول شمعة الليموزين فانا فعلا حاط المعادله واجرب بيها بنفس الهيئه ومشكور على الاجابه .

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

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

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

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

    وبالنسبة لشرط ان تكون الشمعه ليست ليموزين يعني ليست فوق 100 نقطه يكون الشرط

    كود PHP:
    if ((High[1] - Low[1])<100) {buy order or sell order}; 
    اخواني الكرام

    العبارة السابقة خاطئة والصحيح هي:
    كود PHP:
    if ((High[1] - Low[1])<(100*Point)) {buy order or sell order



    اليس كذلك؟
    آخر تعديل بواسطة wajdyss ، 22-01-2008 الساعة 10:31 PM
    توقيع العضو
    مبرمج MT4 , MT5

    يمكنكم الاستماع للقرآن الكريم 24/7
    https://forum.arabictrader.com/t265331.html

  6. #111
    الصورة الرمزية ماجد كو
    ماجد كو غير متواجد حالياً مـتداول مـميـز
    تاريخ التسجيل
    Sep 2004
    المشاركات
    2,010

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

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

  7. #112
    الصورة الرمزية stocksbrocker
    stocksbrocker غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jan 2008
    المشاركات
    21

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

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

  8. #113
    الصورة الرمزية محمود عامر
    محمود عامر غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Oct 2007
    الإقامة
    canada-كندا
    المشاركات
    891

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

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

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

    ان كنت تريد حساب شمعة اليموزين بناء على الهاي و اللو فهذا الكود نفس طود الاخ وجدي
    كود PHP:
    if(High[1]-Low[1]<100*Point) { buy or sell;} 
    و أما ان كنت تريد حسابها من الاغلاق الى الفتح فتحسب بهذا الكود لتمييز الشمعة الصاعدة من الشمعة الهابطة
    كود PHP:
    if(Open[1]>Close[1] && Open[1]-Close[1]<100*Point) {  buy or sell ;}
    if(
    Open[1]<Close[1] && Close[1]-Open[1]<100*Point) {  buy or sell ;} 
    اما بالنسبة للدخول مرتين بنفس الشمعة المحققة للشروط
    أظنك تعمل على التقاطعات أو ماشابه من المؤشرات يعني فرصة شراء يليها فرصة بيع و هكذا
    لذا سأسهل عليك الامر

    ضع هذا الكود في أعلى البرنامج و هو تعريف متغير للشراء و متغير للبيع
    كود PHP:
    bool buy=true,sell=true
    و عند شرط الشراء ضع هذا الكود
    كود PHP:
    if( شرط الشراء && buy==true)
       {
       
    OrderSend(>>>>>>>
       
    buy=false;
       
    sell=true;
      } 
    و عند شرط البيع ضع هذا الكود
    كود PHP:
    if( شرط البيع && sell==true)
       {
        
    OrderSend(>>>>>>>
        
    sell=false;
        
    buy=true;
       } 
    هذا الكود سيعمل معك بشكل جيد مبدئيا حتى تكون الفكرة قد وصلت و له مساوئ سأخبرك بها لاحقا بعد أن يعمل معك
    أرجو أن أكون قد أفدتك
    تقبل تحياتي

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

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    اقتباس المشاركة الأصلية كتبت بواسطة wajdyss مشاهدة المشاركة
    اخواني الكرام


    الرجاء المساعدة في التعديل على كود الاكسبيرت التالي بحيث يجب ان يضع اوردر شراء فوق السعر الحالي بـ 25 نقطة ويضع اوردر بيع تحت السعر الحالي بـ 25 نقطة ، والهدف 105 نقطة والاستوب 20 نقطة، وعند ضرب الاستوب وضع اوردر جديد للصفقة التي خسرت بنفس السعر الذي بدأت منه ، وهكذا حتى تحقيق الهدف ثم حذف جميع الاوردرات المعلقة، ثم اعتماد هذا السعر الجديد ووضع الاوردرات فوقه وتحته للشراء والبيع (البدء من جديد)

    مثال: السعر الآن 11100 نضع اوردر شراء عند 11125 واوردر بيع عند 11075 بهدف 105 واستوب 20 ، فرضاً تفعل عقد الشراء عند 11125 ثم ضرب الاستوب نضع اوردر جديد للشراء عند 11125 مرة اخرى ونفس الشيئ للبيع حتى يتحقق هدف احدهما، ولو فرضنا ان هدف الشراء تحقق عند 11230 ، نلغي اي عقود معلقة سابقة ونضع اوردر شراء عند 11255 واوردر بيع عند 11205 وهكذا


    ارجو ان يكون الشرح واضح


    واي استفسار انا موجود


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

    وهذا هو الكود

    كود PHP:
    #property link      "[email protected]"
     
    extern int     Step=25;
    extern double stop=0.20;
    extern double  IncLot=1;
    extern double  MinProfit=105;
    extern int     Count=1;
    extern int     Magic 2008;
     
    int init()
    {
      
    Comment("Waddah Attar Win");
      
    GlobalVariableSet("OldBalance",AccountBalance());
      return(
    0);
    }
    int deinit()
    {
      
    Comment("");
      return(
    0);
    }
    int start()
    {
      
    int i;
      
    double sl,p;
      if (
    AccountEquity()>=GlobalVariableGet("OldBalance")+MinProfit)
      {
        
    DeletePendingOrders(Magic);
        
    CloseOrders(Magic);
        
    GlobalVariableSet("OldBalance",0);
      }
      if (
    MyOrdersTotal(Magic)>0) return(0);
      
    //if (Hour()!=HourStart) return(0);
     
      
    GlobalVariableSet("OldBalance",AccountBalance());
     
      for(
    i=1;i<=Count;i++)
      {
        
    p=Bid+(i*Step)*Point;
        
    sl=p+(Step)*Point;
        
    OrderSend(Symbol(),OP_BUYSTOP,(i*IncLot),p,3,p-stop,0,"",Magic,0,Red);
      }
      for(
    i=1;i<=Count;i++)
      {
        
    p=Bid-(i*Step)*Point;
        
    sl=p-(Step)*Point;
        
    OrderSend(Symbol(),OP_SELLSTOP,(i*IncLot),p,3,p+stop,0,"",Magic,0,Green);
      }
      return(
    0);
    }
    int DeletePendingOrders(int Magic)
    {
      
    int total  OrdersTotal();
     
      for (
    int cnt total-cnt >= cnt--)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()!=OP_BUY || OrderType()!=OP_SELL))
        {
          
    OrderDelete(OrderTicket());
        }
      }
      return(
    0);
    }
    int CloseOrders(int Magic)
    {
      
    int total  OrdersTotal();
     
      for (
    int cnt total-cnt >= cnt--)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol())
        {
          if (
    OrderType()==OP_BUY)
          {
            
    OrderClose(OrderTicket(),OrderLots(),Bid,3);
          }
     
          if (
    OrderType()==OP_SELL)
          {
            
    OrderClose(OrderTicket(),OrderLots(),Ask,3);
          }
        }
      }
      return(
    0);
    }
    double MyOrdersProfit(int Magic)
    {
      
    double c=0;
      
    int total  OrdersTotal();
     
      for (
    int cnt cnt total cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()==OP_BUY || OrderType()==OP_SELL))
        {
          
    c=c+OrderProfit();
        }
      }
      return(
    c);
    }
    int MyOrdersTotal(int Magic)
    {
      
    int c=0;
      
    int total  OrdersTotal();
      for (
    int cnt cnt total cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol())
        {
          
    c++;
        }
      }
      return(
    c);

    أعرف طبعاً ان هناك اوامر غير مطلوبة يجب حذفها


    المهم نتوصل للمطلوب
    اين انت يا مهندس وضاح؟

    لقد قلت لي حاول ، وأنا فعلاً حاولت وقمت ببعض التغيرات ، والكود التالي هو آخر ما توصلت اليه (رحم الله امرئ عرف قدر نفسه ففوقف عند حده) ولا استطيع ان اعدل عليه أكثر من ذلك

    كود PHP:
     
    #property link      "[email protected]"
     
    extern int     Step=25;
    extern int     Stop=25;
    extern double  IncLot=1;
    extern double  MinProfit=100;
    extern int     Count=1;
    extern int     Magic 2008;
     
    int init()
    {
      
    Comment("Waddah Attar Win");
      
    GlobalVariableSet("OldBalance",AccountBalance());
      return(
    0);
    }
    int deinit()
    {
      
    Comment("");
      return(
    0);
    }
    int start()
    {
      
    int i;
      
    double sl,p,profit;
     
      if (
    AccountEquity()>=GlobalVariableGet("OldBalance")+MinProfit)
      {
        
    DeletePendingOrders(Magic);
        
    CloseOrders(Magic);
        
    GlobalVariableSet("OldBalance",0);
      }
      if (
    MyOrdersTotal(Magic)>0) return(0);
      
    //if (Hour()!=HourStart) return(0);
     
      
    GlobalVariableSet("OldBalance",AccountBalance());
     
      for(
    i=1;i<=Count;i++)
      {
        
    p=Bid+(i*Step)*Point;
        
    sl=p-(Stop)*Point;
     
        
    profit=p+(MinProfit)*Point;
        
    OrderSend(Symbol(),OP_BUYSTOP,(i*IncLot),p,3,sl,profit,"",Magic,0,Red);
      }
      for(
    i=1;i<=Count;i++)
      {
        
    p=Bid-(i*Step)*Point;
        
    sl=p+(Stop)*Point;
        
    profit=p-(MinProfit)*Point;
        
    OrderSend(Symbol(),OP_SELLSTOP,(i*IncLot),p,3,sl,profit,"",Magic,0,Green);
      }
      return(
    0);
    }
    int DeletePendingOrders(int Magic)
    {
      
    int total  OrdersTotal();
     
      for (
    int cnt total-cnt >= cnt--)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()!=OP_BUY || OrderType()!=OP_SELL))
        {
          
    OrderDelete(OrderTicket());
        }
      }
      return(
    0);
    }
    int CloseOrders(int Magic)
    {
      
    int total  OrdersTotal();
     
      for (
    int cnt total-cnt >= cnt--)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol())
        {
          if (
    OrderType()==OP_BUY)
          {
            
    OrderClose(OrderTicket(),OrderLots(),Bid,3);
          }
     
          if (
    OrderType()==OP_SELL)
          {
            
    OrderClose(OrderTicket(),OrderLots(),Ask,3);
          }
        }
      }
      return(
    0);
    }
    double MyOrdersProfit(int Magic)
    {
      
    double c=0;
      
    int total  OrdersTotal();
     
      for (
    int cnt cnt total cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()==OP_BUY || OrderType()==OP_SELL))
        {
          
    c=c+OrderProfit();
        }
      }
      return(
    c);
    }
    int MyOrdersTotal(int Magic)
    {
      
    int c=0;
      
    int total  OrdersTotal();
      for (
    int cnt cnt total cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol())
        {
          
    c++;
        }
      }
      return(
    c);

    الرجاء من المبرمجين التعديل عليه ليفي بالشرح الموجود في الاقتباس أعلاه والموجود أيضاً في المشاركة رقم 108

    وشكراً مقدماً
    آخر تعديل بواسطة wajdyss ، 24-01-2008 الساعة 03:37 PM
    توقيع العضو
    مبرمج MT4 , MT5

    يمكنكم الاستماع للقرآن الكريم 24/7
    https://forum.arabictrader.com/t265331.html

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

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    هناك طرق كثيرة لمعالجة مشكلة الدخول مع التقاطع أكثر من مرة

    أفضل شيء هو حفظ قيمة زمن الدخول في الصفقة في متحول ما .

    ثم عند الدخول في صفقة نضيف شرط فحص زمن الدخول الجديد مع قيمة المتحول .

    ويجب أن يكون الفرق بينهما أكبر من الفترة التي نريدها .


    في الدورة البرمجية المثبتة هناك درس كامل عن الوظائف الزمنية

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

  11. #116
    الصورة الرمزية أبو أيمن المصري
    أبو أيمن المصري غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Mar 2007
    الإقامة
    سيول - كوريا الجنوبية
    المشاركات
    631

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

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

    أفضل شيء هو حفظ قيمة زمن الدخول في الصفقة في متحول ما .

    ثم عند الدخول في صفقة نضيف شرط فحص زمن الدخول الجديد مع قيمة المتحول .

    ويجب أن يكون الفرق بينهما أكبر من الفترة التي نريدها .


    في الدورة البرمجية المثبتة هناك درس كامل عن الوظائف الزمنية

    أنصحكم بقرائته ثم محاولة تكوين هذا الكود بأنفسكم .
    أستاذنا وضاح، خطر لي استخدام الوظيفة Sleep لتنويم الاكسبرت الفترة الزمنية المطلوبة

    ما رأيكم؟
    آخر تعديل بواسطة أبو أيمن المصري ، 24-01-2008 الساعة 04:54 PM

  12. #117
    الصورة الرمزية أبو أيمن المصري
    أبو أيمن المصري غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Mar 2007
    الإقامة
    سيول - كوريا الجنوبية
    المشاركات
    631

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    سبحان الله!!

    طرحت استفساري السابق ووجدت أن الأستاذ وضاح تكلم عن الوظيفة Sleep على هذه المشاركة منذ 20 دقيقة تقريبًا!

    توافق عجيب

  13. #118
    الصورة الرمزية ماجد كو
    ماجد كو غير متواجد حالياً مـتداول مـميـز
    تاريخ التسجيل
    Sep 2004
    المشاركات
    2,010

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    مشكور يا الحبيب محمود على ما تفضلت به فعلا ماشاء الله عليك مبرمج

    ساحاول في الاول تطبيق الطريقه مع شرط 100 نقطه لليموزين و20 نقطه للاستوب لوز فاذا لم تنجح ساحاول عمل الخطوات التي ذكرتها ما شاء الله عليك.

    اخي ابو ايمن بالنسبه لوضع مسمى استوب لوس بيونت لم تنجح الطريقه ولا زال يأخذ اكثر من عمليه عموما استبدلت الاستوب لوس بعدد من النقاط كما ذكرت بالاعلى وساحاول تطبيقه واعطيكم النتائج .

    ياجماعه لاتنسو سؤال الحبيب وجدي وتسلممممممممممممممممممون على كل شي

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

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    اقتباس المشاركة الأصلية كتبت بواسطة wajdyss مشاهدة المشاركة
    اين انت يا مهندس وضاح؟


    لقد قلت لي حاول ، وأنا فعلاً حاولت وقمت ببعض التغيرات ، والكود التالي هو آخر ما توصلت اليه (رحم الله امرئ عرف قدر نفسه ففوقف عند حده) ولا استطيع ان اعدل عليه أكثر من ذلك

    كود PHP:
     
    #property link      "[email protected]"
     
    extern int     Step=25;
    extern int     Stop=25;
    extern double  IncLot=1;
    extern double  MinProfit=100;
    extern int     Count=1;
    extern int     Magic 2008;
     
    int init()
    {
      
    Comment("Waddah Attar Win");
      
    GlobalVariableSet("OldBalance",AccountBalance());
      return(
    0);
    }
    int deinit()
    {
      
    Comment("");
      return(
    0);
    }
    int start()
    {
      
    int i;
      
    double sl,p,profit;
     
      if (
    AccountEquity()>=GlobalVariableGet("OldBalance")+MinProfit)
      {
        
    DeletePendingOrders(Magic);
        
    CloseOrders(Magic);
        
    GlobalVariableSet("OldBalance",0);
      }
      if (
    MyOrdersTotal(Magic)>0) return(0);
      
    //if (Hour()!=HourStart) return(0);
     
      
    GlobalVariableSet("OldBalance",AccountBalance());
     
      for(
    i=1;i<=Count;i++)
      {
        
    p=Bid+(i*Step)*Point;
        
    sl=p-(Stop)*Point;
     
        
    profit=p+(MinProfit)*Point;
        
    OrderSend(Symbol(),OP_BUYSTOP,(i*IncLot),p,3,sl,profit,"",Magic,0,Red);
      }
      for(
    i=1;i<=Count;i++)
      {
        
    p=Bid-(i*Step)*Point;
        
    sl=p+(Stop)*Point;
        
    profit=p-(MinProfit)*Point;
        
    OrderSend(Symbol(),OP_SELLSTOP,(i*IncLot),p,3,sl,profit,"",Magic,0,Green);
      }
      return(
    0);
    }
    int DeletePendingOrders(int Magic)
    {
      
    int total  OrdersTotal();
     
      for (
    int cnt total-cnt >= cnt--)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()!=OP_BUY || OrderType()!=OP_SELL))
        {
          
    OrderDelete(OrderTicket());
        }
      }
      return(
    0);
    }
    int CloseOrders(int Magic)
    {
      
    int total  OrdersTotal();
     
      for (
    int cnt total-cnt >= cnt--)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol())
        {
          if (
    OrderType()==OP_BUY)
          {
            
    OrderClose(OrderTicket(),OrderLots(),Bid,3);
          }
     
          if (
    OrderType()==OP_SELL)
          {
            
    OrderClose(OrderTicket(),OrderLots(),Ask,3);
          }
        }
      }
      return(
    0);
    }
    double MyOrdersProfit(int Magic)
    {
      
    double c=0;
      
    int total  OrdersTotal();
     
      for (
    int cnt cnt total cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()==OP_BUY || OrderType()==OP_SELL))
        {
          
    c=c+OrderProfit();
        }
      }
      return(
    c);
    }
    int MyOrdersTotal(int Magic)
    {
      
    int c=0;
      
    int total  OrdersTotal();
      for (
    int cnt cnt total cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol())
        {
          
    c++;
        }
      }
      return(
    c);

    الرجاء من المبرمجين التعديل عليه ليفي بالشرح الموجود في الاقتباس أعلاه والموجود أيضاً في المشاركة رقم 108


    وشكراً مقدماً
    توقيع العضو
    مبرمج MT4 , MT5

    يمكنكم الاستماع للقرآن الكريم 24/7
    https://forum.arabictrader.com/t265331.html

  15. #120
    الصورة الرمزية Al-Mosuli
    Al-Mosuli غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Nov 2007
    المشاركات
    245

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

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


    والفضل لله
    ثم للقائمين على هذا المنتدى
    انشالله نتعلم البرمجة على ايديكم
    شكرا مقدما
    الصور المصغرة للصور المرفقة الصور المصغرة للصور المرفقة 2.gif‏  
    آخر تعديل بواسطة Al-Mosuli ، 29-01-2008 الساعة 08:07 PM

صفحة 8 من 689 الأولىالأولى ... 2345678910111213141858108508 ... الأخيرةالأخيرة

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

  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