Maschinelles Lernen im Handel: Theorie, Modelle, Praxis und Algo-Trading - Seite 12
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
Hallo! Ich bin neu im Bereich des maschinellen Lernens und habe eine Frage: Warum versuchen Sie alle, die Kursrichtung vorherzusagen, entweder durch Zickzack-Kurs oder einfach durch das Inkrementieren der nächsten Kerze, es gibt eine Menge Chaos auf dem Markt, Sie sollten einen Korridor einplanen, in dem der Kurs "wackeln" könnte. Es scheint mir effektiver zu sein, das Handelsergebnis als Zielgröße zu nehmen. Beim Training gehen wir beispielsweise von einer idealen Gewinnkurve aus, und das Ziel wird so markiert, dass es nicht mehr als 15 % von der idealen Kurve abweicht, oder wir nehmen den Erholungsfaktor und lassen ihn nicht unter n fallen; solche Ziele sind für Marktdaten flexibler. Und das Interessanteste ist, wie man eine Funktion in dieser Form implementieren kann, zum Beispiel für den gleichen Random Forest?
Hallo!
Die linke Seite ist nur ein Preistyp, die rechte Seite schwarz stellt die ideale Gleichgewichtskurve dar (alles, was verdient werden kann), grün stellt einen bestimmten Bereich (Korridor) von der idealen Gleichgewichtskurve dar, den wir in unserem Handel nicht überschreiten sollten, grau stellt das Gleichgewicht eines realen Handelstyps dar)
Also das Wesen des Ziels ist nicht auf die Preise und das Ziel in Form eines Vektors 11100001111100 vorherzusagen, und die Suche nach einem Zustand, in dem die graue Linie wird nicht über die grüne gehen
Ich weiß selbst nicht, wie man das macht, deshalb möchte ich darüber diskutieren).
Hallo!
Die linke Seite ist nur ein Preistyp, die rechte Seite schwarz stellt die ideale Gleichgewichtskurve dar (alles, was verdient werden kann), grün stellt einen bestimmten Bereich (Korridor) von der idealen Gleichgewichtskurve dar, den wir in unserem Handel nicht überschreiten sollten, grau stellt das Gleichgewicht eines realen Handelstyps dar)
Also das Wesen des Ziels ist nicht auf die Preise und das Ziel in Form eines Vektors 11100001111100 vorherzusagen, und die Suche nach einem Zustand, in dem die graue Linie wird nicht über die grüne gehen
Ich bin vielleicht etwas verwirrt, aber ich weiß nicht, wie ich es machen soll).
Der Neigungswinkel der Linie beim Fehlerhandel wird weniger als ideal sein. Sie haben einen Handel mit einer grauen Linie dargestellt, bei dem eine Erhöhung des Loses höchstwahrscheinlich zu dem beabsichtigten Winkel zurückführt.
Ich verstehe es nicht )) Es gibt kein Los, es gibt kein System, das funktioniert (verbessert), es ist ein zufällig generiertes Datum... ich habe mir gerade ein Ziel vorgestellt, das meiner bescheidenen Meinung nach natürlich besser funktionieren sollte als das Zickzack, aber wie man es umsetzt, weiß ich nicht, ich dachte, vielleicht kann mir das jemand sagen
Ich kann Sie auch nicht verstehen.
Ihre graue Kurve ist wie der Handel mit einem variablen Los, das immer auf eine Linie mit hoher Steigung zurückkehrt.
Es ist wie bei einer Schwalbe, die immer nur einen Winkel der Handelslinie hat.
In Wirklichkeit ist es nicht realistisch, auf diese Weise zu handeln. Bei Fehlern (Verlustgeschäften) liegt Ihre tatsächliche Kurve viel näher an Null.
Es ist auch nicht klar, wie das Ziel erreicht wird. Diese Art von Zeitreihen ist nur möglich, wenn der Handel nach der Anhäufung von Minusbeträgen immer im Plus ist. Es ist kaum möglich, dies in der Ausbildung umzusetzen, zumindest nicht in der üblichen Weise.
Es ist kein System, es ist nur eine Illustration ))) Es gibt keinen Handel damit.
Tut mir leid, ich kann meine Gedanken wohl nicht gut ausdrücken.
Hier ist der Code
PREIS <- cumsum(rnorm(200))+1000
par(mfrow=c(1,2))
plot(PREIS,t="l",,lwd=2)
PD <- c(0,diff(PRICE))
BAL <- PD
for(i in 1:length(PD)){
if(BAL[i] < 0) BAL[i] <- BAL[i]/-1
}
BAL <- Summenwert(BAL)
lowBAL <- BAL - 50
plot(BAL,t="l",lwd=3)
plot(lowBAL,t="b",col="green")
realBAL <- BAL+rnorm(200,sd=20)
lines(realBAL,t="l",col="grey")
Beginnen wir von vorne, es gibt eine Standard-Ziel-Funktion, es ist ein Vektor, der die Richtung der Bewegung bezeichnet, können Sie es durch ein Zickzack oder einfach die nächste Kerze schließen zu beschreiben, ist der Vektor in der Regel in 1110000111 oder -1-1-11111 umgewandelt
Ich kann es so machen, aber ich denke, solche Ansätze sind fehlerhaft.
Ich schlage Folgendes vor: Der Algorithmus soll während des Trainings den Handel imitieren (graues Diagramm) und mit der zu erwartenden idealen Rendite (schwarzes Diagramm) vergleichen, d. h. der Algorithmus versucht nicht, den nächsten Kurs vorherzusagen, sondern versucht nur, die grüne Linie nicht zu überschreiten. Das ist alles, was ich versucht habe, in der Tabelle darzustellen.
Frage: Ist es möglich, dies zu realisieren, denn alle Algorithmen, die ich gesehen habe (neuronal, RF...) wollen einen Zielvektor von 11100011
Es handelt sich nicht um ein System, sondern nur um eine Illustration ))) Es gibt keinen Handel.
Tut mir leid, ich kann meine Gedanken wohl nicht gut ausdrücken.
Hier ist der Code
PREIS <- cumsum(rnorm(200))+1000
par(mfrow=c(1,2))
plot(PREIS,t="l",,lwd=2)
PD <- c(0,diff(PRICE))
BAL <- PD
for(i in 1:length(PD)){
if(BAL[i] < 0) BAL[i] <- BAL[i]/-1
}
BAL <- Summenwert(BAL)
lowBAL <- BAL - 50
plot(BAL,t="l",lwd=3)
plot(lowBAL,t="b",col="green")
realBAL <- BAL+rnorm(200,sd=20)
lines(realBAL,t="l",col="grey")
Fangen wir von vorne an, es gibt eine Standard-Zielfunktion, es ist ein Vektor, der die Richtung der Bewegung bezeichnet, Sie können es durch ein Zickzack oder einfach die nächste Kerze schließen zu beschreiben, ist der Vektor in der Regel in 1110000111 oder -1-1-11111 transformiert
Ich kann es so machen, aber ich denke, dass solche Ansätze fehlerhaft sind
Ich schlage Folgendes vor: Lassen Sie den Algorithmus während des Trainings den Handel imitieren (graues Diagramm) und vergleichen Sie ihn mit der idealen Rendite, die zu erwarten wäre (schwarzes Diagramm), d.h. der Algorithmus versucht nicht, den nächsten Preis vorherzusagen, sondern versucht nur, die grüne Linie nicht zu überschreiten. Das ist alles, was ich versucht habe, in der Tabelle darzustellen.
Die Frage: ist es möglich, es zu realisieren, da alle Algorithmen, die ich gesehen habe (neuronale, RF...) wollen einen Zielvektor von 11100011 in Form eines Zielvektors ?
Ich danke Ihnen. Ich habe Sie sofort verstanden. Es ist nur nicht möglich, dies standardmäßig zu implementieren.
Nehmen Sie Random Forest. Ich nehme an, Sie sind mit dieser Methode des maschinellen Lernens vertraut.
Diese Sache kann nur in eine Richtung funktionieren. Bei einer binären Ausgangsvariablen wird der Entscheidungswald für jede der Eingaben dummerweise einfach nach einer Region von Werten suchen, in der die Schiefe einer der Ausgangsklassen statistisch größer ist. Und dies wird iterativ für alle Variablen durchgeführt.
Wenn Sie möchten, dass die Maschine die Abweichung der realen Handelspräzision vom Ideal berücksichtigt, müssen Sie sicherstellen, dass der Entscheidungswald entsprechend gewählt wird und nicht auf der Grundlage der Schiefe der Klassen. Dabei muss die dynamische Veränderung der Abweichung vom idealen Handel berücksichtigt werden, die ebenfalls nicht durch den Standard realisierbar ist. Dazu muss die Maschine dynamisch mit Daten über den perfekten Handel gefüttert werden. Zu diesem Zweck ist es notwendig, die Methode neu zu schreiben. Mit Standardwerkzeugen ist dies einfach nicht möglich.
Es gibt Gradientenfunktionen. Bei einem Standardwald wird die Steigung auf eigene Weise festgelegt. Wenn es darum geht, die Abweichung des Handels vom Ideal zu optimieren, ist das ein ganz anderer Gradient. Irgendwie glaube ich nicht, dass ich es persönlich auf meinen Knien schreiben kann.