النتائج 1 إلى 9 من 9
  1. #1
    الصورة الرمزية 300
    300
    300 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Sep 2009
    المشاركات
    873

    Unhappy هل هذا خطأ من المنصه او من الكود

    السلام عليكم ورحمة الله وبركاته
    جالس تدرب على برمجه اكسبيرتات
    بعمل على منصه جين كابيتال فوركس
    المشكله احيانا الهدف يختلف والاستوب يختلف في المسافه بلاحظها على الشارت
    واحيانا كثيره يظهر بشكل طبيعي
    قمت بوضع له خيارات استوب خارجي وضعت له 100 في منصه 5 ارقام
    وضعت له الهدف 100 في منصه 5 ارقام يعني هدف 10 واستوب 10
    مثلا هذه عمليه في journal ظهرت الخطوط كما في ملف مرفق
    كود:
    2013.06.04 09:03:18	'91146799': order was opened : #79662813 sell 0.10 GBPUSDpro at 1.52965 sl: 1.53089 tp: 1.52889
    دالة الشراء

    كود:
    int Buy(){
    OrderSend(Symbol(), OP_BUY, 0.1, Ask, 30 , Ask-Stop*Point, Ask+Take*Point,"" , 1234556,0,Green);
    
    }

    دالة البيع

    كود:
    int Sell(){
    OrderSend(Symbol(), OP_SELL, 0.1, Bid, 30 , Bid+Stop*Point, Bid-Take*Point,"" , 1234556,0,Red);
    
    }
    المتغيرات الخارجيه :

    كود:
    double Lots=0.10;
    extern int Stop=100;
    extern int Take = 100;


    في صوره مرفقه ايضا لاحظوا المسافه ايضا وصول السعر للهدف ولم يخرج .!
    انا بكتب حاليا تخطى السعر بعده نقاط حتى قام بالاغلاق
    اكسبيرت بسيط جدا وهكذا ظهرت اخطاء كيف لو عملت اكسبيرت حقيقي
    ولايوجد اي امر يعدل على الاستوب او الهدف
    ماهو السبب .؟
    الصور المصغرة للصور المرفقة الصور المصغرة للصور المرفقة 1.JPG‏  

  2. #2
    الصورة الرمزية wadi2012
    wadi2012 غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Aug 2012
    الإقامة
    جرين لاند
    المشاركات
    1,089

    افتراضي

    قد يكون البروكير ECN ففي هذه الحالة لا يقبل وضع استبو لوز ولا تيك بروفيت والحل في هذه المشكلة
    انك تجعل الوقف والهدف = صفر
    ثم تضيف دالة ordermodify()
    تضع فيها الهدف والوقف وسوف تحل المشكلة باذن الله
    او بدل من ان تستخدم الدالة الاخيرة تعمل معادلة وتبقي الوقف والهدف = صفر والمعادلة عبارة مقارنة بين سعر الدخول والسعر الحالي فان ساوى الهدف او الوقف تخرج او تدخل في صفقة اخرى

  3. #3
    الصورة الرمزية أسامة
    أسامة غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Jun 2005
    الإقامة
    ليبيا
    المشاركات
    1,763

    افتراضي

    أخي الكريم
    السلام عليكم ورحمة الله وبركاته
    بالنسبة للكود ... لاتوجد أخطأ على مايبدو ... تسلسل المتغيرات بدالة OrderSend صحيحة

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

    لذلك من الأفضل أن تقوم بوضع الأسك أيضا على الشارت فهذا يساعدك على رؤية متى بالضبط
    ستقفل الصفقة وخصوصا لو كان السبريد متغير.
    توقيع العضو
    نَصِيحَتِي لَكَ... اِبْحَثْ جَيِّدًا قَبْلَ أَنْ تَسْأَلَ... فَهَذَا يُعْلِمَك أَكْثَرَ

  4. #4
    الصورة الرمزية 300
    300
    300 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Sep 2009
    المشاركات
    873

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة wadi2012 مشاهدة المشاركة
    قد يكون البروكير ECN ففي هذه الحالة لا يقبل وضع استبو لوز ولا تيك بروفيت والحل في هذه المشكلة
    انك تجعل الوقف والهدف = صفر
    ثم تضيف دالة ordermodify()
    تضع فيها الهدف والوقف وسوف تحل المشكلة باذن الله
    او بدل من ان تستخدم الدالة الاخيرة تعمل معادلة وتبقي الوقف والهدف = صفر والمعادلة عبارة مقارنة بين سعر الدخول والسعر الحالي فان ساوى الهدف او الوقف تخرج او تدخل في صفقة اخرى
    تسلم اخي الحبيب
    الشركه ليست ecn حسب مابعرف هي شركة stp
    ممكن توضيح اكثر حول داله ordermodify
    مثل اكسبيرت يقوم بفتح صفه شراء في حال اخترق RSi اعلى 50 والبيع بالعكس
    والهدف والاستوب بمتغيرات خارجيه مثلا 15 واستوب 15
    ولكن يتم تنفيذ الهدف والاستوب غصب عن الشركه كيف يتم ذلك .؟

  5. #5
    الصورة الرمزية 300
    300
    300 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Sep 2009
    المشاركات
    873

    افتراضي

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

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

    لذلك من الأفضل أن تقوم بوضع الأسك أيضا على الشارت فهذا يساعدك على رؤية متى بالضبط
    ستقفل الصفقة وخصوصا لو كان السبريد متغير.
    عليكم السلام ورحمة الله وبركاته
    حياك الله اخي
    صراحه تفاجئت بمثل هذه المشكله والحساب اساسا ديمو
    احيانا يقبل الامر دون مشاكل واحيانا يضع هدف والاستوب بعكس المطلوب
    بدخل بحجم عقد 0.10 بهدف 10 بعض صفقات ربحه 7 دولار مثلا وبعضها تجده 2 دولار او 3 دولار
    ياريت لو في اوامر تجبر ميتاتريدر على وضع الهدف والاستوب
    شكرا لكم

  6. #6
    الصورة الرمزية wadi2012
    wadi2012 غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Aug 2012
    الإقامة
    جرين لاند
    المشاركات
    1,089

    افتراضي رد:هل هذا خطأ من المنصه او من الكود

    STP ECN لهما نفس الخواص ترفض الوقف والهدف يعني لازم يكون صفر
    كود PHP:
    OrderSend(Symbol(),0,Lots,Ask,3,0,0,"My order",magic_no,0,Green);
                 
    OrderModify(int ticket,Ask,Ask-TakeProfit*Point,Ask+TakeProfit*Point,0,CLR_NONE); 
    في مثل حالة ECN STP
    يتم عمل دالة ordersend بهدف ووقف = 0
    ثم يتبعها دالة ordermodify وتضع فيه الهدف والوقف
    راجع الدوال في صفة شركة mql4 او يمكنك البحث في الجوجل عن الدالة وكيفية التعامل معها

  7. #7
    الصورة الرمزية wadi2012
    wadi2012 غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Aug 2012
    الإقامة
    جرين لاند
    المشاركات
    1,089

    افتراضي

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

  8. #8
    الصورة الرمزية 300
    300
    300 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Sep 2009
    المشاركات
    873

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة wadi2012 مشاهدة المشاركة
    STP ECN لهما نفس الخواص ترفض الوقف والهدف يعني لازم يكون صفر
    كود PHP:
    OrderSend(Symbol(),0,Lots,Ask,3,0,0,"My order",magic_no,0,Green);
                 
    OrderModify(int ticket,Ask,Ask-TakeProfit*Point,Ask+TakeProfit*Point,0,CLR_NONE); 
    في مثل حالة ECN STP
    يتم عمل دالة ordersend بهدف ووقف = 0
    ثم يتبعها دالة ordermodify وتضع فيه الهدف والوقف
    راجع الدوال في صفة شركة mql4 او يمكنك البحث في الجوجل عن الدالة وكيفية التعامل معها
    جزاك الله خير اخي الحبيب جاري التجرربه

  9. #9
    الصورة الرمزية 300
    300
    300 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Sep 2009
    المشاركات
    873

    افتراضي

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


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