รบกวนสอบถาม การเปรียบเทียบค่าหน่อยครับ

  • 7 replies
  • 946 views

0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

*

ออฟไลน์ gaothun

  • **
  • 105
  • 0
ผมต้องการตัวอย่างโค๊ด ครับ คือ ต้องการลบออร์เดอร์ทั้งหมด แต่ให้เรียงลำดับกำไรมาก มากำไรน้อยครับ
ผมลองหลายอย่างแล้วก็ยังไม่ได้เลยครับ รบกวนผู้รู้ หรือ admin ช่วยชี้แนะด้วยครับ

Share Topic.


*

ออนไลน์ admin

  • *
  • 66,194
  • 2616

Re: รบกวนสอบถาม การเปรียบเทียบค่าหน่อยครับ

« ตอบกลับ #1 เมื่อ: 11, เมษายน 2019, 01:53:42 PM »
ลองทำตัวอย่าง code ที่ทำ มาให้ดูหน่อย ครับผม จะได้ช่วยแก้ให้
 (TH)**
"เอาชนะใจตัวเองให้ได้ ก่อนที่จะไปเอาชนะตลาด"

*

ออฟไลน์ gaothun

  • **
  • 105
  • 0

Re: รบกวนสอบถาม การเปรียบเทียบค่าหน่อยครับ

« ตอบกลับ #2 เมื่อ: 11, เมษายน 2019, 01:57:25 PM »
if(OpenOrders!=0 && AccountProfit()>=TargetProfit)
  {
   double show[20];
   double Or_Profit=0;
   double Profit=0;
   int ti_me=0;
   int x=0;
   cnt=0;
   while(cnt<OrdersTotal())
     {
         for(cnt=0;cnt<OrdersTotal();cnt++)   
           {
              result = OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
                mode=OrderType();
              if (OrderSymbol()==Symbol() && (OrderMagicNumber()==Magic || OrderMagicNumber()==Magic+1))
              Or_Profit = OrderProfit();
              if(ti_me==cnt){show[cnt]=Or_Profit;ti_me++;}

           }
            if(show[cnt]>show[cnt+1]){Profit=show[cnt];}
            if(Profit==OrderProfit())
                 {
                           if(mode==OP_BUY){ Tic =  OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),0,clrIndigo);}
                           if(mode==OP_SELL){Tic =  OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),0,clrCrimson);}
                 }
         if(OrdersTotal()==0){x=1;}
     }
  }


ล่าสุดแก้ไปแก้มา เป็นแบบนี้แล้วครับ
« แก้ไขครั้งสุดท้าย: 11, เมษายน 2019, 01:59:41 PM โดย gaothun »

*

ออฟไลน์ iRuler

  • *
  • 1,255
  • 39

Re: รบกวนสอบถาม การเปรียบเทียบค่าหน่อยครับ

« ตอบกลับ #3 เมื่อ: 11, เมษายน 2019, 03:05:45 PM »
ลองแบบนี้นะครับ ยังไม่ได้เทส

โค๊ด
while(OrdersTotal()>0)
     {
      bool result;
      int ticket=-1;
      double profit=-9999999;

      for(int i=0;i<OrdersTotal();i--)
        {
         if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
           {
            if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber)
              {
               if(OrderProfit()>profit)
                 {
                  ticket=OrderTicket();
                  profit=OrderProfit();
                 }
              }
           }
        }

      if(ticket>0)
        {
         if(OrderSelect(ticket,SELECT_BY_TICKET))
           {
            RefreshRates();
            if(OrderType()==OP_BUY)
               result=OrderClose(OrderTicket(),OrderLots(),Bid,3,clrNONE);
            if(OrderType()==OP_SELL)
               result=OrderClose(OrderTicket(),OrderLots(),Ask,3,clrNONE);
           }
        }
     }

*

ออฟไลน์ gaothun

  • **
  • 105
  • 0

Re: รบกวนสอบถาม การเปรียบเทียบค่าหน่อยครับ

« ตอบกลับ #4 เมื่อ: 11, เมษายน 2019, 03:18:35 PM »
ลองแบบนี้นะครับ ยังไม่ได้เทส

โค๊ด
while(OrdersTotal()>0)
     {
      bool result;
      int ticket=-1;
      double profit=-9999999;

      for(int i=0;i<OrdersTotal();i--)
        {
         if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
           {
            if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber)
              {
               if(OrderProfit()>profit)
                 {
                  ticket=OrderTicket();
                  profit=OrderProfit();
                 }
              }
           }
        }

      if(ticket>0)
        {
         if(OrderSelect(ticket,SELECT_BY_TICKET))
           {
            RefreshRates();
            if(OrderType()==OP_BUY)
               result=OrderClose(OrderTicket(),OrderLots(),Bid,3,clrNONE);
            if(OrderType()==OP_SELL)
               result=OrderClose(OrderTicket(),OrderLots(),Ask,3,clrNONE);
           }
        }
     }
ขอบคุณท่านมากมากนะครับ แต่เบ็คเทสแล้วมันค้าง อ่ะ

*

ออฟไลน์ iRuler

  • *
  • 1,255
  • 39

Re: รบกวนสอบถาม การเปรียบเทียบค่าหน่อยครับ

« ตอบกลับ #5 เมื่อ: 11, เมษายน 2019, 08:21:54 PM »
ลองแบบนี้นะครับ

โค๊ด
bool result;
int ticket=;
double profit;

while(OrdersTotal()>0)
     {
      ticket=-1;
      profit=-9999999;

      for(int i=0;i<OrdersTotal();i--)
        {
         if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
           {
            if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber)
              {
               if(OrderProfit()>profit)
                 {
                  ticket=OrderTicket();
                  profit=OrderProfit();
                 }
              }
           }
        }

      if(ticket>0)
        {
         if(OrderSelect(ticket,SELECT_BY_TICKET))
           {
            RefreshRates();
            if(OrderType()==OP_BUY)
               result=OrderClose(OrderTicket(),OrderLots(),Bid,3,clrNONE);
            if(OrderType()==OP_SELL)
               result=OrderClose(OrderTicket(),OrderLots(),Ask,3,clrNONE);
           }
        }
     }

*

ออฟไลน์ gaothun

  • **
  • 105
  • 0

Re: รบกวนสอบถาม การเปรียบเทียบค่าหน่อยครับ

« ตอบกลับ #6 เมื่อ: 11, เมษายน 2019, 09:12:05 PM »
ขอบคุณท่านมากมากครับ เดี๋ยวผมไปต่อยอดเองนะครับ ขอสอบถามอีกเรื่องได้ไหมครับ คือว่า

          if (OpenOrders!=0)
          {
               for(cnt=1;cnt<=OpenOrders;cnt++)
               {
                  mylotsi=NormalizeDouble(LastLotsSell*1.44,2);
               }
          }

ผมต้องการให้เปิดล็อตโดยเบิ้ล * 1.44  แต่ว่ามันออก 0.01 ตลอดเลยครับ

*

ออฟไลน์ iRuler

  • *
  • 1,255
  • 39

Re: รบกวนสอบถาม การเปรียบเทียบค่าหน่อยครับ

« ตอบกลับ #7 เมื่อ: 12, เมษายน 2019, 05:49:18 AM »
ดูแค่นี้ไม่รู้ ต้องดูโค้ดทั้งหมดครับ
 (TH)**

Tags:
 

เครื่องมือเทรด Forex

ข่าว Forex กราฟ Forex EURUSD GBPUSD GBPJPY ตารางข่าว Forex ร่วมงานกับเรา

เครื่องมือเทรดทองคำ

ราคาทอง วันนี้ ราคาทอง ย้อนหลัง SPDR ล่าสุด กราฟราคาทองคำ วิเคราะห์ ราคาทอง ข่าว ราคาทองคำ ข่าว ราคาน้ำมัน

โบรคเกอร์ Forex

XM Exness FBS Nordfx Land-FX Admiral Markets