Página 1 de 1

Indicador Konkorde_Alert

Publicado: 02 Sep 2014 12:47
por baltic46
Estoy con un EA en mt4 y quiero utilizar el indicador Konkorde_Alert para filtrarías entradas! el Ea trabaja en 15 min pero el indicador sería en diario, la llamada que hago es así:

if(iCustom(NULL,1440,"Konkorde_Alert",true,15,2)==1) .......

El ==1 se que esta mal y no se qué variable usar no se sí el color,del indicador que es verde o rojo.

Gracias de antemano

Re: Indicador Konkorde_Alert

Publicado: 02 Sep 2014 15:04
por X-Trader
Hola baltic, puedes subir el indicador para que pueda verlo? Una vez analice el código te digo algo.

Saludos,
X-Trader

Re: Indicador Konkorde_Alert

Publicado: 02 Sep 2014 19:00
por baltic46
gracias Xtrader este es el enlace de donde lo he sacado.

http://www.forex.es/post20977.html#p20977


saludos

Re: Indicador Konkorde_Alert

Publicado: 02 Sep 2014 20:07
por mascara
¿No puedes imprimir de alguna forma el valor que devuelve iCustom(NULL,1440,"Konkorde_Alert",true,15,2)? Así sabrías por qué tipo de valores deberías preguntar en la condición...

Re: Indicador Konkorde_Alert

Publicado: 02 Sep 2014 22:53
por baltic46
Pasando el ratón por encima del indicador veo que las variables Value1=1 es que está para largos y Value2=1 está para cortos lo,que no se sí esas variables están vivas dentro,del PC al hacer backt test

Graxias

Re: Indicador Konkorde_Alert

Publicado: 02 Sep 2014 23:52
por X-Trader
Hola baltic, antes de nada para que todo el mundo se entere de que va el tema. Para los que no lo sepan, el esquema de la función iCustom en MQL4 es el siguiente:

Código: Seleccionar todo

double  iCustom(
   string       symbol,           // symbol
   int          timeframe,        // timeframe
   string       name,             // path/name of the custom indicator compiled program
   ...                            // custom indicator input parameters (if necessary)
   int          mode,             // line index
   int          shift             // shift
   );
Por otro lado, el indicador Konkorde_Alert tiene tres parámetros:

AlertsOn: true o false
Kon_Periodo: entero
Kon_Ancho: entero

Por tanto, el esquema que sigues para llamar al indicador es correcto:

if (iCustom(NULL,1440,"Konkorde_Alert",true,15,2)==1)

El problema creo que aparece al aplicarlo a divisas ya que en las pruebas que he hecho el indicador siempre me da valor 1.00, supongo que está pensado para otro tipo de activos.

De todos modos, ¿qué error obtienes? ¿O simplemente no hace nada el código? Si nos cuentas un poco qué es lo que intentas programar seguramente te pueda echar una mano.

Saludos,
X-Trader

Re: Indicador Konkorde_Alert

Publicado: 03 Sep 2014 15:16
por baltic46
La idea se basa en mi indicador de zonas de probabilidad que en principio indican puntos de entrada antitendencial, los objetivos son la zona contraria (unos 140 ptos de distancia en el dax pero que en funcion del ATR esas zonas se expanden o contraen) dicho indicador es bastante bueno con una probabilidad de acierto (DEJANDO LAS POSICIONES ABIERTAS EL TIEMPO QUE NECESITEN :() bastante elevada de un 90% aproximadamente, por lo que tendriamos largos y cortos abiertos al mismo tiempo con sus profit definidos en la entrada, bien el pronlema (siempre hay un problema) es que el sistema tiende a dejar posisiones abiertas en pérdida en los extremos de los ciclos del precio, en el resto del rango del ciclo se cierran todas, asi a pelo el sistema a mi no me gusta por lo que necesito algo que me indique que nos acercamos a un techo o a un suelo con un margen de error de 300-400 ptos dax a lo máximo, porque mi idea es que las señales por encima o por debajo del techo/suelo ESTIMADO es que las entradas tengan por defecto un STOP LOSS (probablemente dinamico) y así hasta que no se llegue a la zona de rango normalito en el que las entradas no tienen STOPS tenemos las perdidas controladas.
El konkorde Alert me parece un indicador que me puede filtrar eso, he probado haciendo el indicador TomDemark y mas o menos lo resuelve, pero quiero afinar más y como el konkorde para ninja siempre lo he tenido presente pues queria usarlo de forma que si me indica Largos o Cortos usarlo en el EA y activar los STOPS de la pata que pida.
Internamente el konkorde tiene dos variables Value1 y value 2 de mforma que V1 a 1 es largos, y el V2 a 1 es cortos por eso siempre ves el 1 por ahi, otra forma podría ser chequear las Alertas que esas si que aparecen o otra forma chequear el color del indicador verde para largos y rojo para cortos.
Saludos.

Re: Indicador Konkorde_Alert

Publicado: 05 Sep 2014 14:58
por MARTINGALA
Lo que estas haciendo esta bien a medias.

Debemos tener en cuenta que las funciones del MQL, osbre todo en las versiones antiguas de MT4, en terminos generales devuelven un unico valor, salvo que se manejen punteros que mas bien es una excepcion. En este sentido hay que tener en cuenta que la inmensa mayoria de indicadores suelen devolver multivariables y por lo tanto la estructura tipo funcion como tu estas usando este indicador no te funcionara. Para acceder a estas variables MQL utiliza arrays y como puedes comprobar en la definicion del prototipo de iCustom () se corresponden a las dos variables finales definidas con los nombres mode y shift.

Segun dices en el post, necesitas obtener el valor de las variables que aparecen con los nombres Val1 y Val2. La forma seria la siguiente (es un simple esbozo) y siempre buscando el valor sobre la vela actual...

int valorVal1 = iCustom(NULL,1440,"Konkorde_Alert",true,15,2,0,0);

int valorVal2 = iCustom(NULL,1440,"Konkorde_Alert",true,15,2,1,0);

Explico un poco esto porque:

en la definicion int valorVal1 = iCustom(NULL,1440,"Konkorde_Alert",true,15,2,X1,X2);

la variable X1 maneja el indice del array de variables que maneja el indicador, he puesto 0 para Val1 y 1 para Val2...ahora queda comprobar si se corresponden simplemente monitorizando esos valores, pues no tenemos informacion de la estructura de ese array.
La variable X2 maneja el valor del indice de ese array siendo 0 para la vela actual, 1 para la ultima vela cerrada y asi sucesivamente.

Puedes monitorizar esos valores con un simple Comment(" Val1 = ", valorVal1," Val2 = ", valorVal2);

si no se corresponden tendrias que ir incrementando el valor de la variable X1, hasta dar con esos valores. El rango de este valor de X1 no deberia ser superior a las variables mostradas en la grafica del indicador.

Re: Indicador Konkorde_Alert

Publicado: 05 Sep 2014 16:17
por baltic46
Gracias MARTINGALA probare este finde lo que comentas.
Saludos