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

 
double func(double x1=0, double x2=0, ну и далее сколько надо аналогично, double x20=0)
{
   double s=0; int k=0;
   if(x1 != 0) { s+=x1; k++; }
   if(x2 != 0) { s+=x2; k++; }
ну и далее сколько надо аналогично
   if(x20 != 0) { s+=x20; k++; }
   if(!k)return 0;

   double rez=s/k;
   Alert("Количество = ", k, "   Результат = ", rez);
   return rez;
}
 
STARIJ:
En este caso, no se puede calcular la media de todos los valores transmitidos
 
Artyom Trishkin:

Si el conjunto y el número de números no se conocen de antemano, no hay suficientes funciones para cada nuevo conjunto.

Veo que ha habido muchos malentendidos de nuevo.

Foro sobre trading, sistemas de trading automatizados y comprobación de estrategias

Cualquier pregunta que los novatos tengan sobre MQL4, ayuda y discusión sobre algoritmos y códigos

RomanRott, 2018.01.05 11:56


Necesito pasar varios parámetros a una función, pero en diferentes situaciones necesito pasar un número diferente, conocido de antemano
y luego procesar estos parámetros en la función

En C, por ejemplo, se implementa así

int func(int a, int b, ...)
Y estamos compitiendo con los miembros del club de telépatas como siempre...
 
Alexey Viktorov:

Hay mucha confusión de nuevo, tal y como yo lo veo.

Y como siempre estamos compitiendo con los miembros del club de telepatía...
Bueno, para ser honesto, todavía no entiendo la tarea en cuestión. Muchas convenciones son abstractas, lo que no se adivinaría por sí mismo.
Si las cifras se conocen de antemano, eso es una cosa. Nadie sabe cuántos son, y eso determina el enfoque de la solución.
 
Alexey Viktorov:

Me parece que se trata de nuevo de los malentendidos.

Y estamos compitiendo con los miembros del club de telepatía, como siempre...

Yo personalmente voy a terminar mi café, tratar de adivinar en los posos del café, y el código (o al menos un pedazo de ella) como tal parece que no vemos, por lo que fue más claro para bailar con =)

 

Ha surgido algo...

void OnTick()
  {
     int num = MathRand()%10+1;
     double bars[];
     if( CopyOpen( Symbol(), 0, 0, num, bars ) == num )
          func((int)SymbolInfoInteger(Symbol(), SYMBOL_DIGITS), bars);
  }

int func(int digit, double &array[])
  {
     int num = 0;
     for(int i=0; i<ArraySize(array); i++)
     {
          /* что-то делаем */
     }
     return(num);
  }

Aunque esta opción se le ofreció hace mucho tiempo, tal vez la visibilidad le ayude.

 

Buenos días a todos. ¿Podría decirme cuál puede ser el problema?

Estoy probando un Asesor Experto en el probador de MT4, descargado del sitio web de Alpari. Ayer todo iba bien, pero hoy el MetaEditor de repente deja de compilar el código (no inicia el proceso de compilación).

Después de hacer clic en el botón de compilación, no ocurre nada. El botón se mantiene en el estado presionado. Intento cerrar el editor... el cursor se convierte en un reloj y el editor dice SIN RESPUESTA, pero el editor no se cierra. No se cierra ni siquiera a través del Administrador de Tareas. Reiniciando el ordenador - todo está exactamente igual .

He instalado otro terminal desde la web de Alpari y he abierto el MetaEditor. Intenté compilar el EA incorporado. Es el mismo .... No compila con o sin error. El editor se congela.

Estoy usando el sistema operativo XP.

Gracias por su ayuda.

 

XP, o cariñosamente Hrusha, es cosa del pasado. Necesita una nueva inversión en un nuevo ordenador, un nuevo sistema operativo, una nueva forma de pensar

 
STARIJ:

XP, o cariñosamente Hrusha, es cosa del pasado. Necesita una nueva inversión en un nuevo ordenador, un nuevo sistema operativo, una nueva forma de pensar

Pero por qué ayer se compiló bien. Hoy se ha parado. No he actualizado el terminal. Ni siquiera tenía conexión con el servidor y no la tengo.
 

Saludos. ¿Puede decirme cómocrear un objeto gráfico (como los niveles de Fibonacci incorporados en el terminal mt4) construido a partir de un grupo de objetos gráficos (como líneas, círculos, etc.)?

Razón de la queja: