Maschinelles Lernen im Handel: Theorie, Modelle, Praxis und Algo-Trading - Seite 95
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
"Gopher" konnte ich nicht finden, habe es vermasselt))) Und wozu all diese Übungen gut sind... Jeder, der ein Hippie ist, wird das verstehen.
Ja, aber das ist nicht richtig, ein guter Prädiktor ist einer, der das Ziel erklärt, nicht einer, der sich selbst erklärt, ich weiß nicht, wie man die Qualität eines Prädiktors erkennen kann, ohne ihn mit dem Ziel zu vergleichen, ich verstehe es nicht....
Es kommt darauf an, an welchem Ende des Problems man ansetzen will. Zu Beginn kennen wir weder die gewünschten Prädiktoren noch die Zielvariable. Und um erfolgreich handeln zu können, müssen wir beides wissen. Es ist unmöglich, beides gleichzeitig zu wissen, deshalb sollten wir die Prädiktoren entweder nach unserer Zielvariablen auswählen. Oder Sie können gute Prädiktoren sammeln und dann Ihre Erfahrung nutzen, um vorherzusagen, was mit ihnen passieren könnte.
Erster Ansatz. Ich habe z.B. eine Zielvariable - Preisanstieg/-rückgang über den nächsten Balken. Ich habe es nicht genommen, weil es eine gute Zielvariable ist, sondern weil ich irgendwo anfangen musste, also habe ich etwas Einfacheres genommen :) Als Nächstes nahm ich eine Reihe von Indikatoren und versuche nun, dem Modell anhand "einer Reihe von Indikatoren" beizubringen, "Anstieg/Abfall" zu erkennen. Ich bin froh, dass es zumindest einigermaßen funktioniert hat, denn es gibt keine Garantie dafür, dass eine zufällig ausgewählte Zielvariable vorhersehbar ist, und es gibt keine Garantie dafür, dass die Prädiktoren über genügend Informationen verfügen, um eine Vorhersage zu treffen. ForeCA dient in diesem Fall nur der Vorverarbeitung der Daten, um sie in eine Form zu bringen, auf der das neuronale Netz leichter lernen kann. Beispielsweise können die Daten stattdessen normalisiert werden, oder es können Deltas benachbarter Werte genommen werden, oder es können PCA-Komponenten daraus gebildet werden, usw. All dies erleichtert die Arbeit von neuronka, denn es ist einfacher, auf solchen vorverarbeiteten Daten zu trainieren. Die Aufgabe von ForeCA besteht in diesem Fall darin, ähnliche Klassen auf irgendeine Weise zu gruppieren. Aber es ist nicht sicher, dass ForeCA dabei helfen wird - es hängt von Ihrem Glück und den verfügbaren Prädiktoren und Zielvariablen ab.
Kurz gesagt, in diesem Fall wird die Zielvariable mit einem Modell und Prädiktoren abgeglichen, die alle zusammen auf wundersame Weise zumindest eine gewisse Vorhersagekraft haben.
Ein anderer Ansatz. Wir nehmen eine Reihe von Prädiktoren, sortieren sie nach ihrer "Zuverlässigkeit" und löschen die irrelevanten. Wenn der Indikator zum Beispiel immer einen konstanten Wert hat, ist er offensichtlich nutzlos. Wenn der Prädiktor mit der Funktion random() erstellt wurde, ist er ebenfalls unbrauchbar. D.h. es ist wichtig, die Prädiktoren zu belassen, die wirklich eine gewisse Information besitzen. Ich weiß nicht viel darüber, das Einzige, woran ich mich erinnere, ist, wie man die Wichtigkeit des Prädiktors für die PCA-Komponente findet (pruneSig-Parameter in caret), was eine angemessene Schätzung zu sein scheint. ForeCA soll in diesem Fall die Fliegen von den Koteletts trennen und helfen, zuverlässige Prädiktoren zu finden. Woher all diese Pakete wissen, was wichtig ist und was nicht, ist ein Rätsel, aber sie finden verrauschte und zufällige Prädiktoren und weisen sie zurück. Ein guter Prädiktor ist einer, der nicht zufällig und verrauscht ist.
Wenn Sie eine Reihe von Qualitätsprädiktoren haben, sollten Sie versuchen, mit ihnen etwas vorherzusagen. So kann man beispielsweise eine Kohonenkarte erstellen und die Abhängigkeit des Marktverhaltens von der Klasse in der Kohonenkarte feststellen. Ziehen Sie Schlussfolgerungen darüber, in welchen Klassen Sie handeln sollten und in welchen nicht, und bilden Sie so eine neue Zielvariable für sich selbst. Die Zielvariable wird eine hohe Vorhersagbarkeit mit Prädiktoren haben, da sie auf ihnen aufbaut. Das hört sich alles gut an, aber ich denke, es wird eine Menge Probleme und Fallstricke geben.
Es kommt darauf an, an welchem Ende des Problems man ansetzen will. Zu Beginn kennen wir weder die gewünschten Prädiktoren noch die Zielvariable. Und um erfolgreich handeln zu können, müssen wir beides wissen. Es ist unmöglich, beides gleichzeitig zu wissen, deshalb sollten wir die Prädiktoren entweder nach unserer Zielvariablen auswählen. Oder man wählt einen guten Prädiktor aus und prüft dann, was mit diesem vorhergesagt werden kann.
Erste Annäherung.....
Ein weiterer Ansatz....
Es gibt verschiedene Ansätze, aber werden wir auch handeln?
Was werden wir eintauschen?
Ein Trend?
Abweichung?
Niveau?
Denken Sie daran, dass wir nur zwei Aufträge haben - KAUFEN/VERKAUFEN. Oder gibt es eine bestimmte Sorte von ihnen? BUY eingeben / BUY verlassen / SELL eingeben / SELL verlassen
Dies sind Varianten der Zielvariablen.
Nächste.
Können wir eine Zielvariable für das, was wir handeln, bilden?
Oder gibt es eine Lücke zwischen dem Ziel und der Idee des Handelssystems, die einen Fehler darstellt?
Etc.
Aber wir müssen damit beginnen, WAS wir handeln.
müssen Sie die Variable v2 mit ihrem Rückstand multiplizieren und durch v3 dividieren.
v2;Lag1_v2;v3;v11(цель);v2*Lag1_v2/v3
Das Archiv mit der Datei muss nicht heruntergeladen werden.
lag sieht das Netz nicht.
SanSanych Fomenko:
Genau zu wissen, was zu handeln ist. Es gibt viele Möglichkeiten, aber man kann auch etwas Unvorhersehbares wählen und viel Zeit damit verbringen, etwas über Unvorhersehbarkeit zu lernen. Es ist notwendig, etwas zu wählen, das sich anhand der verfügbaren Prädiktoren leichter vorhersagen lässt. Man muss sich sehr genau überlegen, wie man das macht.
Ich habe einen Testcode für die Vorhersage mit ForeCA erstellt. Sie benötigen eine trainData-Tabelle mit der Zielvariablen in der letzten Spalte. Es wird reihenweise in 2 Teile für die Ausbildung/Validierung unterteilt (wird streng in der Mitte geteilt). Das prädiktive Modell ist lm, aus irgendeinem Grund wird es immer mit PCA in Beispielen verwendet, ich denke, es wird auch hier funktionieren. Sie können die Funktion lm(...) im Code durch ein anderes Modell ersetzen.
ForeCA erfordert Daten in einer Matrix mit vollem Rang nach cov(). Ich habe einen Code beigefügt, der dies im Voraus prüft und Spalten mit niedrigem Eigenwert entfernt. Das Ganze ist eine Schleife, deren Ausführung viel Zeit in Anspruch nimmt und die wahrscheinlich einfacher hätte gestaltet werden können. Ich habe einen Teil der Prädiktoren auf diese Weise eliminiert, ich weiß nicht, ob das gut ist oder nicht.
Bisher habe ich noch kein Ergebnis, das Paket hat 5 Gigabyte Verzweiflung verschlungen, und lange Zeit habe ich mich gefragt, ob ich es ausprobieren soll, vielleicht gibt es eine gute Vorhersage für jemanden.
Zeige 10 Zeilen mit diesen Spalten (v2;Lag1_v2;v3;v11(target) und eine Spalte mit der Formel v2*Lag1_v2/v3)
v2;Lag1_v2;v3;v11(цель);v2*Lag1_v2/v3
Das Archiv mit der Datei muss nicht heruntergeladen werden.
Ich habe einen Testcode für die Vorhersage mit ForeCA..... erstellt.
ich auch... Ich beschloss, eine schnelle Version zu erstellen, nahm Iris, fügte 10 Prädiktoren mit Rauschen hinzu
und ich habe nur Forest trainiert, dann habe ich dasselbe Datum genommen und es mit foreca auf 4 Prädiktoren reduziert und wieder Forest trainiert
Ergebnis:
nur für die neuen Daten
forrest hat das Rauschen in den Daten nicht einmal bemerkt ...
und foreca ist noch schlimmer
Ich auch... Ich beschloss, eine schnelle Lösung zu finden und fügte 10 Prädiktoren mit Rauschen hinzu
und nur Forest trainiert, dann dasselbe Datum mit Rauschen genommen und mit foreCA die Dimension auf 4 Prädiktoren reduziert und Forest erneut darauf trainiert
Ergebnis:
nur für die neuen Daten
forrest hat das Rauschen in den Daten nicht einmal bemerkt ...
und bei foreca ist es noch schlimmer.
Die Wahrheit ist gut, aber Glück ist besser!
Wahrheit = 42 %, ach so positiv für das Depo.
Es ist zwar möglich, glücklich zu leben, aber mit Null-Depo