Скрипт : переворот позиций

При торговле периодически возникает желание закрыть существующую позицию и открыться в обратном направлении. Если в рынке работает 1-2 ордера, то это не проблема, а вот если их больше десятка, то это уже целая беда.

Скрипт переворачивает имеющиеся открытые позиции по текущей валютной паре.

Параметры скрипта:

— нет

//+------------------------------------------------------------------+
//|                                                 ReversOrders.mq4 | //| xbms | //|                                              mailto:[email protected] | //|                                                    http://mql.su | //+------------------------------------------------------------------+
#property copyright " xbms"
#property link      "/"
#property version   "1.00"
#property strict
//+------------------------------------------------------------------+
//| Script program start function | //+------------------------------------------------------------------+
void OnStart()
{
  double Lots;
  int    ticket;
  
  for (int i=OrdersTotal()-1; i>=0; i--) 
  {
    if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) 
    {
       if (OrderSymbol()==Symbol()) 
       {
          ticket = 0;
          
          if (OrderType() == OP_BUY) 
          {
             Lots = OrderLots();
             if (OrderClose(OrderTicket(), OrderLots(), Bid, 5, Black))
             {
                 ticket = OrderSend(Symbol(), OP_SELL, Lots, Bid, 7, 0, 0, "Inverted order", 0, 0 , Red);
             }
          }
          
          if (OrderType() == OP_SELL) 
          {
             Lots = OrderLots();
             if (OrderClose(OrderTicket(), OrderLots(), Ask, 5, Black))
             {
                 ticket = OrderSend(Symbol(), OP_BUY, Lots, Ask, 7, 0, 0, "Inverted order", 0, 0, Blue);
             }
          }
          
          if (ticket 

Скачать скрипт «ReversOrders»

 

Written by