Errori, bug, domande - pagina 154

 

Per qualche motivo non riesco a ottenere dati dall'indicatore usando la libreria standard. Ecco lo script:

//---------------------------------------------------------------------
#include  <Indicators\Trend.mqh>
//---------------------------------------------------------------------
CiSAR  price_source;
//---------------------------------------------------------------------
void
OnStart( )
{
  if( price_source.Create( Symbol( ), PERIOD_CURRENT, 0.01, 0.2 ) == true )
  {
    for( int i = 0; i < 10; i++ )
    {
      Print( "Price[ ", i, " ] = ", price_source.Main( i ));
    }
  }
}
//---------------------------------------------------------------------

Ecco il risultato del suo funzionamento:

2010.10.04 13:31:17 TestIndicator (AUDUSD,H1) Prezzo[ 9 ] = 1.797693134862316e+308
2010.10.04 13:31:17 TestIndicator (AUDUSD,H1) Prezzo[ 8 ] = 1.797693134862316e+308
2010.10.04 13:31:17 TestIndicator (AUDUSD,H1) Prezzo[ 7 ] = 1.797693134862316e+308
2010.10.04 13:31:17 TestIndicator (AUDUSD,H1) Prezzo[ 6 ] = 1.797693134862316e+308
2010.10.04 13:31:17 TestIndicator (AUDUSD,H1) Prezzo[ 5 ] = 1.797693134862316e+308
2010.10.04 13:31:17 TestIndicator (AUDUSD,H1) Prezzo[ 4 ] = 1.797693134862316e+308
2010.10.04 13:31:17 TestIndicator (AUDUSD,H1) Prezzo[ 3 ] = 1.797693134862316e+308
2010.10.04 13:31:17 TestIndicator (AUDUSD,H1) Prezzo[ 2 ] = 1.797693134862316e+308
2010.10.04 13:31:17 TestIndicator (AUDUSD,H1) Prezzo[ 1 ] = 1.797693134862316e+308
2010.10.04 13:31:17 TestIndicator (AUDUSD,H1) Prezzo[ 0 ] = 1.797693134862316e+308

A quanto pare viene emesso EMPTY_VALUE invece di valori.

Cosa faccio di sbagliato?

 
Dima_S:


Cosa sto facendo di sbagliato?


Prova ad aggiungere

price_source.Refresh(-1);


Prima di richiedere i dati.

 

Grazie, questo è utile. Sarebbe bene riflettere questo nell'aiuto.

void CIndicator::Refresh(int flags)

Quindi ho capito che le bandiere sono una maschera binaria di timeframes che vengono aggiornati? Se -1, allora tutti i TF sono aggiornati?
 
Dima_S:
Immagino che le bandiere siano una maschera binaria di timeframe che vengono aggiornati? Se -1, allora tutti i TF sono aggiornati?

Esattamente. Potete usare le costanti di visibilità degli oggetti.

https://www.mql5.com/ru/docs/constants/objectconstants/visible

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Видимость объектов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Видимость объектов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы объектов / Видимость объектов - Документация по MQL5
 

Non riesco a capirlo, devo essermelo perso. Questo:

class dfgdfg
{                                
   void sgsfd();
};

compila normalmente. È normale che sia così?

Quindi capisco che l'ottimizzatore taglia il metodo come non utilizzato prima della compilazione e di conseguenza il messaggio di errore 111 non viene generato.

+Inoltre, i metodi inutilizzati con errori di implementazione sono compilati senza messaggi.

 

Il mio problema interessa qualcuno?

https://www.mql5.com/ru/forum/2172/page1

Не обновляются некоторые графики
Не обновляются некоторые графики
  • www.mql5.com
Непосредственно в индикаторе выбирается необходимый инструмент и период графика.
 

C'è anche un problema.

Gli array sono inizializzati solo quando l'indicatore inizia

Questo è correlato a qualche tipo di errore nello zigzag standard:


 
MT 5 non funziona attraverso i proxy (http, socks 4,5) Build 328. Tuttavia, MT 4 funziona bene attraverso questi proxy.
 
AlexSTAL:

Il mio problema interessa qualcuno?

https://www.mql5.com/ru/forum/2172/page1

Sì, i vostri messaggi sono stati visti.

Cercando di farlo di nuovo.

 
AlexSTAL:

C'è anche un problema.

Gli array sono inizializzati solo quando l'indicatore inizia

Questo è correlato a qualche tipo di errore nello zigzag standard:


Quando si ottiene un'eccezione Memory non ha senso continuare ad eseguire il terminale. La cosa più sensata è riavviare il terminale e capire perché ha preso così tanta memoria e cercare di ridurre l'appetito.
Motivazione: