ChartNavigate durante l'inizializzazione - pagina 7

 
A100:

Anche quando si cambia il profilo. Inoltre, se dopo ChartNavigate( chart_id, CHART_BEGIN, shift ) otteniamo per esempio CHART_FIRST_VISIBLE_BAR, il risultato sarà come se ChartNavigate avesse funzionato. Se l'Expert Advisor viene rimosso, allora la prossima volta che si avvia l'Expert Advisor (lo stesso o diverso), il risultato di ottenere CHART_FIRST_VISIBLE_BAR in questo grafico sarà come se CHARTNavigate non funzionasse

In conclusione: funzionamento di ChartNavigate estremamente incoerente già in combinazione con CHART_FIRST_VISIBLE_BAR

Wow, devo controllare. Riferirò i risultati.

 
A100:

Anche quando il profilo viene cambiato. Inoltre, se dopo ChartNavigate( chart_id, CHART_BEGIN, shift ) otteniamo per esempio CHART_FIRST_VISIBLE_BAR, il risultato sarà come se ChartNavigate avesse funzionato. Se l'Expert Advisor viene rimosso, allora la prossima volta che si avvia l'Expert Advisor (questo o un altro), il risultato di ottenere CHART_FIRST_VISIBLE_BAR nello stesso grafico sarà come se CHARTNavigate non funzionasse

Come risultato: funzionamento estremamente incoerente di ChartNavigate in combinazione con CHART_FIRST_VISIBLE_BAR

L'ho controllato in tre modi (ho usato l'indicatore #1 del post di Rashid):

  1. Dopo aver attaccato l'indicatore al grafico non ha cambiato nulla sul grafico ed è passato ad un profilo diverso. È tornato al profilo dove era attaccato l'indicatore. Il grafico è rimasto nella posizione in cui l'ho lasciato prima dello scambio.
  2. Dopo aver collegato l'indicatore al grafico, ho premuto il pulsante di scorrimento automatico. Il grafico si è spostato sulla barra dello zero. Ho cambiato il profilo con un altro e sono tornato al profilo dove era attaccato l'indicatore. Il grafico non si è nemmeno mosso; è rimasto sulla candela zero. Il pulsante di scorrimento automatico è spento. Significa che l'indicatore viene avviato, ma viene eseguita la funzione ChartNavigate().
  3. Dopo aver attaccato l'indicatore al grafico, ho cambiato la posizione del grafico riavvolgendo la storia. Ho cambiato il profilo con un altro e sono tornato al profilo dove era attaccato l'indicatore. Il grafico viene visualizzato sulla barra dello zero. Non capisco come valutare questo risultato. È solo il terminale che si prende cura di se stesso))).
 
Ihor Herasko:

Testato in tre modi (usato l'indicatore #1 dal post di Rashid):

  1. Dopo aver attaccato l'indicatore al grafico, non ha cambiato nulla sul grafico ed è passato ad un altro profilo. È tornato al profilo dove era attaccato l'indicatore. Il grafico è rimasto nella posizione in cui l'ho lasciato prima dello scambio.
  2. Dopo aver collegato l'indicatore al grafico, ho premuto il pulsante di scorrimento automatico. Il grafico si è spostato sulla barra dello zero. Ho cambiato il profilo con un altro e sono tornato al profilo dove era attaccato l'indicatore. Il grafico non si è nemmeno mosso; è rimasto sulla candela zero. Il pulsante di scorrimento automatico è spento. L'indicatore viene avviato, ma viene eseguita la funzione ChartNavigate().

È meglio che tu faccia un video. Per una volta non capisco cosa stai scrivendo, perché sei riuscito a scrivere il contrario in un solo messaggio. Credo che nessuno ti capisca, ma alla fine lasci tutti con la sensazione che qualcosa non funziona.

Ti riferisci al mio codice, eccolo qui.

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {


//--- отключим автопрокрутку
   ChartSetInteger(0,CHART_AUTOSCROLL,false);
//--- установим отступ правого края графика
   ChartSetInteger(0,CHART_SHIFT,true);
//--- отобразим в виде свечей
   ChartSetInteger(0,CHART_MODE,CHART_CANDLES);
//--- установить режим отображения тиковых объемов
   ChartSetInteger(0,CHART_SHOW_VOLUMES,CHART_VOLUME_TICK); 
//--- Прокрутим от правого края графика на 1000 баров влево
   ChartNavigate(0,CHART_END,-1000);
//---

Come fa un grafico a non avere ticchettii se si scrive "ma la funzione ChartNavigate() è stata eseguita". E tali incoerenze continuano in questo thread in tutti i tuoi post. Tu non vedi i tuoi messaggi dall'esterno. Quindi prendete un video, poi guardatelo voi stessi e formulate i vostri pensieri.

 
Rashid Umarov:

È meglio che tu faccia un video o qualcosa del genere. Per una volta non capisco cosa stai scrivendo perché riesci a scrivere gli opposti nello stesso post. Credo che nessuno ti capisca,

Finora, nessuno in questo thread ha detto che non capisce l'essenza del problema. Ancora una volta chiarisco la questione: quando si avvia il terminale con l'indicatore allegato, il grafico non scorre fino alla posizione specificata.

ma alla fine si lascia a tutti la sensazione che qualcosa non funziona.

Perché devi firmare per tutti? Se non lo capite, specificatelo e basta, nessuno vi batte per questo ))

Ti riferisci al mio codice, eccolo qui.

Come fa un grafico a non essere in tilt se si scrive "ma la funzione ChartNavigate() è stata eseguita".

Solo un errore di battitura. La frase corretta è "la funzione ChartNavigate non è stata eseguita".

E tali incoerenze vanno in questo thread in tutti i tuoi post.

Perché, invece di discutere l'argomento, continuate ad entrare nelle personalità? Quali incongruenze ci sono in tutti i suoi post? Occupiamoci di loro, se ce ne sono. Finora vedo solo un errore di battitura.

 
Rashid Umarov:

Quindi fate un video, poi guardatelo voi stessi e formulate i vostri pensieri.

Ecco il video:


Commenti sul video:

  1. Un indicatore (il primo dal post di Rashid) è collegato al grafico con l'autoscorrimento attivato. Il grafico è stato spostato. Il luogo è specificamente evidenziato con una linea verticale blu.
  2. Il terminale è stato ricaricato senza scollegare l'indicatore dal grafico.
  3. Il grafico viene visualizzato sulla candela corrente. Ci si aspettava che fosse nello stesso posto in cui si trovava quando il terminale è stato chiuso.
La connessione al server è specificamente prevista nel video. Ma dopo la connessione al server non cambia nulla, il grafico rimane nello stesso posto.
 

Mi dispiace, c'è davvero qualcosa di strano in ChartNavigate(). Ho fatto un video e tutto ha funzionato. Poi ho iniziato a cambiare timeframes, cambiando "Max bars in window" e ha smesso di funzionare. Richiamo l'attenzione degli sviluppatori sull'argomento.

 
Rashid Umarov:

Mi dispiace, c'è davvero qualcosa di strano in ChartNavigate(). Ho fatto un video e tutto ha funzionato. Poi ho iniziato a cambiare timeframes, cambiando "Max bars in window" e ha smesso di funzionare. Richiamo l'attenzione degli sviluppatori sull'argomento.

...E che non si dimentichino di questi bug legati al problema alla riapertura del terminale:

https://www.mql5.com/ru/forum/279927/page2#comment_8769528

punti 1, 4 e 13:

https://www.mql5.com/ru/forum/279927

 
Rashid Umarov:

Mi dispiace, c'è davvero qualcosa di strano in ChartNavigate(). Ho fatto un video e tutto ha funzionato. Poi ho iniziato a cambiare timeframes, cambiando "Max bars in window" e ha smesso di funzionare. Richiamo l'attenzione degli sviluppatori sull'argomento.

Grazie.

 
Ihor Herasko:

Grazie.

grazie a me, sono stato io a tirarlo fuori nell'altro thread)

 

Sono passate due settimane.

è stato riparato?

(non voglio controllare tutto da solo, e anche il signor Ihor Herasko vorrebbe sapere)