Wednesday, September 14, 2022

close all orders in mt4 script

 //+------------------------------------------------------------------+

//|                                            close-all-orders.mq4  |

//|                                  Copyright © 2005  |

//|                                       Custom Metatrader Systems. |

//+------------------------------------------------------------------+


#property copyright "Copyright © 2005"

int start()

{

  int total = OrdersTotal();

  for(int i=total-1;i>=0;i--)

  {

    OrderSelect(i, SELECT_BY_POS);

    int type   = OrderType();


    bool result = false;

    

    switch(type)

    {

      //Close opened long positions

      case OP_BUY       : result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_BID), 5, Red );

                          break;

      

      //Close opened short positions

      case OP_SELL      : result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 5, Red );

                          break;


      //Close pending orders

      case OP_BUYLIMIT  :

      case OP_BUYSTOP   :

      case OP_SELLLIMIT :

      case OP_SELLSTOP  : result = OrderDelete( OrderTicket() );

    }

    

    if(result == false)

    {

      Alert("Order " , OrderTicket() , " failed to close. Error:" , GetLastError() );

      Sleep(3000);

    }  

  }

  

  return(0);

}





No comments:

Post a Comment