Preguntas de los principiantes MQL5 MT5 MetaTrader 5 - página 776

 
Alexey Viktorov:
De la documentación



¿Compilará este código,no dará error x=i;?

Y, ¿cuál es la diferencia entre declarar estas x y z al principio, durante la inicialización?

Soy tan tonto... ...no entienden una mierda.

 
Aleksey Vyazmikin:

Tal vez lo básico, sin argumentos, solo que no puedo entrar en el código, donde empieza, donde termina... de ahí las preguntas. Vale que es una referencia (?), pero ¿a qué?

¿Dónde apareció originalmente la variable"Str" aquí?

Justo después del primer paréntesis de apertura rizado.
 
Artyom Trishkin:
Justo después del primer paréntesis de apertura rizado.

Bien, declaramos todas las variables en los paréntesis, y empezamos a rellenarlas en la función. Los rellenamos. Pero, ¿qué sentido tienen estas acciones, por qué no podemos declarar variables antes de la función y asignar valores a las variables en la función? ¿Hay algún tipo de truco aquí?

 
Aleksey Vyazmikin:

Bien, declaramos todas las variables en los paréntesis, y empezamos a rellenarlas en la función. Los rellenamos. Pero, ¿qué sentido tienen estas acciones, por qué no podemos declarar variables antes de la función y asignar valores a las variables en la función? ¿Hay algún tipo de truco aquí?

¿Por qué hacerlas globales si sólo se necesitan localmente, en esta función? Su tarea se ha cumplido y se destruyen al salir de la función.
 
Aleksey Vyazmikin:

¿Compilará este código,no dará error x=i;?

Y, ¿cuál es la diferencia entre declarar estas x y z al principio, durante la inicialización?

Soy tan tonto... ...no saben una mierda.

Tal vez se maldiga, pero eso es de la documentación sin cambios.

 
Artyom Trishkin:
Pero, ¿por qué hacerlas globales si sólo se necesitan localmente, en esta función? Han hecho su tarea y se destruyen al salir de la función.

Me disculpo, tal vez, por las preguntas ingenuas, pero entonces ¿por qué no inicializarlas en la función? Entiendo que tendré 33 parámetros en lugar de 3, por lo que me pregunto cómo escribirlo de forma más compacta y no puedo hacerlo sin entender el código...

Aquí es donde se llama a esta función:

double OnTester()
{
  string Str;
  MqlTick Ticks[];
  double Balance;
  
  GetData(Str, Ticks, Balance); // Подготовка данных для записи

  if (MQLInfoInteger(MQL_OPTIMIZATION)) // Оптимизация
  {
    CONTAINER<uchar> Container; // https://www.mql5.com/ru/forum/95447/page4#comment_5464205
    
    Container[0] = Str;
    Container[1] = Ticks;
    Container[2] = Balance;
  
    FrameAdd(NULL, 0, 0, Container.Data); // Отправили данные из Агента на Терминал
  }
  else // Одиночный прогон
  {    
    if (handle != INVALID_HANDLE)
      SaveData(Str, Ticks, Balance); // Данные будут записаны в MQL5\Files-папку Агента (не Терминала)
    
    FileClose(handle);
  }
  
  return(0);
}

Y aquí vamos de nuevo a inicializar el mismo :

  string Str;
  MqlTick Ticks[];
  double Balance;
Luego se llama a la funciónGetData(Str, Ticks, Balance).
 

Hola. Tengo un par de preguntas sobre MQL5 Cloud Network:
- para que la optimización sea posible en MQL5 Cloud Network, ¿el código del indicador debe estar en el EA o puede ser llamado a través de icustom?
- si un EA utiliza datos de un archivo externo en sus cálculos, ¿funcionará durante la optimización, todos estos archivos serán cargados en los agentes?
- ¿Qué tan seguro es usar los agentes, podemos obtener/extraer el EA y los datos procesados del agente?

 
ax237b:

Hola. Tengo un par de preguntas sobre MQL5 Cloud Network:
- para ser optimizado en MQL5 Cloud Network el código del indicador debe estar en el Asesor Experto o puede ser llamado a través de icustom ?
- si un EA utiliza datos de un archivo externo en sus cálculos, ¿funcionará durante la optimización, todos estos archivos serán cargados en los agentes?
- ¿Qué tan seguro es usar los agentes, podemos obtener/extraer el EA y los datos procesados del agente?


- No - los indicadores se transmiten

- No (los datos deben ser transmitidos/adjuntados por separado)

- No se excluye.

 
Aleksey Vyazmikin:

- No - los indicadores se transmiten

- No (los datos deben ser transmitidos/adjuntados por separado)

- No se descarta.

Entendido, gracias.


otra pregunta a la comunidad, ¿hay algún ejemplo de trabajo de opencl? no gráficos de dibujo esférico y cálculos de pi, pero por ejemplo tenemos una granja de tarjetas de vídeo con varios cientos de procesadores, ¿cómo ejecutar las ejecuciones del probador de optimización en cada procesador de la tarjeta de vídeo? ¿es siquiera posible?

 
ax237b:

Ya veo, gracias.


Tengo otra pregunta para la comunidad, ¿hay algún ejemplo de trabajo de opencl? no gráficos de dibujo esférico y el cálculo del número pi, pero por ejemplo tenemos una granja de tarjetas de vídeo con varios cientos de procesadores, cómo ejecutar probador de optimización en cada procesador de la tarjeta de vídeo? es incluso posible?


¿Se puede escribir un kernel para OpenCL? Sólo conozco a una persona aquí que afirma utilizar OpenCL para optimizar sobre la marcha, mientras el EA se está ejecutando. No conozco ningún otro ejemplo.

Me gustaría echarles un vistazo yo mismo. Incluso pedí publicar un artículo sobre este tema, pero la administración no sabe cómo aplicarlo al comercio real.