Expert advisor que cierre ordenes a determinada hora

Foro dedicado a todo lo relacionado con la versión 4 de la plataforma de Metaquotes.
Responder
Avatar de Usuario
eurer
Mensajes: 789
Registrado: 09 May 2005 16:05
Ubicación: Tenerife

Expert advisor que cierre ordenes a determinada hora

Mensaje por eurer »

Tengo un expert advisor que cierra órdenes abiertas a la hora que yo lo especifique.Me falta que cierre además a esa misma hora, tanto órdenes abiertas como órdenes pendientes.
Ejemplo: que a las 21:15 cierre órdenes abiertas, y también órdenes pendientes.
En el EA que subo se puedo poner la hora de cierre de órdenes abiertas,pero no me cierra las órdenes pendientes que tenga puestas.
Si alguien es tan amable y le añade esa función estaré eternamente agradecido.
Fue obra de nstrader este EA.
Saludos.

#property copyright "Copyright © 2009, NsTrader"
#property link "[email protected]"

extern int Hora = 22;
extern int Minutos = 00;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
//----
int THora = TimeHour(TimeCurrent());
int TMin = TimeMinute(TimeCurrent());

Comment(THora,":",TMin);

if(Hora == THora && Minutos == TMin)
{
OClose(false);//true cierra solo las que estén en beneficio / false cierra todas
}
//----
return(0);
}
//+------------------------------------------------------------------+

void OClose(bool profit)
{
for(int cnt=0;cnt<OrdersTotal();cnt++)
{
if(OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES)==false) break;
if(OrderSymbol() != Symbol()) continue;
if(OrderType() <= 1 && ((profit && OrderProfit() > 0) || !profit))
{
color c;
double closePrice;

int tradeDirection = 1 - 2 * ( OrderType() % 2 );
if( tradeDirection > 0)
{
c = Blue;
closePrice = MarketInfo(Symbol(),MODE_BID);
}
else
{
c = Violet;
closePrice = MarketInfo(Symbol(),MODE_ASK);
}
OrderClose(OrderTicket(), OrderLots(), closePrice, 3, c);

}
}
}
Adjuntos
Cierre órdenes.mq4
(2.43 KiB) Descargado 91 veces
elcctrro
Mensajes: 329
Registrado: 26 Nov 2008 11:09
Ubicación: Zona centro España

Re: Expert advisor que cierre ordenes a determinada hora

Mensaje por elcctrro »

Aqui tienes la modificación, un saludo.
Adjuntos
Cierre órdenes.rar
(1.24 KiB) Descargado 96 veces
Avatar de Usuario
eurer
Mensajes: 789
Registrado: 09 May 2005 16:05
Ubicación: Tenerife

Re: Expert advisor que cierre ordenes a determinada hora

Mensaje por eurer »

Funciona de maravilla,como un reloj suizo.
Mil gracias electro. ;-)
elcctrro
Mensajes: 329
Registrado: 26 Nov 2008 11:09
Ubicación: Zona centro España

Re: Expert advisor que cierre ordenes a determinada hora

Mensaje por elcctrro »

Si quieres que comentemos algo del experto... msn.
un saludo.
Si te ha gustado este hilo del Foro, ¡compártelo en redes!


Responder

Volver a “Metatrader 4”