Se puede cerrar automaticament a una hora todas las ordenes?

Foro dedicado a todo lo relacionado con la versión 4 de la plataforma de Metaquotes.
Responder
Avatar de Usuario
MaLiBoO
Mensajes: 346
Registrado: 09 Mar 2009 02:19

Se puede cerrar automaticament a una hora todas las ordenes?

Mensaje por MaLiBoO »

Bueno... El caso es q estoy probando un EA, el cual, todas las ordenes q hace suelen acabar en positivo como mucho a las 02:50 am, las demas q cierran horas mas tarde son de perdidas y bastante considerables... Entonces, quería saber si existe alguna solucion para q por ejemplo, a las 03:00 AM se cierren todas las ordenes, idependientemente de su estado, pues normalmente todas las positivas cierran antes de esa hora... Es q a esa hora estoy K.O. como cualquier humano :lol: para poderlo hacer manual...

Y no se si se puede o bien descompilar el EA y agregar ese "timer" (cosa q no tengo ni idea) o bien hay algun cacharrillo por ahi para tal fin...

Gracias a todos de antemano, viva el metatrader!
Avatar de Usuario
Cuotes
Mensajes: 1033
Registrado: 09 Jul 2006 17:35
Ubicación: ya ni lo se

Mensaje por Cuotes »

No conozco el metatrader pero incluso en algo tan arcaico y simple como mi adorado WLab puedes mirar la hora de una barra en tiempo real.

Doy por supuesto que el metatrader se podra hacer igual.

no?
-- ( ignoramus et ignorabimus ) --
Avatar de Usuario
MaLiBoO
Mensajes: 346
Registrado: 09 Mar 2009 02:19

Mensaje por MaLiBoO »

Hombre, supongo q será algo sencillo, estoy empezandome a leer el manual para programar con meta, pq esto de pedir favores me gusta poco :lol: NStrader! Alumbrame! :-D :-D
Avatar de Usuario
nstrader
Mensajes: 257
Registrado: 24 Mar 2007 19:33

Mensaje por nstrader »

Una forma rudimentaria sería poner el ea ese que estas probando en un grafico y este que he hecho en otro gráfico del mismo par, y a las 3 am te lo deberia de cerrar todo.

Pruebalo tu mismo porque yo no lo he probado, la función de cerrar ordenes la he hecho de memoria, así que ya me dirás si tiene algún error.

Código: Seleccionar todo

//+------------------------------------------------------------------+
//|                                                 Temp_Maliboo.mq4 |
//|                                       Copyright © 2009, NsTrader |
//|                                           [email protected] |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2009, NsTrader"
#property link      "[email protected]"

extern int Hora = 3;
//+------------------------------------------------------------------+
//| 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)
   {
      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);

       }
    }
}
Avatar de Usuario
MaLiBoO
Mensajes: 346
Registrado: 09 Mar 2009 02:19

Mensaje por MaLiBoO »

NStrader...

Eres mi gurú, yo de mayor quiero ser como tu! :D

Muchisimas gracias, de verdad...

Estoy probandolo a ver si fufa esto... Por ahora esta con la carita sonriente

He abierto un grafico nuevo, del mismo cruce, y he puesto el EA, creo q es asi como dices... Le he puesto la misma periodicidad por si acaso, aunque no creo q tenga mucho que ver...

Ya te comento!

Avatar de Usuario
MaLiBoO
Mensajes: 346
Registrado: 09 Mar 2009 02:19

Mensaje por MaLiBoO »

Pues si señor!

Efectivamente, se cierran las opes a las 3:00 AM

Macho, si un dia te vienes a Gran Canaria, tienes una birras, unas papas con mojo picon y un gofio escaldao pago! :-D

Mi mas sinceras gracias!
Si te ha gustado este hilo del Foro, ¡compártelo en redes!


Responder

Volver a “Metatrader 4”