¡Pide! - página 28

 

hola

Necesito el filtro Williams %R puede alguien ayudarme

 

¿Qué factores debe observar en un informe de Backtest?

Cuando se ejecuta un EA a través de Backtesting, ¿cuáles son los factores clave que determinan la eficacia del código del EA?

¿Es la calidad de los modelos, el porcentaje de victorias o la reducción? Y si se ejecuta durante un período de un año, ¿cuáles serían los mejores resultados para que un EA se considere bueno? Por supuesto, esto es sólo Backtesting. Entiendo que el forward testing es importante también. Pero sólo quiero saber los factores que afectan a la calidad del EA.

Gracias de antemano por sus respuestas/tiempo.

Kent

 

punto

¿podría alguien decirme qué punto hay en el código del meta trader?

gracias

 

Hola,

Me gustaría que por favor Kalenzo u otro buen programador me ayudara con esta modificación por favor.

Mi nivel de conocimiento del lenguaje mql es básico porque estoy empezando a aprender y necesito añadir una alerta sonora y un popup a un indicador y aún no encuentro el código correcto para hacerlo.

El indicador que quiero modificar es el i_trend.mq4, necesito añadir una alerta sonora y un popup para que cuando la línea roja toque el nivel 0,0002 muestre una alerta de CORTO y cuando la línea verde toque el nivel 0,0002 muestre una alerta de COMPRA. Necesitaría que enviara las alertas sólo cuando las líneas van hacia arriba porque si tocan ese nivel cuando van hacia abajo no serviría.

Tomé como ejemplo el código de otro indicador que muestra alertas sonoras y popup pero no puedo hacer esto mismo para el i_trend, el indicador de muestra es el "PerkyAsctrend1.mq4" adjunto ambos indicadores a este post como referencia.

Estaré muy agradecido a quien me ayude a añadir esas modificaciones, muchas gracias de antemano.

La sección del código en el PerkyAsctrend donde se escribe la "alerta" es la siguiente:

if (val2!=0 && up==0 )

{

val1buffer= val2-1*Punto;

up=1;

dn=0;

if(shift<=2)

{

Alert (Symbol()," ",Period(), "M Asctrend BUY ");

}

}

if (val1 !=0 && dn==0)

{

val2buffer= val1+1*Punto;

dn=1;

up=0;

if(shift<=2)

{

Alert (Symbol()," ",Period(), "M Asctrend SELL ");

}

}

¿Cómo puedo implementar esto mismo para el i_trend? con las condiciones que he especificado arriba.

¡Gracias de nuevo!

Archivos adjuntos:
 

Programación básica

Hola,

¡¡¡He leído vuestros tutoriales y veo que habéis invertido mucho tiempo y esfuerzo en crearlos!!! Pero como estoy aprendiendo y soy nuevo en la programación me perdí muy pronto. Estoy buscando en algunas clases de programación básica en una escuela técnica local ... Sólo me pregunto si MQL4 está escrito en la base de otro lenguaje de programación? O mejor aún, si tuviera que aprender uno de los lenguajes de programación realmente común que haría MQL4 más fácil, ¿cuál sería?

¡¡¡Gracias!!!

 

Actualizar la información de los indicadores

¿Hay alguna manera de que los datos de los indicadores se actualicen más rápido, a veces los "Comentarios" y las "ventanas de datos separadas" tardan bastante en actualizarse y hay que actualizar el gráfico para obtener los datos más recientes o es más bien un problema de configuración del ordenador? Lo pregunto porque el portátil de un amigo parece actualizar los datos más rápido que mi ordenador.

¿Se puede utilizar "RefreshRates" tal vez?

Cualquier ayuda será muy apreciada.

Acabo de descubrir que es crítico el lugar donde se coloca el código de la ventana de Datos - ahora he colocado el código de Datos en el lugar correcto en el código del indicador y ahora se actualiza bien. al menos eso ha arreglado un problema que estaba teniendo con dos indicadores, cualquier otra entrada o ideas serían bienvenidas.

 

Problema de EA

He creado un simple EA por el cambio de la muestra de MACD EA que se coloca en la plataforma MT4.

El EA creado lo puse en 6 carpetas y cambié los nombres de esas carpetas.

En cada EA en cada carpeta puse el número mágico diferente. Adjunté

El problema es que cada EA trabaja solo y cuando un EA abre una orden, otro EA abre una orden.

El problema es que cada uno de los EAs trabaja solo y cuando un EA abre una orden, otro EAs no puede trabajar al mismo tiempo.

Tal vez el EA de ejemplo MACD tiene algún código que impide esta operación.

 

Codificación de comprobación de doble techo

En mi EA, deseo comprobar que el precio actual de la divisa está por encima del máximo de las últimas 10 barras antes de entrar en una operación de compra. ¿Cómo puedo comprobar esto en una declaración MQ4? ¡¡¡Gracias de antemano!!!

Dave <<<<
 
Me pregunto si MQL4 está escrito sobre la base de otro lenguaje de programación. O mejor aún, si tuviera que aprender uno de los lenguajes de programación más comunes que haría que MQL4 fuera más fácil, ¿cuál sería?

MQL4 está basado en el lenguaje C, así que lo mejor es aprender C antes de programar con él.

 
iscuba11:
Tengo el problema de que siempre modifica las operaciones en el backtester una y otra vez. Como hago para que modifique las operaciones una vez. Ya que el programa se va a dormir, las únicas operaciones que necesitan ser modificadas son las que aún están abiertas.

Por favor, vea el .Gif adjunto de los resultados del Backtest. ¡Estoy tan cerca de conseguir este derecho - Por favor, asesorar! Utilizo esta modificación de Take Profit y Stop Loss junto con el modo de suspensión. Por favor, vea el código de abajo

int inicio()

{

si (UseHourTrade)

{

int a=0

int b=0;

int c=0;

if(!(Hour()>=FromHourTrade1 && Hour()<=ToHourTrade1)) a=1;

if(!(Hour()>=FromHourTrade2 && Hour()<=ToHourTrade2)) b=1;

if(!(Hour()>=FromHourTrade3 && Hour()<=ToHourTrade3)) c=1;

if(a==1 && b==1 && c==1)

{

Comentario(

"\n"," * Asesor experto en energía eólica solar *",

"\n",

"\n", " - PROGRAMA EN CICLO DE SUEÑO - ",

"\n",

"\n"," > HORAS DE NO COMERCIALIZACIÓN! <");

///////////////////MODIFICAR STOP LOSS Y TAKE PROFIT AL INICIO DEL CICLO DE SUEÑO /////////////////

int h=0;

for (int cnt1=OrdersTotal()-1;cnt1>=0;cnt1--)

OrderSelect( h, SELECT_BY_POS, MODE_TRADES);

if (OrderType()>=OP_SELL && OrderSymbol()==Symbol() && (OrderMagicNumber () == MagicNumber || MagicNumber==0))

{

OrderModify(OrderTicket(),OrderOpenPrice(),Ask+(15 *Punto),Bid-(20*Punto),Cyan); //Modificar stop loss y take profit

return(0);

}

if (OrderType()>=OP_BUY && OrderSymbol()==Symbol() && (OrderMagicNumber () == MagicNumber || MagicNumber==0))

{

OrderModify(OrderTicket(),OrderOpenPrice(),Bid-(15*Punto),Ask+(20*Punto),Cyan); /Modificar stop loss y take profit

return(0);

}

return(0);

}

}

Dave <<<<

tu OrderSelect() no contaba con base en el bucle en ejecución.

Razón de la queja: