Come posso imparare a creare oggetti grafici? MQL4. - pagina 4

 
Integer:

Prima della creazione, potete controllare se l'oggetto esiste, funzione ObjectFind(). Non devi fare nulla, esiste e va bene così, non è un grosso problema.

Un insieme di oggetti. È possibile aggiungere il tempo della barra al nome dell'oggetto, e ottenere un nome unico.

Tagliare il fascio. La proprietà ObjectSet(Name,OBJPROP_RAY,false);

Wow, ho letto i tuoi pensieri. Già fatto. Assegna il nome all'ora corrente.

Tagliato il fascio. Cioè, ricordare il vecchio nome mettendone uno falso?

 
forexman77:

...

Tagliare la trave. Vuoi dire che ricordando il vecchio nome metti un nome falso?

Subito dopo la creazione, chiamate ObjectSet() con lo stesso nome con cui è stata eseguita la creazione.
 

Cercando di disegnare oggetti nell'Expert Advisor, sottofinestra indicatore (MQL4)

L'indicatore è lo stesso, significa che la sottofinestra dovrebbe essere la numero 1.

long   chart_ID=0;        // ID графика
int win_idx=1;
string nameobj=TimeToStr(Time[0]);       
            //--- сбросим значение ошибки
            ResetLastError();
            //--- создадим трендовую линию по заданным координатам
           if(!ObjectCreate(chart_ID,nameobj,OBJ_TREND,win_idx,Time[index],maximum1,Time[1],TRENDmax[1]))
            {
            Print(__FUNCTION__,
                  ": не удалось создать линию тренда! Код ошибки = ",GetLastError());
            return(0);
            } 

Nessun disegno. Viene fuori l'errore 4206 (sottofinestra non trovata)

L'Expert Advisor apre i trade come dovrebbe essere visivamente. Cioè le variabili"Time[index],maximum1,Time[1],TRENDmax[1]" sono corrette.

 
forexman77:

Cercando di disegnare oggetti nell'Expert Advisor, sottofinestra indicatore (MQL4)

L'indicatore è lo stesso, significa che la sottofinestra dovrebbe essere la numero 1.

Nessun disegno. Esce l'errore 4206 (Sottofinestra non trovata)

Invece di "1" metteteChartWindowFind().
 
Karputov Vladimir:
Invece di "1" metteteChartWindowFind().

Come posso ottenere il nome breve dell'indicatore nell'EA?

Nell'indicatore stesso ho fatto un nome breve

IndicatorShortName("fraktalSDV");
 

Ha fatto uno script:

void OnStart()
  {
string   shortName="fraktalSDV"; 
long   chart_ID=0;        // ID графика
int win_idx=ChartWindowFind(chart_ID,shortName);
Alert("Окно = ", win_idx);
  }

La finestra viene visualizzata come dovrebbe essere.

Nell'EA:

string   shortName="fraktalSDV"; 
long   chart_ID=0;        // ID графика
int win_idx=ChartWindowFind(chart_ID,shortName);
         Print("shortName=",shortName);
         string nameobj=TimeToStr(Time[0]);          
            //--- сбросим значение ошибки
            ResetLastError();
            //--- создадим трендовую линию по заданным координатам
           if(!ObjectCreate(chart_ID,nameobj,OBJ_TREND,win_idx,Time[index],maximum1,Time[1],TRENDmax[1]))
            {
            Print(__FUNCTION__,
                  ": не удалось создать линию тренда! Код ошибки = ",GetLastError());
            return(0);
            } 

ottenere il numero di sottofinestra -1

 
forexman77:

Ha fatto uno script:

La finestra viene visualizzata come dovrebbe essere.

Nell'EA:

ottenere il numero di sottofinestra -1

Sei sicuro di avere un indicatore nella sottofinestra con il nome corto"fraktalSDV"?
 
Karputov Vladimir:
Sei sicuro di avere un indicatore sul tuo grafico nella sottofinestra con il nome breve"fraktalSDV"?
Quando attivo la visualizzazione nel tester, appare alla fine della corsa.
 
forexman77:
Quando attivo la visualizzazione nel tester, appare alla fine della corsa.
Create un modello con l'indicatore e salvate questo modello con il nome di tester.
 
Karputov Vladimir:
Create un modello con l'indicatore e salvate questo modello con il nome di tester.

Cioè, creare un profilo grafico con l'indicatore?

Ho provato ad eseguire l'indicatore nel tester, su slow motion, viene reso.