e-Skoch_Zakritie_KagBar

Author: Copyright � 2011, Skoch.
Orders Execution
Checks for the total of open ordersIt Closes Orders by itself
Miscellaneous
It issuies visual alerts to the screen
0 Views
0 Downloads
0 Favorites
e-Skoch_Zakritie_KagBar
//+------------------------------------------------------------------+
//|                                      e-Skoch_Zakritie_KagBar.mq4 |
//|                                         Copyright © 2011, Skoch. |
//|                                         http://www.fxgeneral.com |
//|     http://fxgeneral.com/forum/index.php?showtopic=254&st=0      |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2011, Skoch."
#property link      "http://www.fxgeneral.com"

extern int     _magic      = 1000;
extern string  _timeStart     = "00:00";
extern string  _timeStop      = "23:59";


datetime _lastBar;
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
  datetime _endTrade, _startTrade;
   _startTrade=StrToTime(_timeStart);
   _endTrade=StrToTime(_timeStop);
   if (_endTrade<_startTrade){ 
      Alert("Íåâåðíî óêàçàíî âðåìÿ íà÷àëà è îêîí÷àíèÿ òîðãîâ! Òîðãîâëÿ çàïðåùåíà!");
      return;
   }
   bool _tradeAllowed=(TimeCurrent()>_startTrade && TimeCurrent()<_endTrade);
   if (!_tradeAllowed){
      Comment("Òîðãîâëÿ çàïðåùåíà!" + "\n FXGeneral.com");
      return;
   }    

//----
  if (_lastBar==Time[0]) return;//if (Volume[0]>1) return;
   if (OrdersTotal()>0) _OrdersClose(); 
//----
_lastBar=Time[0];
   return(0);
  }
//+------------------------------------------------------------------+
void _OrdersClose(){
   int i;
   for (i=OrdersTotal()-1; i>=0; i--){
      if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){
         if (OrderType()==OP_BUY && OrderSymbol()==Symbol() && OrderMagicNumber()==_magic) {
            while (IsTradeContextBusy()) Sleep(1000);
            RefreshRates();
            OrderClose(OrderTicket(),OrderLots(),Bid,5,Green);
         }
         if (OrderType()==OP_SELL && OrderSymbol()==Symbol() && OrderMagicNumber()==_magic){
            while(IsTradeContextBusy()) Sleep(1000);
            RefreshRates();
            OrderClose(OrderTicket(),OrderLots(),Ask,5,Red);
         }
      }
   }
return;
}
//+------------------------------------------------------------------+

Comments