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

    افتراضي كود لتغيير حجم العقد على التوالي

    بعد محاولة يائسة لكتابة كود لم أجد احد يساعدني في هذا غير أخواني المبرمجين في هذا المنتدى على رأسهم أخونا الفاضل مستردولار.

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

    1 2 1 2 1 2 1 2 1 2 وهكذا بغض النظر عن نوع الصفقة وما إذا كانت مفتوحة او تم إغلاقها

    وكذلك إختيار الهدف والستوب لوز على حسب حجم العقد مثلا ان يكون الهدف في حالة العقدين 10 نقاط او يكون 20 نقطة في حالة العقد الواحد.

    أسأل الله لي ولكم التوفيق والسداد

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

    افتراضي رد: كود لتغيير حجم العقد على التوالي

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

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

    1 2 1 2 1 2 1 2 1 2 وهكذا بغض النظر عن نوع الصفقة وما إذا كانت مفتوحة او تم إغلاقها

    وكذلك إختيار الهدف والستوب لوز على حسب حجم العقد مثلا ان يكون الهدف في حالة العقدين 10 نقاط او يكون 20 نقطة في حالة العقد الواحد.

    أسأل الله لي ولكم التوفيق والسداد
    يمكنك أن تبرمج دالة تعود بحجم لوت آخر صفقه تم فتحها وبالتالي إذا كان حجم اللوت 1 إذن الصفقه التاليه ستكون 2 لوت والعكس صحيح
    مثال:
    كود PHP:
    double LastLot(){
    for(
    int i=OrdersHistoryTotal();i>0;i--){
    OrderSelect(i,SELECT_BY_POS,MODE_HISTORY);
    if(
    OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber){
    return(
    OrderLots());
    }
     }
    return(
    0);

    ثم ستضع قبل أمر الشراء او البيع
    كود PHP:
    if(LastLot()==2)Lots=1;
    if(
    LastLot()==1)Lots=2
    بطريقة أخرى وأسهل وستؤدي نفس الغرض
    أسفل أمر الشراء أو البيع ستحتفظ بحجم آخر لوت في ذاكرة الميتاتريدر
    كود PHP:
    GlobalVariableSet("LastLot",Lots); 
    ثم قبل أمر الشراء أو البيع
    كود PHP:
    if(GlobalVariableGet("LastLot")==1)Lots=2;
    if(
    GlobalVariableGet("LastLot")==2)Lots=1
    طبعا المتغير Lots هو حجم اللوت والذي يوضع كمتغير في الأمر OrderSend
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

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

    افتراضي رد: كود لتغيير حجم العقد على التوالي

    يعجز اللسان عن شكرك أخي مستردولار ..أرفع قبعتي إحتراماً إجلالاً لك .

    أسأل الله ان يزرقك من حيث لا تحتسب وأ يصلح لك الذرية ويجمعك بمن تحب في جنات النعيم

    موفق أخي

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

    افتراضي رد: كود لتغيير حجم العقد على التوالي

    أخي مستر دولار بارك الله فيك

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

    كتابة الكود تبدو سليمة مبدئيا ولا توجد اخطاء والغريب انه لا يفتح ولا امرا واحد


    كود:
    int typeorder = OP_BUY;
             OrderSend(Symbol(),OP_BUY,Lots,Ask,Ask-StopLoss,0,Green);
             GlobalVariableSet("OrderType",typeorder);  
       
      
    if(GlobalVariableGet("OrderType")==OP_BUY)typeorder=OP_SELL;
    if(GlobalVariableGet("OrderType")==OP_SELL)typeorder=OP_BUY;
       
        OrderSend(Symbol(),OP_SELL,Lots,Bid,Bid-StopLoss,0,Green);
    أرجو منك التصحيح وفقك الله
    الملفات المرفقة الملفات المرفقة
    آخر تعديل بواسطة 4X Trader ، 07-10-2010 الساعة 04:17 PM

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

    افتراضي رد: كود لتغيير حجم العقد على التوالي

    انتظرك أخي مستردولار

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

    افتراضي رد: كود لتغيير حجم العقد على التوالي

    اقتباس المشاركة الأصلية كتبت بواسطة 4X Trader مشاهدة المشاركة
    أخي مستر دولار بارك الله فيك

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

    كتابة الكود تبدو سليمة مبدئيا ولا توجد اخطاء والغريب انه لا يفتح ولا امرا واحد


    كود:
    int typeorder = OP_BUY;
             OrderSend(Symbol(),OP_BUY,Lots,Ask,Ask-StopLoss,0,Green);
             GlobalVariableSet("OrderType",typeorder);  
       
      
    if(GlobalVariableGet("OrderType")==OP_BUY)typeorder=OP_SELL;
    if(GlobalVariableGet("OrderType")==OP_SELL)typeorder=OP_BUY;
       
        OrderSend(Symbol(),OP_SELL,Lots,Bid,Bid-StopLoss,0,Green);
    أرجو منك التصحيح وفقك الله
    كتابتك للأكواد غير كاملة يا أخي العزيز مثلا بالنسبة للأمر OrderSend فلم تكتب الكود بشكل صحيح أين الهدف أين الماجيك نمبر والكومنت

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


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