الموضوع: سؤال برمجي
عرض مشاركة واحدة
قديم 12-11-2013, 12:40 PM   المشاركة رقم: 2
الكاتب
اسلام العوامى
عضو ذهبى
الصورة الرمزية اسلام العوامى

البيانات
تاريخ التسجيل: Apr 2012
رقم العضوية: 9148
الدولة: alexandria - egypt
المشاركات: 5,888
بمعدل : 1.23 يوميا

الإتصالات
الحالة:
اسلام العوامى غير متواجد حالياً
وسائل الإتصال:

كاتب الموضوع : Qamar14 المنتدى : منتدى المؤشرات و الاكسبيرتات
افتراضي رد: سؤال برمجي

المشاركة الأصلية كتبت بواسطة Qamar14 نقره لعرض الصورة في صفحة مستقلة
اهلين بالجميع

عندي مشكله بسيطه
وحابه اعرف كيف ابرمجها بالاكسبيرت

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

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

متلا
وادا ارتفع بـ 5 نقاط ابغي يفتح عقد شراء جديد
وادا ارتفع بـ 5 نقاط تانيه يفتح عقد شراء تاني الخ

فكيف احطي صيغه ليها؟
،،،اولا يلزم عمل دالتين لمعرفة سعر اخر صفقة بيع وسعر اخر صفقة شراء،،،

كود:
double FindLastBuyPrice() {
كود:

   double l_ord_open_price_0;
   int l_ticket_8;
   double ld_unused_12 = 0;
   int l_ticket_20 = 0;
   for (int l_pos_24 = OrdersTotal() - 1; l_pos_24 >= 0; l_pos_24--) {
      OrderSelect(l_pos_24, SELECT_BY_POS, MODE_TRADES);
      if (OrderSymbol() != Symbol() || OrderMagicNumber() != gi_356) continue;
      if (OrderSymbol() == Symbol() && OrderMagicNumber() == gi_356 && OrderType() == OP_BUY) {
         l_ticket_8 = OrderTicket();
         if (l_ticket_8 > l_ticket_20) {
            l_ord_open_price_0 = OrderOpenPrice();
            ld_unused_12 = l_ord_open_price_0;
            l_ticket_20 = l_ticket_8;
         }
      }
   }
   return (l_ord_open_price_0);
}

double FindLastSellPrice() {
   double l_ord_open_price_0;
   int l_ticket_8;
   double ld_unused_12 = 0;
   int l_ticket_20 = 0;
   for (int l_pos_24 = OrdersTotal() - 1; l_pos_24 >= 0; l_pos_24--) {
      OrderSelect(l_pos_24, SELECT_BY_POS, MODE_TRADES);
      if (OrderSymbol() != Symbol() || OrderMagicNumber() != gi_356) continue;
      if (OrderSymbol() == Symbol() && OrderMagicNumber() == gi_356 && OrderType() == OP_SELL) {
         l_ticket_8 = OrderTicket();
         if (l_ticket_8 > l_ticket_20) {
            l_ord_open_price_0 = OrderOpenPrice();
            ld_unused_12 = l_ord_open_price_0;
            l_ticket_20 = l_ticket_8;
         }
      }
   }
   return (l_ord_open_price_0);
}
،،،وتقومين بمساواه الدالتين بمتغيرين داخل ستارت ثم تقومين بوضع شرط فتح الصفقات الجديدة،،،

كود:
double lastbuyprice = FindLastBuyPrice();

كود:
double lastsellprice = FindLastSellPrice();
كود:
if (lastbuyprice == ASK-(5*point)) OrderSend(Symbol(),OP_BUY,Lots,lastbuyprice ,3,0,0,"",Magicnumber,0,Green);

،،،ونفس الامر بالنسبة للبيع،،،



التوقيع

عرض البوم صور اسلام العوامى  
رد مع اقتباس
  #2  
قديم 12-11-2013, 12:40 PM
اسلام العوامى اسلام العوامى غير متواجد حالياً
عضو ذهبى
افتراضي رد: سؤال برمجي

المشاركة الأصلية كتبت بواسطة Qamar14 نقره لعرض الصورة في صفحة مستقلة
اهلين بالجميع

عندي مشكله بسيطه
وحابه اعرف كيف ابرمجها بالاكسبيرت

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

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

متلا
وادا ارتفع بـ 5 نقاط ابغي يفتح عقد شراء جديد
وادا ارتفع بـ 5 نقاط تانيه يفتح عقد شراء تاني الخ

فكيف احطي صيغه ليها؟
،،،اولا يلزم عمل دالتين لمعرفة سعر اخر صفقة بيع وسعر اخر صفقة شراء،،،

كود:
double FindLastBuyPrice() {
كود:

   double l_ord_open_price_0;
   int l_ticket_8;
   double ld_unused_12 = 0;
   int l_ticket_20 = 0;
   for (int l_pos_24 = OrdersTotal() - 1; l_pos_24 >= 0; l_pos_24--) {
      OrderSelect(l_pos_24, SELECT_BY_POS, MODE_TRADES);
      if (OrderSymbol() != Symbol() || OrderMagicNumber() != gi_356) continue;
      if (OrderSymbol() == Symbol() && OrderMagicNumber() == gi_356 && OrderType() == OP_BUY) {
         l_ticket_8 = OrderTicket();
         if (l_ticket_8 > l_ticket_20) {
            l_ord_open_price_0 = OrderOpenPrice();
            ld_unused_12 = l_ord_open_price_0;
            l_ticket_20 = l_ticket_8;
         }
      }
   }
   return (l_ord_open_price_0);
}

double FindLastSellPrice() {
   double l_ord_open_price_0;
   int l_ticket_8;
   double ld_unused_12 = 0;
   int l_ticket_20 = 0;
   for (int l_pos_24 = OrdersTotal() - 1; l_pos_24 >= 0; l_pos_24--) {
      OrderSelect(l_pos_24, SELECT_BY_POS, MODE_TRADES);
      if (OrderSymbol() != Symbol() || OrderMagicNumber() != gi_356) continue;
      if (OrderSymbol() == Symbol() && OrderMagicNumber() == gi_356 && OrderType() == OP_SELL) {
         l_ticket_8 = OrderTicket();
         if (l_ticket_8 > l_ticket_20) {
            l_ord_open_price_0 = OrderOpenPrice();
            ld_unused_12 = l_ord_open_price_0;
            l_ticket_20 = l_ticket_8;
         }
      }
   }
   return (l_ord_open_price_0);
}
،،،وتقومين بمساواه الدالتين بمتغيرين داخل ستارت ثم تقومين بوضع شرط فتح الصفقات الجديدة،،،

كود:
double lastbuyprice = FindLastBuyPrice();

كود:
double lastsellprice = FindLastSellPrice();
كود:
if (lastbuyprice == ASK-(5*point)) OrderSend(Symbol(),OP_BUY,Lots,lastbuyprice ,3,0,0,"",Magicnumber,0,Green);

،،،ونفس الامر بالنسبة للبيع،،،




رد مع اقتباس