Fehler, Irrtümer, Fragen - Seite 154

 

Aus irgendeinem Grund kann ich mit der Standardbibliothek keine Daten aus dem Indikator abrufen. Hier ist das Skript:

//---------------------------------------------------------------------
#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 ));
    }
  }
}
//---------------------------------------------------------------------

Hier ist das Ergebnis der Operation:

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

Offenbar wird EMPTY_VALUE anstelle von Werten ausgegeben.

Was mache ich falsch?

 
Dima_S:


Was mache ich falsch?


Versuchen Sie

price_source.Refresh(-1);


Bevor Sie Daten anfordern.

 

Vielen Dank, das ist sehr hilfreich. Es wäre gut, dies in der Hilfe zu berücksichtigen.

void CIndicator::Refresh(int flags)

Ich verstehe also, dass die Flaggen eine binäre Maske von Zeitrahmen sind, die aktualisiert werden? Wenn -1, werden alle TFs aufgefrischt?
 
Dima_S:
Ich nehme an, dass die Flaggen eine binäre Maske von Zeitrahmen sind, die aktualisiert werden? Wenn -1, werden alle TFs aufgefrischt?

Ganz genau. Sie können Sichtbarkeitskonstanten für Objekte verwenden.

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

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

Ich kann es nicht verstehen, ich muss es verpasst haben. Dies:

class dfgdfg
{                                
   void sgsfd();
};

normal kompiliert. Ist das so gewollt?

Ich verstehe also, dass der Optimierer die Methode vor der Kompilierung als nicht verwendet einstuft und daher die Fehlermeldung 111 nicht erzeugt wird.

+Außerdem werden nicht verwendete Methoden mit Implementierungsfehlern ohne Warnung kompiliert.

 

Ist mein Problem für jemanden von Interesse?

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

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

Es gibt auch ein Problem.

Arrays werden nur initialisiert, wenn der Indikator startet

Dies hängt mit einer Art Fehler im Standard-Zickzack zusammen:


 
MT 5 funktioniert nicht über Proxys (http,socks 4,5) Build 328. MT 4 funktioniert jedoch problemlos über diese Proxys.
 
AlexSTAL:

Ist mein Problem für jemanden von Interesse?

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

Ja, Ihre Nachrichten wurden gesehen.

Ich versuche, es wieder zu tun.

 
AlexSTAL:

Es gibt auch ein Problem.

Arrays werden nur initialisiert, wenn der Indikator startet

Dies hängt mit einer Art Fehler im Standard-Zickzack zusammen:


Wenn Sie eine Speicherausnahme erhalten, ist es sinnlos, das Terminal weiter auszuführen. Am sinnvollsten ist es, das Terminal neu zu starten und herauszufinden, warum es so viel Speicher benötigt, und zu versuchen, den Appetit zu verringern.