Jornadas Comerciales

1 respuesta

jdowney

Cliente, bbp_participant, comunidad, 12 respuestas.

Visitar el perfil

hace 10 años #111962

Hola Soporte,

 

Estoy teniendo un problema mi EA para el comercio en determinados días de la semana, con la opción de apagar o encender el día en EA.

 

Sin embargo, cuando hago el backtest en la plataforma MT4 el EA sólo opera los lunes y no el resto de la semana.

 

He configurado las variables como Boolan e int y he probado ambas opciones sin resultado.

 

ver captura de pantalla adjunta y estrategia (TradeDays On OFF.sqw)

 

¿Alguna idea, me estoy perdiendo algo o tal vez es el orden en que las normas deben ser ...

 

Saludos John.

 

 

//——————————————————————–
// No Trades Mon

IF (IsBarOpen es True) && (((MonTrade = 0)
      And (DayOfWeek[0] = _CONSTANT_))
ENTONCES
   // Acción #1
      Cerrar todos los pedidos;

   // Acción #2
   No hacer nada

END IF;

//——————————————————————–
// No Trades Tue

IF (IsBarOpen es True) && (((TueTrade = 0)
      And (DayOfWeek[0] = _CONSTANT_))
ENTONCES
   // Acción #1
      Cerrar todos los pedidos;

   // Acción #2
   No hacer nada

END IF;

//——————————————————————–
// No Trades Wed

IF (IsBarOpen es True) && (((WedTrade = 0)
      And (DayOfWeek[0] = _CONSTANT_))
ENTONCES
   // Acción #1
      Cerrar todos los pedidos;

   // Acción #2
   No hacer nada

END IF;

//——————————————————————–
// No Trades Thur

IF (IsBarOpen es True) && (((ThuTrade = 0)
      And (DayOfWeek[0] = _CONSTANT_))
ENTONCES
   // Acción #1
      Cerrar todos los pedidos;

   // Acción #2
   No hacer nada

END IF;

//——————————————————————–
// No Trades Fri

IF (IsBarOpen es True) && (((FriTrade = 0)
      And (DayOfWeek[0] = _CONSTANT_))
ENTONCES
   // Acción #1
      Cerrar todos los pedidos;

   // Acción #2
   No hacer nada

END IF;

//——————————————————————–
// No Trades Sat

IF (IsBarOpen es True) && (((SatTrade = 0)
      And (DayOfWeek[0] = _CONSTANT_))
ENTONCES
   // Acción #1
      Cerrar todos los pedidos;

   // Acción #2
   No hacer nada

END IF;

//——————————————————————–
// EnvUpper Band Short

IF (IsBarOpen es True) && (((Oferta >= Sobres( 8 , Exponencial , 0 , Precio medio , 0.12 )[1])
      Y ((SpreadInPips < 7)
      Y ((DíaDeLaSemana[0] = _CONSTANTE_)
      Y ((MonTrade = 1)
      O ((DayOfWeek[0] = _CONSTANT_)
      Y ((TueTrade = 1)
      O ((DayOfWeek[0] = _CONSTANT_)
      Y ((WedTrade = 1)
      O ((DayOfWeek[0] = _CONSTANT_)
      Y ((ThuTrade = 1)
      O ((DayOfWeek[0] = _CONSTANT_)
      Y ((FriTrade = 1)
      O ((DayOfWeek[0] = _CONSTANT_)
      Y (SatTrade = 1)))))))))))))))
ENTONCES
   // Acción #1
      Cerrar pedido con número mágico: 2000;

   // Acción #2
   Vender 0,1 lotes a precio de mercado
      Número mágico = 1000;
      Stop Loss = 25 pips;
      Profit Objetivo = (Sobres( 8 , Exponencial , 0 , Precio medio , 0.03 )[1] ? 1 : 0) pips;

   // Acción #3
      Dibuja la flecha hacia abajo;

END IF;

//——————————————————————–
// EnvLower Banda Larga

IF (IsBarOpen is True) && (((Ask <= Envelopes( 8 , Exponential , 0 , Median price , 0.12 )[1])
      Y ((SpreadInPips < 7)
      Y ((DíaDeLaSemana[0] = _CONSTANTE_)
      Y ((MonTrade = 1)
      O ((DayOfWeek[0] = _CONSTANT_)
      Y ((TueTrade = 1)
      O ((DayOfWeek[0] = _CONSTANT_)
      Y ((WedTrade = 1)
      O ((DayOfWeek[0] = _CONSTANT_)
      Y ((ThuTrade = 1)
      O ((DayOfWeek[0] = _CONSTANT_)
      Y ((FriTrade = 1)
      O ((DayOfWeek[0] = _CONSTANT_)
      Y (SatTrade = 1)))))))))))))))
ENTONCES
   // Acción #1
      Cerrar pedido con Número Mágico: 1000;

   // Acción #2
   Comprar 0,1 lotes a precio de mercado
      Número mágico = 2000;
      Stop Loss = 25 pips;
      Profit Objetivo = (Sobres( 8 , Exponencial , 0 , Precio medio , 0.03 )[1] ? 1 : 0) pips;

   // Acción #3
      Dibuja la flecha hacia arriba;

END IF;
 

0

Mark Fric

Administrador, sq-ultimate, 2 respuestas.

Visitar el perfil

hace 10 años #123738

Hola,

 

un problema que veo es que hay y / o condiciones no están debidamente entre corchetes. 

Debe añadir paréntesis para agrupar correctamente las condiciones "y" y "o", de lo contrario se evaluarán una por una, lo que tendrá resultados muy inesperados.

 

Puede establecer corchetes en el panel c IF, véase la captura de pantalla.

 

 

 

Archivo: corchetes.pngcorchetes.png

Mark
Arquitecto de StrategyQuant

0

Viendo 1 respuesta (de un total de 1)