Bibliotheken: AccurateTimer - Seite 2

 
Maxim Kuznetsov:

alle oben genannten sind unterschiedliche Zeitgeber. Auf einem belasteten Rechner werden die Unterschiede signifikant und natürlich sein.

Mit einer Bibilio-Bibliothek gibt es keine Diskrepanzen.

 
Maxim Kuznetsov:

alle oben genannten sind unterschiedliche Zeitgeber. Auf einer belasteten Maschine sind die Unterschiede signifikant und natürlich

Worin besteht der Widerspruch?

Die Bibliothek wurde geschrieben, um diese "natürlichen" Diskrepanzen zu beseitigen.

 
Andrey Khatimlianskii:

Wo liegt der Widerspruch?

Die Bibliothek wurde geschrieben, um diese "natürlichen" Diskrepanzen zu beseitigen.

Sie messen unterschiedliche Dinge.
 
Maxim Kuznetsov:
sie messen unterschiedliche Dinge.

Nehmen Sie eine Art Tickersymbol als Maßstab. Zum Beispiel Ihre Armbanduhr. Schauen Sie, wie sehr sich die Zeit auf Ihrem Computer in einer Stunde (laut Ticker) von der Benchmark unterscheiden wird. Natürlich wird es Unterschiede geben.

Aber Unterschiede lernt man durch Vergleiche. Nehmen Sie einen Sekunden-Timer oder einen 100ms-Timer. Und sehen Sie, wie groß die Unterschiede zum Standard nach 3600 "Sekunden" des Standards und 3600 "Sekunden" des Timers sein werden.

 
Maxim Kuznetsov:
Sie messen unterschiedliche Dinge.

Welchen Unterschied macht es, was sie messen?

Es gibt eine Aufgabe, bei der alle X ms eine Aktion ausgeführt werden soll, und das kann man mit einem normalen Timer wegen der Besonderheiten seiner Implementierung nicht machen.

Die Bibliothek ermöglicht es Ihnen, diese Lücke zu schließen.

 
Andrey Khatimlianskii:

Welchen Unterschied macht es, was sie messen?

Es gibt eine Aufgabe - alle X ms eine Aktion auszuführen, und das kann man mit einem gewöhnlichen Timer wegen der Besonderheiten seiner Implementierung nicht machen.

Die Bibliothek ermöglicht es Ihnen, diese Lücke zu schließen.

Komm schon :) Erst erfinden sie ein Problem und lösen es dann heldenhaft. Ein solches Problem gibt es nicht.

 
Rashid Umarov:

Komm schon :) Erst erfinden sie ein Problem, dann lösen sie es heldenhaft. Es gibt kein Problem.

Nun, es gibt kein


 
Nach dem Update wird verfügbar sein

Frame-режим

Expert Advisors im Modus des Sammelns von Frames der Optimierungsergebnisse ignorieren die folgenden Standardereignisse der normalen Arbeit des Expert Advisors: Init, Deinit, NewTick, Trade, TradeTransaction, BookEvent und Timer. Nur ChartEvent bleibt ein funktionierendes Ereignis.

Allerdings kann diese Bibliothek den Timer auch in diesem Modus des EA-Betriebs aktivieren, zu diesem Zweck sollte die folgende Zeile vor dem Aufruf der Bibliothek geschrieben werden.

#define  ACCURATETIMER_FRAME_MODE // Macht den Timer von Beratern im Frame-Modus funktionsfähig

Bitte beachten Sie, dass OnChartEvent (auch wenn es leer ist) in den Quell-EA geschrieben werden muss, und die entsprechende Frame-Schwachstelle beginnt, sich auf OnTimer zu übertragen.

Ein Beispiel für einen solchen Expert Advisor ist beigefügt

// Demonstration des EA-Timer-Betriebs im Frame-Modus

#define  ACCURATETIMER_FRAME_MODE // Macht den Timer von Beratern im Frame-Modus funktionsfähig 
#include <AccurateTimer.mqh>     // Erhöhen Sie die Genauigkeit des Standard-Timers

sinput uint Range = 1; // Eingabeparameter für die Optimierung

#define  SETRANGE(A, START, STEP, END) ParameterSetRange(#A, true, A, START, STEP, END)

void OnTesterInit() { SETRANGE(Range, 0, 1, Range); }

void OnTesterDeinit() { EventSetTimer(1); } // Setzen eines Timers am Ende der Optimierung

// Achten Sie auf die Frame-Schwachstelle! - https://www.mql5.com/ru/forum/170952/page71#comment_6626688
void OnChartEvent( const int id, const long& lparam, const double& dparam, const string& sparam ) {}
void OnTimer()
{
  static const bool IsFrame = MQLInfoInteger(MQL_FRAME_MODE);
  
  if (IsFrame)
    Print("Hello World!");
}
 

fxsaber:

Frame-Modus

Expert Advisors im Frame-Sammelmodus für Optimierungsergebnisse ignorieren die folgenden Standardereignisse der normalen Expert Advisor-Arbeit: Init, Deinit, NewTick, Trade, TradeTransaction, BookEvent und Timer. Nur ChartEvent bleibt ein funktionierendes Ereignis .

Imho ist dies eine teilweise korrekte Aussage. Sie wurde bereits diskutiert.

 
Dennis Kirichenko:

Imho eine teilweise richtige Aussage. Es wurde schon diskutiert.

Ich habe die Parteilichkeit nicht bemerkt. Es ist genau wie ich sagte.