النتائج 1 إلى 7 من 7
  1. #1
    الصورة الرمزية alshakatan
    alshakatan غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Mar 2007
    الإقامة
    المملكة العربية السعودية
    المشاركات
    439

    Question كيف يمكنني كتابة هذا الأمر

    السلام عليكم جميع

    أول ما أشغل الإكسبيرت بيفتح أمر معلق على بعد عدد معين من النقاط من سعر بدأ تشغيل الإكسبيرت
    فلنفرض عند بدأتشغيل الإكسبيرت كان السعر على 1200 و فيقوم الإكسبيرت بفتح عملية معلقة على بعد 20 نقطة يعني 1220 , بعد كده أتفعل الأمر هذا
    فكيف يمكنني من تعريف هذا السعر ( 1220 ) لأستخدمه لفتح عمليات أخرى ؟؟ أرجو كتابة الأمر برمجيا إن أمكن !
    للعلم بأن هذا الأمر المفعل له عدد لوت مختلف عن باقي الأوامر و اللتي سوف يقوم الإكسبيرت بفتحها .
    إن شاء الله المطلوب واضح
    و دمتم بخير

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

    افتراضي

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

    أول ما أشغل الإكسبيرت بيفتح أمر معلق على بعد عدد معين من النقاط من سعر بدأ تشغيل الإكسبيرت
    فلنفرض عند بدأتشغيل الإكسبيرت كان السعر على 1200 و فيقوم الإكسبيرت بفتح عملية معلقة على بعد 20 نقطة يعني 1220 , بعد كده أتفعل الأمر هذا
    فكيف يمكنني من تعريف هذا السعر ( 1220 ) لأستخدمه لفتح عمليات أخرى ؟؟ أرجو كتابة الأمر برمجيا إن أمكن !
    للعلم بأن هذا الأمر المفعل له عدد لوت مختلف عن باقي الأوامر و اللتي سوف يقوم الإكسبيرت بفتحها .
    إن شاء الله المطلوب واضح
    و دمتم بخير
    وعليكم السلام ورحمة الله وبركاته
    إستخدم الداله GlobalVariableSet لحفظ سعر فتح الصفقة كمثال
    كود PHP:
    if(GlobalVariableGet("Price")==0){
       
    GlobalVariableSet("Price",Bid);
       } 
    ثم بعد ذلك إذا أردت إستدعائه في أجزاء مختلفه في الإكسبرت ستستخدم الداله
    كود PHP:
    GlobalVariableGet("Price"); 
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  3. #3
    الصورة الرمزية alshakatan
    alshakatan غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Mar 2007
    الإقامة
    المملكة العربية السعودية
    المشاركات
    439

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    وعليكم السلام ورحمة الله وبركاته
    إستخدم الداله GlobalVariableSet لحفظ سعر فتح الصفقة كمثال
    كود PHP:
    if(GlobalVariableGet("Price")==0){
       
    GlobalVariableSet("Price",Bid);
       } 
    ثم بعد ذلك إذا أردت إستدعائه في أجزاء مختلفه في الإكسبرت ستستخدم الداله
    كود PHP:
    GlobalVariableGet("Price"); 
    شكرا مستر دولار
    أنا كتبت الأمر بالشكل التالي
    كود PHP:
    if (MyBuyRealOrdersTotal(MagicNumber)==1)
                                           
    GlobalVariableSet("UpLevel",OrderOpenPrice());   
                                        
    BBP=GlobalVariableGet("UpLevel"); 
    فتم الإحتفاظ بالسعر ........ و لكن بعد أن يتم إغلاق العقود و فتح العقود الجديدة لا يتعرف الإكسبيرت على السعر الجديد بل يأخذ السعر القديم
    فأين تكمن المشكلة أو كيف أتفادى هذه المشكلة ؟؟
    و شكرا لتعاونك

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

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة alshakatan مشاهدة المشاركة
    شكرا مستر دولار
    أنا كتبت الأمر بالشكل التالي
    كود PHP:
    if (MyBuyRealOrdersTotal(MagicNumber)==1)
                                           
    GlobalVariableSet("UpLevel",OrderOpenPrice());   
                                        
    BBP=GlobalVariableGet("UpLevel"); 
    فتم الإحتفاظ بالسعر ........ و لكن بعد أن يتم إغلاق العقود و فتح العقود الجديدة لا يتعرف الإكسبيرت على السعر الجديد بل يأخذ السعر القديم
    فأين تكمن المشكلة أو كيف أتفادى هذه المشكلة ؟؟
    و شكرا لتعاونك
    ضع شرط عندما يجد الإكسبرت بأنه لا توجد أي صفقة مفتوحه يتم حذف القيم المحفوظه
    كود PHP:
    if(OrdersTotal()<1)GlobalVariableDel("Price"); 
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  5. #5
    الصورة الرمزية alshakatan
    alshakatan غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Mar 2007
    الإقامة
    المملكة العربية السعودية
    المشاركات
    439

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    ضع شرط عندما يجد الإكسبرت بأنه لا توجد أي صفقة مفتوحه يتم حذف القيم المحفوظه
    كود PHP:
    if(OrdersTotal()<1)GlobalVariableDel("Price"); 
    شكرا مستر ولار
    لقد أدى
    كود PHP:
    GlobalVariableDel 
    الغرض المطلوب بالظبط
    لكن لم أستطع أن أستدعي GlobalVariableGet هنا
    كود PHP:
    void TrailingTakeProfitBuy(int trailingTakeProfit
          { 
                 
                for (
    int i=0i<OrdersTotal(); i++) 
                      { 
                            if (
    OrderSelect(iSELECT_BY_POSMODE_TRADES)) 
                                  { 
                                        if (
    OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber
                                              { 
                                                    if (
    OrderType()==OP_BUY )
                                                       {
                                                              if (
    OrdersTotal()==1)
                                                                       
    ModifyTakProfit(GlobalVariableGet("UpLevel")+61*Poin); 
    فما هو الحل ؟؟؟؟
    غلبتك معاي يا باش مهندس

  6. #6
    الصورة الرمزية alshakatan
    alshakatan غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Mar 2007
    الإقامة
    المملكة العربية السعودية
    المشاركات
    439

    افتراضي

    للأعلى

  7. #7
    الصورة الرمزية alshakatan
    alshakatan غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Mar 2007
    الإقامة
    المملكة العربية السعودية
    المشاركات
    439

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة alshakatan مشاهدة المشاركة
    شكرا مستر ولار
    لقد أدى
    كود PHP:
    GlobalVariableDel 
    الغرض المطلوب بالظبط
    لكن لم أستطع أن أستدعي GlobalVariableGet هنا
    كود PHP:
    void TrailingTakeProfitBuy(int trailingTakeProfit
          { 
                 
                for (
    int i=0i<OrdersTotal(); i++) 
                      { 
                            if (
    OrderSelect(iSELECT_BY_POSMODE_TRADES)) 
                                  { 
                                        if (
    OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber
                                              { 
                                                    if (
    OrderType()==OP_BUY )
                                                       {
                                                              if (
    OrdersTotal()==1)
                                                                       
    ModifyTakProfit(GlobalVariableGet("UpLevel")+61*Poin); 
    فما هو الحل ؟؟؟؟
    غلبتك معاي يا باش مهندس
    لقد قمت بعمل إكسبيرت جديد و أستخدمت الدالة من جديد في نفس المكان اللي ما رضي يتعرف عليه من قبل ....... و ظبطت العملية
    ممكن المشكلة كانت من بعض الصيغ في الإكسبيرت القديم و اللي ماله داعي من وجوده
    عموما السؤال الأخير لقفل هذا الموضوع , هل من الممكن إستدعاء الدالة
    كود:
    GlobalVariableSet("Price",Bid)
    في أي مكان في الإكسبيرت ؟؟
    و شكرا يا باش مهندس أسامة


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