اف اكس ارابيا..الموقع الرائد فى تعليم فوركس Forex

اف اكس ارابيا..الموقع الرائد فى تعليم فوركس Forex (https://fx-arabia.com/vb/index.php)
-   منتدى المؤشرات و الاكسبيرتات (https://fx-arabia.com/vb/forumdisplay.php?f=6)
-   -   سؤال برمجي (https://fx-arabia.com/vb/showthread.php?t=35368)

Qamar14 12-11-2013 09:06 AM

سؤال برمجي
 
اهلين بالجميع

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

كيف اكتب هاد الكود
انا ابغا من الاكسبيرت عند تقاطع الموفينج
يفتح ليا عقد = لحد هنا عارفه :1 (74):

لكن :1 (66): ابغاه لكما ارتفع عدد نقاط يفتح عقد جديد :1 (18):

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

فكيف احطي صيغه ليها؟

اسلام العوامى 12-11-2013 12:40 PM

رد: سؤال برمجي
 
اقتباس:

المشاركة الأصلية كتبت بواسطة Qamar14 (المشاركة 571077)
اهلين بالجميع

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

كيف اكتب هاد الكود
انا ابغا من الاكسبيرت عند تقاطع الموفينج
يفتح ليا عقد = لحد هنا عارفه :1 (74):

لكن :1 (66): ابغاه لكما ارتفع عدد نقاط يفتح عقد جديد :1 (18):

متلا
وادا ارتفع بـ 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);

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

Qamar14 12-11-2013 02:50 PM

رد: سؤال برمجي
 
شكرا ليك
جاري فهم الكود
وتجربتها

مع جزيل الشكر


الساعة الآن 06:08 PM

Powered by vBulletin® Copyright ©2000 - 2025

جميع الحقوق محفوظة الى اف اكس ارابيا www.fx-arabia.com