النتائج 1 إلى 14 من 14
  1. #1
    الصورة الرمزية exnard
    exnard غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jan 2012
    الإقامة
    المملكة العربية السعودية
    المشاركات
    58

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

    [COLOR="blue"]السلام عليكم و رحمة الله ،،

    ارجو من الاخوة المساعدة بتزويدي اكسبرت مبرمج سابقاً و قد حاولت جاهداً ايجاده و لكني لم انجح ..

    عمل الاكسبرت :
    عند وضع الاكسبرت على الشارت يقوم باخذ عقد شراء معلق فوق الشمعة الحالية بعدد من النقاط و عقد بيع معلق اسفل من الشمعة الحالية بعدد معين من النقاط

    على سبيل المثال :
    فتحت شارت اليورو دولار فريم الخمس دقائق ... مجرد تشغيل الاكسبرت يقوم بوضع عقد شراء معلق اعلى الهاي للشمعة الحالية بخمس نقاط و اسفل اللو للشمعة الحالية بخمس نقاط

  2. #2
    الصورة الرمزية exnard
    exnard غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jan 2012
    الإقامة
    المملكة العربية السعودية
    المشاركات
    58

    افتراضي

    ارجو المساعدة اخواني

  3. #3
    الصورة الرمزية exnard
    exnard غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jan 2012
    الإقامة
    المملكة العربية السعودية
    المشاركات
    58

    افتراضي

    up

  4. #4
    الصورة الرمزية exnard
    exnard غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jan 2012
    الإقامة
    المملكة العربية السعودية
    المشاركات
    58

    افتراضي

    اخواني المبرمجين ... هل من مساعدة ؟؟
    الطلب بسيط جداً
    ارجوكم لمن يملك الاكسبرت تزويدي به

  5. #5
    الصورة الرمزية exnard
    exnard غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jan 2012
    الإقامة
    المملكة العربية السعودية
    المشاركات
    58

    افتراضي

    up up

  6. #6
    الصورة الرمزية exnard
    exnard غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jan 2012
    الإقامة
    المملكة العربية السعودية
    المشاركات
    58

    افتراضي

    هل من مساعدة ؟؟ اني بحاجة ماسة للاكسبرت ... ارجو من الاخوة المبرمجين المساعدة ... اكسبرت بسيط جداً

  7. #7
    الصورة الرمزية المبرمج
    المبرمج غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    May 2012
    الإقامة
    الجزائر
    المشاركات
    274

    افتراضي

    اصبر على بعص الداقاءق ابرمجة لك
    حاليا انا في مقهى الانترنت لكن راح احمل برنامج

  8. #8
    الصورة الرمزية المبرمج
    المبرمج غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    May 2012
    الإقامة
    الجزائر
    المشاركات
    274

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

    تفظل
    الصور المصغرة للصور المرفقة الصور المصغرة للصور المرفقة Sans titre.JPG‏  
    الملفات المرفقة الملفات المرفقة

  9. #9
    الصورة الرمزية المبرمج
    المبرمج غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    May 2012
    الإقامة
    الجزائر
    المشاركات
    274

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

    اقتباس المشاركة الأصلية كتبت بواسطة المبرمج مشاهدة المشاركة
    تفظل
    بالتوفيق
    الصور المصغرة للصور المرفقة الصور المصغرة للصور المرفقة Sans titre1.JPG‏  

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

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

    الكود سورس ادا احتجت اى تعديلات في المستقبل
    كود PHP:
    //-------------------------------------------------------------
    //  Etasoft Inc. Forex EA and Script Generator version 4.1   EA
    //-------------------------------------------------------------
    // Keywords: MT4, Forex EA builder, create EA, expert advisor developer

    #property copyright "Copyright © 2011, Etasoft Inc. Forex EA Generator v4.1"
    #property link      "http://www.********erator.com/"

    #include <stdlib.mqh>
    #include <WinUser32.mqh>

    // exported variables
    extern double SellLots9 0.1;
    extern int SellStoploss9 20;
    extern int SellTakeprofit9 30;
    extern int PriceOffset9 20;
    extern double BuyLots8 0.1;
    extern int BuyStoploss8 20;
    extern int BuyTakeprofit8 30;
    extern int PriceOffset8 20;


    // local variables
    double PipValue=1;    // this variable is here to support 5-digit brokers
    bool Terminated false;
    string LF "\n";  // use this in custom or utility blocks where you need line feeds
    int NDigits 4;   // used mostly for NormalizeDouble in Flex type blocks
    int ObjCount 0;  // count of all objects created on the chart, allows creation of objects with unique names
    int current 0;



    int init()
    {
        
    NDigits Digits;
        
        if (
    falseObjectsDeleteAll();      // clear the chart
        
        
        
    Comment("");    // clear the chart
    }

    // Expert start
    int start()
    {
        if (
    Bars 10)
        {
            
    Comment("Not enough bars");
            return (
    0);
        }
        if (
    Terminated == true)
        {
            
    Comment("EA Terminated.");
            return (
    0);
        }
        
        
    OnEveryTick1();
        
    }

    void OnEveryTick1()
    {
        if (
    true == false && falsePipValue 10;
        if (
    true && (NDigits == || NDigits == 5)) PipValue 10;
        
        
    IfOrderDoesNotExist2();
        
    IfOrderDoesNotExist5();
        
    }

    void IfOrderDoesNotExist2()
    {
        
    bool exists false;
        for (
    int i=OrdersTotal()-1>= 0i--)
        if (
    OrderSelect(iSELECT_BY_POSMODE_TRADES))
        {
            if (
    OrderType() == OP_SELLSTOP && OrderSymbol() == Symbol() && OrderMagicNumber() == 1)
            {
                
    exists true;
            }
        }
        else
        {
            Print(
    "OrderSelect() error - "ErrorDescription(GetLastError()));
        }
        
        if (
    exists == false)
        {
            
    IfOrderDoesNotExist6();
            
        }
    }

    void IfOrderDoesNotExist6()
    {
        
    bool exists false;
        for (
    int i=OrdersTotal()-1>= 0i--)
        if (
    OrderSelect(iSELECT_BY_POSMODE_TRADES))
        {
            if (
    OrderType() == OP_SELL && OrderSymbol() == Symbol() && OrderMagicNumber() == 1)
            {
                
    exists true;
            }
        }
        else
        {
            Print(
    "OrderSelect() error - "ErrorDescription(GetLastError()));
        }
        
        if (
    exists == false)
        {
            
    SellPendingOrder9();
            
        }
    }

    void SellPendingOrder9()
    {
        
    int expire TimeCurrent() + 60 0;
        
    double price NormalizeDouble(BidNDigits) - PriceOffset9*PipValue*Point;
        
    double SL price SellStoploss9*PipValue*Point;
        if (
    SellStoploss9 == 0SL 0;
        
    double TP price SellTakeprofit9*PipValue*Point;
        if (
    SellTakeprofit9 == 0TP 0;
        if (
    == 0expire 0;
        
    int ticket OrderSend(Symbol(), OP_SELLSTOPSellLots9price4SLTP"My Expert"1expireRed);
        if (
    ticket == -1)
        {
            Print(
    "OrderSend() error - "ErrorDescription(GetLastError()));
        }
        
    }

    void IfOrderDoesNotExist5()
    {
        
    bool exists false;
        for (
    int i=OrdersTotal()-1>= 0i--)
        if (
    OrderSelect(iSELECT_BY_POSMODE_TRADES))
        {
            if (
    OrderType() == OP_BUYSTOP && OrderSymbol() == Symbol() && OrderMagicNumber() == 1)
            {
                
    exists true;
            }
        }
        else
        {
            Print(
    "OrderSelect() error - "ErrorDescription(GetLastError()));
        }
        
        if (
    exists == false)
        {
            
    IfOrderDoesNotExist7();
            
        }
    }

    void IfOrderDoesNotExist7()
    {
        
    bool exists false;
        for (
    int i=OrdersTotal()-1>= 0i--)
        if (
    OrderSelect(iSELECT_BY_POSMODE_TRADES))
        {
            if (
    OrderType() == OP_BUY && OrderSymbol() == Symbol() && OrderMagicNumber() == 1)
            {
                
    exists true;
            }
        }
        else
        {
            Print(
    "OrderSelect() error - "ErrorDescription(GetLastError()));
        }
        
        if (
    exists == false)
        {
            
    BuyPendingOrder8();
            
        }
    }

    void BuyPendingOrder8()
    {
        
    int expire TimeCurrent() + 60 0;
        
    double price NormalizeDouble(AskNDigits) + PriceOffset8*PipValue*Point;
        
    double SL price BuyStoploss8*PipValue*Point;
        if (
    BuyStoploss8 == 0SL 0;
        
    double TP price BuyTakeprofit8*PipValue*Point;
        if (
    BuyTakeprofit8 == 0TP 0;
        if (
    == 0expire 0;
        
    int ticket OrderSend(Symbol(), OP_BUYSTOPBuyLots8price4SLTP"My Expert"1expireBlue);
        if (
    ticket == -1)
        {
            Print(
    "OrderSend() error - "ErrorDescription(GetLastError()));
        }
        
    }



    int deinit()
    {
        if (
    falseObjectsDeleteAll();
        
        

    الملفات المرفقة الملفات المرفقة

  11. #11
    الصورة الرمزية exnard
    exnard غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jan 2012
    الإقامة
    المملكة العربية السعودية
    المشاركات
    58

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

    اقتباس المشاركة الأصلية كتبت بواسطة المبرمج مشاهدة المشاركة
    الكود سورس ادا احتجت اى تعديلات في المستقبل
    كود PHP:
    //-------------------------------------------------------------
    //  Etasoft Inc. Forex EA and Script Generator version 4.1   EA
    //-------------------------------------------------------------
    // Keywords: MT4, Forex EA builder, create EA, expert advisor developer

    #property copyright "Copyright © 2011, Etasoft Inc. Forex EA Generator v4.1"
    #property link      "http://www.********erator.com/"

    #include <stdlib.mqh>
    #include <WinUser32.mqh>

    // exported variables
    extern double SellLots9 0.1;
    extern int SellStoploss9 20;
    extern int SellTakeprofit9 30;
    extern int PriceOffset9 20;
    extern double BuyLots8 0.1;
    extern int BuyStoploss8 20;
    extern int BuyTakeprofit8 30;
    extern int PriceOffset8 20;


    // local variables
    double PipValue=1;    // this variable is here to support 5-digit brokers
    bool Terminated false;
    string LF "\n";  // use this in custom or utility blocks where you need line feeds
    int NDigits 4;   // used mostly for NormalizeDouble in Flex type blocks
    int ObjCount 0;  // count of all objects created on the chart, allows creation of objects with unique names
    int current 0;



    int init()
    {
        
    NDigits Digits;
        
        if (
    falseObjectsDeleteAll();      // clear the chart
        
        
        
    Comment("");    // clear the chart
    }

    // Expert start
    int start()
    {
        if (
    Bars 10)
        {
            
    Comment("Not enough bars");
            return (
    0);
        }
        if (
    Terminated == true)
        {
            
    Comment("EA Terminated.");
            return (
    0);
        }
        
        
    OnEveryTick1();
        
    }

    void OnEveryTick1()
    {
        if (
    true == false && falsePipValue 10;
        if (
    true && (NDigits == || NDigits == 5)) PipValue 10;
        
        
    IfOrderDoesNotExist2();
        
    IfOrderDoesNotExist5();
        
    }

    void IfOrderDoesNotExist2()
    {
        
    bool exists false;
        for (
    int i=OrdersTotal()-1>= 0i--)
        if (
    OrderSelect(iSELECT_BY_POSMODE_TRADES))
        {
            if (
    OrderType() == OP_SELLSTOP && OrderSymbol() == Symbol() && OrderMagicNumber() == 1)
            {
                
    exists true;
            }
        }
        else
        {
            Print(
    "OrderSelect() error - "ErrorDescription(GetLastError()));
        }
        
        if (
    exists == false)
        {
            
    IfOrderDoesNotExist6();
            
        }
    }

    void IfOrderDoesNotExist6()
    {
        
    bool exists false;
        for (
    int i=OrdersTotal()-1>= 0i--)
        if (
    OrderSelect(iSELECT_BY_POSMODE_TRADES))
        {
            if (
    OrderType() == OP_SELL && OrderSymbol() == Symbol() && OrderMagicNumber() == 1)
            {
                
    exists true;
            }
        }
        else
        {
            Print(
    "OrderSelect() error - "ErrorDescription(GetLastError()));
        }
        
        if (
    exists == false)
        {
            
    SellPendingOrder9();
            
        }
    }

    void SellPendingOrder9()
    {
        
    int expire TimeCurrent() + 60 0;
        
    double price NormalizeDouble(BidNDigits) - PriceOffset9*PipValue*Point;
        
    double SL price SellStoploss9*PipValue*Point;
        if (
    SellStoploss9 == 0SL 0;
        
    double TP price SellTakeprofit9*PipValue*Point;
        if (
    SellTakeprofit9 == 0TP 0;
        if (
    == 0expire 0;
        
    int ticket OrderSend(Symbol(), OP_SELLSTOPSellLots9price4SLTP"My Expert"1expireRed);
        if (
    ticket == -1)
        {
            Print(
    "OrderSend() error - "ErrorDescription(GetLastError()));
        }
        
    }

    void IfOrderDoesNotExist5()
    {
        
    bool exists false;
        for (
    int i=OrdersTotal()-1>= 0i--)
        if (
    OrderSelect(iSELECT_BY_POSMODE_TRADES))
        {
            if (
    OrderType() == OP_BUYSTOP && OrderSymbol() == Symbol() && OrderMagicNumber() == 1)
            {
                
    exists true;
            }
        }
        else
        {
            Print(
    "OrderSelect() error - "ErrorDescription(GetLastError()));
        }
        
        if (
    exists == false)
        {
            
    IfOrderDoesNotExist7();
            
        }
    }

    void IfOrderDoesNotExist7()
    {
        
    bool exists false;
        for (
    int i=OrdersTotal()-1>= 0i--)
        if (
    OrderSelect(iSELECT_BY_POSMODE_TRADES))
        {
            if (
    OrderType() == OP_BUY && OrderSymbol() == Symbol() && OrderMagicNumber() == 1)
            {
                
    exists true;
            }
        }
        else
        {
            Print(
    "OrderSelect() error - "ErrorDescription(GetLastError()));
        }
        
        if (
    exists == false)
        {
            
    BuyPendingOrder8();
            
        }
    }

    void BuyPendingOrder8()
    {
        
    int expire TimeCurrent() + 60 0;
        
    double price NormalizeDouble(AskNDigits) + PriceOffset8*PipValue*Point;
        
    double SL price BuyStoploss8*PipValue*Point;
        if (
    BuyStoploss8 == 0SL 0;
        
    double TP price BuyTakeprofit8*PipValue*Point;
        if (
    BuyTakeprofit8 == 0TP 0;
        if (
    == 0expire 0;
        
    int ticket OrderSend(Symbol(), OP_BUYSTOPBuyLots8price4SLTP"My Expert"1expireBlue);
        if (
    ticket == -1)
        {
            Print(
    "OrderSend() error - "ErrorDescription(GetLastError()));
        }
        
    }



    int deinit()
    {
        if (
    falseObjectsDeleteAll();
        
        



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

    تمت تجربت الاكسبرت و هو يعمل بشكل ممتاز و لكنه لا يضع الاوامر كما طلبت في المشاركة الأولى ( حيث ان البيع المعلق اسفل اللو للشمعة الحالية و الشراء المعلق اعلى الهاي للشمعة الحالية ) .. ان عمل الاكسبرت الحالي هو عقد شراء من اسفل السعر الحالي بعدد من النقاط و اعلى السعر الحالي بعدد من النقلط ...
    اتركك مع الشارت لمعرفة ما أقصده

    اني استخدم نفس النظام الذي تستخدمه و لكني لم أخذ خاصية عقد معلق اعلى الهاي و اسفل اللو ...

    الله يحميك و يحفظك اخي المبرمج و ان شاء الله التعديل يكون سهل
    الصور المصغرة للصور المرفقة الصور المصغرة للصور المرفقة EXNARD ERROR.png‏  

  12. #12
    الصورة الرمزية exnard
    exnard غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jan 2012
    الإقامة
    المملكة العربية السعودية
    المشاركات
    58

    افتراضي

    الهاي او اللو للشمعة الحالية أي شمعة تشغيل الاكسبرت (الشمعة الغير مكتملة ) و ليس الشمعة التي تسبقها

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

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

    جرب هده النسخة
    الملفات المرفقة الملفات المرفقة

  14. #14
    الصورة الرمزية المبرمج
    المبرمج غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    May 2012
    الإقامة
    الجزائر
    المشاركات
    274

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

    اقتباس المشاركة الأصلية كتبت بواسطة المبرمج مشاهدة المشاركة
    جرب هده النسخة
    كود
    كود:
    //-------------------------------------------------------------
    //  Etasoft Inc. Forex EA and Script Generator version 4.1   EA
    //-------------------------------------------------------------
    // Keywords: MT4, Forex EA builder, create EA, expert advisor developer
    
    #property copyright "Copyright © 2011, Etasoft Inc. Forex EA Generator v4.1"
    #property link      "http://www.********erator.com/"
    
    #include <stdlib.mqh>
    #include <WinUser32.mqh>
    
    // exported variables
    extern double SellLots17 = 0.1;
    extern int SellStoploss17 = 20;
    extern int SellTakeprofit17 = 30;
    extern int PriceOffset17 = 10;
    extern double BuyLots13 = 0.1;
    extern int BuyStoploss13 = 20;
    extern int BuyTakeprofit13 = 30;
    extern int PriceOffset13 = 10;
    extern double SellLots35 = 0.1;
    extern int SellStoploss35 = 20;
    extern int SellTakeprofit35 = 30;
    extern int PriceOffset35 = 10;
    extern double BuyLots34 = 0.1;
    extern int BuyStoploss34 = 20;
    extern int BuyTakeprofit34 = 30;
    extern int PriceOffset34 = 10;
    
    
    // local variables
    double PipValue=1;    // this variable is here to support 5-digit brokers
    bool Terminated = false;
    string LF = "\n";  // use this in custom or utility blocks where you need line feeds
    int NDigits = 4;   // used mostly for NormalizeDouble in Flex type blocks
    int ObjCount = 0;  // count of all objects created on the chart, allows creation of objects with unique names
    int current = 0;
    
    
    
    int init()
    {
        NDigits = Digits;
        
        if (false) ObjectsDeleteAll();      // clear the chart
        
        
        Comment("");    // clear the chart
    }
    
    // Expert start
    int start()
    {
        if (Bars < 10)
        {
            Comment("Not enough bars");
            return (0);
        }
        if (Terminated == true)
        {
            Comment("EA Terminated.");
            return (0);
        }
        
        OnEveryTick9();
        
    }
    
    void OnEveryTick9()
    {
        if (true == false && false) PipValue = 10;
        if (true && (NDigits == 3 || NDigits == 5)) PipValue = 10;
        
        TechnicalAnalysis5();
        TechnicalAnalysis1();
        
    }
    
    void TechnicalAnalysis5()
    {
        if (Open[0] <= Close[0])
        {
            IfOrderDoesNotExist14();
            IfOrderDoesNotExist12();
            
        }
    }
    
    void IfOrderDoesNotExist14()
    {
        bool exists = false;
        for (int i=OrdersTotal()-1; i >= 0; i--)
        if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
        {
            if (OrderType() == OP_SELLSTOP && OrderSymbol() == Symbol() && OrderMagicNumber() == 1)
            {
                exists = true;
            }
        }
        else
        {
            Print("OrderSelect() error - ", ErrorDescription(GetLastError()));
        }
        
        if (exists == false)
        {
            IfOrderDoesNotExist16();
            
        }
    }
    
    void IfOrderDoesNotExist16()
    {
        bool exists = false;
        for (int i=OrdersTotal()-1; i >= 0; i--)
        if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
        {
            if (OrderType() == OP_SELL && OrderSymbol() == Symbol() && OrderMagicNumber() == 1)
            {
                exists = true;
            }
        }
        else
        {
            Print("OrderSelect() error - ", ErrorDescription(GetLastError()));
        }
        
        if (exists == false)
        {
            SellPendingOrder17();
            
        }
    }
    
    void SellPendingOrder17()
    {
        int expire = TimeCurrent() + 60 * 0;
        double price = NormalizeDouble(Low[current], NDigits) - PriceOffset17*PipValue*Point;
        double SL = price + SellStoploss17*PipValue*Point;
        if (SellStoploss17 == 0) SL = 0;
        double TP = price - SellTakeprofit17*PipValue*Point;
        if (SellTakeprofit17 == 0) TP = 0;
        if (0 == 0) expire = 0;
        int ticket = OrderSend(Symbol(), OP_SELLSTOP, SellLots17, price, 4, SL, TP, "My Expert", 1, expire, Red);
        if (ticket == -1)
        {
            Print("OrderSend() error - ", ErrorDescription(GetLastError()));
        }
        
    }
    
    void IfOrderDoesNotExist12()
    {
        bool exists = false;
        for (int i=OrdersTotal()-1; i >= 0; i--)
        if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
        {
            if (OrderType() == OP_BUYSTOP && OrderSymbol() == Symbol() && OrderMagicNumber() == 1)
            {
                exists = true;
            }
        }
        else
        {
            Print("OrderSelect() error - ", ErrorDescription(GetLastError()));
        }
        
        if (exists == false)
        {
            IfOrderDoesNotExist10();
            
        }
    }
    
    void IfOrderDoesNotExist10()
    {
        bool exists = false;
        for (int i=OrdersTotal()-1; i >= 0; i--)
        if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
        {
            if (OrderType() == OP_BUY && OrderSymbol() == Symbol() && OrderMagicNumber() == 1)
            {
                exists = true;
            }
        }
        else
        {
            Print("OrderSelect() error - ", ErrorDescription(GetLastError()));
        }
        
        if (exists == false)
        {
            BuyPendingOrder13();
            
        }
    }
    
    void BuyPendingOrder13()
    {
        int expire = TimeCurrent() + 60 * 0;
        double price = NormalizeDouble(High[current], NDigits) + PriceOffset13*PipValue*Point;
        double SL = price - BuyStoploss13*PipValue*Point;
        if (BuyStoploss13 == 0) SL = 0;
        double TP = price + BuyTakeprofit13*PipValue*Point;
        if (BuyTakeprofit13 == 0) TP = 0;
        if (0 == 0) expire = 0;
        int ticket = OrderSend(Symbol(), OP_BUYSTOP, BuyLots13, price, 4, SL, TP, "My Expert", 1, expire, Blue);
        if (ticket == -1)
        {
            Print("OrderSend() error - ", ErrorDescription(GetLastError()));
        }
        
    }
    
    void TechnicalAnalysis1()
    {
        if (Open[0] <= Close[0])
        {
            IfOrderDoesNotExist20();
            IfOrderDoesNotExist25();
            
        }
    }
    
    void IfOrderDoesNotExist20()
    {
        bool exists = false;
        for (int i=OrdersTotal()-1; i >= 0; i--)
        if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
        {
            if (OrderType() == OP_SELLSTOP && OrderSymbol() == Symbol() && OrderMagicNumber() == 1)
            {
                exists = true;
            }
        }
        else
        {
            Print("OrderSelect() error - ", ErrorDescription(GetLastError()));
        }
        
        if (exists == false)
        {
            IfOrderDoesNotExist26();
            
        }
    }
    
    void IfOrderDoesNotExist26()
    {
        bool exists = false;
        for (int i=OrdersTotal()-1; i >= 0; i--)
        if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
        {
            if (OrderType() == OP_SELL && OrderSymbol() == Symbol() && OrderMagicNumber() == 1)
            {
                exists = true;
            }
        }
        else
        {
            Print("OrderSelect() error - ", ErrorDescription(GetLastError()));
        }
        
        if (exists == false)
        {
            SellPendingOrder35();
            
        }
    }
    
    void SellPendingOrder35()
    {
        int expire = TimeCurrent() + 60 * 0;
        double price = NormalizeDouble(Low[current], NDigits) - PriceOffset35*PipValue*Point;
        double SL = price + SellStoploss35*PipValue*Point;
        if (SellStoploss35 == 0) SL = 0;
        double TP = price - SellTakeprofit35*PipValue*Point;
        if (SellTakeprofit35 == 0) TP = 0;
        if (0 == 0) expire = 0;
        int ticket = OrderSend(Symbol(), OP_SELLSTOP, SellLots35, price, 4, SL, TP, "My Expert", 1, expire, Red);
        if (ticket == -1)
        {
            Print("OrderSend() error - ", ErrorDescription(GetLastError()));
        }
        
    }
    
    void IfOrderDoesNotExist25()
    {
        bool exists = false;
        for (int i=OrdersTotal()-1; i >= 0; i--)
        if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
        {
            if (OrderType() == OP_BUYSTOP && OrderSymbol() == Symbol() && OrderMagicNumber() == 1)
            {
                exists = true;
            }
        }
        else
        {
            Print("OrderSelect() error - ", ErrorDescription(GetLastError()));
        }
        
        if (exists == false)
        {
            IfOrderDoesNotExist27();
            
        }
    }
    
    void IfOrderDoesNotExist27()
    {
        bool exists = false;
        for (int i=OrdersTotal()-1; i >= 0; i--)
        if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
        {
            if (OrderType() == OP_BUY && OrderSymbol() == Symbol() && OrderMagicNumber() == 1)
            {
                exists = true;
            }
        }
        else
        {
            Print("OrderSelect() error - ", ErrorDescription(GetLastError()));
        }
        
        if (exists == false)
        {
            BuyPendingOrder34();
            
        }
    }
    
    void BuyPendingOrder34()
    {
        int expire = TimeCurrent() + 60 * 0;
        double price = NormalizeDouble(High[current], NDigits) + PriceOffset34*PipValue*Point;
        double SL = price - BuyStoploss34*PipValue*Point;
        if (BuyStoploss34 == 0) SL = 0;
        double TP = price + BuyTakeprofit34*PipValue*Point;
        if (BuyTakeprofit34 == 0) TP = 0;
        if (0 == 0) expire = 0;
        int ticket = OrderSend(Symbol(), OP_BUYSTOP, BuyLots34, price, 4, SL, TP, "My Expert", 1, expire, Blue);
        if (ticket == -1)
        {
            Print("OrderSend() error - ", ErrorDescription(GetLastError()));
        }
        
    }
    
    
    
    int deinit()
    {
        if (false) ObjectsDeleteAll();
        
        
    }
    الاكسبيرت به متغيرات مكررة
    ادا الاكسبيرت يعمل كما طلبت راح اعدل عليه
    ادا لا يعمل حسب الطلوب ارجو توضيح اكثر
    شكرا
    آخر تعديل بواسطة المبرمج ، 21-05-2012 الساعة 04:48 AM


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