ChartIndicatorName

Retorna o nome abreviado do indicador mediante o número na lista de indicadores da janela do gráfico especificado.

string  ChartIndicatorName(
   long  chart_id,      // ID gráfico
   int   sub_window     // numero de sub-janelas
   int   index          // índice do indicador na lista de indicadores adicionada a sub-janela do gráfico
   );

Parâmetros

chart_id

[in]  ID Gráfico. 0 (zero) indica a sub-janela gráfico principal.

sub_window

[in]  Número de sub-janela do gráfico. 0 (zero) indica o sub-janela gráfico principal.

index

[in]  índice do indicador na lista de indicadores. A numeração de indicadores começam com zero, ou seja, o primeiro indicador da lista tem o índice 0. Para obter o código do último erro, você também pode usar a função ChartIndicatorsTotal().

Valor retornado

O nome abreviado do indicador que é definido na propriedade INDICATOR_SHORTNAME com a função IndicatorSetString(). Para obter detalhes do erro use a função GetLastError().

Observação

Não confundir o nome abreviado do indicador e o nome do arquivo que é especificado ao criar um indicador usando as funções iCustom() e IndicatorCreate(). Se o nome abreviado de um indicador não é definido de forma explicita, o nome do arquivo contendo o código-fonte do indicador será especificado durante a compilação.

Nome abreviado do indicador deve ser formado corretamente. a propriedade INDICATOR_SHORTNAME será escrita usando a funçãoIndicatorSetString(). Sé recomendado que o nome abreviado deve conter valores de todos os parâmetros de entrada do indicador, porque, como o indicador excluído do gráfico pela função ChartIndicatorDelete(), ele é identificado pelo nome abreviado.

Exemplo:

//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- obtemos o identificador do gráfico atual e o número de suas subjanelas, incluindo a janela principal
   long chart_id = ChartID();
   int  wnd_total= (int)ChartGetInteger(0,CHART_WINDOWS_TOTAL);
   
//--- percorremos todas as janelas do gráfico atual
   for(int w=0w<wnd_totalw++)
     {
      //--- obtemos o número de indicadores anexados à janela do gráfico especificada mediante o índice do laço
      int ind_total=ChartIndicatorsTotal(chart_idw);
      
      //--- imprimimos o título da janela do gráfico selecionado
      PrintFormat("Chart window %d indicators: "w);
      
      //--- obtemos todos os nomes dos indicadores anexados à janela selecionada no laço e os grava na variável
      string ind_names="";
      for(int i=0i<ind_totali++)
        {
         ind_names+="  "+ChartIndicatorName(chart_idwi)+(i<ind_total-1 ? "\n""");
        }
      //--- imprimimos no log a lista de nomes de todos os indicadores anexados à janela de gráfico especificada
      Print(ind_names);
     }
   /*
   Resultado:
   Chart window 0 indicators
     AMA(9,2,30)
     SAR(0.02,0.20)
     Fractals
   Chart window 1 indicators
     RSI(14)
     AMA(9,2,30)
   Chart window 2 indicators
     MFI(14)
   */
  }

Também Veja

ChartIndicatorAdd(), ChartIndicatorDelete(), ChartIndicatorsTotal(), iCustom(), IndicatorCreate(), IndicatorSetString()