Fehler, Irrtümer, Fragen - Seite 1866

 
Prüfprotokoll
2017.04.21 09:06:58.342 RTS-6.17,M1: testing of Experts\fxsaber\Test2.ex5 from 2017.04.07 00:00 to 2017.04.08 00:00 started
2017.04.21 09:06:58.342 RTS-6.17 : real ticks begin from 2017.04.05 00:00:00

Die eigentlichen Tics beginnen zwei Tage früher als das ursprüngliche Testintervalldatum. Ist das normal?

 
fxsaber:
Prüfprotokoll

Die eigentlichen Tics beginnen zwei Tage früher als das ursprüngliche Testintervalldatum. Ist das normal?

Ich nehme an, dass dies absichtlich so gemacht wurde - um die Indikatoren berechnen zu können, die für ihre Berechnungen eine bestimmte Menge an Historie benötigen?
 
Artyom Trishkin:
Ich kann davon ausgehen, dass dies absichtlich so gemacht wurde - um Indikatoren berechnen zu können, die eine bestimmte Menge an Historie für ihre Berechnungen benötigen?
Bars sind dafür ausreichend. Der Zeckenverlauf ist in beliebiger Tiefe verfügbar.
 
fxsaber:
Prüfprotokoll

Die eigentlichen Tics beginnen zwei Tage früher als das ursprüngliche Testintervalldatum. Ist das normal?

Gehen Sie davon aus, dass der Verlauf und die Ticks jedes Mal erneut in das Prüfgerät hochgeladen werden?

Löschen Sie den History-Cache im Tester-Ordner, führen Sie den Test durch und sehen Sie sich das Protokoll an

 
stringo:

Gehen Sie davon aus, dass der Verlauf und die Ticks jedes Mal erneut auf das Prüfgerät heruntergeladen werden?

Löschen Sie den History-Cache im Tester-Ordner, führen Sie den Test durch und sehen Sie sich das Protokoll an

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Eigenheiten der mql5-Sprache, Feinheiten und Tricks

fxsaber, 2017.04.07 16:00

Im MT5-Tester im "Real Ticks"-Modus sind die Basis der Historie nicht echte Ticks, sondern M1-Balken. Das bedeutet, dass echte Ticks, die nicht mit Balken übereinstimmen, ignoriert werden und stattdessen künstliche Ticks erzeugt werden, die mit Balken übereinstimmen müssen.

Wenn gleichzeitig CopyTicks für mehr als 128K angefordert werden, werden sie im Tester nicht aus dem Cache (echte Ticks + generiert), sondern aus einer Datenbank - echte Ticks - genommen. Und es kommt zu einer Diskrepanz zwischen der Geschichte der Zecken und dem, was der Tester gefüttert hat.

Dies ist eine Zusammenstellung der im SD eingegangenen Antworten.
 
fxsaber:
Es handelt sich um eine Zusammenstellung der in der SR eingegangenen Antworten.
Und?
 
stringo:
Und?
Da CopyTicks in der Lage ist, Daten aus der gemeinsamen Datenbank abzurufen, warum die zusätzlichen zwei Tage?
 
fxsaber:
Da CopyTicks in der Lage ist, Daten aus der gemeinsamen Datenbank abzurufen, warum die zusätzlichen zwei Tage?

Von welcher gemeinsamen Basis aus? Die gemeinsame Basis aller Prüfmittel.

In der Regel wird es vor dem Startdatum des Tests keine Häkchen geben. Ich habe Ihnen vorgeschlagen, alle Caches im Tester zu löschen, den Test durchzuführen und die Protokolle einzusehen.

 
stringo:

Von welcher gemeinsamen Basis aus? Die gemeinsame Datenbank aller Tester-Agenten.

In der Regel gibt es dort vor dem Starttermin der Prüfung keine Zecken. Ich habe vorgeschlagen, alle Caches im Tester zu löschen, den Test durchzuführen und die Protokolle zu prüfen.

Verstanden, danke. Dann habe ich nicht ganz verstanden, was die SD bedeutet.
 
Von der SD.
Мы приняли решение отказаться от приведения неродственных структур

Nun (1589) kompiliert solche einfachen Dinge nicht

Forum für Handel, automatisierte Handelssysteme und Strategietests

Wie kann man Double und QNaN schnell vergleichen?

fxsaber, 2016.10.11 10:57

double Nan(long bit_value)
  {
   struct L { long   x; } l; l.x=bit_value;
   struct D { double x; } d=(D)l;
   return(d.x);
  }

double QNaN   =Nan(0x7FF7000000000000);   // QNaN

Und es wurde unmöglich, herauszufinden, ob double gleich QNaN ist

double QNaN2 = (double)"nan";

void OnStart()
{
  Print(QNaN == QNaN);
}


Ergebnis

false


Weil Sie die TypeToBytes-Bibliothek völlig unbrauchbar gemacht haben, die perfekt in der Lage war, double mit QNaN zu vergleichen

Forum zum Thema Handel, automatisierte Handelssysteme und Strategietests

Wie kann man Double und QNaN schnell vergleichen?

fxsaber, 2016.10.11 11:14

#include <TypeToBytes.mqh>

void OnStart()
{
   if (_R(QNaN)==QNaN) {
      Alert("QNaN is QNaN");
   } else {
      Alert("Ooops");
   }   
}

Ganz zu schweigen von den zahlreichen anderen Funktionen, die es in die Praxis umgesetzt hat - Beispiel.

Grund der Beschwerde: