صفحة 236 من 689 الأولىالأولى ... 136186226230231232233234235236237238239240241242246286336 ... الأخيرةالأخيرة
النتائج 3,526 إلى 3,540 من 10335
  1. #3526
    الصورة الرمزية kira-h
    kira-h غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Oct 2011
    الإقامة
    المغرب
    المشاركات
    1,334

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

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


    السلام عليكم ورحمة الله وبركاته
    ويوفقنا جميعا اللهم آمين


    أستاذي الكريم
    كيف يمكن برمجة المضاعفات بغرض التعويض فقط؟

    مثال
    لنفترض الستوب لوس التابث 20 نقطة والهدف في أول صفقة 20 نقطة

    أول صفقة بلوت 0.1 بهدف 20 نقطة عادي
    المضاعفة الأولى بلوت 0.2 بهدف 10 نقطة
    المضاعفة التانية بلوت 0.4 بهدف 15 نقطة
    المضاعفة الثالثة بلوت 0.8 بهدف 17.5 نقطة
    المضاعفة الرابعة بلوت 1.6 بهدف 18.8 نقطة
    المضاعفة الخامسة بلوت 3.2 بهدف 19.4 نقطة
    وهكذا ...

    لأنه كلما قل الهدف (ولو جزء من النقطة) كلما زادت نسبة احتمال الربح وقلت عدد المضاعفات
    أي التعويض السريع والخروج من دوامة المضاعفات بسرعة
    هل يوجد مثل هذا الكود ؟!!
    إذا يوجد فما هو التعديل المطلوب بكود المضاعفات العادية بطريقة برنامج Forex EA Generator 4
    كود:
    double CurrentLots = 1;
    bool FirstLotsMgm = true;
    datetime BarTime = 0;
    int Count82 = 0;
    
    int init()
    {
    Sleep(30000);
        NDigits = Digits;
        
        if (false) ObjectsDeleteAll();      // clear the chart
        
        CurrentLots = Lots;
            
        
        Comment("");    // clear the chart
    }
    كود:
    {
        double profit = 0;
        int cnt = OrdersHistoryTotal();
        for (int i=cnt-1; i >= 0; i--)
        {
            if (!OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) continue;
            if ((OrderType() == OP_BUY || OrderType() == OP_SELL) && OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNo)
            {
                profit = OrderProfit();
                CurrentLots = OrderLots();     // take lots from the last order
                break;
            }
        } 
        
        if (profit > 0)     // had profit
        {
            CurrentLots = CurrentLots * LotsMpOnProfit + 0;
            if (LotsResetOnProfit)
            CurrentLots = Lots;
        }
        else if (profit < 0)    // had loss
        {
            CurrentLots = CurrentLots * LotsMpOnLoss + 0;
            if (LotsResetOnLoss) CurrentLots = Lots;
        }
        if (CurrentLots > MaxLots)
        {
            CurrentLots = Lots;
        }
        double lotvalue = CurrentLots;
        
        if (lotvalue < MarketInfo(Symbol(), MODE_MINLOT))    // make sure lot is not smaller than allowed value
        {
            lotvalue = MarketInfo(Symbol(), MODE_MINLOT);
        }
        if (lotvalue > MarketInfo(Symbol(), MODE_MAXLOT))    // make sure lot is not greater than allowed value
        {
            lotvalue = MarketInfo(Symbol(), MODE_MAXLOT);
        }


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

    أعتقد المعادلة ستكون كالتالي
    (مجموع آخر الخسائر بالهيستوري) مقسوم على (لوت المضاعفة الجديدة مضروب في 100) :
    هل المعادلة صحيحة؟ ولكن كيف سنربط الهدف بالمعادلة لابد من تواجده لأنه متغير خارجي !!!!

    التعديل سيكون فقط في الجزء من الكود التالي

    كود:
        double TP = price - Takeprofit*lotvaluePipValue*Point;
        if (Takeprofit == 0) TP = 0;


    آخر تعديل بواسطة kira-h ، 26-03-2013 الساعة 01:04 AM
    توقيع العضو
    متداول فوركس، ومبرمج mql

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

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

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


    السلام عليكم ورحمة الله وبركاته
    ويوفقنا جميعا اللهم آمين


    أستاذي الكريم
    كيف يمكن برمجة المضاعفات بغرض التعويض فقط؟

    مثال
    لنفترض الستوب لوس التابث 20 نقطة والهدف في أول صفقة 20 نقطة

    أول صفقة بلوت 0.1 بهدف 20 نقطة عادي
    المضاعفة الأولى بلوت 0.2 بهدف 10 نقطة
    المضاعفة التانية بلوت 0.4 بهدف 15 نقطة
    المضاعفة الثالثة بلوت 0.8 بهدف 17.5 نقطة
    المضاعفة الرابعة بلوت 1.6 بهدف 18.8 نقطة
    المضاعفة الخامسة بلوت 3.2 بهدف 19.4 نقطة
    وهكذا ...

    لأنه كلما قل الهدف (ولو جزء من النقطة) كلما زادت نسبة احتمال الربح وقلت عدد المضاعفات
    أي التعويض السريع والخروج من دوامة المضاعفات بسرعة
    هل يوجد مثل هذا الكود ؟!!
    إذا يوجد فما هو التعديل المطلوب بكود المضاعفات العادية بطريقة برنامج Forex EA Generator 4
    كود:
    double CurrentLots = 1;
    bool FirstLotsMgm = true;
    datetime BarTime = 0;
    int Count82 = 0;
    
    int init()
    {
    Sleep(30000);
        NDigits = Digits;
        
        if (false) ObjectsDeleteAll();      // clear the chart
        
        CurrentLots = Lots;
            
        
        Comment("");    // clear the chart
    }
    كود:
    {
        double profit = 0;
        int cnt = OrdersHistoryTotal();
        for (int i=cnt-1; i >= 0; i--)
        {
            if (!OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) continue;
            if ((OrderType() == OP_BUY || OrderType() == OP_SELL) && OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNo)
            {
                profit = OrderProfit();
                CurrentLots = OrderLots();     // take lots from the last order
                break;
            }
        } 
        
        if (profit > 0)     // had profit
        {
            CurrentLots = CurrentLots * LotsMpOnProfit + 0;
            if (LotsResetOnProfit)
            CurrentLots = Lots;
        }
        else if (profit < 0)    // had loss
        {
            CurrentLots = CurrentLots * LotsMpOnLoss + 0;
            if (LotsResetOnLoss) CurrentLots = Lots;
        }
        if (CurrentLots > MaxLots)
        {
            CurrentLots = Lots;
        }
        double lotvalue = CurrentLots;
        
        if (lotvalue < MarketInfo(Symbol(), MODE_MINLOT))    // make sure lot is not smaller than allowed value
        {
            lotvalue = MarketInfo(Symbol(), MODE_MINLOT);
        }
        if (lotvalue > MarketInfo(Symbol(), MODE_MAXLOT))    // make sure lot is not greater than allowed value
        {
            lotvalue = MarketInfo(Symbol(), MODE_MAXLOT);
        }


    واعذرني على كثرة طلباتي مليش غير ربنا ثم أنت والحمد لله
    وعليكم السلام ورحمة الله وبركاته
    في هذه الفكره أنت ستحتاج إلى تعديل الجزء الخاص بالهدف وليس المضاعفات لأن المضاعفات كما هي
    كفكرة جيده يمكنك عمل دالة لمعرفة الخسارة من الصفقات السابقه وتحديد ربح الصفقه التاليه بحيث عندما يصبح الربح = الخساره السابقه يتم إغلاق الصفقه
    مثال
    كود PHP:
     double LastLoss()
        {
         
    double profit;
         for(
    int i=OrdersHistoryTotal()-1;i>=0;i--)
          {
           
    OrderSelect(i,SELECT_BY_POS,MODE_HISTORY);
           if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNo)
            {
             if(
    OrderProfit()<0)profit+=OrderProfit();
             else return(
    profit);
            }
          }
         return(
    profit);
        } 
    ودالة لحساب الربح الحالي
    كود PHP:
     double CurrentProfit()
        {
         
    double profit;
         for(
    int i=OrdersTotal()-1;i>=0;i--)
          {
           
    OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
           if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNo)
            {
             
    profit=OrderProfit();
             return(
    profit);
            }
          }
         return(
    profit);
        } 
    ثم ستكون شروط الإغلاق
    كود PHP:
     if(CurrentProfit()>=LastLoss())
         {
          
    // close orders 
         

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

  3. #3528
    الصورة الرمزية kira-h
    kira-h غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Oct 2011
    الإقامة
    المغرب
    المشاركات
    1,334

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

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    وعليكم السلام ورحمة الله وبركاته
    في هذه الفكره أنت ستحتاج إلى تعديل الجزء الخاص بالهدف وليس المضاعفات لأن المضاعفات كما هي
    كفكرة جيده يمكنك عمل دالة لمعرفة الخسارة من الصفقات السابقه وتحديد ربح الصفقه التاليه بحيث عندما يصبح الربح = الخساره السابقه يتم إغلاق الصفقه
    مثال
    كود PHP:
     double LastLoss()
        {
         
    double profit;
         for(
    int i=OrdersHistoryTotal()-1;i>=0;i--)
          {
           
    OrderSelect(i,SELECT_BY_POS,MODE_HISTORY);
           if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNo)
            {
             if(
    OrderProfit()<0)profit+=OrderProfit();
             else return(
    profit);
            }
          }
         return(
    profit);
        } 
    ودالة لحساب الربح الحالي
    كود PHP:
     double CurrentProfit()
        {
         
    double profit;
         for(
    int i=OrdersTotal()-1;i>=0;i--)
          {
           
    OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
           if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNo)
            {
             
    profit=OrderProfit();
             return(
    profit);
            }
          }
         return(
    profit);
        } 
    ثم ستكون شروط الإغلاق
    كود PHP:
     if(CurrentProfit()>=LastLoss())
         {
          
    // close orders 
         

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

    قمت بالتعديل ولا يوجد أخطاء عند عمل الكمبايل

    قمت بالتعريف التالي

    كود PHP:
    void OnEveryTick()
    {
        if (
    CurrentProfit()>=LastLoss())
        
    CheckLossProfit();   

    ثم الكود المطلوب

    كود PHP:
    double LastLoss()
        {
         
    double profit;
         for(
    int i=OrdersHistoryTotal()-1;i>=0;i--)
          {
           
    OrderSelect(i,SELECT_BY_POS,MODE_HISTORY);
           if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNo)
            {
             if(
    OrderProfit()<0)profit+=OrderProfit();
             else return(
    profit);
            }
          }
         return(
    profit);
        }  
        
     
    double CurrentProfit()
        {
         
    double profit;
         for(
    int i=OrdersTotal()-1;i>=0;i--)
          {
           
    OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
           if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNo)
            {
             
    profit=OrderProfit();
             return(
    profit);
            }
          }
         return(
    profit);
        }
        
    void CheckLossProfit()    
    {
         if(
    CurrentProfit()>=LastLoss())
         {
          
    CloseOrder(); 
         }  

    ثم دالة الاغلاق
    كود PHP:

    void CloseOrder
    ()
    {
        
    int orderstotal OrdersTotal();
        
    int orders 0;
        
    int ordticket[30][2];
        for (
    int i 0orderstotali++)
        {
            
    OrderSelect(iSELECT_BY_POSMODE_TRADES);
            if (
    OrderSymbol() != Symbol())
            {
                continue;
            }
            
    ordticket[orders][0] = OrderOpenTime();
            
    ordticket[orders][1] = OrderTicket();
            
    orders++;
        }
        if (
    orders 1)
        {
            
    ArrayResize(ordticket,orders);
            
    ArraySort(ordticket);
        }
        for (
    0ordersi++)
        {
            if (
    OrderSelect(ordticket[i][1], SELECT_BY_TICKET) == true)
            {
                
    bool ret OrderClose(OrderTicket(), OrderLots(), OrderClosePrice(), SlippageMagicNo);
                if (
    ret == false)
                Print(
    "OrderClose() error - "ErrorDescription(GetLastError()));
            }
        }
        

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


    شكرا لك
    وجزاك الله كل خير ونفع بك الاسلام والمسلمين
    خالص شكري وتقديري لشخصكم الكريم

    آخر تعديل بواسطة kira-h ، 26-03-2013 الساعة 03:42 PM
    توقيع العضو
    متداول فوركس، ومبرمج mql

  4. #3529
    الصورة الرمزية poles2008
    poles2008 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jun 2011
    المشاركات
    51

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    وعليكم السلام
    مثلا أريد فتح صفقة عندما يتحرك السعر صعودا 10 نقاط في خلال 5 ثواني والعكس في حالة البيع
    مثال
    كود PHP:
    static double LastPrice=Bid;
    static 
    datetime FirstTime;
    if(
    Bid>LastPrice)
     {
      if(
    Up==0)FirstTime=TimeCurrent();
      
    LastPrice=Bid;
      
    Up++;
      
    Dn=0;
     }
    if(
    Bid<LastPrice)
     {
      if(
    Dn==0)FirstTime=TimeCurrent();
      
    LastPrice=Bid;
      
    Dn++;
      
    Up=0;
     }
     
     if(
    Up>=10&&TimeCurrent()-FirstTime<=5)
      {
       
    // buy signal
      
    }
     if(
    Dn>=10&&TimeCurrent()-FirstTime<=5)
      {
       
    //sell signal
      

    شكرا لك مستر دولار ولردك

  5. #3530
    الصورة الرمزية kira-h
    kira-h غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Oct 2011
    الإقامة
    المغرب
    المشاركات
    1,334

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة kira-h مشاهدة المشاركة
    بارك الله فيك أستاذي الكريم شكرا جزيلا

    قمت بالتعديل ولا يوجد أخطاء عند عمل الكمبايل

    قمت بالتعريف التالي

    كود PHP:
    void OnEveryTick()
    {
        if (
    CurrentProfit()>=LastLoss())
        
    CheckLossProfit();   

    ثم الكود المطلوب

    كود PHP:
    double LastLoss()
        {
         
    double profit;
         for(
    int i=OrdersHistoryTotal()-1;i>=0;i--)
          {
           
    OrderSelect(i,SELECT_BY_POS,MODE_HISTORY);
           if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNo)
            {
             if(
    OrderProfit()<0)profit+=OrderProfit();
             else return(
    profit);
            }
          }
         return(
    profit);
        }  
        
     
    double CurrentProfit()
        {
         
    double profit;
         for(
    int i=OrdersTotal()-1;i>=0;i--)
          {
           
    OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
           if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNo)
            {
             
    profit=OrderProfit();
             return(
    profit);
            }
          }
         return(
    profit);
        }
        
    void CheckLossProfit()    
    {
         if(
    CurrentProfit()>=LastLoss())
         {
          
    CloseOrder(); 
         }  

    ثم دالة الاغلاق
    كود PHP:

    void CloseOrder
    ()
    {
        
    int orderstotal OrdersTotal();
        
    int orders 0;
        
    int ordticket[30][2];
        for (
    int i 0orderstotali++)
        {
            
    OrderSelect(iSELECT_BY_POSMODE_TRADES);
            if (
    OrderSymbol() != Symbol())
            {
                continue;
            }
            
    ordticket[orders][0] = OrderOpenTime();
            
    ordticket[orders][1] = OrderTicket();
            
    orders++;
        }
        if (
    orders 1)
        {
            
    ArrayResize(ordticket,orders);
            
    ArraySort(ordticket);
        }
        for (
    0ordersi++)
        {
            if (
    OrderSelect(ordticket[i][1], SELECT_BY_TICKET) == true)
            {
                
    bool ret OrderClose(OrderTicket(), OrderLots(), OrderClosePrice(), SlippageMagicNo);
                if (
    ret == false)
                Print(
    "OrderClose() error - "ErrorDescription(GetLastError()));
            }
        }
        

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


    شكرا لك
    وجزاك الله كل خير ونفع بك الاسلام والمسلمين
    خالص شكري وتقديري لشخصكم الكريم

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

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

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة kira-h مشاهدة المشاركة
    بارك الله فيك أستاذي الكريم شكرا جزيلا

    قمت بالتعديل ولا يوجد أخطاء عند عمل الكمبايل

    قمت بالتعريف التالي

    كود PHP:
    void OnEveryTick()
    {
        if (
    CurrentProfit()>=LastLoss())
        
    CheckLossProfit();   

    ثم الكود المطلوب

    كود PHP:
    double LastLoss()
        {
         
    double profit;
         for(
    int i=OrdersHistoryTotal()-1;i>=0;i--)
          {
           
    OrderSelect(i,SELECT_BY_POS,MODE_HISTORY);
           if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNo)
            {
             if(
    OrderProfit()<0)profit+=OrderProfit();
             else return(
    profit);
            }
          }
         return(
    profit);
        }  
        
     
    double CurrentProfit()
        {
         
    double profit;
         for(
    int i=OrdersTotal()-1;i>=0;i--)
          {
           
    OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
           if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNo)
            {
             
    profit=OrderProfit();
             return(
    profit);
            }
          }
         return(
    profit);
        }
        
    void CheckLossProfit()    
    {
         if(
    CurrentProfit()>=LastLoss())
         {
          
    CloseOrder(); 
         }  

    ثم دالة الاغلاق
    كود PHP:

    void CloseOrder
    ()
    {
        
    int orderstotal OrdersTotal();
        
    int orders 0;
        
    int ordticket[30][2];
        for (
    int i 0orderstotali++)
        {
            
    OrderSelect(iSELECT_BY_POSMODE_TRADES);
            if (
    OrderSymbol() != Symbol())
            {
                continue;
            }
            
    ordticket[orders][0] = OrderOpenTime();
            
    ordticket[orders][1] = OrderTicket();
            
    orders++;
        }
        if (
    orders 1)
        {
            
    ArrayResize(ordticket,orders);
            
    ArraySort(ordticket);
        }
        for (
    0ordersi++)
        {
            if (
    OrderSelect(ordticket[i][1], SELECT_BY_TICKET) == true)
            {
                
    bool ret OrderClose(OrderTicket(), OrderLots(), OrderClosePrice(), SlippageMagicNo);
                if (
    ret == false)
                Print(
    "OrderClose() error - "ErrorDescription(GetLastError()));
            }
        }
        

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


    شكرا لك
    وجزاك الله كل خير ونفع بك الاسلام والمسلمين
    خالص شكري وتقديري لشخصكم الكريم

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

  7. #3532
    الصورة الرمزية ali1984
    ali1984 غير متواجد حالياً موقوف
    تاريخ التسجيل
    Feb 2013
    الإقامة
    فرنسا
    المشاركات
    287

    افتراضي

    مستر دولار السلام علكيم ورحمة الله وبركاته
    كيف يمكن كتابة : ادا الصفقه الماضيه OrderClose ضربت ستوب او الهذف,!

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

  8. #3533
    الصورة الرمزية kira-h
    kira-h غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Oct 2011
    الإقامة
    المغرب
    المشاركات
    1,334

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

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

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

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

    اقتباس المشاركة الأصلية كتبت بواسطة ali1984 مشاهدة المشاركة
    مستر دولار السلام علكيم ورحمة الله وبركاته
    كيف يمكن كتابة : ادا الصفقه الماضيه OrderClose ضربت ستوب او الهذف,!

    جزاك الله خيرا
    يمكنك عمل دالة لمعرفة آخر صفقة هل ضربت الهدف أو الأستوب
    كود PHP:
     bool LastOrderClosed()
      {
       for(
    int i=OrdersHistoryTotal()-1;i>=0;i--)
        {
         
    OrderSelect(i,SELECT_BY_POS,MODE_HISTORY);
         
    double tp=OrderTakeProfit();double closeprice=OrderClosePrice();double sl=OrderStopLoss();
         if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber)
          {
           if(
    NormalizeDouble(tp,Digits)==NormalizeDouble(closeprice,Digits))return(true);
           else return(
    false);
          }
        }
       return(
    true);
      } 
    هذه الداله ستعطي القيمة ترو إذا أغلقت على الهدف والعكس ستعطي فولس
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

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

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

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

  11. #3536
    الصورة الرمزية ali1984
    ali1984 غير متواجد حالياً موقوف
    تاريخ التسجيل
    Feb 2013
    الإقامة
    فرنسا
    المشاركات
    287

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    يمكنك عمل دالة لمعرفة آخر صفقة هل ضربت الهدف أو الأستوب
    كود PHP:
     bool LastOrderClosed()
      {
       for(
    int i=OrdersHistoryTotal()-1;i>=0;i--)
        {
         
    OrderSelect(i,SELECT_BY_POS,MODE_HISTORY);
         
    double tp=OrderTakeProfit();double closeprice=OrderClosePrice();double sl=OrderStopLoss();
         if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber)
          {
           if(
    NormalizeDouble(tp,Digits)==NormalizeDouble(closeprice,Digits))return(true);
           else return(
    false);
          }
        }
       return(
    true);
      } 
    هذه الداله ستعطي القيمة ترو إذا أغلقت على الهدف والعكس ستعطي فولس
    بارك الله فيك

  12. #3537
    الصورة الرمزية kira-h
    kira-h غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Oct 2011
    الإقامة
    المغرب
    المشاركات
    1,334

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

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    الخطأ لديك في أن الداله LastLoss ستعطي قيمة الخساره بالسالب فيجب أن تحولها إلى رقم موجب
    مرفق الإكسبرت بعد التعديل
    جاري التجربة وشكر لك أستاذي الكريـــــــــــــــــــــــــــم

    توقيع العضو
    متداول فوركس، ومبرمج mql

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

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة kira-h مشاهدة المشاركة
    جاري التجربة وشكر لك أستاذي الكريـــــــــــــــــــــــــــم

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

  14. #3539
    الصورة الرمزية سمير محمد ارمان
    سمير محمد ارمان غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Sep 2009
    الإقامة
    مصر
    المشاركات
    834

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

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

  15. #3540
    الصورة الرمزية Mustapoiha
    Mustapoiha غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Feb 2011
    الإقامة
    الجزائر
    المشاركات
    128

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

    السلام عليكم

    ممكن كود استدعاء لخطي الهاي و اللو لهدا المؤشر
    بعد فشلي في استدعائه

    وجزاكم الله كل الخير
    الملفات المرفقة الملفات المرفقة

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

  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