Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 150
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
¡Buenas noches!
Por favor, ayúdame a escribir el código, no me siento capaz de hacerlo yo mismo, aquí está la esencia:
Si necesitas hacerlo por ti, este es un autónomo. Y para ayudarte a contar lo que quieres conseguir, muestra lo que has hecho y describe lo que ha fallado.
El punto es este: aquí en este hilo para ayudar al que sufre y al que busca.
Si tienes que hacerlo por ti, eso es en el autónomo. Y para conseguir ayuda, tienes que decir lo que quieres conseguir, mostrar lo que estás haciendo y describir lo que ha fallado.
La cuestión es que no entiendo cómo hacer que el EA analice sólo las órdenes de un par en concreto, en lugar de las órdenes de todos los pares del terminal.
Si puedes, por favor, dame una idea o un ejemplo de código, ya que los libros de texto describen por separado lo que funciona y cómo funciona, pero no hay muchos ejemplos concretos.
Le agradecería su ayuda.
Gracias.
Su nombre es High_Low v2 (ZigZag), (en el archivo adjunto por alguna razón el nombre glitched)
double zz2 = iCustom( NULL, 0, "High_Low v2 (ZigZag)",300, 6, 0, 0);
Es decir, he sustituido el nombre de un indicador personalizado y su
En el caso de los fractales, por ejemplo, me ha funcionado.
La cuestión es que no entiendo cómo hacer que el EA sólo cuente las órdenes de un par en concreto, y no el total de todos los pares del terminal.
No entiendo cómo hacer que un EA calcule sólo las órdenes de un par en particular, y no la suma de todos los pares del terminal.
Estaré muy agradecido por la ayuda.
Se lo agradecería.
siéntase libre de buscar en el CodeBase - cada EA tiene un bucle de orden :-)
Por ejemplo https://www.mql5.com/ru/code/16588 (el primero que encontré)
for(int index = orders-1; index >= 0; index--)
{
if(OrderSelect(index,SELECT_BY_POS,MODE_HISTORY)==false)
{
Print("Error in history!");
break;
}
if(OrderSymbol()==symbol && OrderMagicNumber()==MAGICMA)
{
if(OrderType()==OP_BUY || OrderType()==OP_SELL)
{
if(OrderProfit()>0) break;
if(OrderProfit()<0) losses++;
}
}
}
la condición"if(OrderSymbol()==symbol && OrderMagicNumber()==MAGICMA)" es exactamente lo que selecciona las órdenes por un símbolo específico y con un MAGIC específico
PS/ en el código anterior copiar-pegar romper en caso de un error OrderSelect no es del todo correcto, en lugar de utilizar continuar (no importa lo que la razón es la orden no se recoge, tal vez hay un problema con algún mecanismo interno de MetaTrader, pero la siguiente orden no se saltará)
siéntase libre de buscar en el CodeBase - cada EA tiene un bucle de orden :-)
Por ejemplo https://www.mql5.com/ru/code/16588 (el primero que encontré)
Hola chicos!!! Ayúdenme a escribir una función que devuelva una señal de compra o venta. Todavía no sé cómo trabajar con barras en MQL (¡aunque no sé muchas cosas!).
La condición es la siguiente: la barra padre es una barra dentro de la cual, es decir, dentro de la alta y la baja hay una barra con el precio de cierre (¡¡es importante!! exactamente el precio de cierre.) Una vez que alguna barra atraviesa la padre y cierra por encima de la alta o por debajo de la baja, ¡se convierte ahora en la barra padre!
Si el precio de cierre de la barra principal es mayor que el precio de apertura, devolvemos la señal de compra.
Si el precio de cierre de la barra madre es inferior al precio de apertura, devolvemos la señal de venta.
Es muy importante establecer el plazo en la variable externa.
Pero aquí está el problema, al menos para mí, ¿cómo puede el Asesor Experto encontrar la última barra mate en el gráfico? Sí, visualmente puedo verlo de inmediato! ....
Me convendría especificar el índice de la última barra MAT en una variable externa y entonces la función empezará a bailar desde ella; u otra variante para tomar una barra con el índice, por ejemplo, 50 y recorrer el bucle hasta el cero.
¡¡¡Muy por favor ayuda a los huérfanos!!!
¡Buenas tardes!
¿Puede darme una idea? Necesitamos que un EA no pueda abrir una orden si ya se ha abierto una orden a este precio. ¿Cómo se realiza el control?
¡Buenas tardes!
¿Puede darme una idea? Necesitamos que un EA no pueda abrir una orden si ya se ha abierto una orden a este precio. ¿Cómo se realiza el control?
Es una tarea difícil. Por desesperación, solía asignar una orden mágica al precio/punto deseado dado el deslizamiento.
Es mucho más fácil en mql5: hay una posición con un precio que no corresponde al precio solicitado y una orden con el precio solicitado.
¡Buenas tardes!
¿Puede darme una idea? Necesitamos que un EA no pueda abrir una orden si ya se ha abierto una orden a este precio. ¿Cómo se realiza el control?
Se escribe un bucle de órdenes, en el que se compara el precio de apertura de cada orden con el valor del precio dado, y si hay una coincidencia, entonces no se levanta la bandera de una nueva orden.