Maschinelles Lernen im Handel: Theorie, Modelle, Praxis und Algo-Trading - Seite 2590

 
Aleksey Nikolayev #:

Vorhin hatten Sie die Idee, Standardmetriken mit benutzerdefinierten Metriken zu kombinieren, was ich so verstanden habe, dass die Modelle anhand von Standardmetriken trainiert und anhand von benutzerdefinierten Metriken ausgewählt werden.

Ja, die kombinierten Kriterien sind in der Tat besser

aber es gibt so genannte Bewertungsmetriken wie roc oder assgasu, die das Busfahren unterbinden, obwohl es durch Minimierung des Logloss trainiert wird. Dann haben wir benutzerdefinierte Metriken.

Dann können Sie Modelle in der MT5-Optimierer für die Feinabstimmung der Parameter der Stop-Loss, und viel mehr undankbar Aufregung :)

 
Aleksey Nikolayev #:

Im Parameterraum des Modells? Sie hat eine große Dimensionalität. Dies ist nur bei sehr einfachen Modellen mit einer geringen Anzahl von Prädiktoren möglich.

Es ist nicht ganz klar, wie es möglich ist, eine Oberfläche in einem Raum mit großer Dimensionalität zu erstellen. Wir haben einfach sehr wenige Punkte im Vergleich zu dieser Dimensionalität. Es sei denn, es handelt sich um Visualisierungsmethoden wie PCA usw., aber der Punkt ist nicht klar.

Ja, genau so sehe ich das... OP wiederherstellen und dann über PCA visualisieren...
Das Wesen des Gedankens habe ich bereits erläutert, auf der Vorderseite. Seite hat Bilder

 
Maxim Dmitrievsky #:

Dann können Sie die Modelle auch im MT5-Optimierer laufen lassen, um die Stop-Loss-Parameter usw. anzupassen.

Womit sollten Sie es tun? Oder geht es um die in MQL5 geschriebenen Modelle?

 
Replikant_mih #:

Womit machen Sie das? Oder handelt es sich um Modelle, die in MQL5 geschrieben wurden?

Oder übertragen, können Sie einen Blick auf Artikel über catboost auf dieser Website (Suche). Meine oder Alex'.

Zy. Wenn ich mir nicht sicher bin, ob dies der beste Weg ist, um das Problem zu lösen, und wenn ich nicht weiß, wie ich es lösen kann, dann kann ich auch keine Lösung finden...
 
Maxim Dmitrievsky #:
Oder übertragen, siehe Artikel über catboost auf dieser Website (Suche). Meine oder Alexeys.

Ich bin nicht sicher, ob ich die Funktion, an der ich arbeite, verwenden kann, aber ich bin nicht sicher, ob ich die Funktion, an der ich arbeite, verwenden kann...

Hm, ich habe nicht ganz verstanden, wie Python auf MQL5 portiert wurde, aber ich habe herausgefunden, dass man anscheinend mit einer Funktion vonhttps://www.mql5.com/ru/articles/8642 catbust-Modelle aus mql5-Code ziehen kann. Ich verwende meist XGBoost, aber auch Catbust ist möglich). Ich stimme zu, was neuronale Netze und Tabellendaten betrifft. Soweit ich das verstehe, kann ich mit dem Code aus dem Artikel Catbust-Modelle verwenden, aber andere Bibliotheken können das nicht. Nun, das ist auch gut so. Jetzt bin ich mit Ansatz, wo ich nicht in der Wahl der Python-Bibliotheken begrenzt - ich bin Ziehen Modelle aus mql5 Code durch API in Python. In diesem Fall bin ich nicht durch Bibliotheken eingeschränkt, aber es ist langsamer, in der Variante aus dem Artikel - durch Bibliotheken eingeschränkt, aber anscheinend ist Ordnung/Ordnung schneller.

Градиентный бустинг (CatBoost) в задачах построения торговых систем. Наивный подход
Градиентный бустинг (CatBoost) в задачах построения торговых систем. Наивный подход
  • www.mql5.com
Обучение классификатора CatBoost на языке Python и экспорт модели в mql5 формат, а также разбор параметров модели и кастомный тестер стратегий. Для подготовки данных и обучения модели используется язык программирования Python и библиотека MetaTrader5.
 
mytarmailS #:
Ja, genau so sehe ich das... Rekonstruieren Sie den OP und visualisieren Sie ihn dann über PCA...
Ich habe bereits erklärt, worum es geht, auf der vorigen Seite gibt es Bilder. Die Seite enthält Bilder.

Um ehrlich zu sein, macht das nicht viel Sinn. Eine kleindimensionale Projektion kann im Prinzip nicht alles darstellen, was im mehrdimensionalen Fall möglich ist. Extrema können zum Beispiel Sattelpunkte sein - ein Maximum in einigen Variablen und ein Minimum in anderen. Und wenn die Oberfläche nicht glatt ist, kann dort alles passieren.

Theoretisch könnte es etwas sinnvoller sein, PLS anstelle von PCA zu verwenden.
 
Aleksey Nikolayev #:

Um ehrlich zu sein, macht das nicht viel Sinn. Eine niedrigdimensionale Projektion kann im Prinzip nicht alles darstellen, was im mehrdimensionalen Fall möglich ist. Extrema können zum Beispiel Sattelpunkte sein - ein Maximum in einigen Variablen und ein Minimum in anderen. Und wenn sich herausstellt, dass die Oberfläche nicht glatt ist, kann dort alles Mögliche sein.

Theoretisch könnte es etwas sinnvoller sein, PLS anstelle von PCA zu verwenden.

Vielleicht macht die derzeitige Umsetzung wenig Sinn, aber die Essenz dessen, worum es geht, ist vielleicht wichtiger als dieser ganze Zweig

 
Replikant_mih #:

Hm, ich habe nicht ganz verstanden, wie Python auf MQL5 übertragen wurde, aber ich habe verstanden, dass man anscheinend mit der Funktion vonhttps://www.mql5.com/ru/articles/8642 Catbust-Modelle aus MQL5-Code ziehen kann. Ich verwende meist XGBoost, aber auch Catbust ist möglich). Ich stimme zu, was neuronale Netze und Tabellendaten betrifft. Soweit ich das verstehe, kann ich mit dem Code aus dem Artikel Catbust-Modelle verwenden, aber andere Bibliotheken können das nicht. Nun, das ist auch gut so. Jetzt verwende ich einen Ansatz, bei dem ich in der Wahl der Python-Bibliotheken nicht eingeschränkt bin - ich ziehe Modelle aus mql5-Code über die API in Python. In diesem Fall nicht durch Bibliotheken begrenzt, aber langsamer, in der Variante aus dem Artikel - durch Bibliotheken begrenzt, aber anscheinend schneller bestellen/ordnen.

Die Variante aus dem Artikel ist bereits fertig, um mit Python trainierte Modelle in MT5 ohne Schichten anzuwenden. Es speichert Baumsplits in C++ von Python-Programm, dann übersetzt in mql-Code, plus Klasse Berechnungsfunktion.
 
Maxim Dmitrievsky #:
Die Version aus dem Artikel ist bereits final, um mit Python trainierte Modelle in MT5 ohne Schichten anzuwenden. Es speichert Baumsplits in C++ aus dem Python-Programm und übersetzt sie dann in mql-Code, plus Klassenberechnungsfunktion.

Toll, das muss ich auch mal ausprobieren.

 
Replikant_mih #:

Toll, das muss ich auch mal ausprobieren.

Ja, es ist möglich, ihn als normalen Bot im MT5 zu testen und zu optimieren, indem man Parameter extern ändert. Die Balken werden schnell geprüft, die Zecken können zu Verzögerungen führen, weil die Bäume zu lange brauchen, um selbst ausgewertet zu werden.