Indicadores: id_digits_object

 

id_digits_object:

Muestra la cantidad de símbolos decimales (cantidad de símbolos en la parte fraccionaria), la hora y la anotación de los puntos de enlace de los objetos gráficos.

Autor: Dina Paches

 

La entrega estándar del terminal MetaTrader5 incluye 44 tipos de diversos objetos gráficos para su instalación en un gráfico: menú superior => Insertar => Objetos.

De ellos, 33 tipos tienen puntos de anclaje: tiempo + precio.

Para estos 33 tipos de objetos gráficos, este indicador puede mostrar en la pestaña "Expertos": el nombre del objeto seleccionado + su tipo + tiempo de sus puntos de anclaje + marcas de precio de los puntos de anclaje + número de decimales en los puntos de anclaje del precio.

En este caso, independientemente de que el objeto gráfico se encuentre en la ventana principal del gráfico o en subventanas de indicadores, donde el número de decimales puede diferir de los de la ventana principal.

Para obtener información sobre cualquier objeto del gráfico desde el indicador, basta con hacer clic con el ratón sobre este objeto.

Para los otros 11 tipos de objetos (que no tienen puntos de anclaje de precios): al hacer clic sobre ellos, este indicador muestra sólo los nombres de estos objetos y su tipo en la pestaña "Expertos" del diario. Con el comentario adjunto de que no funciona con este tipo de objetos.

El terminal MetaTrader 5 y el lenguaje de programación MQL5 tienen una selección muy grande de cosas diferentes para nosotros (los usuarios). Las capacidades de la terminal y el lenguaje siguen creciendo con el tiempo. Las adiciones, por supuesto, difieren en su "escala de importancia" para alguien o en absoluto. Además de "brillantes" y "prominentes", naturalmente, se añaden "modestas", "pequeñas", "imperceptibles", pero no por ello menos útiles.

Por ejemplo, recientemente, una de las "modestas" comodidades añadidas al terminal, pero no la única, para mí, fue la posibilidad de eliminar las columnas de la pestaña "Expertos": Hora y Fuente /* ambas o cualquiera de ellas, llamando al menú que hay allí haciendo clic con el botón derecho del ratón y seleccionando la línea de menú necesaria: Columnas*/. Parece una "pequeñez", pero sin ella "faltaría algo". Esto ha hecho más conveniente, por ejemplo, visualizar la información mostrada en la pestaña y/o copiar mensajes de información de ella para algo, varias otras cosas. Oficialmente, esta característica (como parte de varias otras) apareció desde la build 1485 del terminal. Junto con su adición, ha cambiado el orden de visualización de los datos en la pestaña "Expertos".

Y como antes el indicador "id_digits_object" mostraba los datos en la pestaña "Expertos" teniendo en cuenta el orden de visualización anterior, he actualizado este indicador teniendo en cuenta el orden de visualización actual. Al mismo tiempo he hecho otras actualizaciones en el código. Entre otras cosas, he leído, comprobado y aplicado características convenientes de la función ArrayResize(). Una copia del comunicado oficial para la 1485a build de la terminal sobre las bondades añadidas a esta función:

... Cuando se pasa el valor -1 como parámetro reserve_size, la función libera la memoria no utilizada (reservada) si no se incrementa el tamaño del array. Cambiar el tamaño del array a 0 con reserve_size=-1 es equivalente a llamar a ArrayFree. Este nuevo comportamiento permite optimizar el uso de memoria en los programas MQL5.

Y aunque en el código actualizado del indicador también encontrarás el uso de ArrayFree(), esto es porque en esos lugares me pareció más conveniente elegir y escribir ArrayFree que nombrar y pasar parámetros a mi función, que incluye ArrayResize en el indicador. Allí en mi largo con ArrayResize es una combinación de aplicación: ArrayResize + ArraySetAsSeris. /*<= Te adelanto que ArraySetAsSeris funciona sólo si el tamaño a establecer es mayor que 1. De forma que no se activaría después de ArrayResize si el tamaño a establecer = 0 o 1.

Puedes leer sobre otros cambios en el indicador en su página al final de la descripción principal. La versión actualizada (1.11) ya está disponible para su descarga.

 

Ya se puede descargar otra actualización.

Novedades:

Actualizado el código de la función para determinar el número de decimales en el indicador (su principio básico de funcionamiento sigue siendo el mismo, pero hice el código un poco más compacto).

Al mismo tiempo he actualizado el código del indicador en su conjunto.

 

El tiempo pasa, muchas cosas cambian.

Añadiré las siguientes aclaraciones a mi post de 2016.12.12:

1. Arriba di un enlace a la publicación oficial de la build 1485 del terminal. Ese enlace lleva al tema del foro, que ahora está inactivo.

Usted puede ver lo que es nuevo en MetaTrader 5 aquí: https://www.metatrader5.com/ru/releasenotes. Allí se puede encontrar descripciones de lo que es nuevo en la nueva construcción y la historia anterior de las actualizaciones de escritorio, móviles y plataformas web. Es realmente más conveniente que buscar un tema en el foro.

Hace unos tres meses encontré una forma cómoda de ir a esta página directamente desde el terminal. Por si acaso, para los que aún no la conozcan, aquí está la forma: Menú superior del terminal - Ayuda - Novedades



2 En la página de arriba, he descubierto que los tipos de objetos en MetaTrader 5 no son 44, como escribí arriba, sino 46: https: //www.metatrader5.com/ru/terminal/help/charts_analysis/objects.

Pero no necesito reemplazar el código del indicador que estoy discutiendo debido a esto.