Testen von 'CopyTicks' - Seite 46

 
Igorz2006:
Danke, ich werde es mir ansehen.

Siehe auch diese Antwort auf Ihre Frage:

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Universeller Expert Advisor für Kryptowährungen für mehr als ein Paar!

Vladimir Karputov, 2020.05.18 14:29

Sie müssen eine Verbindung zu einem Handelsserver herstellen, der Kurse von Kryptowährungen überträgt, und dann

Preishistorie herunterladen#


 
mt4 installiert, macht es einfach
 

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

MT5 und Geschwindigkeit in Aktion

fxsaber, 2020.06.01 11:43

Was ist der Grund dafür, dass dieser EA nicht alarmiert?
const MqlTick GetMarketWatchTick( void )
{
  MqlTick Tick = {0};
  
  ::SymbolInfoTick(_Symbol, Tick);
  
  return(Tick);
}

const MqlTick GetLastHistoryTick()
{
  MqlTick Tick[1];
  
  ::CopyTicks(_Symbol, Tick, COPY_TICKS_ALL, 0, 1);
  
  return(Tick[0]);
}

void OnTick()
{
  if (GetMarketWatchTick().time_msc > GetLastHistoryTick().time_msc) // Тик из Обзора рынка свежее, чем последний тик из истории.
    Alert("Hello!");
}


Zur gleichen Zeit die gleiche Prüfung, genäht in den Live-Handel EA auf dem gleichen Terminal, Alertit. Was könnte der Grund dafür sein?

 

In früheren Episoden.

Links ist eine Abfrage des Combat-Terminals für ein 10-Sekunden-Intervall des aktuellen Tages zu sehen. Combat - läuft über mehrere Tage, ruft bei jedem Tick CopyTicks* auf, um neue Ticks zu erhalten.

Rechts - gerade gestartetes Terminal, das dasselbe 10-Sekunden-Intervall anfordert.

Sie können sehen, dass es rechts fünf weitere Häkchen gibt. Das bedeutet, dass der DB von Ticks mit Fehlern im Terminal gebildet wird.

Seien Sie wachsam! MT5 überspringt seine eigenen historischen Ticks, die (ich habe es überprüft) über SymbolInfoTick zu OnTick kamen.

 
fxsaber:

In früheren Episoden.


Seien Sie wachsam! MT5 vermisst seine eigenen historischen Ticks, die über SymbolInfoTick zu OnTick kamen (geprüft).

Es ist traurig, denn ich verwende bei meiner Arbeit einen stark tickenden Datenstrom. Es ist nicht klar, ob es sich um einen Terminalfehler handelt oder ob es beabsichtigt ist.

 
fxsaber:

In früheren Episoden.

Links ist eine Abfrage des Combat-Terminals für ein 10-Sekunden-Intervall des aktuellen Tages zu sehen. Combat - läuft über mehrere Tage, ruft bei jedem Tick CopyTicks* auf, um neue Ticks zu erhalten.

Rechts - gerade gestartetes Terminal, das dasselbe 10-Sekunden-Intervall anfordert.

Sie können sehen, dass es rechts fünf weitere Häkchen gibt. Das bedeutet, dass der DB von Ticks mit Fehlern im Terminal gebildet wird.

Seien Sie wachsam! MT5 überspringt seine eigenen historischen Ticks, die (ich habe es überprüft) über SymbolInfoTick zu OnTick kamen.

Auf den ersten Blick sieht es eher nach einem Fehler als nach bewusster Filterung aus (fehlende Häkchen scheinen nicht aufzufallen). Oder liege ich da falsch?

 
Maksim Emeliashin:

Leider nutze ich den Tickdatenstrom bei meiner Arbeit intensiv. Es ist nicht klar, ob es sich um einen Fehler im Terminal handelt oder ob es beabsichtigt ist.

Aleksey Nikolayev:

Auf den ersten Blick sieht es eher nach einem Fehler aus als nach absichtlicher Filterung zu irgendeinem Zweck (fehlende Häkchen scheinen nicht besonders aufzufallen). Oder liege ich da falsch?

Das Terminal generiert eine Datenbank mit Ticks für den aktuellen Tag, wenn keine Verbindungsabbrüche aufgetreten sind. Es ist viel schneller und wirtschaftlicher.

Dieser Algorithmus zur Bildung der Tickdatenbank weist jedoch einen Fehler auf.

 
fxsaber:

Das Terminal generiert eine Datenbank mit Ticks für den aktuellen Tag, wenn es keine Verbindungsunterbrechungen gibt. Das ist viel schneller und wirtschaftlicher.

Der Algorithmus zur Erstellung von Zeckendatenbanken enthält jedoch einen Fehler.

Und wenn wir es am Ende des Tages beantragen, gibt es bereits eine Lücke?

Zweifelhafte These über keine Verbindungsabbrüche, Rescans/Umschaltungen kommen regelmäßig vor.

Wenn die richtigen Ticks im Speicher wären, wäre es nicht schwierig, sie fehlerfrei zu schreiben. Wahrscheinlicher ist, dass irgendwo ein Fehler bei der Integritätsprüfung oder der Zusammenstellung vorliegt.

 
Andrey Khatimlianskii:

Und wenn Sie am Ende des Tages nachfragen, ist der Pass schon da?

Es scheint, dass die erste Anfrage der letzten 24 Stunden die Tickdatenbank durch Synchronisierung mit dem Server aktualisiert.

Fragwürdige These, dass es keine Verbindungsabbrüche gibt, Rescans/Switching kommen regelmäßig vor.

Wenn die richtigen Ticks im Speicher wären, wäre es nicht schwer, sie ohne Fehler zu schreiben. Wahrscheinlicher ist, dass irgendwo ein Fehler bei der Integritätsprüfung oder der Zusammenstellung vorliegt.

SymbolInfoTick hat mindestens einen Tick erfasst, der nicht in der Datenbank enthalten war.

 
fxsaber:

Es scheint, dass die erste Abfrage für die letzten 24 Stunden die Tickdatenbank durch Synchronisierung mit dem Server aktualisiert.

SymbolInfoTick hat mindestens einen Tick erfasst, der nicht in der Datenbank enthalten war.

Hier kann nur @renat antworten. Oder @Slava

Grund der Beschwerde: