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

 
Aleksey Vyazmikin #:

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....

 
Maxim Dmitrievsky #:

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.

 
Forester #:

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.

Förster #:

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.

Förster #:

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.

 
Aleksey Vyazmikin #:

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.

Aleksey Vyazmikin #:

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.

 
Forester #:

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.

Förster #:

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....

 
Forester #:
Wenn es 5000 Merkmale gibt
Bei einer so großen Dimensionalität machen metrische Algorithmen wie KNN wenig Sinn. Grob gesagt, stellt sich heraus, dass die gesamte Stichprobe von jedem Punkt fast gleich weit entfernt ist und das Ergebnis durch kleine zufällige Abweichungen der Abstände bestimmt wird.
 
Aleksey Vyazmikin #:

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?

Was ist die Out-of-the-Box-Methode
Python ist optional. Habe eine Menge Literatur geworfen.
Nun, ich prophezeie auch, dass alle, die noch nicht angefangen haben, irgendwann kapriziös sein werden und dann zu diesem Thema kommen werden :) vielleicht in 10 Jahren, vielleicht in 100 Jahren

Es ist nur so, dass es keine anderen Möglichkeiten gibt, es gibt einfach keine. Es mag Optionen mit anderen neuronalen Netzen geben, aber das Prinzip ist das gleiche - teilen und erobern.
 
Maxim Dmitrievsky #:
Wie funktioniert die Methode "out of the box"

Das ist die Funktionalität.

Maxim Dmitrievsky #:
Es ist so, als gäbe es keine anderen Optionen, sie existieren einfach nicht. Es mag Varianten mit anderen neuronalen Netzen geben, aber das Prinzip ist das gleiche - teilen und erobern.

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.

 
Aleksey Vyazmikin #:

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.

Nein, ich habe sie noch nicht ausprobiert. Ich werde heute Abend sehen, was es ist.
Diese Methoden sind modellabhängig. Die Daten werden nicht von sich aus getrennt oder separiert. Ich weiß nicht, wie ich das erklären soll. Ich habe es einmal ausprobiert und wieder Ärger mit den Optimierern bekommen. Es steht in den Büchern.
Wenn Sie hier links gehen, verlieren Sie ein Pferd. Wenn du nach rechts gehst, verlierst du den zweiköpfigen Drachen.