Mira cómo descargar robots gratis
¡Búscanos en Facebook!
Pon "Me gusta" y sigue las noticias
¿Es interesante este script?
Deje un enlace a él, ¡qué los demás también lo valoren!
¿Le ha gustado el script?
Evalúe su trabajo en el terminal MetaTrader 5
Indicadores

Size of candles 2 (text) - indicador para MetaTrader 5

Visualizaciones:
885
Ranking:
(27)
Publicado:
2017.08.10 16:29
¿Necesita un robot o indicador basado en este código? Solicítelo en la bolsa freelance Pasar a la bolsa

Versión 1

 Size of candles (text):

Versión 2.

El indicador representa el tamaño de la barra. El tamaño de la vela se calcula según la fórmula: "minuendo" menos "sustraendo". El "minuendo" y el "sustraendo" pueden ser uno de los cuatro valores (open, high, low or close).

Añadido a la versión 2: 

  • elección del color del rótulo para las barras alcistas y bajistas
  • ajuste del margen con respecto a la barra
  • el propio texto ahora se representa:
    • debajo de la barra, si la barra es bajista
    • encima de la barra, en el resto de los casos


El número de barras para los que se representa el tamaño, está limitado en los parámetros de entrada (InpNumberOfBars). Este número se queda intacto, incluso si se abre una nueva barra:



Hablemos un poco de la sincronización de las barras y los objetos gráficos.

Registro de los objetos gráficos

Los nombres de los objetos se guardan en la matriz m_arr_names[], su tamaño es igual al parámetro de entrada InpNumberOfBars. ¿Por qué se ha elegido precisamente una matriz, y no una variable simple del tipo string?  Se trata de una base peculiar para el futuro.

Formación del nombre del objeto

El nombre del objeto que corresponde a la barra index, se forma según la fórmula:

name[index] = m_prefix + ("high_" or "low_") + TimeToString(time[index])

Hay que eliminar todos los objetos

Como ya sabemos, los indicadores se descargan en los siguientes casos:

  • cuando se quita un indicador del gráfico;
  • cuando se cierra el terminal (si el indicador estaba colocado en el gráfico);
  • cuando se carga una plantilla, si el indicador está colocado en el gráfico;
  • cuando se cierra un gráfico en el que estaba colocado un indicador
  • cuando se cambia el perfil, si el indicador está colocado en uno de los gráficos del perfil cambiado;
  • cuando se cambia de símbolo y/o periodo del gráfico en el que se ha colocado el indicador;
  • cuando se cambian los parámetros de entrada del indicador.

Por eso, ejecutamos la eliminación total de los objetos gráficos creados:

  • en OnDeinit()
  • en OnInit() (esto es para curarnos en salud, por si han quedado objetos gráficos "sin dueño" sin eliminar)
  • en OnCalculate(), cuando prev_calculated==0.

  Asimismo, ejecutamos la limpieza de la matriz m_arr_names[]:

  • en OnCalculate(), cuando prev_calculated==0 o cuando prev_calculated!=rates_total

Mantenimiento de un número constante de objetos gráficos:

cuando aparece una nueva barra (o barras) en el gráfico se activa la condición prev_calculated!=rates_total. En este caso, todos los objetos se eliminan, y la matriz m_arr_names[] se limpia.


Traducción del ruso realizada por MetaQuotes Ltd
Artículo original: https://www.mql5.com/ru/code/18483

RSI Arrow RSI Arrow

Representación de flechas de la fuente Wingdings, si RSI cruza los niveles UP y DOWN.

LGP_Ivanoff_Maloma-Demark_levels LGP_Ivanoff_Maloma-Demark_levels

Variación con uso de fractales.

Bullish and Bearish Engulfing Bullish and Bearish Engulfing

Comercio con el patrón "Bullish and Bearish Engulfing".

Color_PEMA_Digit Color_PEMA_Digit

Media con promediación EMA quíntuple que representa el último valor en forma de marca de precio, con la posibilidad de redondear los niveles del indicador en el número necesario de órdenes