Asesores Expertos: EA_OBJPROP_CHART_ID

 

EA_OBJPROP_CHART_ID:

Este Asesor Experto es una demostración de cómo trabajar con objetos OBJ_CHART como gráficos convencionales. Puede configurar los ajustes de color personalizados, adjuntar indicadores etc.

EA_OBJPROP_CHART_ID

Autor: MetaQuotes Software Corp.

 
¿Y cómo puedo asignar otros colores de búfer al añadir un indicador?
 
sergeev:
¿pero es técnicamente posible? ¿Debo escribir una solicitud a servicedesk (no para "marcar la casilla")?

Estoy seguro de que desde un punto de vista técnico es posible, porque de hecho ya está implementado, sólo hay que añadir nuevos parámetros al lenguaje.

 


Rosh
, me parece que ya hay un montón de peticiones relativas a la ampliación de la funcionalidad de trabajar con indicadores.

Por el momento sólo tenemos 4 funciones para trabajar con indicadores mediante programación:

En la solicitud a servicedesk #98320 | 2011.05.08 19:13 sugerido una función adicional:
ChartIndicatorFileName - que devuelve el nombre del archivo del indicador

La solicitud de trabajo ampliado con indicadores también ha aparecido hace mucho tiempo (en los sueños de los usuarios :):
ChartIndicatorSetDouble, ChartIndicatorSetInteger, ChartIndicatorSetString - análogos completos de las funciones de los indicadores personalizados IndicatorSetDouble , IndicatorSetInteger, IndicatorSetString , pero sólo la referencia es a un indicador específico en el gráfico.


 
sergeev:
pero ¿es técnicamente posible? ¿Merece la pena escribir una petición a servicedesk (no para "marcar la casilla")?

La función ChartIndicatorAdd() opera el manejador del indicador, es decir, la parte de cálculo. El manejador del indicador se puede utilizar repetida y simultáneamente, y no sabe nada sobre qué gráfico específico se muestran sus datos y cómo se ve visualmente. Esto sólo lo sabe el propio indicador, que se lanza sobre el gráfico.

Es decir, por el momento, no hay posibilidades listas en el lenguaje MQL5 para gestionar las propiedades visuales de un indicador lanzado en un gráfico. No hay cuerdas para tirar.

 

¿Por qué la función ChartSaveTemplate no guarda las plantillas del objeto "Chart"?

aunque ChartApplyTemplate para el objeto "Chart" funciona bien.

 
sergeev:

ok. ¿dime por qué la función ChartSaveTemplate no guarda plantillas del objeto "Chart"?

Se trata de una pregunta inesperada, ya que inicialmente no se consideró tal posibilidad.
 

Hace poco hice una pregunta similar sobre diferentes colores aquí : MAs de diferentes colores. Las ajusté a los periodos que necesitaba.

Y de ahí la pregunta: ¿dónde se configuran en Alligator los colores de las líneas (topes visualizados)? ¿Es posible acceder a ello de alguna manera?

Entonces podría escribir mi propio indicador con la coloración requerida por analogía.

OBJ_CHART
OBJ_CHART
  • www.mql5.com
С помощью данного кода можно создать объект OBJ_CHART и прикрепить к нему разные индикаторы, например, четыре МА:.
 
falkov:

Y de ahí la pregunta: ¿dónde se establecen en Alligator los colores de las líneas (buffers visualizados)? ¿Es posible acceder a ello de alguna manera?

Entonces sería posible escribir su propio indicador con la coloración requerida por analogía.

Cuando se utiliza la función ChartIndicatorAdd(), el indicador se superpone al gráfico con los colores por defecto. Esto no se puede controlar (directamente).

Teóricamente, es posible poner el color de la línea en una variable externa del indicador personalizado y así establecer el color deseado.

 
Rosh:
esa posibilidad no se consideró en un principio.

Terminal de Cliente MetaTrader 5 build 468

MQL5: Corregida la función ChartSaveTemplate.

Muchas gracias. Todo funciona.

 

Rosh, a petición #98320, ¿puedes añadir el nombre del archivo físico al objeto manejador del indicador?

Es decir, ¿para poder averiguar no sólo el nombre corto del indicador, sino también su nombre de archivo completo?

ChartIndicatorFileName

Возвращает имя файла индикатора по номеру в списке индикаторов на указанном окна графика.

string  ChartIndicatorFileName(
   long  chart_id,      // identificador del gráfico
   int   sub_window     // número de subventana
   int   index          // índice del indicador en la lista de indicadores añadidos a esta subventana del gráfico
   );