Maschinelles Lernen im Handel: Theorie, Modelle, Praxis und Algo-Trading - Seite 3333
![MQL5 - Sprache von Handelsstrategien, eingebaut ins Kundenterminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Ich kann mir das noch nicht erklären. Nun, es passiert alles in einem Raum - in der Metrik eines Prädiktors, aber wie können die anderen berücksichtigt werden?
Was die Vorhersage betrifft, so dachte ich an die Verwendung von zwei Modellen - eines erkennt, was eliminiert wurde oder bestätigt, dass die Daten im "Klumpen"-Bereich liegen, und das andere arbeitet bereits mit dem, was übrig ist.
In dem Beispiel gibt es 2 Prädiktoren, d.h. wir ändern den Abstand im 2-dimensionalen Raum (berechnen die Hypotenuse). Wenn es 5000 Zeichen gibt, dann misst man den Abstand im 5000-dimensionalen Raum (wie man misst - siehe den Code k-means in Algibe, dort ist genau das die Hauptaufgabe - Abstände messen, als Basis nehmen).
Es sieht aus wie die Wurzel aus der Summe der Quadrate der Katheten in allen Räumen https://wiki.loginom.ru/articles/euclid-distance.html.
Wenn Sie es wirklich tun wollen - vergessen Sie nicht, die Prädiktoren anzupassen, so dass z.B. Volumina von 1...100000 nicht Preisdeltas von 0,00001...0,01000 in den Berechnungen verschlucken.
Wie kann man das erkennen? Das ist die Frage. Vor allem bei Marktdaten, wo es keine so klare Trennung des verrauschten Bereichs gibt wie im Beispiel. Alles wird verrauscht sein, 90-99 Prozent.
Es könnte einfacher sein, fertige Pakete zum Entfernen verrauschter Linien zu verwenden, vielleicht gibt es einen Detektor....
https://www.mql5.com/ru/articles/9138
Es ist ein Jahr her, dass es jemanden interessiert hat.
Ich habe ein Dutzend oder zwanzig solcher Algorithmen geschrieben, einige von ihnen haben sich gut bewährt. Der Artikel ist nicht die beste in Bezug auf die Stabilität der Ergebnisse, die erste Pfannkuchen.
Es gibt also nichts zu diskutieren, weil es noch nichts Besseres gibt.
Nun, warum gibt es keinen Fall - ich denke, dass Python ist nicht weit verbreitet unter den Händlern noch, so dass die Menschen zu einer aktiven Diskussion zu bewegen.
Ich werde Ihren Ansatz später auf meine Probe versuchen.
Haben Sie die CatBoost out-of-the-box Methode ausprobiert?
sibirqk #:
Они синхронизированы. Я же написал в начале поста - 'выровнял их по датам', что как раз и означает синхронизацию пар по времени.
"Aber leider ist es imho wieder völlige Zufälligkeit. Das Bild ist ein Stück Grafik zur Veranschaulichung."
Du hast Recht, so einfach ist es nicht.
In dem Beispiel gibt es 2 Prädiktoren, d.h. wir ändern den Abstand im 2-dimensionalen Raum (berechnen die Hypotenuse). Wenn es 5000 Zeichen gibt, dann messen Sie den Abstand im 5000-dimensionalen Raum (wie man misst - siehe k-means Code in alglib, es ist die Hauptaufgabe dort - um Abstände zu messen, nehmen Sie es als Basis).
Es sieht aus wie die Wurzel aus der Summe der Quadrate von Katheten in allen Räumen https://wiki.loginom.ru/articles/euclid-distance.html.
Jetzt zeichnet sich ein Verständnis ab - danke - ich werde darüber nachdenken.
Wenn du es wirklich machen willst - vergiss nicht, die Prädiktoren anzupassen, damit z.B. die Volumina 1...100000 nicht die Preisdeltas 0,00001...0,01000 in den Berechnungen verschlucken.
Richtig, es ist notwendig, zu normalisieren. Aber was ist, wenn wir sie nicht quantifizieren und die Metriken nur anhand von Indizes berechnen? :) Und ich mag die Idee des Zählens durch Katheten nicht - das ist ohnehin schon künstlich.
Trotzdem wäre es richtig, den vorgeschlagenen Algorithmus zu reproduzieren und dann über eine Verbesserung nachzudenken.
Wie kann man es erkennen? Das ist die Frage. Vor allem bei Marktdaten, bei denen es keine so klare Trennung des verrauschten Bereichs gibt wie in diesem Beispiel. Alles wird verrauscht sein, 90-99 Prozent.
Es könnte einfacher sein, fertige Pakete zum Entfernen verrauschter Linien zu verwenden, vielleicht gibt es einen Detektor....
Haben Sie sich das Video angesehen? Gegen Ende des Videos heißt es, dass das Modell erstellt wird, das einfach erkennt, zu welchem Bereich die Daten gehören, und wenn sie nicht kumulativ sind, wird das Signal entsprechend der gegebenen Stichprobe, auf der das Training stattfand, ignoriert, wie ich verstanden habe. Es ist klar, dass wir viel schlechtere Daten haben als dort diskutiert, aber wenn es 20%-30% des Ziels "1" ist, werde ich schon zufrieden sein.
Eine andere Möglichkeit besteht darin, das Modell so zu trainieren, dass es diese ausgeschlossenen Beispiele erkennt, indem es diese Zeilen in der Gesamtstichprobe markiert.
Das ist richtig, wir sollten normalisieren. Was aber, wenn sie nicht quantifiziert sind und die Metrik nur durch Indizes berechnet wird? :) Und die Idee, durch die Katheter zu zählen, gefällt mir nicht - das ist künstlich.
Ein Chip ist auf 2 Quanten quantisiert, der andere auf 32. Das wird nicht funktionieren.
Hast du dir das Video eigentlich angesehen? Dort heißt es gegen Ende des Videos, dass das Modell aufgebaut wird, das einfach erkennt, zu welchem Bereich die Daten gehören, und wenn sie nicht kumulativ sind, wird das Signal ignoriert, so wie ich es verstanden habe, entsprechend der gegebenen Probe, auf der das Training stattfand. Natürlich haben wir viel schlechtere Daten als dort diskutiert, aber wenn es 20%-30% des Ziels "1" ist, werde ich glücklich sein.
Eine andere Möglichkeit besteht darin, das Modell so zu trainieren, dass es diese ausgeschlossenen Beispiele erkennt, indem diese Zeilen in der Gesamtstichprobe markiert werden.
Ich habe mir das nicht angesehen.
Sie können ausgeschlossene Beispiele auch ohne all diese Berechnungen erkennen. Ich habe es Ihnen bereits gesagt: Schließen Sie einfach Blätter aus, bei denen die Wahrscheinlichkeit, dass sie in einer der Klassen liegen, etwa 50 % beträgt.
Ein Chip ist auf 2 Quanten quantisiert, der andere auf 32. Das ist nicht gut.
Nee, es wird die gleiche relative Stelle sein - Anzahl der Splitter (Splits) - fest für alle.
Ausgeschlossene Beispiele kann man auch ohne diese ganzen Berechnungen erkennen. Ich habe es dir schon gesagt - schließe einfach Blätter aus, die mit einer Wahrscheinlichkeit von etwa 50% zu einer der Klassen gehören.
Es kann viele verschiedene Methoden geben. Ich interessiere mich für die Variante der Verarbeitung vor der Modellbildung - wie es mir scheint, gibt es weniger Varianten von Baukombinationen, was den Fehler bei der endgültigen Schlussfolgerung reduziert - ob das endgültige Modell erfolgreich trainiert wurde oder nicht, im Allgemeinen.
Außerdem, wenn wir über die Tatsache sprechen, dass Sie etwas "rauswerfen" können, sollten Sie erwähnen, über welche Modelle wir sprechen. Wenn es sich um einen Wald handelt, sollten wir dann den Prozentsatz der Blätter zählen, die nicht "verworfen" wurden, oder die Anzahl der Aktivierungen dieser Blätter nahe 50 % zählen und nicht auf das Signal reagieren, wenn ihr Schwellenwert überschritten wird?
Beim Bousting ist es sogar noch lustiger - unsichere Blätter insgesamt können die Wahrscheinlichkeit in die eine oder andere Richtung verschieben - ich möchte immer wieder ein Diagramm erstellen, um zu zeigen, wie die Gewichte in Abhängigkeit von der Wahrscheinlichkeitsverschiebung verteilt werden, aber ich schiebe es immer wieder auf. Drei Tage lang betrachtet der Computer die Ähnlichkeit von Modellblättern - ich denke darüber nach, den Algorithmus zu optimieren - zu lang....
Wenn es 5000 Merkmale gibt
Nun, warum gibt es keinen Fall - ich denke, dass Python ist nur nicht weit verbreitet unter den Händlern noch, so dass die Menschen zu einer aktiven Diskussion zu bewegen.
Ich werde versuchen, Ihren Ansatz später auf meine Probe.
Haben Sie die Out-of-the-Box-Methode von CatBoost ausprobiert?
Wie funktioniert die Methode "out of the box"
Das ist die Funktionalität.
Es gibt verschiedene Möglichkeiten, Daten aufzuteilen/zu trennen, und sie wurden in diesem Thread schon einmal ausprobiert - sie zeigten keine signifikanten Ergebnisse, also wurden sie "vergessen".
Es gibt Bayes'sche Netze - auf den ersten Blick sind sie nur wegen ihrer Fähigkeit interessant, Ursache-Wirkungs-Beziehungen wiederherzustellen.
Hier ist die Funktionalität.
Es gibt verschiedene Möglichkeiten, Daten aufzuteilen/zu trennen, und sie wurden in diesem Thread schon einmal ausprobiert - sie zeigten keine signifikanten Ergebnisse, also wurden sie "vergessen".
Es gibt Bayes'sche Netze - auf den ersten Blick sind sie allein wegen ihrer Fähigkeit, Ursache-Wirkungs-Beziehungen wiederherzustellen, interessant.