Fehler, Irrtümer, Fragen - Seite 1780

 

SymbolInfoTick() -Fehler, der irrelevante Daten zurückgibt - Tick-Überschwinger. Build 1525 x64. Test mit Indikator, nicht mit Expert Advisor getestet:

#property version   "1.00"
#property indicator_chart_window
#property indicator_plots 0
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- indicator buffers mapping
  
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
//---
   static long prevMs = 0;
   //---
   MqlTick tick;
   if( SymbolInfoTick( _Symbol, tick ) )
        {
         if( prevMs != 0 && tick.time_msc < prevMs )
                {
                 Print( __FUNCTION__,": ОШИБКА ПОСЛЕДОВАТЕЛЬНОСТИ! SymbolInfoTick() вернуло не последнее значение!" );
                 Print( __FUNCTION__,": Текущее время мс = ",tick.time_msc," ("+TimeToString( tick.time, TIME_DATE|TIME_SECONDS )+"), предыдущее = ",prevMs );
                }
            //---
            prevMs = tick.time_msc;
        }
   else
         Print( __FUNCTION__,": ОШИБКА #",GetLastError(),". Значение текущего тика не получено!" );
//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+

Ergebnis:

2017.02.02 21:54:20.450 test_SymbolInfoTick_20170202 (VTBR-3.17,M1)     OnCalculate: ОШИБКА ПОСЛЕДОВАТЕЛЬНОСТИ! SymbolInfoTick() вернуло не последнее значение!
2017.02.02 21:54:20.450 test_SymbolInfoTick_20170202 (VTBR-3.17,M1)     OnCalculate: Текущее время мс = 1486065260384 (2017.02.02 19:54:20), предыдущее = 1486065260387
2017.02.02 22:11:31.025 test_SymbolInfoTick_20170202 (GOLD-3.17,M3)     OnCalculate: ОШИБКА ПОСЛЕДОВАТЕЛЬНОСТИ! SymbolInfoTick() вернуло не последнее значение!
2017.02.02 22:11:31.025 test_SymbolInfoTick_20170202 (GOLD-3.17,M3)     OnCalculate: Текущее время мс = 1486066290963 (2017.02.02 20:11:30), предыдущее = 1486066290966
2017.02.02 22:12:44.939 test_SymbolInfoTick_20170202 (BR-3.17,M1)       OnCalculate: ОШИБКА ПОСЛЕДОВАТЕЛЬНОСТИ! SymbolInfoTick() вернуло не последнее значение!
2017.02.02 22:12:44.939 test_SymbolInfoTick_20170202 (BR-3.17,M1)       OnCalculate: Текущее время мс = 1486066364884 (2017.02.02 20:12:44), предыдущее = 1486066364890
2017.02.02 22:29:36.358 test_SymbolInfoTick_20170202 (Si-3.17,M1)       OnCalculate: ОШИБКА ПОСЛЕДОВАТЕЛЬНОСТИ! SymbolInfoTick() вернуло не последнее значение!
2017.02.02 22:29:36.358 test_SymbolInfoTick_20170202 (Si-3.17,M1)       OnCalculate: Текущее время мс = 1486067376304 (2017.02.02 20:29:36), предыдущее = 1486067376307
2017.02.02 22:31:26.462 test_SymbolInfoTick_20170202 (Si-3.17,M1)       OnCalculate: ОШИБКА ПОСЛЕДОВАТЕЛЬНОСТИ! SymbolInfoTick() вернуло не последнее значение!
2017.02.02 22:31:26.462 test_SymbolInfoTick_20170202 (Si-3.17,M1)       OnCalculate: Текущее время мс = 1486067486339 (2017.02.02 20:31:26), предыдущее = 1486067486344
2017.02.02 22:32:14.441 test_SymbolInfoTick_20170202 (Si-3.17,M1)       OnCalculate: ОШИБКА ПОСЛЕДОВАТЕЛЬНОСТИ! SymbolInfoTick() вернуло не последнее значение!
2017.02.02 22:32:14.441 test_SymbolInfoTick_20170202 (Si-3.17,M1)       OnCalculate: Текущее время мс = 1486067534360 (2017.02.02 20:32:14), предыдущее = 1486067534363
2017.02.02 22:36:07.509 test_SymbolInfoTick_20170202 (Si-3.17,M1)       OnCalculate: ОШИБКА ПОСЛЕДОВАТЕЛЬНОСТИ! SymbolInfoTick() вернуло не последнее значение!
2017.02.02 22:36:07.510 test_SymbolInfoTick_20170202 (Si-3.17,M1)       OnCalculate: Текущее время мс = 1486067767443 (2017.02.02 20:36:07), предыдущее = 1486067767463
2017.02.02 22:39:29.606 test_SymbolInfoTick_20170202 (Si-3.17,M1)       OnCalculate: ОШИБКА ПОСЛЕДОВАТЕЛЬНОСТИ! SymbolInfoTick() вернуло не последнее значение!
2017.02.02 22:39:29.606 test_SymbolInfoTick_20170202 (Si-3.17,M1)       OnCalculate: Текущее время мс = 1486067969557 (2017.02.02 20:39:29), предыдущее = 1486067969558

Real, Eröffnung, Access Server V. Traurigkeit! Kümmern Sie sich bitte um das Problem. Und auch zu dem Problem in Antrag#1598238 (ab Seite 10, Beitrag vom26.01.2017 09:43).

Liebe Entwickler, lasst uns die Zecken beseitigen! Code zur Verfügung gestellt, hier ist es - das Problem, keine Notwendigkeit, nach etwas zu suchen, reagieren Sie einfach und beheben Sie es!

 
Oh, und bitte reparieren Sie endlich die Paneele im Terminal! Fehler ist unbedeutend, aber ärgerlich, wenn Sie häufig drücken / strecken müssen die Fensterscheiben nicht an Ort und Stelle stehen! Build 1525 x64.
 
Schauen wir es uns an.
 
Alexey Kozitsyn:

SymbolInfoTick() -Fehler, der irrelevante Daten zurückgibt - Tick-Überschwinger. Build 1525 x64. Test mit Indikator, nicht mit Expert Advisor getestet:


Liebe Entwickler, lasst uns die Zecken beseitigen! Der Code wurde zur Verfügung gestellt, hier ist es - das Problem, Sie brauchen nicht danach zu suchen, reagieren Sie einfach und korrigieren Sie es!

Bitte machen Sie aus Ihrer Nachricht eine Anfrage an servicedesk.
 
Alexey Da:
Bitte gestalten Sie Ihre Nachricht mit der servicedesk-Anwendung.
#1664077
 

Kompilierungsfehler

static string text1 =
                      "ABC"
                      "DEF"; //нормально
static string text2 =
#ifndef MACRO
                      "ABC"
#endif
                      
"DEF"; //Error: 'DEF' - some operator expected
 

Falsche Reihenfolge der Funktionsaufrufe beim Wechsel der Diagrammperiode

  • Pfad zum Indikator: \Indikatoren\Test_i.ex5
  • Pfad der Expertenposition: {Experts\Test.ex5

Abfolge der Aktionen:

  1. Hängen Sie den Expert Advisor 'Test.ex5' an den M5-Chart an (Symbol GBPUSD)
  2. Ändern Sie den Kartenzeitraum auf M15
  3. Ändern Sie den Kartenzeitraum auf M30
  4. Entfernen Sie den Expert Advisor aus dem Diagramm

Ergebnis:

#Schritt 1: verbinden
I::I->M5
OnInit->M5
#Schritt 2: Periodenwechsel M5 ->M15
I::I->M15
OnInit->M15
#Schritt 3: Periodenwechsel M15->M30
I::I->M30
OnInit->M30
OnDeinit->M15:3
I::~I->M15
#Schritt 4: löschen
OnDeinit->M5:1 ##diese Zeile wurde in Schritt #2 wie folgt erwartet: OnDeinit->M5:3
I::~I->M5 ##diese Zeichenfolge wurde bei Schritt 2 erwartet
OnDeinit->M30:1
I::~I->M30

Die mit ## gekennzeichneten Zeilen sollten bei Schritt #2 ausgegeben und zusätzlich aufgrund eines Periodenwechsels deinitialisiert(REASON_CHARTCHANGE:3), aber nicht aus dem Diagramm gelöscht werden (REASON_REMOVE:1). Mit anderen Worten, es wurde erwartet, dass Schritt #2 ähnlich wie Schritt #3 sein würde.

//Test_i.mq5 //Индикатор
void Prn( string f, int i = -1 ) { Print( f, "->", StringSubstr( EnumToString( Period()), 7 ), (i == -1 ? "" : ":" + i )); }
struct I {
         I() { Prn( __FUNCTION__ ); }
        ~I() { Prn( __FUNCTION__ ); }
};
static const I i;
void OnInit()                     { Prn( __FUNCTION__ ); }
void OnDeinit( const int reason ) { Prn( __FUNCTION__, reason ); }
int OnCalculate( const int, const int, const int, const double& [] ) { return 0; }
//Test.mq5 //Эксперт
struct B {
         B();
        ~B();
        const int h;
        static const string name;
};
const string B::name = "Test_i";
B::B() : h( iCustom( NULL, 0, name ))
{
        if ( !ChartIndicatorAdd(    0, 0, h )    ) Print( "-1:", GetLastError());
}
B::~B()
{
        if ( !ChartIndicatorDelete( 0, 0, name ) ) Print( "-2:", GetLastError());
        if ( !IndicatorRelease( h )              ) Print( "-3:", GetLastError());
}
static const B b;
void OnInit() export {}
 

Probleme bei der Installation von Bill-Williams-Blinkern

Ich setze Fraktale ein - das tut es

AO setzen - es setzt ADX

1031 bauen

 
Vladimir Gribachev:

Probleme bei der Installation von Bill-Williams-Blinkern

Ich setze Fraktale ein - das tut es

AO einstellen - ADX einstellen

1031 bauen

nicht nur bei der Installation dieses Indikators, sondern von Zeit zu Zeit auch bei anderen.

Ein Neustart des Terminals behebt das Problem.

bemerkt, dass es nach der Prüfung beginnt.

 

ZigZag Lieferindikator in MT5 bild 1525 flackert intermittierend (ohne Reflashing)

Grund der Beschwerde: