Asesores Expertos: Well Martin - página 3

 
BestBroker:
bool Buy=Ask<BBLow[1] && ADX[1]<ADXLevel && (LastDealType()==0 || LastDealType()==2);
//--- Ruptura del límite inferior de las Bandas de Bolinger y operación contraria

bool Sell=Bid>BBUp[1] && ADX[1]<ADXLevel && (LastDealType()==0 || LastDealType()==1)

¿Significa esto que sólo se realiza una comprobación de tendencia antes de entrar en una ruptura de BB?

Es decir, ¿si la tendencia ADX es alcista (+DI es mayor que -DI) se realizará una entrada en la ruptura del límite inferior de BB, pero si la tendencia ADX es bajista (-DI es mayor que +DI) no se realizará ninguna entrada en la ruptura del límite inferior de BB?

¿La línea principal(MAIN_LINE) no cuenta en absoluto?

1. No tengo operaciones abiertas en el probador. No hay mensajes de error en los registros. He configurado los parámetros como en la imagen https://www.mql5.com/es/code/13315.

Lo estoy resolviendo.

2. Basado en el código:

 bool Buy=Ask<BBLow[1] && ADX[1]<ADXLevel && (LastDealType()==0 || LastDealType()==2);

No es cuestión de que el precio cruce las líneas BB para entrar en una posición en absoluto.

Aquí están las condiciones para una compra:

El precio del instrumento Ask está por debajo de la banda BB inferior en la primera barra formada y el valor de ADX de MAIN_LINE en la primera barra formada está por debajo del valor de su ADXLevel (como un flat), y la operación anterior en el historial fue una Buy o no hubo ninguna operación.

Para ventas - imagen espejo.

Well Martin
Well Martin
  • votos: 12
  • 2015.06.25
  • Andrew Kornishkin
  • www.mql5.com
Советник Well Martin на основе двух индикаторов: Bollinger Bands и ADX.
 

¿Puede decirme cómo probarlo?

No abro operaciones - el diario está limpio. He establecido todos los parámetros necesarios: depo tamaño 100 000, min lote 1, a 10 000 y min lote 0,1 - también no probó. Broker BKS. MT5. Los valores de las variables externas como en la imagen de la primera página. EURUSD. M15. Y la prueba va en OHLC en M1 desde 2010. Apalancamiento 1:100.

 
Roman Shiredchenko:

1. Tengo en el probador - las operaciones no se abren. No hay mensajes de error en los registros. He establecido los parámetros como en la imagen https://www.mql5.com/es/code/13315.

Estoy averiguando.

2. Basado en el código:

No es cuestión de que el precio cruce las líneas BB para entrar en una posición en absoluto.

Aquí están las condiciones para una compra:

El precio del instrumento Ask está por debajo de la banda BB inferior en la primera barra formada y el valor de ADX de MAIN_LINE en la primera barra formada está por debajo del valor de su ADXLevel (como un flat), y la operación anterior en el historial fue una Buy o no hubo ninguna operación.

Para las ventas - imagen de espejo.

¡Muchas gracias por la aclaración!

No abre las operaciones sobre la base de lo que usted dijo que es difícil decir por qué, me he encontrado con muchos EAs que no se abren las operaciones en determinados tp y sl. Hay que intentar buscar estos parámetros.

Puedo decir con seguridad que se prueba a través de la terminal de broker-Opening y demo-terminal de forex DC Alpari.

 
BestBroker:

Muchas gracias por la aclaración.

No abre operaciones en base a lo que has dicho es difícil decir por qué, he conocido muchos EAs que no abren operaciones en determinados tp y sl. Hay que intentar buscar estos parámetros.

Puedo decir con exactitud que se prueba a través de la terminal del corredor de apertura y demo-terminal de divisas DC Alpari.------------------------------------------entendido gracias. Voy a probarlo en el terminal de apertura. no es posible escribir una respuesta normal desde mi teléfono móvil. el cursor sigue saltando a su puesto. BAG. escribiré al servicio técnico más tarde.











 
Roman Shiredchenko:
Si tiene alguna pregunta, póngase en contacto con nosotros.
 
GRACIAS
 
¿Podría añadir el número mágico para el EA? Thank you.
 

Gracias por este pequeño y sencillo ejemplo usando el indicador BB+ADX.

Después de algunas mejoras (y especialmente añadiendo +DI, -DI), obtuve muy buenos resultados.

Permítanme señalar la función "IsNewBar" que no funciona :

La variable "m_TOld" no es estática y siempre será diferente de"TNew".

Puedes sustituirla por esta : (ver: https://www.mql5.com/es/articles/22)

//+------------------------------------------------------------------+
//| Devuelve true si ha aparecido una nueva barra para un par símbolo/periodo ||
//+------------------------------------------------------------------+
bool isNewBar()
  {
//--- memoriza la hora de apertura del último compás en la variable estática
   static datetime last_time=0;
//--- hora actual
   datetime lastbar_time=SeriesInfoInteger(Symbol(),Period(),SERIES_LASTBAR_DATE);

//--- si es la primera llamada de la función
   if(last_time==0)
     {
      //--- fijar la hora y salir
      last_time=lastbar_time;
      return(false);
     }

//--- si la hora difiere
   if(last_time!=lastbar_time)
     {
      //--- memoriza la hora y devuelve true
      last_time=lastbar_time;
      return(true);
     }
//--- si pasamos a esta línea, entonces la barra no es nueva; return false
   return(false);
  }

Y ahora ya no hay problema.

Saludos ;)

The "New Bar" Event Handler
The "New Bar" Event Handler
  • www.mql5.com
MQL5 programming language is capable of solving problems on a brand new level. Even those tasks, that already have such solutions, thanks to object oriented programming can rise to a higher level. In this article we take a specially simple example of checking new bar on a chart, that was transformed into rather powerful and versatile tool. What tool? Find out in this article.