MQL5-Fehler bei der Arbeit mit iClose/iOpen-Zeitreihenzugriff usw. - Seite 6

 

Ich habe gesehen, wie iTime bei PERIOD_M1 aufgelegt hat.


Mein System:

2018.11.15 10:03:35.115 Terminal        MetaTrader 5 x64 build 1944 started (MetaQuotes Software Corp.)
2018.11.15 10:03:35.118 Terminal        Windows 10 (build 17134) x64, IE 11, UAC, Intel Core i3-3120 M  @ 2.50 GHz, Memory: 4141 / 8077 Mb, Disk: 154 / 415 Gb, GMT+2
2018.11.15 10:03:35.118 Terminal        C:\Users\barab\AppData\Roaming\MetaQuotes\Terminal\D0E8209F77C8CF37AD8BF550E51FF075

Läuft normal, keine Portable.

Bei AUDUSD, M5 habe ich "Test CopyTime.mq5" um 10:08:20 Uhr ausgeführt.

2018.11.15 10:08:20.159 Experts expert Test CopyTime (AUDUSD,Daily) loaded successfully

Code des Expertenberaters

//+------------------------------------------------------------------+
//|                                                Test CopyTime.mq5 |
//|                              Copyright © 2018, Vladimir Karputov |
//|                                           http://wmua.ru/slesar/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2018, Vladimir Karputov"
#property link      "http://wmua.ru/slesar/"
#property version   "1.00"
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---

//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---

  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
   datetime CM1_T[1];
   datetime CM2_T[1];
   CopyTime(_Symbol,PERIOD_M1,0,1,CM1_T);
   CopyTime(_Symbol,PERIOD_CURRENT,0,1,CM2_T);
   Comment("CopyTime PERIOD_CURRENT: "+TimeToString(CM2_T[0],TIME_DATE|TIME_SECONDS)+"\n"+
           "CopyTime PERIOD_M1: "+TimeToString(CM1_T[0],TIME_DATE|TIME_SECONDS));
  }
//+------------------------------------------------------------------+

Dann in

2018.11.15 10:27:45.583 Network '10169544': connection to MetaQuotes-Demo lost

gewaltsam vom Internet getrennt (Router ausgeschaltet)


Nach der Wiederherstellung der Verbindung mit

2018.11.15 10:32:58.823 Network '10169544': authorized on MetaQuotes-Demo through Access Point EU 2 (ping: 50.64 ms)

Code

CopyTime(_Symbol,PERIOD_M1,0,1,CM1_T)

gibt nicht mehr die aktuelle Öffnungszeit eines Balkens auf M1 an, sondern die ganze Zeit die letzte Zeit vor dem Abbruch der Verbindung.


2018.11.15 10:08:20.159 Experts expert Test CopyTime (AUDUSD,Daily) loaded successfully
2018.11.15 10:27:45.583 Network '10169544': connection to MetaQuotes-Demo lost
2018.11.15 10:32:58.823 Network '10169544': authorized on MetaQuotes-Demo through Access Point EU 2 (ping: 50.64 ms)
2018.11.15 10:32:58.823 Network '10169544': previous successful authorization performed from 178.165.123.77 on 2018.11.15 10:03:38
2018.11.15 10:32:58.900 Network '10169544': terminal synchronized with MetaQuotes Software Corp.
2018.11.15 10:32:58.900 Network '10169544': trading has been enabled - hedging mode
2018.11.15 10:33:00.653 Network '10169544': scanning network for access points
2018.11.15 10:33:19.062 Network '10169544': scanning network finished
2018.11.15 10:33:19.062 Network '10169544': auto connecting to a better access point with 95 % quality (previous: 88 %)
2018.11.15 10:33:19.062 Network '10169544': connection to MetaQuotes-Demo lost
2018.11.15 10:33:19.716 Network '10169544': authorized on MetaQuotes-Demo through Access Point EU 4 (ping: 65.57 ms)
2018.11.15 10:33:19.716 Network '10169544': previous successful authorization performed from 178.165.123.77 on 2018.11.15 10:32:58
2018.11.15 10:33:19.825 Network '10169544': terminal synchronized with MetaQuotes Software Corp.
2018.11.15 10:33:19.825 Network '10169544': trading has been enabled - hedging mode


Vielleicht ist es ein statisches Array

datetime CM1_T[1];

Und müssen Sie ein dynamisches Array verwenden?


Hinzugefügt: CM1_T[1] durch ein dynamisches CM1_T[] ersetzt. Nachdem die Verbindung etwa drei Minuten lang gewaltsam unterbrochen wurde, wird der String

CopyTime(_Symbol,PERIOD_M1,0,1,CM1_T)

Gibt die letzte bekannte Zeit mit M1 vor dem Abbruch der Verbindung aus.

Dateien:
 
Vladimir Karputov:

Ich habe gesehen, wie iTime bei PERIOD_M1 aufgelegt hat.

Mein System:

Läuft normal, keine Portable.

Bei AUDUSD, M5 habe ich "Test CopyTime.mq5" um 10:08:20 Uhr ausgeführt.

Code des Expertenberaters

Dann in

gewaltsam vom Internet getrennt (Router ausgeschaltet)

Nach der Wiederherstellung der Verbindung mit

Code

gibt nicht mehr die aktuelle Öffnungszeit eines Balkens auf M1 an, sondern die ganze Zeit die letzte Zeit vor dem Abbruch der Verbindung.

Vielleicht ist es ein statisches Array

und ein dynamisches Array verwenden müssen?

Versuchen Sie, es auf M30 zu setzen, und holen Sie auch Daten von M30 ab. Das ist genau die Art und Weise, wie er einfriert, wie im Video zu sehen ist. Ein Wechsel des Zeitrahmens hilft nicht, nur das Entfernen des Indikators und das anschließende Installieren.

 
Vitaly Muzichenko:

Versuchen Sie, es auf M30 zu setzen und auch Daten von M30 zu erhalten. Genau so mache ich es, wie im Video zu sehen ist. Ein Wechsel des Zeitrahmens hilft nicht, nur das Entfernen des Indikators und das anschließende Installieren.

Ich bestätige, dass das Spielen mit dem Nachladen des Indikators ist nicht 100% hilfreich, so zu sagen, dass für alle 3 mal, die ich verwalten, um den Indikator vollständig neu zu laden und natürlich nicht durch Kaffeesatz zu erraten, ist es einfacher, den Indikator zu entladen und laden Sie es auf das Werkzeug.

Aber es ist eine tolle Sache, über welche Art von Handelsautomatisierung können wir bei dieser Art von Tanz mit Tamburinen sprechen.

 
Vladimir Karputov:

*** Vielleicht liegt es an der statischen Anordnung

Ich habe dynamische Arrays, wie es ursprünglich geschrieben ist, dass es besser ist, sie bei SoruXXX zu verwenden, das Problem ist nicht die Art des Arrays.

 
Wissen Sie, bei der Arbeit muss ich viel an den technischen Support verschiedener Unternehmen schreiben (Symantec, DeviceLock, Kaspersky, FortiNet, Xspider usw.), aber noch nie musste ich die Ursache für das von mir beschriebene Problem finden, mda .... Es bleibt nur noch, mir eine Korrektur zu schreiben :)
 
Farkhat Guzairov:

... aber leider ist das MQ-Produkt seit etwa 10 Jahren mein Schwerpunkt.

in weiteren 10 Jahren wird alles richtig funktionieren )))))))))))))))))))))

 
Ich hatte vor etwa sechs Monaten ein ähnliches Problem. Ich habe einen Arbitrage-Roboter geschrieben, also habe ich mit einer großen Liste von Figuren gleichzeitig gearbeitet. Ich schrieb einen Arbitrage-Roboter, also arbeitete ich mit einer großen Liste von Symbolen zur gleichen Zeit. Der Roboter war davor geschützt, mit veralteten Kursen zu arbeiten, so dass das Problem nur in einem Rückgang der Aktivität bestand. Das Einzige, was geholfen hat, war, den EA wieder mit dem Diagramm zu verbinden.
 
Wir werden sie reproduzieren und korrigieren.
 
Renat Fatkhullin:
Wir werden sie reproduzieren und korrigieren.

Wie schnell können wir mit einer Korrektur rechnen?

 
Farkhat Guzairov:

Wie schnell können wir mit einer Lösung rechnen?

Das Einfrieren der Aktualisierung des unsichtbaren Zeitrahmens von Aliens nach dem Wiederherstellen der Verbindung wurde behandelt und behoben. Der Grund dafür war ein falscher Cache-Status nach dem erneuten Verbinden.

Die Beta-Version 1946 ist über Hilfe -> Desktop-Updates prüfen -> Neueste Beta-Version verfügbar.