简体   繁体   中英

how can I get last trade result?

How can I get the last trade result in mql4 bot? I mean the part of code, mine does not work. This is code, how can I do it?

   int a = 0;
  
   while(a == 0){
       OrderSend(Symbol(),OP_BUY,0.01,price,5,0,(Ask+0.0002),0,0,0,Green);
       a = 1;
   }

   //if(OrderSelect(OrdersTotal()-1, SELECT_BY_POS)==true){
   //    Print("Profit for the order 10 " + OrderProfit());
   //}
   //else{
   //    Print("OrderSelect returned the error of " + GetLastError());
   //}
   
   OrderSelect(OrderTicket(), SELECT_BY_POS);
   Print("Profit for the order 10 " + OrderProfit());
   OrderModify(OrderTicket(),OrderOpenPrice(),(Ask-0.0001),0,0,0);
   if(OrderProfit()<0){
       OrderSend(Symbol(),OP_SELL,0.01,price,5,0,0,0,0,0,Green);
   }
   else{
       OrderSend(Symbol(),OP_BUY,0.01,price,5,0,0,0,0,0,Red);
   }

To select last open or pending order from trading pool:

OrderSelect(OrdersTotal()-1, SELECT_BY_POS);

If you want to select last closed or canceled order:

OrderSelect(OrdersHistoryTotal()-1, SELECT_BY_POS, MODE_HISTORY);

You can get more information in the docs OrderSelect()

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM