Fragen von Anfängern MQL5 MT5 MetaTrader 5 - Seite 1153

 
Franklins100:
Vielen Dank für die Antworten. Code für Code. Der Code wird optimiert, aber wenn wir neue Indikatoren hinzufügen und die Historie erweitern, steigt die Laufzeit. Wie stark wirkt sich die PC-Hardware auf die "Laufzeit" aus (brauchen Sie eine ausgeklügelte CPU oder GPU)? Eine Menge Fragen im Allgemeinen 1 Mal möchte mit einem Guru sprechen)

DieTests können um ein Vielfaches beschleunigt werden, wenn es möglich ist, die Variablen in Gruppen aufzuteilen und Kreuztests durchzuführen. Dieses Schema ist möglich, wenn Sie verstehen, wie ein EA aufgebaut ist und über unabhängige Variablen verfügt, d. h. ihre Änderung hat keinen Einfluss auf das Ergebnis, wenn andere Variablen ausgeführt werden.

Wenn es viele Variablen gibt, kann die Testzeit um das Hundertfache reduziert werden.

Außerdem können Sie mit mt5 Dritte zu Testzwecken anschließen.

Как протестировать торгового робота перед покупкой
Как протестировать торгового робота перед покупкой
  • www.mql5.com
Покупка торгового робота в MQL5 Маркете имеет одно большое преимущество перед всеми другими подобными предложениями -  вы можете устроить комплексную проверку предлагаемой автоматической системы прямо в терминале MetaTrader 5. Советник перед покупкой можно и нужно тщательно прогнать во всех неблагоприятных режимах во встроенном тестере торговых...
 
BenditO:

DieTests können um ein Vielfaches beschleunigt werden, wenn es möglich ist, die Variablen in Gruppen aufzuteilen und Kreuztests durchzuführen. Dieses Schema ist möglich, wenn Sie verstehen, wie ein EA aufgebaut ist und über unabhängige Variablen verfügt, d. h. ihre Änderung hat keinen Einfluss auf das Ergebnis, wenn andere Variablen ausgeführt werden.

Wenn es viele Variablen gibt, kann die Testzeit um ein Vielfaches reduziert werden.

Außerdem ermöglicht mt5 den Anschluss von Drittanbietern für Tests.

Das ist eine Idee, aber Kreuztests werden meiner Meinung nach keine genauen Ergebnisse liefern. Das Testen sollte, wiederum nach meiner unerfahrenen Meinung, in einer endgültigen, vollständigen Version erfolgen. Und hier eine Frage - wie und mit welchen Computerparametern können Sie die Tests so weit wie möglich beschleunigen, ohne auf die Leistung Dritter zurückzugreifen. GPU oder CPU?

 
Franklins100:

Das ist eine Idee, aber die Kreuztests werden meiner Meinung nach keine genauen Ergebnisse liefern. Das Testen sollte, wiederum nach meiner unerfahrenen Meinung, in einer endgültigen, vollständigen Version erfolgen. Und hier stellt sich die Frage, wie und mit welchen Computerparametern es möglich ist, die Prüfung so weit wie möglich zu beschleunigen, ohne auf die Leistung Dritter zurückzugreifen. GPU oder CPU?

Optimieren Sie den Code.

 
Vladimir Karputov:

Optimieren Sie den Code.

Lassen Sie mich versuchen, direkter zu sein - ich habe die folgende Konfiguration: 2pc Intel® Xeon® Gold 6126, 4pc Samsung DDR4 2666 Registered ECC LRDIMM 64Gb, 2pc Tesla P100 oder 2080ti (ich bin pondering) Werde ich jede Geschwindigkeit in diesem Fall mit dieser Konfiguration erhalten oder kann ich einfach nicht mit ihm stören und optimieren den Code auf dem Rechner? Ich möchte mit einer großen Anzahl von Indikatoren und der Historie "spielen", um alle möglichen Ergebnisse, Strategien und Variationen zu testen - um Erfahrungen zu sammeln, usw.

 
Franklins100:

Lassen Sie mich versuchen, direkter zu sein - ich habe die folgende Konfiguration: 2pc Intel® Xeon® Gold 6126, 4pc Samsung DDR4 2666 Registered ECC LRDIMM 64Gb, 2pc Tesla P100 oder 2080ti (ich bin pondering) Werde ich die Geschwindigkeit in diesem Fall mit dieser Konfiguration erhalten oder ich gerade beschlossen, nicht mit ihm zu stören und den Code auf dem Rechner zu optimieren? Ich möchte mit einer großen Anzahl von Indikatoren und der Historie "spielen", um alle möglichen Ergebnisse, Strategien und Variationen zu testen - um Erfahrungen zu sammeln, usw.

Wir müssen einen neuen Zweig mit einer spezifischen Frage eröffnen - "Welche Hardware benötige ich, um einen Expert Advisor sofort zu optimieren?

 

Was soll diese Funktion zurückgeben?

Drucken(SYMBOL_POINT);

Für EURUSD erhalte ich 16, aber es sollte 0,00001 sein.

aber Print(SymbolInfoDouble(Symbol(),SYMBOL_POINT));

Es ergibt 9,9999999999996e-06

Handelt es sich um eine Störung oder ist es bei allen gleich?
 
SEM:

Was soll diese Funktion zurückgeben?

Drucken(SYMBOL_POINT);

Für EURUSD erhalte ich 16, aber es sollte 0,00001 sein.

aber Print(SymbolInfoDouble(Symbol(),SYMBOL_POINT));

Es ergibt 9,9999999999996e-06

https://www.mql5.com/ru/docs/convert/doubletostring

Документация по MQL5: Преобразование данных / DoubleToString
Документация по MQL5: Преобразование данных / DoubleToString
  • www.mql5.com
[in]  Формат точности. Если значение digits лежит в диапазоне от 0 до 16, то будет получено строковое представление числа с указанным количество знаков после запятой. Если значение digits лежит в диапазоне от -1 до -16, то...
 
Wie erhalte ich einen Einzelpunktwert für EURUSD? Ich erhalte 16 anstelle von 0,00001.
 
SEM:
Wie erhalten Sie den Einzelpunktwert für EURUSD? Ich erhalte 16 anstelle von 0,00001

Was genau drucken Sie aus?

SYMBOL_POINT ist eine vordefinierte Konstante. Das heißt, Sie drucken den numerischen Wert der Konstante.

Документация по MQL5: Константы, перечисления и структуры / Состояние окружения / Информация об инструменте
Документация по MQL5: Константы, перечисления и структуры / Состояние окружения / Информация об инструменте
  • www.mql5.com
Для получения текущей рыночной информации служат функции SymbolInfoInteger(), SymbolInfoDouble() и SymbolInfoString(). В качестве второго параметра этих функций допустимо передавать один из идентификаторов из перечислений ENUM_SYMBOL_INFO_INTEGER, ENUM_SYMBOL_INFO_DOUBLE и ENUM_SYMBOL_INFO_STRING соответственно. Некоторые символы (как...
 
Artyom Trishkin:

Was genau drucken Sie aus?

Wenn ich versuche, TakeProfit für Sell zu normalisieren, erhalte ich TP = -130

 int TakeProfit=100;//Profit

double _PriceCurrent_TakeProfit = NormalizeDouble(m_position.PriceOpen()-(TakeProfit*SYMBOL_POINT),SYMBOL_DIGITS) ;