Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Noch nicht.
void Print( MqlTick& ) {} // 'Print' - override system function
D.h. eine externe Klasse "::" erlaubt keine Überladung, aber eine interne Klasse schon.
Deshalb müssen wir die Beschränkung auf eine Krücke stützen.
{
public:
template <typename T>
static void MyPrint( const T &Value )
{
T Array[1];
Array[0] = Value;
::ArrayPrint(Array);
}
template <typename T>
static void MyPrint( const T Value )
{
::Print(Value);
}
};
#define Print(A) PRINTCLASS::MyPrint(A)
void OnStart()
{
MqlTick Tick;
SymbolInfoTick(_Symbol, Tick);
Print(Tick);
int i = 5;
Print(i);
}
Forum zum Thema Handel, automatisierte Handelssysteme und Strategietests
MetaEditor Build 1463
fxsaber, 2016.11.04 18:42
Es gibt immer noch ein Problem.Ich habe ein Problem mit meinem Indikator im Testgerät gefunden. Seit Build 1463 hängt sich der Tester beim Testen des Indikators fast sofort nach dem Start auf. Es ist das Prüfgerät, das hängt, nicht der Indikator. Denn beim Kompilieren mit dem alten oder neuen Compiler bleibt das Problem bestehen, aber im alten Tester wird alles normal getestet.
Die Stelle im Code, die zu einem Hänger führt, konnte nicht gefunden werden. Ich habe versucht, den Kommentar in verschiedenen Codezeilen zu machen, aber er bleibt immer an verschiedenen Stellen hängen. Im Allgemeinen eine Art internes Fehlerprüfgerät.
Ich habe ein Problem mit meinem Indikator im Testgerät gefunden. Seit Build 1463 hängt sich der Tester beim Testen des Indikators fast sofort nach dem Start auf. Es ist das Prüfgerät, das hängt, nicht der Indikator. Denn beim Kompilieren mit dem alten oder neuen Compiler bleibt das Problem bestehen, aber im alten Tester wird alles normal getestet.
Die Stelle im Code, die zu einem Hänger führt, konnte nicht gefunden werden. Ich habe versucht, den Kommentar in verschiedenen Codezeilen zu machen, aber er bleibt immer an verschiedenen Stellen hängen. Es handelt sich also um eine Art internen Fehler im Prüfgerät.
Hängt also immer noch oder haben Sie im Tester nur die maximale Testgeschwindigkeit eingestellt?
Hinzugefügt: Das ist mir bisher noch nicht begegnet, daher ist es sehr wünschenswert, Ihren Code zu überprüfen.
Die Stelle im Code, an der das Problem auftrat, konnte nicht gefunden werden.
Friert er also ein, oder haben Sie ihn einfach auf die maximale Testgeschwindigkeit im Testgerät eingestellt?
Hinzugefügt: Das ist mir bisher noch nicht begegnet, daher ist es sehr wünschenswert, Ihren Code zu überprüfen.
Es friert bei jeder Geschwindigkeit ein. Das StrategyTestVisualization-Fenster reagiert nicht. Leider kann ich Ihnen nicht den gesamten Code zeigen, da es sich um ein kommerzielles Produkt handelt.
Sie hängt auch nicht von der Art der Prüfung und dem Zeitrahmen ab.
Es friert bei jeder Geschwindigkeit ein. Das StrategyTestVisualization-Fenster reagiert nicht auf Anfragen. Leider ist es nicht möglich, den gesamten Code zu zeigen, da es sich um ein kommerzielles Produkt handelt.
2016.11.10 11:07:42.764 Test (EURUSD,M1) [0] 2016.11.10 11:10:11 1.09207 1.09217 1.09207 500000 1478776211595 2
Das einzige, was fehlt, ist ein ArrayToString. Dann könnte die Ausgabe geändert werden. Zum Beispiel time_msc und flags.
{
datetime time; // Время последнего обновления цен
double bid; // Текущая цена Bid
double ask; // Текущая цена Ask
double last; // Текущая цена последней сделки (Last)
ulong volume; // Объем для текущей цены Last
datetime_msc time_msc; // Время последнего обновления цен в миллисекундах
uint flags // Флаги тиков
};