Testen von 'CopyTicks' - Seite 6

 
Karputov Vladimir:
Auf MetaQuotes-Demo sind sie anders - denn auch hier soll das Beispiel so einfach wie möglich sein. Meine Flaggen sind heute die gleichen wie bei MetaQuotes-Demo.

Ergebnis Ihres Indikators heute, Server Meta-Quotes Demo. Die Flaggen über SymbolInfoTick sind null.

 
zimbabve15:

Ergebnis Ihres Indikators heute, Server Meta-Quotes Demo. Flags durch SymbolInfoTick kommen mit Null.

Es ist 10 Minuten her und ich habe keine Diskrepanz zwischen den Flags gesehen, die durch CopyTicks und SymbolInfoTick auf EURUSD auf MetaQoutes-Demo empfangen wurden.
 
Karputov Vladimir:
Es ist 10 Minuten her - aber ich habe noch nie eine Diskrepanz zwischen den Flaggen der Ticks gesehen, die durch CopyTicks und SymbolInfoTick auf EURUSD auf MetaQoutes-Demo empfangen wurden.

um 16.53 Uhr endeten die Fehlanpassungen, als der Höhepunkt der Aktivität überschritten war

 
Karputov Vladimir:
Es ist schon 10 Minuten her, aber ich habe noch nie gesehen, dass bei MetaQoutes-Demo, bei EURUSD, die Flaggen der Ticks, die durch CopyTicks und SymbolInfoTick empfangen wurden, nicht übereinstimmen.

Das Gleiche noch einmal bei einer starken Bewegung

 
Karputov Vladimir:
Es hat 10 Minuten gedauert und ich habe keine Diskrepanz zwischen den Flaggen der Ticks, die durch CopyTicks und SymbolInfoTick auf EURUSD auf MetaQoutes-Demo erhalten wurden, gesehen.

Ich schlage den folgenden Code zum Testen vor:

#property copyright "Copyright © 2015, Vladimir Karputov"
#property link      "http://wmua.ru/slesar/"
#property version   "1.44"
#property description "Indicator for comparing the three modes of receiving ticks"
#property description "Индикатор для сравнения трёх режимов получения тиков"
#property indicator_plots 0
#property indicator_chart_window
int count=1; //считаем пришедшие тики в OnCalculate
int depth_save_tick=10; // количество тиков для записи
//с приходом каждого тика в OnCalculate будем писать в массив структуру тика через функцию SymbolInfoTick depth_save_tick раз
MqlTick SymbolInfoTick_array_depth_save_tick[10]; 
//с приходом каждого тика в OnCalculate будем получать в массив структуру последнего тика через функцию CopyTicks 
MqlTick CopyTick_array_one_tick[];
//с приходом каждого тика в OnCalculate будем писать в массив структуру тика через функцию CopyTicks depth_save_tick раз
MqlTick  CopyTick_array_depth_save_tick[10]; 
//когда придет depth_save_tick тиков  запишем их одним запросом через CopyTicks
MqlTick CopyTick_array[]; 

int OnCalculate(const int rates_total,
                const int prev_calculated,
                const int begin,
                const double &price[])
  {
   MqlTick last_tick;
   SymbolInfoTick(Symbol(),last_tick);
   if(count%depth_save_tick==0)
     {
      int copied=CopyTicks(_Symbol,CopyTick_array,COPY_TICKS_ALL,0,depth_save_tick);
      Comment("");
     }
   else
     {
      SymbolInfoTick_array_depth_save_tick[count-1]=last_tick;
      CopyTicks(_Symbol,CopyTick_array_one_tick,COPY_TICKS_ALL,0,1);
      CopyTick_array_depth_save_tick[count-1]=CopyTick_array_one_tick[0];
     }
   count++;
   return(rates_total);
  }

Die Idee: Ihr Indikator vergleicht die durch SymbolInfoTick und CopyTicks erhaltenen Werte mit einer Tiefe von 1 Tick, d.h. die letzten Werte, die vom Server kommen. Im Indikator werden wir in der ProzedurOnCalculate bei jedem neuen Tick den ersten und den zweiten Wert in Arrays speichern. Die Ausgabe enthält zwei Arrays von Ticks, die mit unterschiedlichen Methoden ermittelt wurden. Stellen wir die Aufzeichnungstiefe auf 10 ein. Nachdem wir diese Tiefe erreicht haben, machen wir eineCopyTicks-Anfrage für die gleichen 10 Ticks und vergleichen diese drei Arrays, um so die Arbeit Ihrer Idee mit dem einfachsten Beispiel zu testen und zu sehen, wie CopyTicks mit einer History-Tiefe von mehr als 1 Tick funktioniert.

Wie es scheint, funktioniert Ihre Idee des "einfachen Beispiels mit einer Datei" und der Indikator zeigt korrekt die Werte der Ticks über SymbolInfoTick und CopyTicks mit einer Tiefe von 1 Tick (ich habe noch nicht die starken Bewegungen berücksichtigt, wie ich gestern schrieb, wo 0 Flaggen empfangen wurden, werden wir bis zur Eröffnung von Amerika heute warten). Sobald wir aber anfangen, diese Geschichten zu vergleichen, wird das Bild mit den Flaggen und anderen Werten in der Struktur der Zecke unklar. Das Bild zeigt, was es ist. Außerdem stimmt die mit den drei Methoden ermittelte Zeit in Ticks überein, d. h. die Ticks sind gleich, aber sie haben eine unterschiedliche Füllung. Server MetaQuotes-Demo

Und ich musste nicht auf die USA warten, wieder auf eine starke Bewegung:

Ich habe es geschafft, die Tick-Daten auf die Bewegung zu schreiben, sie sind in der Anlage, die Nullen kommen durch SymbolInfoTick deutlich zu sehen ist, kann ich Screenshots geben, vergleichen Sie Ihren Indikator Alarmzeit und die Nullen in der Datei. MetaQuotes-Demo-Server

Dateien:
 

Wie endet dieser Thriller?

Ich habe das ganze Buch gelesen, und es gibt kein Ende.

 
Nemoys:

Wie endet dieser Thriller?

Ich habe das ganze Buch gelesen, und es gibt kein Ende.

Service Desk antwortete:

Guten Tag. Ihre Anfragen sind in Arbeit. Wir werden in jedem einzelnen Fall antworten, wenn das Problem gelöst ist.

Ein Update scheint für Anfang März versprochen worden zu sein, also warten wir ab.

 

Stimmen Zeitpunkt und Abfolge der Ticks mit den Börsendaten oder mit den Daten des Metatrader-Handelsservers überein?

Könnte es zum Beispiel sein, dass ein bestimmtes Gebot an der Börse in der 100. Millisekunde geboren wurde und in der 101. gestorben ist, aber in der Historie des Metatraders fehlt dieses Gebot entweder oder hat eine Geburts-/Todeszeit, die nicht gleich 100/101 ist?

 
Anton Zverev:

Stimmt der Zeitpunkt und die Reihenfolge der Ticks mit den Börsendaten oder den Daten des Metatrader-Handelsservers überein?

Kann es zum Beispiel sein, dass ein bestimmtes Gebot an der Börse in der 100. Millisekunde geboren wurde und in der 101. gestorben ist, aber in der Historie des Metatraders fehlt dieses Gebot entweder oder hat eine Geburts-/Todeszeit ungleich 100/101?

Alle Angaben sind absolut korrekt, ohne Auslassungen oder andere Fehler.

Die Tick-Basis ist für alle Prozesse in MetaTrader 5 gleich: Server, Terminals, Tester, usw.

 
MetaQuotes Software Corp.:

Alle Angaben sind absolut korrekt, ohne Auslassungen oder andere Fehler.

Die Tick-Basis ist für alle MetaTrader 5-Prozesse gleich: Server, Terminals, Tester, etc.

Es stellt sich heraus, dass, wenn ich die Geschichte der Zecken von der Börse Website herunterladen und von den fünf, wird es eine vollständige Übereinstimmung mit einer Genauigkeit von ms?

Sind die Zecken im Tester für FORTS Demo oder echt?