Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 820

 
79014393347az:
hola! por favor ayuda como escribir en la alerta RSI, notificaciones push lo intente yo mismo no funciona da un error
Quiero saber qué hiciste y qué error obtuviste.
Código.
 

¿Cuál es la razón por la que no se reproduce el audio si PlaySound() devuelve true?


v1 = (Up[i] != EMPTY_VALUE ? Up[i] : Down[i]);
v2 = (Down[i+1] != EMPTY_VALUE ? Down[i+1] : Up[i+1]);
         
if((v2 >= level || v2 <= level * (-1)) && a2 < Time[i])
  {
   a2 = Time[i];
   if(arrows == e1 && v2 >= level) {ArrowCreate(false,Time[i+1],High[i+1]);} else if(arrows == e1) {ArrowCreate(true,Time[i+1],Low[i+1]);};
   if(prev_calculated != 0)
     {
      if(sounds == e1 && v2 >= level) {al = PlaySound("SELL NOW"); Alert(al);} else if(sounds == e1) {al = PlaySound("BUY NOW"); Alert(al);};
      if(alerts == e1 && v2 >= level) {Alert(_Symbol+TF(Period())+" SELL NOW");} else if(alerts == e1) {Alert(_Symbol+TF(Period())+" BUY NOW");};
      if(push == e1 && v2 >= level) {SendNotification(_Symbol+TF(Period())+" SELL NOW");} else if(push == e1) {SendNotification(_Symbol+TF(Period())+" BUY NOW");};
     };
  };
 
Alexandr Sokolov:

¿Cuál es la razón por la que no se reproduce el audio si PlaySound() devuelve true?


  1. ¿Son correctos los nombres de los archivos de audio?
  2. Después de PlaySound() tienes Alert() inmediatamente - ambas funciones reproducen audio. Eliminar Alert()
 
Artyom Trishkin:
  1. ¿Son correctos los nombres de los archivos de sonido?
  2. Después de PlaySound() tienes Alert() inmediatamente - ambas funciones reproducen el sonido. Eliminar Alert()

Los nombres son correctos. La razón resultó ser las alertas. ¡MUCHAS GRACIAS! Hace varios días que no puedo averiguar el motivo.

 
¿Es posible hacer un ajuste en la configuración del programa compilador para cambiar el color de las funciones de usuario del negro por defecto a un color diferente, estamos hablando de resaltar las funciones de usuario?
 
¿Cómo funciona la función ArrayMaximum(), que se adjunta por defecto en el compilador? Entonces, la esencia de la pregunta es la siguiente: esta función encuentra el valor máximo en el array, creo que si el array contiene valores en un orden caótico, para encontrar el valor máximo o mínimo, estos valores deben ser primero ordenados y sólo entonces se puede elegir el valor máximo, que estará al final o al principio de la lista del array ordenado, ¿cómo esta función encuentra el valor máximo si están escritos en un orden caótico?
 
Seric29:
¿Cómo funciona la función ArrayMaximum() que se incluye por defecto en el compilador? Entonces, el quid de la cuestión es el siguiente: esta función encuentra el valor máximo en el array, creo que si un array contiene valores en un orden caótico, para encontrar el valor máximo o mínimo, estos valores deben ser primero ordenados y sólo entonces se puede elegir el valor máximo, que estará al final o al principio de la lista del array ordenado, ¿cómo encontrará esta función el valor máximo si están escritos en un orden caótico?

No es necesario ordenar nada. La función ArrayMaximum() encuentra el valor máximo en la matriz sin ordenar y devuelve el índice del valorencontrado .

 
Alexey Viktorov:

No es necesario ordenar nada. La función ArrayMaximum() encuentra el valor máximo en una matriz no ordenada y devuelve el índice del valorencontrado .

Pero aún es necesario alinearlo en alguna cadena para compararlo con uno u otro valor, si hay 5 valores y están escritos en un orden caótico, la única manera de encontrar el máximo o el mínimo es compararlos todos, en cualquier caso se necesita un buffer para almacenar los valores.

 
Seric29:

Pero sigue siendo necesario alinearlos en una cadena para poder compararlos con un valor u otro, si hay 5 valores y están escritos en un orden caótico, la única manera de encontrar el máximo o el mínimo es compararlos todos, en cualquier caso se necesita un buffer para almacenar los valores.

¿Por qué intentar averiguar cómo funciona internamente? Bueno, si quieres escribir tu propia función, probablemente sea más conveniente ordenar y tomar el valor de uno de los índices más externos. Pero difícilmente funcionará más rápido que la función incorporada. Además, la función incorporada le permite buscar un valor dentro de los límites del índice designado. Por lo tanto, la clasificación simple no funcionará. Por lo tanto, tendremos que copiar parte del array en un array intermedio y ordenarlo ya y tomar el valor requerido de él, pero la copia de arrays no es una función muy "barata".

 
Buenas tardes. ¿Podría darme una pista? Cómo sería el código de la condición: Si el saldo de la cuenta ha aumentado o disminuido, ejecute la función