- DRAW_NONE
- DRAW_LINE
- DRAW_SECTION
- DRAW_HISTOGRAM
- DRAW_HISTOGRAM2
- DRAW_ARROW
- DRAW_ZIGZAG
- DRAW_FILLING
- DRAW_BARS
- DRAW_CANDLES
- DRAW_COLOR_LINE
- DRAW_COLOR_SECTION
- DRAW_COLOR_HISTOGRAM
- DRAW_COLOR_HISTOGRAM2
- DRAW_COLOR_ARROW
- DRAW_COLOR_ZIGZAG
- DRAW_COLOR_BARS
- DRAW_COLOR_CANDLES
DRAW_FILLING
El estilo DRAW_FILLING dibuja un área de color entre los valores de dos búferes de indicadores. Prácticamente, este estilo traza dos líneas y colorea el espacio entre ellas en uno de dos colores predefinidos. Sirve para crear indicadores que dibujan canales. Ninguno de los dos búferes puede contener sólo valores vacíos. Si es así, no se dibuja nada.
Se puede definir dos colores para el relleno:
- el primer color se utiliza para las áreas donde los valores en el primer búfer indicador son más altos que los valores en el segundo búfer indicador;
- el segundo color se utiliza para las áreas donde los valores en el segundo búfer indicador son más altos que los valores en el primer búfer indicador.
El color de relleno se puede definir con las directivas del compilador, o dinámicamente a través de la función PlotIndexSetInteger(). El cambio dinámico de las propiedades de la construcción gráfica permite "vivificar" los indicadores, para que cambien su apariencia en función de la situación actual.
El indicador se calcula para todas las barras para las que los valores de ambos búferes de indicadores no son iguales a cero y no son iguales al valor vacío. Para indicar qué valor habrá que considerar como "vacío", especifíquelo en la propiedad PLOT_EMPTY_VALUE:
#define INDICATOR_EMPTY_VALUE -1.0 |
El dibujo sobre las barras que no participan en el cálculo del indicador va a depender de los valores situados en los búferes de indicadores:
- Las barras para las que los valores de ambos búferes de indicadores son iguales a 0 no participan en el dibujo del indicador. Es decir el área con los valores iguales a cero no va a colorearse.
- Las barras para las que los valores de los búferes de indicadores son iguales a "valor vacío" participan en el dibujo del indicador. El área con valores vacíos va a colorearse de tal manera que las zonas con valores significativos se unan.
Es importante mencionar que si el "valor vacío" es igual a cero, las barras que no participan en el cálculo del indicador también van a colorearse.
El número de búfers requeridos para construir DRAW_FILLING 2.
Aquí tenemos un ejemplo del indicador que dibuja en una ventana separada un canal entre dos medias móviles con diferentes períodos de promedio. El cambio de color durante el cruce de las medias muestra visualmente el cambio de la tendencia alcista y bajista. Los colores se cambian aleatoriamente cada N tics. El parámetro N está sacado a los parámetros externos del indicador para que exista la posibilidad de establecerlo manualmente (pestaña "Parámetros" en la ventana de propiedades del indicador).
Fíjense en que inicialmente para la construcción gráfica plot1 con el estilo DRAW_FILLING dos colores se establecen mediante la directiva del compilador #property, y luego en la función OnCalculate() nuevos colores se establecen de forma aleatoria.
//+------------------------------------------------------------------+
|