Preguntas para principiantes en MQL5. Los profesionales no pasan de largo.

 

Decidí crear un tema similar al existente en el foro 4, hay un rastro popular a él). Si se repite, matarlo sin pesar.

Por supuesto, el tema no es sólo para divertirse. Me decidí a abordar MQL5 y aparecieron varias preguntas a la vez:

1) ¿el alcance de las estructuras es el mismo que el de las variables simples?

2) EstructuraMqlRates. Quiero encontrar los últimos 10 extremos y por lo tanto no sé cuántos datos de precios voy a necesitar. ¿Copio todos los datos disponibles? ¿No consume recursos?

Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура исторических данных
Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура исторических данных
  • www.mql5.com
Стандартные константы, перечисления и структуры / Структуры данных / Структура исторических данных - Документация по MQL5
 
Figar0:

1) ¿El alcance de las estructuras es el mismo que el de las variables?

Las estructuras son uno de los tipos de datos (tipos de datos compuestos). Por lo tanto, es mejor hablar de variables de tipo estructural. Las reglas sobre el ámbito de aplicación se aplican igualmente a las variables de tipos simples y de tipos estructurales. Hasta ahora no he visto ninguna excepción.

Figar0:

2) EstructuraMqlRates. Quiero encontrar los últimos 10 extremos y por lo tanto no sé cuántos datos de precios voy a necesitar. ¿Copio todos los datos disponibles? ¿No requiere muchos recursos?

:) Todo depende del nivel de extremismo. Si se busca un extremo para todo el periodo de observación, no hay forma de obtener 10 elementos aunque se "copien todos los datos disponibles".

En realidad, no siempre es necesario utilizar la estructura predefinidaMqlRates. En muchos casos, basta con crear una estructura propia "ligera" (por ejemplo, alta-baja) y trabajar con variables de ese tipo. No puedo decir nada sobre el consumo de recursos, porque no me interesa esta cuestión (prescindo de la estructuraMqlRates).

 

Otro de mis acercamientos a MQL5: decidí utilizar sus capacidades para optimizar Asesores Expertos ya que MT4 me permite optimizarlos en 24 horas, y las capacidades de los procesadores multinúcleo y los agentes son tan disímiles... Sin embargo, antes de molestarme en recodificar los Asesores Expertos "reales", decidí comprobar lo que obtendré. He escrito un simple Asesor Experto con perseptron ala AI Reshetov, ni siquiera indicadores para entrar sino simple diferencia de precio de cierre, lo he optimizado por precios de apertura H4, hace un año. Los núcleos de la CPU están todos cargados, y los agentes parecen estar trabajando, y la nube se mueve, pero.... :Más lento que en MT4 muchas veces simplemente ¿Por qué es todo tan triste????

Знакомство с MQL5: написание простого советника и индикатора
Знакомство с MQL5: написание простого советника и индикатора
  • 2010.03.16
  • Denis Zyatkevich
  • www.mql5.com
В этой статье проведен краткий обзор языка MQL5, приведен пример написания советника и индикатора. Данная статья ориентирована как на читателей, знакомых с программированием на языке MQL4, так и на тех, кто только начинает знакомство с программированием торговых систем и индикаторов.
 
Figar0:

Otro de mis acercamientos a MQL5: decidí utilizar sus capacidades para optimizar Asesores Expertos ya que MT4 me permite optimizarlos en 24 horas, y las capacidades de los procesadores multinúcleo y los agentes son tan disímiles... Sin embargo, antes de molestarme en recodificar los Asesores Expertos "reales", decidí comprobar lo que obtendré. He escrito un simple Asesor Experto con perseptron ala AI Reshetov, ni siquiera indicadores para entrar sino simple diferencia de precio de cierre, lo he optimizado por precios de apertura H4, hace un año. Los núcleos de la CPU están todos cargados, y los agentes parecen estar trabajando, y la nube se mueve, pero.... :Más lento que en MT4 muchas veces simplemente ¿Por qué es todo tan triste????

En algún lugar hay un error lógico en el código. No creo que MT5 sea más lento que MT4.
 
Figar0:

Otro de mis acercamientos a MQL5: decidí utilizar sus capacidades para optimizar Asesores Expertos ya que MT4 me permite optimizarlos en 24 horas, y las capacidades de los procesadores multinúcleo y los agentes son tan disímiles... Sin embargo, antes de molestarme en recodificar los Asesores Expertos "reales", decidí comprobar lo que obtendré. He escrito un simple Asesor Experto con perseptron ala AI Reshetov, ni siquiera indicadores para entrar, pero las diferencias de los precios de cierre. Lo optimizo por los precios de apertura H4, hace un año. núcleos de la CPU se cargan, y los agentes parecen estar trabajando, y la nube se mueve, pero.... :Más lento que el MT4 muchas vecesPor qué todo es tan triste????

Probablemente porque los archivos MQ4 y MQ5 no se adjuntan.

Aquí hay programadores. Es impropio hacer estas preguntas sin adjuntar el código fuente.

 
Renat:

Probablemente porque los archivos MQ4 y MQ5 no están adjuntos.

Aquí hay programadores. No es bueno hacer estas preguntas sin el código fuente adjunto.

Estoy lejos de pensar que mi código es un modelo de perfección, lo escribí en 20 minutos, y sólo para comprobar, además, dado que en MQ5 sigo siendo un cerdo en las naranjas), pero creo que no hay nada tan terrible para el rendimiento. Aquí está.
Archivos adjuntos:
First.mq5  19 kb
 
y MQ4?
 

Renat:
 MQ4?

Y en MQ4 acabo de coger ArtificialIntelligence.mq4 y lo he adjuntado por si acaso, claro que no son idénticos, pero consumen casi el mismo tiempo, al menos simplemente por su sencillez. Pero esto es lo que tenemos:

En 8 núcleos en MT5 (desconectados todos los agentes):

2011/11/11 15:01:07 PM Estadísticas locales 13371 tareas (100%), remoto 0 tareas (0%), nube 0 tareas (0%)
2011.11.11 15:01:07 Estadísticas pasadas en 1 horas 07 minutos 51 segundos

Total: 4071/13371=0,3044 segundos por pasada.

En un núcleo en MT4:

2011.11.11 15:17:40 Se han realizado 6345 pases durante la optimización
2011 11/11/11 15:17:40 ArtificialIntelligence: la optimización se ha detenido, se han utilizado 2103 registros de caché, se han rechazado 2103 registros de caché
2011.11.11 15:17:12 ArtificialIntelligence: optimización iniciada

Total: 28/6345=0,0044129 segundos por pasada.

Dos órdenes de magnitud . Ambas son genéticas, precios de apertura EURUSD H4, intervalo desde el 1.01.11 hasta hoy, ordenador único, Win7 x64. ¿Qué es lo que ralentiza tanto la optimización en MT5? ¿Tengo un error tan crítico allí????

Archivos adjuntos:
 
Figar0:

Dos órdenes de . Ambas son genéticas, ambas son precios de apertura del EURUSD H4, intervalo 1.01.11 hasta hoy, mismo ordenador, Win7 x64. ¿Qué es lo que ralentiza tanto la optimización en MT5? ¿Tengo un error tan crítico allí????

¿Cuál es el tipo de simulación, 1 o 2?


 
Rosh:

¿Qué tipo de modelado, 1 o 2?

"Sólo precios de apertura", el segundo debe ser
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы - Документация по MQL5
 

Creo que estoy empezando a entender lo que está pasando aquí:

2011.11.11 16:11:37 Core 1 EURUSD,H4: 1271227 ticks (1344 barras) generados en 1326 ms (total de barras en el historial 2904, tiempo total 1372 ms)

¿Por qué hay tantos ticks en los precios de apertura? Además, si pongo el modelo "OHLC en M1", ocurre lo mismo:

2011.11.11 16:15:48 Core 1 EURUSD,H4: 1271227 ticks (1344 barras) generados en 2075 ms (total de barras en el historial 2904, tiempo total 2106 ms)

Lo he comprobado 10 veces y con el primer y segundo tipo de construcciones (de la foto de Rosh) el número de ticks no cambia..... ¿Imposible, o estoy haciendo algo mal?

Construye 527.

Z.I. ha comprobado todas las garrapatas:

2011/11/11 16:24:55 Core 1 EURUSD,H4: 18578763 ticks (1344 barras) generados en 24819 ms (total de barras en el historial 2904, tiempo total 25319 ms)

Con el modelo de "todos los ticks" sólo hay 14 veces más ticks que con el modelo de "precios abiertos" en H4. O estoy loco, o una de dos ... ¿Entonces el modelo de "precio de apertura" no existe?