استفسار كيفية اغلاق صفقه معينه
صفحة 1 من 2 12 الأخيرةالأخيرة
النتائج 1 إلى 15 من 23
  1. #1
    تاريخ التسجيل
    Oct 2017
    الإقامة
    بريطانيا
    المشاركات
    145

    02 كيفية اغلاق صفقه معينه

    السلام عليكم ورحمة الله وبركاته

    برجاء الافاده عن الكود الخاص بأغلاق صفقه معينه

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

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

    كيف يمكن عمل ذلك بدون اغلاق جميع الصفقات المفتوحه

  2. #2
    تاريخ التسجيل
    Oct 2017
    الإقامة
    بريطانيا
    المشاركات
    145

    افتراضي

    اتمنى الرد ممن لديه الخبره وشكرا لمجهوداتكم

  3. #3
    تاريخ التسجيل
    Oct 2017
    الإقامة
    بريطانيا
    المشاركات
    145

    افتراضي

    سؤال آخر ايضا
    كيف يمكن جلب التكت الخاص بصفقه معينه مثلا عندى 3 صفقات شراء اريد جلب تكت الصفقه التى تحمل الترتيب 2 من حيث الفتح
    هل يمكن ذلك

  4. #4
    تاريخ التسجيل
    Jun 2009
    الإقامة
    مصر
    المشاركات
    13,002

    افتراضي

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

    برجاء الافاده عن الكود الخاص بأغلاق صفقه معينه

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

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

    كيف يمكن عمل ذلك بدون اغلاق جميع الصفقات المفتوحه
    هذه الدالة الخاصة بإغلاق صفقه معينه
    كود PHP:
    OrderClose(OrderTicket(),OrderLots(),Ask,3); 
    لكن قبل تنفيذ هذه الداله يجب أن تقوم أولا بتحديد الصفقة التي تريد إغلاقها وذلك بإستخدام الداله OrderSelect
    مثلا لو لدي مجموعه من الصفقات وأريد إغلاق أول صفقه مفتوحه فسوف يكون الكود
    كود PHP:
     bool select=OrderSelect(0,SELECT_BY_POS,MODE_TRADES);
             if(
    OrderType()==OP_BUY)
               {
                
    bool close=OrderClose(OrderTicket(),OrderLots(),Bid,3);
               }
             else if(
    OrderType()==OP_SELL)
               {            
                 
    bool close=OrderClose(OrderTicket(),OrderLots(),Ask,3);
               } 
    الرقم 0 في الدالة OrderSelect يعني أول صفقه مفتوحه
    لنفرض أني أريد إغلاق جميع الصفقات فهذا مثال
    كود PHP:
    void CloseOrders()
      {
       for(
    int i=OrdersTotal()-1;i>=0;i--)
         {
          
    bool select=OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
          if(
    OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber )
            {
             if(
    OrderType()==OP_BUY)
               {
                
    bool close=OrderClose(OrderTicket(),OrderLots(),Bid,3*P);
               }
             else if(
    OrderType()==OP_SELL)
               {
                
    close=OrderClose(OrderTicket(),OrderLots(),Ask,3*P);
               }
            }
         }
      } 
    طبعا مع إضافة أي شروط تريدها لتكون من ضمن شروط إغلاق الصفقه كأن تغلق صفقات الشراء فقط أو مثلا صفقات بماجيك نمبر محدد أو صفقات مر على فتحها عدد شموع معين وهكذا
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  5. #5
    تاريخ التسجيل
    Oct 2017
    الإقامة
    بريطانيا
    المشاركات
    145

    افتراضي

    الف شكر يا ريس ربنا يكرمك ويجزيك الخير كفيت ووفيت

  6. #6
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,152

    افتراضي

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

    انت الان يمكن حليت مشكلة معينة ولكن ستواجهك الكثير من المشاكل
    هذه المشاكل الكثيرة تتفاداها بالدراسة المنهجية لدوال التداول وعددها 25 دالة--يكفي منها 11 دالة

    بحيث لو فهمتهماا منهجيا تصبح الامور معك مثل الريشة فيما بعد

    تأمل الانسيابية في رد اسامة
    طلب 1:
    الان اخي اريد منك تعريب OrderSelect في ذهنك--افترض انك مجبور تخترع لها مصطلح عربي يعبر فعلا عما تعني
    لاحظ عنوانك: صفقة معينة. لاحظ كلمة معينة!!

    يعني انت وصلت لمرحلة التسؤل - وسط هذه الاوامر الكثيرة كيف اختار امر محدد منها؟

    طلب 2: من دوال التداول ال 24 (كلها الا OrderSelect) كم دالة نحن مجبرين على استخدام OrderSelect معها - وماهي هذه الدوال؟
    آخر تعديل بواسطة فيلسوف البادية ، 11-11-2017 الساعة 07:43 AM

  7. #7
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,152

    افتراضي


  8. #8
    تاريخ التسجيل
    Oct 2017
    الإقامة
    بريطانيا
    المشاركات
    145

    افتراضي

    مشكور يا غالى على مجهودك
    بس انا عارف انها order select
    لكن الفكره فى سؤالى هى ازاى انى لو عندى 4 اوامر شراء موجودين اقفل الصفقه التى ترتيبها 2 بمعنى
    يعنى اذا كان الرقم 0 فى الداله order select يعبر عن اخر صفقه مفتوحه فما هو الرقم الذى يعبر عن الصفقه رقم 4 مثلا المفتوحه على الحساب لو كان لدى 6 صفقات مفتوحين كمثال بأعتبار ان ال6 صفقات منهم 2 بيع و4 شراء
    او السؤال بطريقه أخرى كيف أغلق صفقه معينه بغض النظر عن نوعها وبعض النظر عن توقيت فتحها ولكن من خلال ترتيبها
    هذا سؤالى

  9. #9
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,152

    افتراضي

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

    لاحظ اليونيك نمبر للصفقة unique--هل هو رقم اصلفقة ام رقم التكت
    مثلا عندك 5 صفقات----وحدة منهم رقمها 3
    اذا اغقلت احد هذه الصفقات التي رقمها 3 قد يتغير وتصبح رقم 2 او 4

    ولكن اليونيك نمبر الذي لايتغير هو التكت.

    انت مصري
    الشيء الوحيد الذي يميزك عن 80 مليون مصري هو الرقم الوطني--لايوجد اي مصري معه نفس رقمك الوطني ولكن يوجد الف مصري اسمه الهلالي
    ويوجد 10000 مصري لونه ابيض
    ويوجد 10000 مصري طوله 176 سم
    وهكذا

    المواطن رقم
    والصفقة تكت
    آخر تعديل بواسطة فيلسوف البادية ، 11-11-2017 الساعة 12:28 PM

  10. #10
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,152

    افتراضي

    ملحوظة: في موضوع المضاعفات تحدثت عن اشكالية رقم الصفقات
    لو وضعت لوووب تتوقع يغلق كل الصفقات---يغلق نصفها فقط--بسبب اعادة ترقيم الصفقات --- ولاتمكشتف المشكلة ابدا لانه لن يحدث كومبايل ايرور ولن يحدث رن-تايم ايرور

    مما يعني انها مسألة ثقافة او وعي بالية عمل الميتا تريدر نفسه. (الـ enviroment)

  11. #11
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,152

    افتراضي

    او تخيل انك تريد حذف كل الصفقات الموجودة وعددها 500 صفقة
    سيحذف 250 صفقة فقط

    واذا اعدته مرة اخرى سيحذف 125 صفقة
    واذا اعدته مرة اخرى سيحذف 63 صفقة
    !

  12. #12
    تاريخ التسجيل
    Oct 2017
    الإقامة
    بريطانيا
    المشاركات
    145

    افتراضي

    تمام كلامك اذا كيف يتم جلب ال unique number للصفقه رقم 3 ؟ لو الاجابه من خلال order select هقولك تمام ولكنى احتاج الكود مع ايضاح المتغير الذى يعبر عن الunique
    او بصورة أخرى هل يمكن جلب التكت نمبر لكل صفقه مفتوحه على الحساب سواء معلقه او ماركت ؟ ولو سمحت لو ممكن اعطنى مثال على جلب التكت ل 4 صفقات 3 ماركت وواحده pending

  13. #13
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,152

    افتراضي

    انت اخي عندما تتحدث عن صفقة محددة يكون الخيار امامك التكت نمبر
    لو اخترت مثلا البوزشن نمبر--هذا يتغير
    وبالتالي التكت نمبر الذي هو اساسا output لـ orderselect ستتعامل معه ك input---يعني انت في ذهنك حددت سلفا تلك الصفقة ولكن ليس input بقيمة تحددها انت من رأسك--لا بل قيمة للمقارنة مع الموجود من التكتات

    وفي هذه الحالة ماهي الفائدة---يصبح الاغلاق اليدوي افضل

    سأعتبر انك قلت افترض لدي 10 صفقات مفتوحة واريد ان انام واحدى هذه الصفقات بلوت كبير شوي واريد ان تغلق تحديدا اذا الربح وصل 20%
    في هذه الحالة هناك تقارن التكات.

    شيء كهذا:
    كود PHP:
    input int orderTickt=500989347;
    void OnTick()
    {
       for(
    int i=OrdersTotal()-1;i>=0;i--)
       { 
          if(
    OrderSelect(iSELECT_BY_POS,MODE_TRADES))
          {
             if(
    OrderTicket()==orderTickt)
             {
                
                if(
    OrderType()==OP_BUY)
                {
                   
    bool CloseOrder1=OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),10,clrRed);
                }
                else if(
    OrderType()==OP_SELL)
                {
                   
    bool CloseOrder2=OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),10,clrRed);
                }
             }
          }
       }


  14. #14
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,152

    افتراضي

    MarketInfo(OrderSymbol(),MODE_BID)

    ليش اخترنا البد من خلال MarketInfo وليس من خلال Bid الوردية؟؟
    ج: لان زوج الصفقة قد يكون زوج اخر غير زوج التشارت اللي طبقنا عليه الخبير

  15. #15
    تاريخ التسجيل
    Jul 2011
    الإقامة
    السعودية
    المشاركات
    11,152

    افتراضي

    معاد--للفائدة ليس الا