صفحة 3 من 12 الأولىالأولى 123456789 ... الأخيرةالأخيرة
النتائج 31 إلى 45 من 175
  1. #31
    الصورة الرمزية وضاح عطار
    وضاح عطار غير متواجد حالياً عضو مميز ومشرف سابق
    تاريخ التسجيل
    Apr 2006
    الإقامة
    السعودية
    العمر
    52
    المشاركات
    7,043

    افتراضي رد: دورة صناعة الاكسبيرتات

    المتحولات العامة Global Variable

    تحتوي لغة الميتاتريدر على تقنية تسمى Global Variable

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

    يمكنك يدويا أو برمجيا إنشاء متحول عام وإسناد قيمة ما له .

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

    هذه المتحولات يمكن قراءة قيمها من أي مؤشر أو اكسبيرت آخر .
    بهذه الطريقة يمكن تبادل المعلومات بين مجموعة من المؤشرات أو الاكسبيرتات .

    يمكن مثلا برمجة مؤشر يقوم بحسابات معقدة ثم يعطي اشارة بيع أو شراء ويخزنها داخل متحول عام .

    ثم هناك اكسبيرت يفحص هذا المتحول الذي يعرف اسمه ويرى ما هي الإشارة الأخيرة هل هي بيع أم شراء ليقوم بتنفيذ صفقة حقيقية .

    هذا مثال بسيط لما يمكن عمله بواسطة هذه التقنية الرائعة .

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

    من القائمة Tools اختر Global Variable أو اضغط F3 مباشرة .

    ستظهر لك نافذة المتحولات العامة لتظهر لك المتحولات الحالية مع قيمها .

    يمكنك إضافة متحول جديد أو حذف متحول موجود أو تغيير قيمته كما تريد .

    العمل مع المتحولات العامة من خلال البرمجة :

    تحتوي لغة MQL4 على كافة الوظائف المناسبة للعمل مع هذه المتحولات .

    وهذه الوظائف هي :

    كود PHP:
    bool GlobalVariableCheckstring name


    تقوم بفحص هل يوجد متحول عام له الاسم المحدد ..

    تعيد هذه الوظيفة القيمة true في حال وجدت المتحول والقيمة false في حال لم يكن المتحول موجودا .

    كود PHP:
    bool GlobalVariableDelstring name


    تقوم بحذف المتحول ذو الاسم المحدد وتعيد القيمة true في حال نجحت في عملية الحذف والقيمة false في حال لم تنجح لأي سبب من الأسباب .

    كود PHP:
    double GlobalVariableGetstring name


    تقوم بقراءة قيمة المتحول ذو الاسم المحدد .

    كود PHP:
    datetime GlobalVariableSetstring namedouble value


    تقوم بوضع قيمة رقمية في المتحول ذو الاسم المحدد وتعيد زمن آخر قراءة تمت على هذا المتحول .

    أو تعيد القيمة صفر إذا كانت هذه أول مرة يتم تخزين قيمة في هذا المتحول .

    كود PHP:
    int GlobalVariablesDeleteAllstring prefix_name=NULL
    تقوم بحذف كافة المتحولات العامة أو يمكنك حذف فقط المتحولات التي يبدأ اسمها ببادئة محددة .


    تعيد هذه الوظيفة عدد المتحولات التي قامت بحذفها .

    كود PHP:
    int GlobalVariablesTotal( ) 
    تقوم بإعادة عدد المتحولات العامة المتوفرة حاليا .


    كود PHP:
    string GlobalVariableNameint index


    تقوم بإعادة اسم المتحول من خلال رقمه الذي يبدأ من الصفر حتى آخر متحول .

    أمثلة :

    كود PHP:
    // check variable before use
      
    if(!GlobalVariableCheck("g1"))
        
    GlobalVariableSet("g1",1); 


    يقوم هذا المثال بفحص هل يوجد متحول اسمه g1 .
    في حال لم يجد هذا المتحول فإنه ينشئه ويضع فيه القيمة 1 .

    كود PHP:
    GlobalVariableDel("gvar_1"); 


    يقوم هذا المثال بحذف المتحول ذو الاسم gvar_1 .

    كود PHP:
    double v1=GlobalVariableGet("g1"); 


    يقوم هذا المثال بقراءة قيمة المتحول g1 وتخزينه في المتحول v1 .

    كود PHP:
    int    var_total=GlobalVariablesTotal();
      
    string name;
      for(
    int i=0;i<var_total;i++)
        {
         
    name=GlobalVariableName(i);
         Print(
    i,": Global variable name - ",name);
        } 


    يقوم هذا المثال بقراءة وطباعة أسماء جميع المتحولات المتوفرة حاليا

    فقط أسمائها وليس قيمها .
    توقيع العضو
    اثنان لا يجتمعان علم وسوء خلق

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

    افتراضي رد: دورة صناعة الاكسبيرتات

    جزاك الله كل خير
    توقيع العضو
    مبرمج MT4 , MT5

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

  3. #33
    الصورة الرمزية شايب 2000
    شايب 2000 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Feb 2007
    العمر
    64
    المشاركات
    58

    افتراضي رد: دورة صناعة الاكسبيرتات

    جزاك الله خير

    وبارك الله في عملك

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

    افتراضي رد: دورة صناعة الاكسبيرتات

    طولت الغيبة يا مهندس وضاح
    توقيع العضو
    مبرمج MT4 , MT5

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

  5. #35
    الصورة الرمزية Amro
    Amro غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Mar 2007
    الإقامة
    بريطانيا
    المشاركات
    3,287

    افتراضي رد: دورة صناعة الاكسبيرتات

    اخى الحبيب وضاح
    السلام عليكم

    بدايه اشكرك على هذا المجهود الرائع فى الشرح ومحاوله لإفادة الأخوه والأخوات , وبكل تأكيد نترك جزائك عند المولى عز وجل فهو القادر على مكافأتك نظرا لما تبذله من جهد ثقيل فى الشرح وانا اعلم معنى شرح البرمجه

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

    تظل الأوردرات المعلقه مفتوحه ويعجز الأكسبيرت عن تنفيذ اى ارودرات اخرى لحين اغلاق المعلق

    وها هو الكود فأرجوا ان تقول لى ما هو الخطأ كى اتفاداه ولك جزيل الشكر

    بارك الله فيك

    الكود

    كود PHP:
    int start()
    {
      if(
    Hour()==&& Minute()<&& MyOrdersTotal(Magicnumber)>0)
      {
        
    DeletePendingOrders(Magicnumber);
        
    CloseOrders(Magicnumber);
      }
      if(
    Hour()==&& Minute()>&& MyOrdersTotal(Magicnumber)==0)
      {
        
    double Dayhigh=iHigh(Symbol(),PERIOD_D1,1);
        
    double Daylow=iLow(Symbol(),PERIOD_D1,1);
        
    double BuyPrice=Dayhigh+Step*Point;
        
    double BuyTP=BuyPrice+Takeprofit*Point;
        
    double BuySL=BuyPrice-Stoploss*Point;
     
        
    double SellPrice=Daylow-Step*Point;
        
    double SellTP=SellPrice-Takeprofit*Point;
        
    double SellSL=SellPrice+Stoploss*Point;
     
        
    OrderSend(Symbol(),OP_BUYSTOP,Lots,BuyPrice,3,BuySL,BuyTP,"",Magicnumber,0,Green);
        
    OrderSend(Symbol(),OP_SELLSTOP,Lots,SellPrice,3,SellSL,SellTP,"",Magicnumber,0,Red);
     
     
      }
      return(
    0);
    }
    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);
    }
     
    int DeletePendingOrders(int Magic)
    {
      
    int total  OrdersTotal()-1;
     
      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()-1;
     
      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);

    توقيع العضو
    الكون يسير وفق منظومة إلاهيه مكتملة الدقة ، فإن وجدت نفسك أمام معضلة لا تستطيع حلها فالخلل في فهمك لها وليس فيها
    الحل امامك
    فقط تأمل الكون وانظر داخلك

    اخر اكتشافاتي على الشارت
    #الرقم_العبقري
    #التحرك_الطاقي_للشارت

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

    افتراضي رد: دورة صناعة الاكسبيرتات

    اقتباس المشاركة الأصلية كتبت بواسطة Amro مشاهدة المشاركة
    اخى الحبيب وضاح

    السلام عليكم

    بدايه اشكرك على هذا المجهود الرائع فى الشرح ومحاوله لإفادة الأخوه والأخوات , وبكل تأكيد نترك جزائك عند المولى عز وجل فهو القادر على مكافأتك نظرا لما تبذله من جهد ثقيل فى الشرح وانا اعلم معنى شرح البرمجه

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

    تظل الأوردرات المعلقه مفتوحه ويعجز الأكسبيرت عن تنفيذ اى ارودرات اخرى لحين اغلاق المعلق

    وها هو الكود فأرجوا ان تقول لى ما هو الخطأ كى اتفاداه ولك جزيل الشكر

    بارك الله فيك

    الكود

    كود PHP:
    int start()
    {
      if(
    Hour()==&& Minute()<&& MyOrdersTotal(Magicnumber)>0)
      {
        
    DeletePendingOrders(Magicnumber);
        
    CloseOrders(Magicnumber);
      }
      if(
    Hour()==&& Minute()>&& MyOrdersTotal(Magicnumber)==0)
      {
        
    double Dayhigh=iHigh(Symbol(),PERIOD_D1,1);
        
    double Daylow=iLow(Symbol(),PERIOD_D1,1);
        
    double BuyPrice=Dayhigh+Step*Point;
        
    double BuyTP=BuyPrice+Takeprofit*Point;
        
    double BuySL=BuyPrice-Stoploss*Point;
     
        
    double SellPrice=Daylow-Step*Point;
        
    double SellTP=SellPrice-Takeprofit*Point;
        
    double SellSL=SellPrice+Stoploss*Point;
     
        
    OrderSend(Symbol(),OP_BUYSTOP,Lots,BuyPrice,3,BuySL,BuyTP,"",Magicnumber,0,Green);
        
    OrderSend(Symbol(),OP_SELLSTOP,Lots,SellPrice,3,SellSL,SellTP,"",Magicnumber,0,Red);
     
     
      }
      return(
    0);
    }
    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);
    }
     
    int DeletePendingOrders(int Magic)
    {
      
    int total  OrdersTotal()-1;
     
      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()-1;
     
      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);

    اخي الكريم

    بعد اذن المهندس وضاح

    بعد نظرة سريعة على الكود ، هناك خطأ في دالة DeletePendingOrders

    حيث يجب عليك تغيير
    كود PHP:
    if (OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()!=OP_BUY || OrderType()!=OP_SELL)) 
    الى

    كود PHP:
    if (OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()!=OP_BUYSTOP || OrderType()!=OP_SELLSTOP)) 
    توقيع العضو
    مبرمج MT4 , MT5

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

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

    افتراضي رد: دورة صناعة الاكسبيرتات

    أهلا بك أخي عمرو

    استبدل الوظيفة التالية بمثيلتها في الكود عندك :

    كود PHP:
    int DeletePendingOrders(int Magic)
    {
      
    int total  OrdersTotal()-1;
     
      for (
    int cnt total cnt cnt--)
      {
        
    OrderSelect(0,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()!=OP_BUY || OrderType()!=OP_SELL))
        {
          
    OrderDelete(OrderTicket());
          
    RefreshRates();
          
    Sleep(100);
        }
      }
      return(
    0);

    وأخبرني بالنتيجة


    أخي وجدي شكرا لك

    لكنك لم تنتبه لإشارة لا يساوي != في الوظيفة

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

  8. #38
    الصورة الرمزية Amro
    Amro غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Mar 2007
    الإقامة
    بريطانيا
    المشاركات
    3,287

    افتراضي رد: دورة صناعة الاكسبيرتات

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



    بعد اذن المهندس وضاح

    بعد نظرة سريعة على الكود ، هناك خطأ في دالة DeletePendingOrders

    حيث يجب عليك تغيير

    كود PHP:
    if (OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()!=OP_BUY || OrderType()!=OP_SELL)) 
    كود PHP:
    [center][/center

    الى

    كود PHP:
    [center][center]if (OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()!=OP_BUYSTOP || OrderType()!=OP_SELLSTOP))
    [/
    center][/center

    شكرا لك اخ وجدى على اهتمامك وزوقك وحبك لأخوتك
    لكن مازال الموضوع كما هو


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


    كود PHP:
    [center]int DeletePendingOrders(int Magic)
    {
      
    int total  OrdersTotal()-1;
     
      for (
    int cnt total cnt cnt--)
      {
        
    OrderSelect(0,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()!=OP_BUY || OrderType()!=OP_SELL))
        {
          
    OrderDelete(OrderTicket());
          
    RefreshRates();
          
    Sleep(100);
        }
      }
      return(
    0);
    }
     
    <
    div style="text-align: center;">استبدل الوظيفة التالية بمثيلتها في الكود عندك :
     
    </
    div
    وأخبرني بالنتيجة


    أخي وجدي شكرا لك

    لكنك لم تنتبه لإشارة لا يساوي != في الوظيفة

    لذلك الوظيفة برمجيا صحيحة ولكن أحيانا لبطيء السيرفر والتنفيذ لا يتم تنفيذ الوظيفة بشكل صحيح .
    [/CENTER]

    كود PHP:
    [center]{
      if(
    Hour()==&& Minute()<&& MyOrdersTotal(Magicnumber)>0)
      {
        
    DeletePendingOrders(Magicnumber);
        
    CloseOrders(Magicnumber);
      }
      if(
    Hour()==&& Minute()>&& MyOrdersTotal(Magicnumber)==0)
      {
        
    double Dayhigh=iHigh(Symbol(),PERIOD_D1,1);
        
    double Daylow=iLow(Symbol(),PERIOD_D1,1);
        
    double BuyPrice=Dayhigh+Step*Point;
        
    double BuyTP=BuyPrice+Takeprofit*Point;
        
    double BuySL=BuyPrice-Stoploss*Point;
        
        
    double SellPrice=Daylow-Step*Point;
        
    double SellTP=SellPrice-Takeprofit*Point;
        
    double SellSL=SellPrice+Stoploss*Point;
        
        
    OrderSend(Symbol(),OP_BUYSTOP,Lots,BuyPrice,3,BuySL,BuyTP,"",Magicnumber,0,Green);
        
    OrderSend(Symbol(),OP_SELLSTOP,Lots,SellPrice,3,SellSL,SellTP,"",Magicnumber,0,Red);
        
        
      }
      return(
    0);
    }
    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);
    }

    int DeletePendingOrders(int Magic)
    {
      
    int total  OrdersTotal()-1;
     
      for (
    int cnt total cnt cnt--)
      {
        
    OrderSelect(0,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()!=OP_BUY || OrderType()!=OP_SELL))
        {
          
    OrderDelete(OrderTicket());
          
    RefreshRates();
          
    Sleep(100);
        }
      }
      return(
    0);
    }  

    int CloseOrders(int Magic)
    {
      
    int total  OrdersTotal()-1;
      
      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);
    }  <
    div style="text-align: center;"><font size="5"><font color="blue">الأخ الحبيب <font color="sienna">وضاح</font></font></font>
     
    <
    div style="text-align: center;"><font size="5"><font color="blue">جزاك الله كل الخير على اهتمامك</font></font>
    <
    font size="5"><font color="blue">قمت بتغيير الكود ولكن <font color="sienna">الأمر كما هو</fontومرفق لك الكود مرة اخرى </font></font></div

    <
    div style="text-align: center;"><div class="bbcode_container">
        <
    div class="bbcode_description">كود PHP:</div>
        <
    div class="bbcode_code" style="height:36px;"><code><code><span style="color: #000000">
    <
    span style="color: #0000BB">int&nbsp;start</span><span style="color: #007700">()&nbsp; </span><span style="color: #0000BB"></span>
    </
    span>
    </
    code></code></div>
    </
    div></div></div
    [/CENTER]
    توقيع العضو
    الكون يسير وفق منظومة إلاهيه مكتملة الدقة ، فإن وجدت نفسك أمام معضلة لا تستطيع حلها فالخلل في فهمك لها وليس فيها
    الحل امامك
    فقط تأمل الكون وانظر داخلك

    اخر اكتشافاتي على الشارت
    #الرقم_العبقري
    #التحرك_الطاقي_للشارت

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

    افتراضي رد: دورة صناعة الاكسبيرتات

    بعد التدقيق في الكود وجدت الخطأ

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

    كود PHP:
    //+------------------------------------------------------------------+
    //|                                                Amro high low.mq4 |
    //|                      Copyright © 2008, MetaQuotes Software Corp. |
    //|                                        http://www.metaquotes.net |
    //+------------------------------------------------------------------+
    #property copyright "Copyright © 2008, MetaQuotes Software Corp."
    #property link      "http://www.metaquotes.net"
    extern int Step=20;
    extern int Takeprofit=50;
    extern int Stoploss=50;
    extern double Lots=1;  
    int Magicnumber=234561;
    //+------------------------------------------------------------------+
    //| expert initialization function                                   |
    //+------------------------------------------------------------------+
    int init()
      {
      return(
    0);
      }
    //+------------------------------------------------------------------+
    //| expert deinitialization function                                 |
    //+------------------------------------------------------------------+
    int deinit()
      {
       return(
    0);
      }
    //+------------------------------------------------------------------+
    //| expert start function                                            |
    //+------------------------------------------------------------------+
    int start()
    {
      if(
    Hour()==&& Minute()<&& MyOrdersTotal(Magicnumber)>0)
      {
        
    DeletePendingOrders(Magicnumber);
        
    CloseOrders(Magicnumber);
      }
      if(
    Hour()==&& Minute()>&& MyOrdersTotal(Magicnumber)==0)
      {
        
    double Dayhigh=iHigh(Symbol(),PERIOD_D1,1);
        
    double Daylow=iLow(Symbol(),PERIOD_D1,1);
        
    double BuyPrice=Dayhigh+Step*Point;
        
    double BuyTP=BuyPrice+Takeprofit*Point;
        
    double BuySL=BuyPrice-Stoploss*Point;
        
        
    double SellPrice=Daylow-Step*Point;
        
    double SellTP=SellPrice-Takeprofit*Point;
        
    double SellSL=SellPrice+Stoploss*Point;
        
        
    OrderSend(Symbol(),OP_BUYSTOP,Lots,BuyPrice,3,BuySL,BuyTP,"",Magicnumber,0,Green);
        
    OrderSend(Symbol(),OP_SELLSTOP,Lots,SellPrice,3,SellSL,SellTP,"",Magicnumber,0,Red);
        
        
      }
      return(
    0);
    }
    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);
    }

    int DeletePendingOrders(int Magic)
    {
      
    int total  OrdersTotal()-1;
     
      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()-1;
      
      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);
    }  

    //+------------------------------------------------------------------+ 
    توقيع العضو
    اثنان لا يجتمعان علم وسوء خلق

  10. #40
    الصورة الرمزية Amro
    Amro غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Mar 2007
    الإقامة
    بريطانيا
    المشاركات
    3,287

    Thumbs up رد: دورة صناعة الاكسبيرتات

    شكرا اخى وضاح وجزاك الله كل الخير

    تمام الكود شغال

    بإذن الله هعمل بعض التجارب عليه واوافيك بالأخبار لعل يكون فيه الخير الكثير للأخوه بأمر الله

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

    اخر اكتشافاتي على الشارت
    #الرقم_العبقري
    #التحرك_الطاقي_للشارت

  11. #41
    الصورة الرمزية الاصيل العربي
    الاصيل العربي غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Aug 2006
    الإقامة
    السعودية
    المشاركات
    207

    افتراضي رد: دورة صناعة الاكسبيرتات

    جزاك الله عنا كل خير اخوي وضاح

    و احنا معاك

  12. #42
    الصورة الرمزية علي موفق
    علي موفق غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Oct 2006
    المشاركات
    40

    افتراضي رد: دورة صناعة الاكسبيرتات

    شكرا

  13. #43
    الصورة الرمزية NASSERALQAHTANI
    NASSERALQAHTANI غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Jan 2007
    الإقامة
    السعودية
    المشاركات
    1,181

    افتراضي رد: دورة صناعة الاكسبيرتات

    جزاك الله خير
    وبارك الله فيك
    واصلح لك النية والذرية

  14. #44
    تاريخ التسجيل
    Jan 2008
    المشاركات
    2,425

    افتراضي رد: دورة صناعة الاكسبيرتات


    بارك الله فيك اخي الكريم

    شرح اكثر من رائع

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

    افتراضي رد: دورة صناعة الاكسبيرتات

    فيما يلي بعض الوظائف الهامة التي أستخدمها بكثرة في الاكسبيرتات التي أصنعها

    وأعتقد أنها سوف تنفعكم أيضا


    هذه الوظائف سهلة الاستخدام ومفهومة جدا وكلها تعتمد على مدخل واحد هو الرقم السحري المميز للصفقات ...


    الوظيفة الأولى :

    MyRealOrdersTotal

    تقوم بإعادة عدد الصفقات الحقيقية المفتوحة من قبل الاكسبيرت سواء كانت بيع أو شراء :

    كود PHP:
    int MyRealOrdersTotal(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() && (OrderType()==OP_BUY || OrderType()==OP_SELL))
        {
          
    c++;
        }
      }
      return(
    c);

    توقيع العضو
    اثنان لا يجتمعان علم وسوء خلق

صفحة 3 من 12 الأولىالأولى 123456789 ... الأخيرةالأخيرة

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

  1. طلب صناعة إكسبرت RSI
    By FOREX_WAR in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EA
    مشاركات: 22
    آخر مشاركة: 29-04-2017, 10:58 PM
  2. طلب = صناعة سكربت
    By cobra100 in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EA
    مشاركات: 6
    آخر مشاركة: 28-10-2008, 02:41 PM
  3. طريقة صناعة الاكسبيرتات الاليه
    By ماجد كو in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EA
    مشاركات: 24
    آخر مشاركة: 05-05-2008, 03:02 PM

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


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