النتائج 1 إلى 11 من 11
  1. #1
    الصورة الرمزية 4X Trader
    4X Trader غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Mar 2009
    الإقامة
    Riyadh
    المشاركات
    296

    افتراضي إلى خبراء برمجة الإكسبيرتات ... مطلوب كود

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

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

    في إنتظار ردودكم أحبتي

  2. #2
    الصورة الرمزية ساق الجواء
    ساق الجواء غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Dec 2006
    الإقامة
    أنا من نجد ويكفيني هواها *** ويبري علتي شربي لماها
    المشاركات
    592

    افتراضي رد: إلى خبراء برمجة الإكسبيرتات ... مطلوب كود

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

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

    في إنتظار ردودكم أحبتي

    أنت تطلب اكسبرت كامل وهي متوفرة بكثرة واقرأ هذا الموضوع ففيه ما تريد وهو تعليمي:

    https://forum.arabictrader.com/t68935.html

    ولو عرضت ما لديك مما برمجته وذكرت هدفك وطلبت تصحيحه لكان أحسن.

    ثم إن بقيت لديك بعد الإطلاع أسئلة فإسأل.

  3. #3
    الصورة الرمزية 4X Trader
    4X Trader غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Mar 2009
    الإقامة
    Riyadh
    المشاركات
    296

    افتراضي رد: إلى خبراء برمجة الإكسبيرتات ... مطلوب كود

    اقتباس المشاركة الأصلية كتبت بواسطة ساق الجواء مشاهدة المشاركة
    أنت تطلب اكسبرت كامل وهي متوفرة بكثرة واقرأ هذا الموضوع ففيه ما تريد وهو تعليمي:

    https://forum.arabictrader.com/t68935.html

    ولو عرضت ما لديك مما برمجته وذكرت هدفك وطلبت تصحيحه لكان أحسن.

    ثم إن بقيت لديك بعد الإطلاع أسئلة فإسأل.
    بصراحة عندي اكثر من أكسبيرت قاعد اعدل واسمكر فيه ومن هذه الإكسبيرتات إكسبيرت تقاطع الموفينج وفكرة التعديل عليه هي إضافة موفينج ثالث ... هذا الإكسبيرت قام ببرمجته الأخ اسامة وطرحه هنا في هذا المنتدى بإسم Basic Balance System

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

    لا استغني عن مساعدتك ودعمك أخي ساق الجواء

  4. #4
    الصورة الرمزية ساق الجواء
    ساق الجواء غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Dec 2006
    الإقامة
    أنا من نجد ويكفيني هواها *** ويبري علتي شربي لماها
    المشاركات
    592

    افتراضي رد: إلى خبراء برمجة الإكسبيرتات ... مطلوب كود

    اقتباس المشاركة الأصلية كتبت بواسطة 4X Trader مشاهدة المشاركة
    بصراحة عندي اكثر من أكسبيرت قاعد اعدل واسمكر فيه ومن هذه الإكسبيرتات إكسبيرت تقاطع الموفينج وفكرة التعديل عليه هي إضافة موفينج ثالث ... هذا الإكسبيرت قام ببرمجته الأخ اسامة وطرحه هنا في هذا المنتدى بإسم Basic Balance System

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

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

    ليس فيه أمر إغلاق بموجب إشارة عكسية أو لسبب آخر وليس فيه وقف متحرك/ملاحقة الربح وليس فيه حساب اللوتات آليا إلخ.


    كود:
    //---------------------------------
    #property copyright "Free"
    #property link      ""
    //---------------------------------
    extern int TakeProfit = 25;
    extern int StopLose = 25;
    extern double Lots = 1;
    extern int MaxTrades=1;
    extern int MagicNumber = 23671;
    datetime timeprev=0;//Working only after a new candle.
    //+------------------------------------------------------------------+
    //| expert initialization function                                   |
    //+------------------------------------------------------------------+
    int init()
      {
    //----
     
    //----
       return(0);
      }
    //+------------------------------------------------------------------+
    //| expert deinitialization function                                 |
    //+------------------------------------------------------------------+
    int deinit()
      {
    //----
     
    //----
       return(0);
      }
    //+------------------------------------------------------------------+
    //| expert start function                                            |
    //+------------------------------------------------------------------+
    int start()
      {
    //------------------------------------------------------------------+
    //| Working only at a new candle rather than at every tick                                            |
    //+------------------------------------------------------------------+
       if(timeprev==Time[0])//Time[0] is time of the cuurent bar
       return(0);
       timeprev=Time[0];
       //This means instead of working (ie moving TSL) after every tick, work only after
       //a new candle.
       //it makes testing faster and test profit results higher.
       //It means you can use your code only once for each bar, usually first tick.
       //Any other tick code doesn't work. Sometimes it is very usefull.
       //Any action in start function afer this code will be performed once within the Bars
       //regardless of the time you specify
     
    //---------------
     
    //----------------- signal to buy
     
      if(enter your signal to buy here)
      if(CountLongs()<MaxTrades)
       OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Bid-StopLose*Point,
       Ask+TakeProfit*Point,"",MagicNumber,0,Green); 
     
    //---------------- signal to sell
     
      if(nter your signal to by here)
      if(CountShorts()<MaxTrades)
       OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Ask+StopLose*Point,
       Bid-TakeProfit*Point,"",MagicNumber,0,Red);
     
    //---------------------------------
     return(0);
     } //end of start function
    //+------------------------------------------------------------------+
    //| counting open orders                                   |
    //+------------------------------------------------------------------+
    int CountLongs()
    {
     int count=0;
     int trade;
     for(trade=OrdersTotal()-1;trade>=0;trade--)
     {
      OrderSelect(trade,SELECT_BY_POS,MODE_TRADES);
     
      if(OrderSymbol()!=Symbol()|| OrderMagicNumber()!=MagicNumber)
       continue;
     
      if(OrderType()==OP_BUY)
       count++;
     }
     return(count);
    }
    //--------------------------------
    int CountShorts()
    {
     int count=0;
     int trade;
     for(trade=OrdersTotal()-1;trade>=0;trade--)
     {
      OrderSelect(trade,SELECT_BY_POS,MODE_TRADES);
     
      if(OrderSymbol()!=Symbol()|| OrderMagicNumber()!=MagicNumber)
       continue;
     
      if(OrderType()==OP_SELL)
       count++;
     }
     return(count);
    }
     
    //+-----------------
    لاحظ الأسطر التالية مأخوذة من الكود وهي في أمكنة فيه متفرقة مقصودة تخص عدم تكرار الصفقة خلال الشمعة الواحدة:

    كود:
    datetime timeprev=0;//Working only after a new candle.
    //------------------------------------------------------------------
       if(timeprev==Time[0])//Time[0] is time of the cuurent bar
       return(0);
       timeprev=Time[0];
       //This means instead of working (ie moving TSL) after every tick, work only after
       //a new candle.
       //it makes testing faster and test profit results higher.
       //It means you can use your code only once for each bar, usually first tick.
       //Any other tick code doesn't work. Sometimes it is very usefull.
       //Any action in start function afer this code will be performed once within the Bars
       //regardless of the time you specify
    ولاحظ الأسطر التالية مأخوذة من الكود وهي في أمكنة فيه متفرقة مقصودة أيضا تخص عدم فتح أكثر من صفقة شراء واحدة أو صفقة بيع واحدة (لكن ممكن أن يفتح صفقتين مختلفتين أحدهما بيع والأخرى شراء):

    كود:
    extern int MaxTrades=1;
    //------------------------------------------------------------------
      if(CountLongs()<MaxTrades)
    //------------------------------------------------------------------
      if(CountShorts()<MaxTrades)
    فإن أردت صفقة واحدة فقط إما بيع أو شراء فاعمل التالي:

    كود:
    extern int MaxTrades=1;
    //------------------------------------------------------------------
      if(CountLongs()+CountShorts()<MaxTrades)
    //------------------------------------------------------------------
      if(CountShorts()+CountLongs()<MaxTrades)
    واعلم أن كل مبرمج يعبر عما يريد باسلوبه الخاص ولكن يصل لنفس النتيجة مما يحير المبتدئ.

  5. #5
    الصورة الرمزية 4X Trader
    4X Trader غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Mar 2009
    الإقامة
    Riyadh
    المشاركات
    296

    افتراضي رد: إلى خبراء برمجة الإكسبيرتات ... مطلوب كود

    مشكور يا فتى نجد العذية ... ساعمل على أستخدام الكود في الإكسبيرت واعرض عليك الإكسبيرت لأي تعديل تراه مناسباً

    تحياتي ياغالي

  6. #6
    الصورة الرمزية 4X Trader
    4X Trader غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Mar 2009
    الإقامة
    Riyadh
    المشاركات
    296

    افتراضي رد: إلى خبراء برمجة الإكسبيرتات ... مطلوب كود

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






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

    كود:
    extern int MaxTrades=1;
    //------------------------------------------------------------------
      if(CountLongs()+CountShorts()<MaxTrades)
    //------------------------------------------------------------------
      if(CountShorts()+CountLongs()<MaxTrades)
    كيف ممكن إضافة الكود أعلاه لشرط التنفيذ كما في الأسفل ... هل تتم إضافته إضافة عادية أم هناك تعديل ؟؟؟ ... مع العلم انه تم تعريف MaxTrades في المدخلات الخارجية
    كود:
    if (((EMA15c<EMA25c && EMA15p>=EMA25p)||(EMA15c<EMA25c))){
             OpenBuy();
             return(0);

  7. #7
    الصورة الرمزية ساق الجواء
    ساق الجواء غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Dec 2006
    الإقامة
    أنا من نجد ويكفيني هواها *** ويبري علتي شربي لماها
    المشاركات
    592

    افتراضي رد: إلى خبراء برمجة الإكسبيرتات ... مطلوب كود

    اقتباس المشاركة الأصلية كتبت بواسطة 4X Trader مشاهدة المشاركة
    كيف ممكن إضافة الكود أعلاه لشرط التنفيذ كما في الأسفل ... هل تتم إضافته إضافة عادية أم هناك تعديل ؟؟؟ ... مع العلم انه تم تعريف MaxTrades في المدخلات الخارجية
    كود:
    if (((EMA15c<EMA25c && EMA15p>=EMA25p)||(EMA15c<EMA25c))){
             OpenBuy();
             return(0);

    حبيبي أضفه كما تراه في كود الإكسبرت الكامل الذي وضعته لك. لا تكن عاجزا حتى عن التقليد.

    كود:
     
    if (((EMA15c<EMA25c && EMA15p>=EMA25p)||(EMA15c<EMA25c))){
     if(CountShorts()+CountLongs()<MaxTrades)
            OpenBuy();
             return(0);
    لاحظ أن عندك هنا قوسين زائدين لا داعي لهما.

  8. #8
    الصورة الرمزية 4X Trader
    4X Trader غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Mar 2009
    الإقامة
    Riyadh
    المشاركات
    296

    افتراضي رد: إلى خبراء برمجة الإكسبيرتات ... مطلوب كود

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

    كود:
     
    if (((EMA15c<EMA25c && EMA15p>=EMA25p)||(EMA15c<EMA25c))){
     if(CountShorts()+CountLongs()<MaxTrades)
            OpenBuy();
             return(0);
    لاحظ أن عندك هنا قوسين زائدين لا داعي لهما.

    مو عجز ياغالي بقدر ماهي إستشارة

    عموما في المرفق الإكسبيرت اللي عدلت ... بس للأسف ينفذ اكثر من عملية في حال تحقق الشرط

    اللي يصير انه بمجرد إغلاق صفقة فتح صفقة أخرى

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

    وماعليش تحملنا شوي



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

  9. #9
    الصورة الرمزية ساق الجواء
    ساق الجواء غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Dec 2006
    الإقامة
    أنا من نجد ويكفيني هواها *** ويبري علتي شربي لماها
    المشاركات
    592

    افتراضي رد: إلى خبراء برمجة الإكسبيرتات ... مطلوب كود

    اقتباس المشاركة الأصلية كتبت بواسطة 4X Trader مشاهدة المشاركة
    ينفذ اكثر من عملية في حال تحقق الشرط

    اللي يصير انه بمجرد إغلاق صفقة فتح صفقة أخرى

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


    كلامك هنا متعارض وغير واضح.

    المهم ما هي شروط دخولك وخروجك بالضبط؟ اكتبها بالعربية حتى أعدله لك بحسب ما تريد لا بحسب ما أجتهد.

  10. #10
    الصورة الرمزية 4X Trader
    4X Trader غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Mar 2009
    الإقامة
    Riyadh
    المشاركات
    296

    افتراضي رد: إلى خبراء برمجة الإكسبيرتات ... مطلوب كود

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

    المهم ما هي شروط دخولك وخروجك بالضبط؟ اكتبها بالعربية حتى أعدله لك بحسب ما تريد لا بحسب ما أجتهد.
    مافيه اي تعارض ياغالي في كلامي .... التعارض هو في الإكسبيرت مو راضي يشتغل معي صح

    الذي يقوم به الإكسبيرت حالياً هو فتح صفقة عند تحقق الشرط بتقاطع خطوط الموفنج الثلاث وعندما يتم إغلاق الصفقة عند نقطة التيك بروفيت وفي ظل إستمرار تحقق الشرط يقوم الإكسبيرت بفتح صفقة ثانية.

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

    ومشكور عزيزي .... والله يوفقك

  11. #11
    الصورة الرمزية ساق الجواء
    ساق الجواء غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Dec 2006
    الإقامة
    أنا من نجد ويكفيني هواها *** ويبري علتي شربي لماها
    المشاركات
    592

    افتراضي رد: إلى خبراء برمجة الإكسبيرتات ... مطلوب كود

    اقتباس المشاركة الأصلية كتبت بواسطة 4X Trader مشاهدة المشاركة
    مافيه اي تعارض ياغالي في كلامي .... التعارض هو في الإكسبيرت مو راضي يشتغل معي صح

    هو مجرد أله يحسب بحسب برمجتك. دائما اتهم نفسك فأي خلل تواجهه هو منك.

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

    أشك أنه حتى يفعل ذلك ، فلم تعبر عن التقاطع (تراكب الثلاثة متوسطات) بطريقة صحيحة.

    وعندما يتم إغلاق الصفقة عند نقطة التيك بروفيت وفي ظل إستمرار تحقق الشرط يقوم الإكسبيرت بفتح صفقة ثانية.

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

    هو الآن يفعل ذلك ولاحظ أن الفريم صغير. لاحظ كيفية برمجة شروط الدخول الآن وعدم استخدام الشمعة صفر.

    .. وأي إغلاق للصفقة لابد أن يكون عند نقطة التيك بروفيت أو الأستوب لوز

    هذه تركتها بحسب برمجتك

    أو عند ظهور إشارة عكسية ( تقاطع عكسي)

    هو الآن يفعل ذلك وقد كانت شروط الخروج ووظيفة الغغلاق خاطئة.

    ومشكور عزيزي .... والله يوفقك
    عدلت اشياء ولم أدقق على أشياء أخر
    الملفات المرفقة الملفات المرفقة
    آخر تعديل بواسطة ساق الجواء ، 04-05-2009 الساعة 11:49 AM

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

  1. لو سمحتم أريد تعلم برمجة الإكسبيرتات
    By صاحب هدف in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EA
    مشاركات: 11
    آخر مشاركة: 18-04-2010, 01:53 PM
  2. الى خبراء البرمجة . مطلوب لغة برمجة سهلة
    By Abo Salma in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EA
    مشاركات: 2
    آخر مشاركة: 01-04-2008, 08:00 PM
  3. الى خبراء الفيبوناتشي و خبراء برمجة الالات الحاسبة للفوركس, ارجو المساعدة
    By ashrafnajo in forum سوق تداول العملات الأجنبية والسلع والنفط والمعادن
    مشاركات: 3
    آخر مشاركة: 04-09-2006, 05:02 PM
  4. الى خبراء الفيبوناتشي و خبراء برمجة الالات الحاسبة للفوركس, ارجو المساعدة
    By ashrafnajo in forum مدارس التحليل الفني التعليمي Technical Analysis
    مشاركات: 4
    آخر مشاركة: 04-09-2006, 08:23 AM

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


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