Discusión sobre el artículo "Los principios del cálculo económico de los indicadores"

 

Artículo publicado Los principios del cálculo económico de los indicadores:

Las llamadas a los usuarios y a los indicadores técnicos requieren muy poco espacio en el código del programa de los sistemas de trading automatizados. Se trata a menudo de pocas líneas de código. Pero con frecuencia, son estas pocas líneas de código las que requieren la mayor parte del tiempo, destinada a probar el Expert Advisor. Por lo tanto, hay que tener en cuenta mucho más de lo parecía al principio todo lo que está relacionado con los cálculos de datos en un indicador. Este artículo trata justamente esta cuestión.

Fig. 11 El resultado de las pruebas con el Expert Advisor AMA_Ex_Test

Autor: Nikolay Kositsin

 

Gracias por el artículo.

Tengo una pregunta. Usted utiliza la primera forma del indicador para optimizar los cálculos del indicador, no es comenzar. Pero si no se puede utilizar (para los cálculos correctos necesitan abrir[], alta[], baja[], cerrar[] ...) ¿cómo ser? No hay comenzar en la segunda forma.

 
Prival:

Gracias por el artículo.

Tengo una pregunta. Usted utiliza la primera forma del indicador para optimizar los cálculos del indicador, hay comenzar. Pero si no se puede utilizar (para los cálculos correctos que necesita open[], high[], low[], close[] ...) ¿cómo ser? No hay begin en la segunda forma.

Y no es necesario allí, porque los parámetros de entrada son siempre las características de los precios - que están en todos los elementos, no utiliza una "arbitraria" matriz llena sólo de comenzar.
 

no se considera todo, pero en general sigue siendo interesante =)

y específicamente una cosa tal como la optimización de la llamada de indicadores técnicos no se considera.

Creo que este tema es bastante relevante.

 

más concretamente, cómo inicializar mejor el indicador técnico

en general se aplica la función de comprobación de datos

pero el ejemplo de la inicialización no se considera exactamente

por lo que se sabe de la ayuda

Нельзя обратиться к данным индикатора сразу после его создания, так как на расчет значений индикатора требуется некоторое время, и поэтому создавать хэндлы индикаторов лучше всего в OnInit(). Функция iCustom() создает соответствующий пользовательский индикатор и при успешном создании возвращает его хэндл. Пользовательские индикаторы могут содержать до 512 индикаторных буферов, содержимое которых также можно получать при помощи функции CopyBuffer(), используя полученный хэндл.

cómo evitar mejor esta función....

 

Siempre me pregunto lo mismo.

   if (Handle == INVALID_HANDLE)  Print("Fallo en la obtención del manejador del indicador SMA");

si esta condicion funciona, que hago? digamos que es el campeonato, eso es todo... init no correrá más.

 
Prival:

Me he estado preguntando lo mismo todo el tiempo.

si esta condicion funciona, que hago? digamos que es el campeonato, eso es... el init no se ejecutará más.

¡Sí! Es un hecho no documentado, ¡yo tampoco lo sabía! Deberíamos investigarlo. Pero me resulta más fácil, meteré todos los pavos en el propio Asesor Experto y listo, así el Asesor Experto corre como un velocista en distancias maratonianas y no tropieza en ningún sitio ¡y nunca!

 
Prival:

Siempre me pregunto lo mismo.

Si esta condición funciona, ¿qué debo hacer? Digamos que es un campeonato, eso es todo ... el init no se ejecutará más.

En primer lugar, obtener el código de error y la salida en el registro. E intenta acceder de nuevo en OnTick() o OnCalculate(). Si usted no puede obtener el indicador, lo más probable es que no hay tal indicador o no hay suficiente memoria. En este caso, el Asesor Experto no tiene derecho a operar.
Документация по MQL5: Стандартные константы, перечисления и структуры / Коды ошибок и предупреждений
Документация по MQL5: Стандартные константы, перечисления и структуры / Коды ошибок и предупреждений
  • www.mql5.com
Стандартные константы, перечисления и структуры / Коды ошибок и предупреждений - Документация по MQL5
 
Rosh:
En primer lugar, obtenga el código de error y envíelo al registro. Intente acceder de nuevo en OnTick() o OnCalculate(). Si no puede obtener el indicador, lo más probable es que no exista tal indicador o que le falte memoria. En este caso, el Asesor Experto no tiene derecho a operar.

Bueno, ¡aquí estamos! ¡Podemos hacerlo nosotros mismos! ¡En tal situación, si pudiéramos hacer que la función OnInit() devolviera menos uno para volver a llamar a OnInit() y así sucesivamente hasta que aparezca el handle! Pero ahora está claro que si no sobrecargas tu ordenador, no habrá razón para que no aparezca el handle. Pero he visto esto una vez al actualizar un build, ¡se puede curar recompilando el indicador!

Документация по MQL5: Основы языка / Функции / Функции обработки событий
Документация по MQL5: Основы языка / Функции / Функции обработки событий
  • www.mql5.com
Основы языка / Функции / Функции обработки событий - Документация по MQL5
 
Menos uno puede ser devuelto, pero no augura nada bueno para el EA/indicador.
 
Afortunadamente, el error de creación del indicador debido al fallo del terminal prácticamente no se produce.