صفحة 6 من 8 الأولىالأولى 12345678 الأخيرةالأخيرة
النتائج 76 إلى 90 من 107
  1. #76
    الصورة الرمزية MR.dollar
    MR.dollar غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Jun 2009
    الإقامة
    مصر
    المشاركات
    13,864

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة ahmedessam58 مشاهدة المشاركة
    هل يوجد كود يمنع الاكسبيرت من الدخول فى اى صفقات السعر فيها بعيد عن السحابة ب250 نقطه مثلا للحماية من الارتدادات ؟
    نعم يمكن بحيث تحسب الفرق بين السعر الحالي وقيمة السحابه
    مثلا
    سيكون شرط الشراء
    كود PHP:
     if(Close[0]-MathMax(senkoua,senkoub)<250*Point
    وسيكون شرط البيع
    كود PHP:
    if(MathMin(senkoua,senkoub)-Close[0]<250*Point
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

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

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة ahmedessam58 مشاهدة المشاركة
    لقد قمت بتجربة كل الاحتمالات للدخول والخروج ولكنى لم اعد اعرف ماذا افعل من شدة الحيرة
    التداول اليدوى له مميزاته وعيوبه ضيق الوقت وعدم المتابعه والتداول الآلى له مميزاته وعيوبه انه لابد من التدقيق على كل شئ صغير وكبير وعدم تغيير فكرة الاكسبيرت ودراسة كل شئ بعناية شديدة حتى يمكن لصاحبه تحديد ما يريده من الاكسبيرت
    واكثر شئ استنتجته انه يمكنك عمل اى شئ فى معادلات الاكسبيرت بشرط ان تكون مدركا لما تؤدى اليه هذه المعادلات وان تخدم عمل الاكسبيرت
    وبهذه الطريقة اعتقد ان اكسبيرتى سوف يكلفنى مدة زمنية كبيرة حتى تنضج الافكار ونتمم كل الشروط المطلوبة للدخول والخروج
    مطلوب نصائح الجميع
    وشكرا لكم جميعا
    إعتبر عملك لهذا الإكسبرت وسيله لتعلم البرمجه لأنها أفضل طريقة للتعلم السؤال والمحاوله ولا تعتبر همك الآن هو عمل إكسبرت كامل
    إستمر في بناء الإكسبرت جزء جزء ولا يهم متى ستنتهي منه
    قم بإرفاق آخر نسخه للإكسبرت بعد كل تطوير تحاول عمله وأخبرنا بالجزء الذي لم تستطع حله وسوف نساعدك
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  3. #78
    الصورة الرمزية ahmedessam58
    ahmedessam58 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jul 2008
    الإقامة
    مصر
    المشاركات
    493

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    إعتبر عملك لهذا الإكسبرت وسيله لتعلم البرمجه لأنها أفضل طريقة للتعلم السؤال والمحاوله ولا تعتبر همك الآن هو عمل إكسبرت كامل
    إستمر في بناء الإكسبرت جزء جزء ولا يهم متى ستنتهي منه
    قم بإرفاق آخر نسخه للإكسبرت بعد كل تطوير تحاول عمله وأخبرنا بالجزء الذي لم تستطع حله وسوف نساعدك
    شكرا على النصيحة الغالية وسوف اخذ بها حالا واطبقها

  4. #79
    الصورة الرمزية ahmedessam58
    ahmedessam58 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jul 2008
    الإقامة
    مصر
    المشاركات
    493

    افتراضي رد:سؤال برمجى مهم جدا

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    نعم إستخدم الشروط لكن مع الكيجن والتنكن بدلا من الشروط الأخرى
    مثال
    كود PHP:
    Tenkan=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_TENKANSEN,shift); 
      
    Kijun=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_KIJUNSEN,shift); 
       
    Tenkan_previous=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_TENKANSEN,shift+1); 
      
    Kijun_previous=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_KIJUNSEN,shift+1); 
    if(
    Tenkan>Kijun&&Tenkan_previous<=Kijun_previous&&Kijun>Senkoub&&tenkan>Senkoua
    والبيع سيكون العكس

    وبالنسبه للخروج من الصفقه فسوف تحتاج لعمل دالة لإغلاق الصفقه البيع والشراء
    كود PHP:
    void CloseBuyOrders()
    {
      for (
    int cnt cnt OrdersTotal() ; cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
        {
          if (
    OrderType()==OP_BUY)
          {
            
    OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Bid,Digits),3);
          }
        }
      }
    }  

    void CloseSellOrders()
    {
     for (
    int cnt cnt OrdersTotal() ; cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
        {
          if (
    OrderType()==OP_SELL)
          {
           
    OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Ask,Digits),3);
          }
         }
        }

    ثم شروط الإغلاق تكون
    كود PHP:
    if(Close[1]<Tenkan)
       {
        
    CloseBuyOrders();
       } 
    والعكس في صفقات البيع
    عند التطبيق يظهر لى هذا السطر

    Function "CloseSellOrders" is not referenced and will be removed from exp-file

  5. #80
    الصورة الرمزية ahmedessam58
    ahmedessam58 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jul 2008
    الإقامة
    مصر
    المشاركات
    493

    افتراضي رد:سؤال برمجى مهم جدا

    اقتباس المشاركة الأصلية كتبت بواسطة ahmedessam58 مشاهدة المشاركة
    عند التطبيق يظهر لى هذا السطر

    Function "CloseSellOrders" is not referenced and will be removed from exp-file
    هذا هو كود الاكسبيرت
    كود PHP:
     //+------------------------------------------------------------------+
     //|                                                        Ambush    |
     //|                                   Copyright, created 20 july 2012|
     //|                                                                  |
     //|                                            Desined by Ahmed Essam|
     //|                                           [email protected] |
     //+------------------------------------------------------------------+
     
     #property copyright "Ambush"
     #property link      "[email protected]"

     
    extern int   MaxTrades 1;    // ---------------- 1 
     
    extern int   stoploss 50;       // ---------------- 2 
     
    extern int   takeprofit 50;      // ---------------- 3
     
    extern double TrailingStop =0;       // ---------------- 4
     
    extern bool  UseHourTrade false;        // ---------------- 5
     
    extern int   FromHourTrade 7;            // ---------------- 6
     
    extern int   ToHourTrade 17;          // ---------------- 7
     
    extern string  MM_Parameters "---------- Money Management";
     
    extern double  Lots 0.01;                                           
     
    extern bool  MM false,                  // ---------------- 8
                  
    AccountIsMicro true;
     
    extern int   Risk 10;                      // ---------------- 9
     
     
    int MagicNumber=148;                             // -------------------- 10
     
    extern int tenkansen=9
     
    extern int kijunsen=26
     
    extern int senkospan=52;
     
    extern int shift=0;
     
    extern int shift2=26;
     
    //+------------------------------------------------------------------+
     //| FUNCTION DEFINITIONS    deinitialization function                |
     //+------------------------------------------------------------------+

     
    void deinit() {
        
    Comment("");
      }

     
    int orderscnt(){
     
    int cnt=0;
       for(
    int i =0;i<OrdersTotal();i++){
         if(
    OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){
           if(
    OrderSymbol()==Symbol() && MagicNumber==OrderMagicNumber()){
             
    cnt++;
           }
         }
       }
        return(
    cnt);
      }

     
    //+------------------------------------------------------------------+
     //| FUNCTION DEFINITIONS   Start function                            |
     //+------------------------------------------------------------------+

     
    int start()
       {
           if (
    UseHourTrade){
            if(!(
    Hour()>=FromHourTrade&&Hour()<=ToHourTrade)){
               
    Comment("Non-Trading Hours!");
               return(
    0);
             }
           }
         
    double  Tenkan=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_TENKANSEN,shift); 
    double  Kijun=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_KIJUNSEN,shift); 
    double  Senkou=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_CHINKOUSPAN,1+kijunsen); 
    double  Senkoua=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_SENKOUSPANA,shift); 
    double  Senkouaplus=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_SENKOUSPANA,shift+27);
    double  Senkoub=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_SENKOUSPANB,shift); 
    double  Senkoubplus=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_SENKOUSPANB,shift+27);
    double  Ichimoku_B=iCustom(Symbol(),0,"Ichimoku Trend Magic Histogram with Alert",1,shift);
    double  Ichimoku_S=iCustom(Symbol(),0,"Ichimoku Trend Magic Histogram with Alert",0,shift);
      
       
          
    double sl,tp

        if(
    MMLots subLotSize();
        
              
    //-----------------buy&sell   ----------------
         
    if((Close[1]>Tenkan)&&(Close[1]>Kijun)&&(Close[1]>Senkoub)&&(Close[1]>Senkoua)&&(Ichimoku_B==3)&&(Senkou>Senkoubplus&&Senkou>Senkouaplus)){        // ------------------------ 22
           
    if(orderscnt()<MaxTrades){
             if(
    stoploss==0){sl=0;}else{sl=Ask-stoploss*Point;}
               if(
    takeprofit==0){tp=0;}else{tp=Ask+takeprofit*Point;}
                
    OrderSend(Symbol(),OP_BUY,Lots,Ask,2,sl,tp,"Ambush",MagicNumber,0,Blue);
                 
    PlaySound("Alert.wav");
              }
           }
       if(
    Close[1]<Tenkan)
       {
        
    CloseBuyOrders();
       } 
        if ((
    Close[1]<Tenkan)&&(Close[1]<Kijun)&&(Close[1]<Senkoua)&&(Close[1]<Senkoub)&&(Ichimoku_S==3)&&(Senkou<Senkoubplus&&Senkou<Senkouaplus)){       // ------------------------ 23
           
    if(orderscnt()<MaxTrades){
             if(
    stoploss==0){sl=0;}else{sl=Bid+stoploss*Point;}
               if(
    takeprofit==0){tp=0;}else{tp=Bid-takeprofit*Point;}
                
    OrderSend(Symbol(),OP_SELL,Lots,Bid,2,sl,tp,"Ambush",MagicNumber,0,Red); 
                 
    PlaySound("Alert.wav");
              }
           }
    if(
    Close[1]>Tenkan)
       {
        
    CloseBuyOrders();
       }   
            
     
    //+------------------------------------------------------------------+
     //| FUNCTION DEFINITIONS   TrailingStop                              |
     //+------------------------------------------------------------------+
        
        
    if(TrailingStop>0)  
            {                 
              if(
    Bid-OrderOpenPrice()>Point*TrailingStop)
               {
                if(
    OrderStopLoss()<Bid-Point*TrailingStop)
                  {
                   
    OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,
                   
    OrderTakeProfit(),0,Green);
                   return(
    0);
                }
              }
            }
        if(
    TrailingStop>0)  
            {                 
             if((
    OrderOpenPrice()-Ask)>(Point*TrailingStop))
               {
                if((
    OrderStopLoss()>(Ask+Point*TrailingStop)) || (OrderStopLoss()==0))
                  {
                   
    OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,
                   
    OrderTakeProfit(),0,Red);
                    return(
    0);
                 }
               }
            } 

         return(
    0);
       }
     
    void CloseBuyOrders()
    {
      for (
    int cnt cnt OrdersTotal() ; cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
        {
          if (
    OrderType()==OP_BUY)
          {
            
    OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Bid,Digits),3);
          }
        }
      }
    }  

    void CloseSellOrders()
    {
     for (
    int cnt cnt OrdersTotal() ; cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
        {
          if (
    OrderType()==OP_SELL)
          {
           
    OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Ask,Digits),3);
          }
         }
        }
    }
     
    //+------------------------------------------------------------------+
     //| FUNCTION DEFINITIONS   Money Managment                           |
     //+------------------------------------------------------------------+ 

     
    double subLotSize()
      {
          
    double lotMM MathCeil(AccountFreeMargin() *  Risk 1000) / 100
          
           if(
    AccountIsMicro==false)
           {
              if(
    lotMM 0.1)                  lotMM Lots;
              if((
    lotMM 0.5) && (lotMM 1)) lotMM 0.5;
              if(
    lotMM 1.0)                  lotMM MathCeil(lotMM);
              if(
    lotMM 100)                  lotMM 100;
           }
           else
           {
              if(
    lotMM 0.01)                 lotMM Lots;
              if(
    lotMM 1.0)                  lotMM MathCeil(lotMM);
              if(
    lotMM 100)                  lotMM 100;
           }
           
           return (
    lotMM);
      }

     
    //+---------------------------------------------------------------------------------+ 

  6. #81
    الصورة الرمزية ساهر الفوركس
    ساهر الفوركس غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jun 2012
    المشاركات
    210

    افتراضي

    السلام عليكم اخي احمد انت لم تستخدم الدالة CloseSellOrdersفي الاكسبريت لذا حذفها

  7. #82
    الصورة الرمزية ساهر الفوركس
    ساهر الفوركس غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jun 2012
    المشاركات
    210

    افتراضي رد:سؤال برمجى مهم جدا

    كود PHP:
         if((Close[1]>Tenkan)&&(Close[1]>Kijun)&&(Close[1]>Senkoub)&&(Close[1]>Senkoua)&&(Ichimoku_B==3)&&(Senkou>Senkoubplus&&Senkou>Senkouaplus)){        // ------------------------ 22
           
    if(orderscnt()<MaxTrades){
             if(
    stoploss==0){sl=0;}else{sl=Ask-stoploss*Point;}
               if(
    takeprofit==0){tp=0;}else{tp=Ask+takeprofit*Point;}
                
    OrderSend(Symbol(),OP_BUY,Lots,Ask,2,sl,tp,"Ambush",MagicNumber,0,Blue);
                 
    PlaySound("Alert.wav");
              }
           }
       if(
    Close[1]<Tenkan)
       {
        
    CloseBuyOrders();
       } 
        if ((
    Close[1]<Tenkan)&&(Close[1]<Kijun)&&(Close[1]<Senkoua)&&(Close[1]<Senkoub)&&(Ichimoku_S==3)&&(Senkou<Senkoubplus&&Senkou<Senkouaplus)){       // ------------------------ 23
           
    if(orderscnt()<MaxTrades){
             if(
    stoploss==0){sl=0;}else{sl=Bid+stoploss*Point;}
               if(
    takeprofit==0){tp=0;}else{tp=Bid-takeprofit*Point;}
                
    OrderSend(Symbol(),OP_SELL,Lots,Bid,2,sl,tp,"Ambush",MagicNumber,0,Red); 
                 
    PlaySound("Alert.wav");
              }
           }
    if(
    Close[1]>Tenkan)
       {
        
    CloseBuyOrders();
       } 
    الخطئ هنا

    انت استخدمت دالة اغلاق الشراء مرتين CloseBuyOrders

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

  8. #83
    الصورة الرمزية ahmedessam58
    ahmedessam58 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jul 2008
    الإقامة
    مصر
    المشاركات
    493

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة ساهر الفوركس مشاهدة المشاركة
    كود PHP:
         if((Close[1]>Tenkan)&&(Close[1]>Kijun)&&(Close[1]>Senkoub)&&(Close[1]>Senkoua)&&(Ichimoku_B==3)&&(Senkou>Senkoubplus&&Senkou>Senkouaplus)){        // ------------------------ 22
           
    if(orderscnt()<MaxTrades){
             if(
    stoploss==0){sl=0;}else{sl=Ask-stoploss*Point;}
               if(
    takeprofit==0){tp=0;}else{tp=Ask+takeprofit*Point;}
                
    OrderSend(Symbol(),OP_BUY,Lots,Ask,2,sl,tp,"Ambush",MagicNumber,0,Blue);
                 
    PlaySound("Alert.wav");
              }
           }
       if(
    Close[1]<Tenkan)
       {
        
    CloseBuyOrders();
       } 
        if ((
    Close[1]<Tenkan)&&(Close[1]<Kijun)&&(Close[1]<Senkoua)&&(Close[1]<Senkoub)&&(Ichimoku_S==3)&&(Senkou<Senkoubplus&&Senkou<Senkouaplus)){       // ------------------------ 23
           
    if(orderscnt()<MaxTrades){
             if(
    stoploss==0){sl=0;}else{sl=Bid+stoploss*Point;}
               if(
    takeprofit==0){tp=0;}else{tp=Bid-takeprofit*Point;}
                
    OrderSend(Symbol(),OP_SELL,Lots,Bid,2,sl,tp,"Ambush",MagicNumber,0,Red); 
                 
    PlaySound("Alert.wav");
              }
           }
    if(
    Close[1]>Tenkan)
       {
        
    CloseBuyOrders();
       } 
    الخطئ هنا

    انت استخدمت دالة اغلاق الشراء مرتين CloseBuyOrders

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

  9. #84
    الصورة الرمزية ساهر الفوركس
    ساهر الفوركس غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jun 2012
    المشاركات
    210

    افتراضي

    دقيقة احاول فهم ما قلت برمجيا

  10. #85
    الصورة الرمزية ahmedessam58
    ahmedessam58 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jul 2008
    الإقامة
    مصر
    المشاركات
    493

    افتراضي

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

  11. #86
    الصورة الرمزية ساهر الفوركس
    ساهر الفوركس غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jun 2012
    المشاركات
    210

    افتراضي

    يعني في حالة sell الشرط اغلاق الشمعة فوق التنكن

    وفي حالة buy الشرط اغلاق الشمعة تحت التنكن

  12. #87
    الصورة الرمزية ahmedessam58
    ahmedessam58 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jul 2008
    الإقامة
    مصر
    المشاركات
    493

    افتراضي

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

    وفي حالة buy الشرط اغلاق الشمعة تحت التنكن
    اى نعم

  13. #88
    الصورة الرمزية ساهر الفوركس
    ساهر الفوركس غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jun 2012
    المشاركات
    210

    افتراضي رد:سؤال برمجى مهم جدا

    بسيطة خطئ صغير جدا انا صلحته

    كود PHP:
    //+------------------------------------------------------------------+
     //|                                                        Ambush    |
     //|                                   Copyright, created 20 july 2012|
     //|                                                                  |
     //|                                            Desined by Ahmed Essam|
     //|                                           [email protected] |
     //+------------------------------------------------------------------+
     
     #property copyright "Ambush"
     #property link      "[email protected]"

     
    extern int   MaxTrades 1;    // ---------------- 1 
     
    extern int   stoploss 50;       // ---------------- 2 
     
    extern int   takeprofit 50;      // ---------------- 3
     
    extern double TrailingStop =0;       // ---------------- 4
     
    extern bool  UseHourTrade false;        // ---------------- 5
     
    extern int   FromHourTrade 7;            // ---------------- 6
     
    extern int   ToHourTrade 17;          // ---------------- 7
     
    extern string  MM_Parameters "---------- Money Management";
     
    extern double  Lots 0.01;                                           
     
    extern bool  MM false,                  // ---------------- 8
                  
    AccountIsMicro true;
     
    extern int   Risk 10;                      // ---------------- 9
     
     
    int MagicNumber=148;                             // -------------------- 10
     
    extern int tenkansen=9
     
    extern int kijunsen=26
     
    extern int senkospan=52;
     
    extern int shift=0;
     
    extern int shift2=26;
     
    //+------------------------------------------------------------------+
     //| FUNCTION DEFINITIONS    deinitialization function                |
     //+------------------------------------------------------------------+

     
    void deinit() {
        
    Comment("");
      }

     
    int orderscnt(){
     
    int cnt=0;
       for(
    int i =0;i<OrdersTotal();i++){
         if(
    OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){
           if(
    OrderSymbol()==Symbol() && MagicNumber==OrderMagicNumber()){
             
    cnt++;
           }
         }
       }
        return(
    cnt);
      }

     
    //+------------------------------------------------------------------+
     //| FUNCTION DEFINITIONS   Start function                            |
     //+------------------------------------------------------------------+

     
    int start()
       {
           if (
    UseHourTrade){
            if(!(
    Hour()>=FromHourTrade&&Hour()<=ToHourTrade)){
               
    Comment("Non-Trading Hours!");
               return(
    0);
             }
           }
         
    double  Tenkan=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_TENKANSEN,shift); 
    double  Kijun=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_KIJUNSEN,shift); 
    double  Senkou=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_CHINKOUSPAN,1+kijunsen); 
    double  Senkoua=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_SENKOUSPANA,shift); 
    double  Senkouaplus=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_SENKOUSPANA,shift+27);
    double  Senkoub=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_SENKOUSPANB,shift); 
    double  Senkoubplus=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_SENKOUSPANB,shift+27);
    double  Ichimoku_B=iCustom(Symbol(),0,"Ichimoku Trend Magic Histogram with Alert",1,shift);
    double  Ichimoku_S=iCustom(Symbol(),0,"Ichimoku Trend Magic Histogram with Alert",0,shift);
      
       
          
    double sl,tp

        if(
    MMLots subLotSize();
        
              
    //-----------------buy&sell   ----------------
         
    if((Close[1]>Tenkan)&&(Close[1]>Kijun)&&(Close[1]>Senkoub)&&(Close[1]>Senkoua)&&(Ichimoku_B==3)&&(Senkou>Senkoubplus&&Senkou>Senkouaplus)){        // ------------------------ 22
           
    if(orderscnt()<MaxTrades){
             if(
    stoploss==0){sl=0;}else{sl=Ask-stoploss*Point;}
               if(
    takeprofit==0){tp=0;}else{tp=Ask+takeprofit*Point;}
                
    OrderSend(Symbol(),OP_BUY,Lots,Ask,2,sl,tp,"Ambush",MagicNumber,0,Blue);
                 
    PlaySound("Alert.wav");
              }
           }
       if(
    Close[1]<Tenkan)
       {
        
    CloseBuyOrders();
       } 
        if ((
    Close[1]<Tenkan)&&(Close[1]<Kijun)&&(Close[1]<Senkoua)&&(Close[1]<Senkoub)&&(Ichimoku_S==3)&&(Senkou<Senkoubplus&&Senkou<Senkouaplus)){       // ------------------------ 23
           
    if(orderscnt()<MaxTrades){
             if(
    stoploss==0){sl=0;}else{sl=Bid+stoploss*Point;}
               if(
    takeprofit==0){tp=0;}else{tp=Bid-takeprofit*Point;}
                
    OrderSend(Symbol(),OP_SELL,Lots,Bid,2,sl,tp,"Ambush",MagicNumber,0,Red); 
                 
    PlaySound("Alert.wav");
              }
           }
    if(
    Close[1]>Tenkan)
       {
        
    CloseSellOrders();
       }   
            
     
    //+------------------------------------------------------------------+
     //| FUNCTION DEFINITIONS   TrailingStop                              |
     //+------------------------------------------------------------------+
        
        
    if(TrailingStop>0)  
            {                 
              if(
    Bid-OrderOpenPrice()>Point*TrailingStop)
               {
                if(
    OrderStopLoss()<Bid-Point*TrailingStop)
                  {
                   
    OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,
                   
    OrderTakeProfit(),0,Green);
                   return(
    0);
                }
              }
            }
        if(
    TrailingStop>0)  
            {                 
             if((
    OrderOpenPrice()-Ask)>(Point*TrailingStop))
               {
                if((
    OrderStopLoss()>(Ask+Point*TrailingStop)) || (OrderStopLoss()==0))
                  {
                   
    OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,
                   
    OrderTakeProfit(),0,Red);
                    return(
    0);
                 }
               }
            } 

         return(
    0);
       }
     
    void CloseBuyOrders()
    {
      for (
    int cnt cnt OrdersTotal() ; cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
        {
          if (
    OrderType()==OP_BUY)
          {
            
    OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Bid,Digits),3);
          }
        }
      }
    }  

    void CloseSellOrders()
    {
     for (
    int cnt cnt OrdersTotal() ; cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
        {
          if (
    OrderType()==OP_SELL)
          {
           
    OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Ask,Digits),3);
          }
         }
        }
    }
     
    //+------------------------------------------------------------------+
     //| FUNCTION DEFINITIONS   Money Managment                           |
     //+------------------------------------------------------------------+ 

     
    double subLotSize()
      {
          
    double lotMM MathCeil(AccountFreeMargin() *  Risk 1000) / 100
          
           if(
    AccountIsMicro==false)
           {
              if(
    lotMM 0.1)                  lotMM Lots;
              if((
    lotMM 0.5) && (lotMM 1)) lotMM 0.5;
              if(
    lotMM 1.0)                  lotMM MathCeil(lotMM);
              if(
    lotMM 100)                  lotMM 100;
           }
           else
           {
              if(
    lotMM 0.01)                 lotMM Lots;
              if(
    lotMM 1.0)                  lotMM MathCeil(lotMM);
              if(
    lotMM 100)                  lotMM 100;
           }
           
           return (
    lotMM);
      }

     
    //+---------------------------------------------------------------------------------+ 

  14. #89
    الصورة الرمزية ahmedessam58
    ahmedessam58 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jul 2008
    الإقامة
    مصر
    المشاركات
    493

    افتراضي

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

    كود PHP:
    //+------------------------------------------------------------------+
     //|                                                        Ambush    |
     //|                                   Copyright, created 20 july 2012|
     //|                                                                  |
     //|                                            Desined by Ahmed Essam|
     //|                                           [email protected] |
     //+------------------------------------------------------------------+
     
     #property copyright "Ambush"
     #property link      "[email protected]"

     
    extern int   MaxTrades 1;    // ---------------- 1 
     
    extern int   stoploss 50;       // ---------------- 2 
     
    extern int   takeprofit 50;      // ---------------- 3
     
    extern double TrailingStop =0;       // ---------------- 4
     
    extern bool  UseHourTrade false;        // ---------------- 5
     
    extern int   FromHourTrade 7;            // ---------------- 6
     
    extern int   ToHourTrade 17;          // ---------------- 7
     
    extern string  MM_Parameters "---------- Money Management";
     
    extern double  Lots 0.01;                                           
     
    extern bool  MM false,                  // ---------------- 8
                  
    AccountIsMicro true;
     
    extern int   Risk 10;                      // ---------------- 9
     
     
    int MagicNumber=148;                             // -------------------- 10
     
    extern int tenkansen=9
     
    extern int kijunsen=26
     
    extern int senkospan=52;
     
    extern int shift=0;
     
    extern int shift2=26;
     
    //+------------------------------------------------------------------+
     //| FUNCTION DEFINITIONS    deinitialization function                |
     //+------------------------------------------------------------------+

     
    void deinit() {
        
    Comment("");
      }

     
    int orderscnt(){
     
    int cnt=0;
       for(
    int i =0;i<OrdersTotal();i++){
         if(
    OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){
           if(
    OrderSymbol()==Symbol() && MagicNumber==OrderMagicNumber()){
             
    cnt++;
           }
         }
       }
        return(
    cnt);
      }

     
    //+------------------------------------------------------------------+
     //| FUNCTION DEFINITIONS   Start function                            |
     //+------------------------------------------------------------------+

     
    int start()
       {
           if (
    UseHourTrade){
            if(!(
    Hour()>=FromHourTrade&&Hour()<=ToHourTrade)){
               
    Comment("Non-Trading Hours!");
               return(
    0);
             }
           }
         
    double  Tenkan=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_TENKANSEN,shift); 
    double  Kijun=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_KIJUNSEN,shift); 
    double  Senkou=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_CHINKOUSPAN,1+kijunsen); 
    double  Senkoua=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_SENKOUSPANA,shift); 
    double  Senkouaplus=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_SENKOUSPANA,shift+27);
    double  Senkoub=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_SENKOUSPANB,shift); 
    double  Senkoubplus=iIchimoku(NULL,0,tenkansen,kijunsen,senkospan,MODE_SENKOUSPANB,shift+27);
    double  Ichimoku_B=iCustom(Symbol(),0,"Ichimoku Trend Magic Histogram with Alert",1,shift);
    double  Ichimoku_S=iCustom(Symbol(),0,"Ichimoku Trend Magic Histogram with Alert",0,shift);
      
       
          
    double sl,tp

        if(
    MMLots subLotSize();
        
              
    //-----------------buy&sell   ----------------
         
    if((Close[1]>Tenkan)&&(Close[1]>Kijun)&&(Close[1]>Senkoub)&&(Close[1]>Senkoua)&&(Ichimoku_B==3)&&(Senkou>Senkoubplus&&Senkou>Senkouaplus)){        // ------------------------ 22
           
    if(orderscnt()<MaxTrades){
             if(
    stoploss==0){sl=0;}else{sl=Ask-stoploss*Point;}
               if(
    takeprofit==0){tp=0;}else{tp=Ask+takeprofit*Point;}
                
    OrderSend(Symbol(),OP_BUY,Lots,Ask,2,sl,tp,"Ambush",MagicNumber,0,Blue);
                 
    PlaySound("Alert.wav");
              }
           }
       if(
    Close[1]<Tenkan)
       {
        
    CloseBuyOrders();
       } 
        if ((
    Close[1]<Tenkan)&&(Close[1]<Kijun)&&(Close[1]<Senkoua)&&(Close[1]<Senkoub)&&(Ichimoku_S==3)&&(Senkou<Senkoubplus&&Senkou<Senkouaplus)){       // ------------------------ 23
           
    if(orderscnt()<MaxTrades){
             if(
    stoploss==0){sl=0;}else{sl=Bid+stoploss*Point;}
               if(
    takeprofit==0){tp=0;}else{tp=Bid-takeprofit*Point;}
                
    OrderSend(Symbol(),OP_SELL,Lots,Bid,2,sl,tp,"Ambush",MagicNumber,0,Red); 
                 
    PlaySound("Alert.wav");
              }
           }
    if(
    Close[1]>Tenkan)
       {
        
    CloseSellOrders();
       }   
            
     
    //+------------------------------------------------------------------+
     //| FUNCTION DEFINITIONS   TrailingStop                              |
     //+------------------------------------------------------------------+
        
        
    if(TrailingStop>0)  
            {                 
              if(
    Bid-OrderOpenPrice()>Point*TrailingStop)
               {
                if(
    OrderStopLoss()<Bid-Point*TrailingStop)
                  {
                   
    OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,
                   
    OrderTakeProfit(),0,Green);
                   return(
    0);
                }
              }
            }
        if(
    TrailingStop>0)  
            {                 
             if((
    OrderOpenPrice()-Ask)>(Point*TrailingStop))
               {
                if((
    OrderStopLoss()>(Ask+Point*TrailingStop)) || (OrderStopLoss()==0))
                  {
                   
    OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,
                   
    OrderTakeProfit(),0,Red);
                    return(
    0);
                 }
               }
            } 

         return(
    0);
       }
     
    void CloseBuyOrders()
    {
      for (
    int cnt cnt OrdersTotal() ; cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
        {
          if (
    OrderType()==OP_BUY)
          {
            
    OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Bid,Digits),3);
          }
        }
      }
    }  

    void CloseSellOrders()
    {
     for (
    int cnt cnt OrdersTotal() ; cnt++)
      {
        
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
        if (
    OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
        {
          if (
    OrderType()==OP_SELL)
          {
           
    OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Ask,Digits),3);
          }
         }
        }
    }
     
    //+------------------------------------------------------------------+
     //| FUNCTION DEFINITIONS   Money Managment                           |
     //+------------------------------------------------------------------+ 

     
    double subLotSize()
      {
          
    double lotMM MathCeil(AccountFreeMargin() *  Risk 1000) / 100
          
           if(
    AccountIsMicro==false)
           {
              if(
    lotMM 0.1)                  lotMM Lots;
              if((
    lotMM 0.5) && (lotMM 1)) lotMM 0.5;
              if(
    lotMM 1.0)                  lotMM MathCeil(lotMM);
              if(
    lotMM 100)                  lotMM 100;
           }
           else
           {
              if(
    lotMM 0.01)                 lotMM Lots;
              if(
    lotMM 1.0)                  lotMM MathCeil(lotMM);
              if(
    lotMM 100)                  lotMM 100;
           }
           
           return (
    lotMM);
      }

     
    //+---------------------------------------------------------------------------------+ 
    الخطأ كان ايه علشان اعرف؟

  15. #90
    الصورة الرمزية ahmedessam58
    ahmedessam58 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jul 2008
    الإقامة
    مصر
    المشاركات
    493

    افتراضي

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

صفحة 6 من 8 الأولىالأولى 12345678 الأخيرةالأخيرة

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