ChartIndicatorName

Restituisce il nome breve dell'indicatore per il numero nella lista degli indicatori sulla finestra del grafico specificato.

string  ChartIndicatorName(
   long  chart_id,      // ID del Grafico
   int   sub_window     // numero di sottofinestra
   int   index          // indice dell'indicatore nell'elenco degli indicatori aggiunti alla sottofinestra del grafico
   );

Parametri

chart_id

[in] ID del Grafico. 0 indica il grafico corrente.

sub_window

[in] Numero di sottofinestra grafico. 0 denota la principale sottofinestra del grafico.

index

[in] l'indice dell'indicatore nell'elenco degli indicatori. La numerazione degli indicatori inizia con zero, vale a dire che il primo indicatore della lista ha indice 0. Per ottenere il numero di indicatori nella lista utilizzare la funzione ChartIndicatorsTotal().

Valore restituito

Il nome breve dell'indicatore che si trova nella proprietà INDICATOR_SHORTNAME con la funzione IndicatorSetString(). Per ottenere i dettagli dell'errore utilizzare la funzione GetLastError().

Nota

Non confondere il nome breve indicatore e il nome del file che viene specificato durante la creazione di un indicatore con le funzioni iCustom() ed IndicatorCreate(). Se il nome breve di un indicatore non è impostato in modo esplicito, il nome del file che contiene il codice sorgente dell'indicatore verrà specificato durante la compilazione.

Il nome breve dell'indicatore dovrebbe essere formato correttamente. Questo viene scritto nella proprietà INDICATOR_SHORTNAME utilizzando la funzione IndicatorSetString(). E' raccomandato che il nome breve deve contenere i valori di tutti i parametri di input dell'indicatore, poiché l'indicatore eliminato dal grafico dalla funzione ChartIndicatorDelete() è identificato dal nome breve.

Esempio:

//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- ottenere l'ID del grafico corrente e il numero delle sue sotto finestre, compresa la finestra principale
   long chart_id = ChartID();
   int  wnd_total= (int)ChartGetInteger(0,CHART_WINDOWS_TOTAL);
   
//--- iterare in un ciclo su tutte le finestre del grafico corrente
   for(int w=0w<wnd_totalw++)
     {
 //--- ottenere il numero di indicatori allegati alla finestra del grafico specificato dall'indice del ciclo
      int ind_total=ChartIndicatorsTotal(chart_idw);
      
 //--- stampare l'intestazione della finestra del grafico selezionata
      PrintFormat("Chart window %d indicators: "w);
      
 //--- entrare nel ciclo e scrivere nella variabile tutti i nomi degli indicatori allegati alla finestra selezionata
      string ind_names="";
      for(int i=0i<ind_totali++)
        {
         ind_names+="  "+ChartIndicatorName(chart_idwi)+(i<ind_total-1 ? "\n""");
        }
 //--- stampare nel journal la lista dei nomi di tutti gli indicatori, allegati alla finestra del grafico specificata.
      Print(ind_names);
     }
   /*
   risultato:
   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)
   */
  }

Vedi anche

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