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

 
Mihail Marchukajtes:

Dies ist die erste Option, und die zweite besteht darin, kleine Modelle ohne Anpassung für einen relativ kurzen Zeitraum zu bauen. Sozusagen eine Plünderung des Marktes. Du kommst mit einem Optimel herein, nimmst den Bürgerlichen ein paar gute Angebote weg und bist bis zum nächsten Mal weg....

Man kann das Langzeitgedächtnis eines Bots ausschalten und er wird jeden Tag wie ein Neugeborenes sein, aber das Fehlen von Langzeiterfahrungen ist immer ein Fiasko und der Murmeltiertag

 
SanSanych Fomenko:

Ich muss nicht nachdenken - für mich ist es eine vergangene Phase mit einem ziemlich großen Archiv an experimentellen Ergebnissen.

Ich werde wiederholen, was ich schon oft geschrieben habe.

1. Gezielte ZZ.

2. ich habe etwa 200 Prädiktoren für dieses Ziel erfunden

3. 27 von 200 Prädiktoren nach dem Algorithmus "Einfluss auf das Ziel".

4. ich habe Prädiktoren aus 27 Prädiktoren auf jedem Balken ausgewählt und die Anzahl der ausgewählten Prädiktoren von 6-7 auf 15 von 27 geändert.

5. Fitting rf. Der Anpassungsfehler liegt bei knapp unter 30 %.


Keine unendlichen Zyklen. 30 % ist ein sehr gutes Ergebnis, aber nur theoretisch. Ich habe es nicht geschafft, einen praktischen Expert Advisor mit diesem Ergebnis zu erstellen, ich musste Trendindikatoren hinzufügen. Jetzt ändere ich die Indikatoren (Junk) zu GARCH.

Was ich beweisen muss, ist, dass die Ansätze identisch sind, weil es ein Prinzip ist, aber was ist rfe?

P.S. Ich habe Modelle in Indikatoren gezählt, deren Ausgang einen Pfeil nach oben oder unten hat. Der Expert Advisor hat die Funktion eines zuverlässigen "Öffners".

 
SanSanych Fomenko:

Ich muss nicht nachdenken - für mich ist das bereits geschehen, mit einem ziemlich großen Archiv an experimentellen Ergebnissen.

Nun, wir müssen es nicht tun, wenn Sie es nicht tun können.

man könnte meinen, wir wären schlauer als ihr :)

PS Ich habe mir angewöhnt, von den Erfahrungen anderer zu lernen.

 
Maxim Dmitrievsky:

Man kann das Langzeitgedächtnis des Bots einfach abschalten und er wird jeden Tag neu geboren, aber das Fehlen von Langzeiterfahrungen ist immer ein Fiasko und ein Murmeltiertag

Die tägliche Überoptimierung am Morgen ist nicht gut, da stimme ich zu. TC benötigt ein etwas längeres Intervall, um zu wirken. Bei meinem M15 ist eine Woche genau richtig. Wenn ich 40 Signale im Training berücksichtige, bei denen das Konfidenzintervall für das Modell etwa 20 beträgt, darunter 5 am OOS (Freitag), dann arbeiten die anderen 15 bereits, normalerweise 3-4 Geschäfte pro Tag, also eine Woche für mich! Es ist wieder Murmeltiertag, oder eher Murmeltierwoche, also ist es Arbeit ... Ich kann es nicht ändern :-). Aber es gefällt mir, und Steve Jobs hatte Recht. "Es gibt keinen besseren Job als ein gut bezahltes Hobby.

 
Maxim Dmitrievsky:

Nun, wir müssen es nicht tun, wenn Sie es nicht tun können.

Man könnte meinen, wir wären schlauer als du :)

P.S. Ich lerne, von den Erfahrungen anderer Menschen zu lernen.

Ich habe nicht gesagt, dass es nicht funktioniert hat. Das habe ich getan, und zwar sehr erfolgreich - es ist mir gelungen, einige finanzielle Probleme zu lösen.

Aber mein Expert Advisor wurde umgeschult und die Quelle der Indikatoren, die ich loswerden möchte.

 
Mihail Marchukajtes:

"Es gibt keinen besseren Job als ein gut bezahltes Hobby".

Saint-Simon formulierte diese Aussage 200 Jahre vor Jobs als Grundlage für den utopischen Sozialismus.

 
SanSanych Fomenko:

Saint-Simon, 200 Jahre vor Jobs, hat den utopischen Sozialismus auf dieser Prämisse aufgebaut.

Durchaus möglich. Ich werde mich nicht streiten...

 
Mihail Marchukajtes:

Aber ich glaube nicht, dass eine VI-Metrik ausreicht. Wir sollten versuchen, die Redundanz zu berechnen und die Anzahl der Spalten zu reduzieren.

Vielleicht gibt es bereits fertige Funktionen, die es erlauben, neben der gegenseitigen Information???? Eingabedaten zur Ausgabe zu schätzen.

In R gibt es zahlreiche Bibliotheken (Pakete) für viele Fälle, einschließlich der Auswahl von Prädiktoren (Spalten).
https://cran.r-project.org/web/packages/available_packages_by_name.html sind offiziell unterstützte Bibliotheken, und es gibt hunderte weitere auf githab. Dort können Sie mit Hilfe von Schlüsselwörtern nach dem suchen, was Sie brauchen.

Zur Bestimmung der API jedes Prädiktors mit Zweck funktioniert das vtreat-Paket gut (Funktion designTreatments, suchen Sie nach seinem Namen auf dieser Website, es wird viele Links zu diesem Thema mit Beispielen geben).
Ich habe kürzlich auch ein Beispiel für die Verwendung des FSelector-Pakets gegeben, um einen guten Satz von Prädiktoren zu finden -https://www.mql5.com/ru/forum/86386/page643#comment_6472393
Es werden mehrere andere Pakete angeboten - FSelectorRcpp, CORElearn, VSURF, VarSelRF, Boruta.

Boruta scheint mir die einfachste Lösung zu sein (aber vielleicht nicht die beste), man muss nur einen solchen Code ausführen und warten -

#  install.packages("Boruta", dependencies=T) #  эту строчку нужно запустить всего 1 раз чтобы автоматически установить пакет
# library(Boruta) #  эту строчку нужно запустить каждый раз когда вы заново открываете R или RStudio, чтоб загрузить пакет в память
forexFeatures <- read.csv2("Qwe.txt", dec=".")
Boruta(TargetProf ~ . , data = forexFeatures) #запуск  с дефолтными параметрами
Boruta(TargetProf ~ . , data = forexFeatures, doTrace = 1, maxRuns = 1000) #больше  логов на экране, и больше итераций алгоритма, результат должен быть качественней чем дефолтный
Der Code gibt"4 Attribute wichtig: AD10, Del, Del2, N;" aus, so dass Sie nur diese 4 nehmen und versuchen können, das Modell mit ihnen zu lernen.
N (Ordnungszahl) wird ebenfalls als gut angesehen, da die Klasse 1 am Anfang der Datei mit kleinem N konzentriert ist. Im Allgemeinen ist es besser, zunächst solche Spalten aus der Tabelle zu entfernen, die nur Informationen für den Benutzer und nicht für die Modelle enthalten.
forexFeatures <- forexFeatures[,-1]
Boruta(TargetProf ~ . , data = forexFeatures, doTrace = 1, maxRuns = 1000)
# 2 attributes confirmed important: AD10, Del;
 
Dr. Trader:

R verfügt über zahlreiche Bibliotheken (Pakete) für viele Zwecke, einschließlich der Auswahl von Prädiktoren (Spalten).
https://cran.r-project.org/web/packages/available_packages_by_name.html sind offiziell unterstützte Bibliotheken, und es gibt hunderte weitere auf githab. Dort können Sie mit Hilfe von Schlüsselwörtern nach dem suchen, was Sie brauchen.

Für die Bestimmung des VI jedes Prädiktors mit Zweck funktioniert gut das Paket vtreat (Funktion designTreatments, suchen Sie nach seinem Namen auf dieser Seite, es wird viele Links zu diesem Thema mit Beispielen geben).
Ich habe kürzlich auch ein Beispiel für die Verwendung des FSelector-Pakets gegeben, um einen guten Satz von Prädiktoren zu finden -https://www.mql5.com/ru/forum/86386/page643#comment_6472393
Es werden mehrere andere Pakete angeboten - FSelectorRcpp, CORElearn, VSURF, VarSelRF, Boruta.

Boruta scheint mir die einfachste Lösung zu sein (aber vielleicht nicht die beste), man muss nur diesen Code ausführen und warten

Mm-hmm. Ich habe schon einiges heruntergeladen, aber meine R-Kenntnisse sind dürftig, weshalb die Tamburine auftreten. Aber danke für die Information. Ich denke, ich muss mich auf eine bestimmte Reihe von Metriken einigen, die für die Analyse ausreichen werden. Das VI hat mir auch gefallen, wenn ich mir die Modelle und Testergebnisse ansehe, aber ich finde, es ist nicht genug. Sobald eine Reihe von Metriken definiert ist, muss nur noch die Reihe der Inputs erweitert werden, damit eine Auswahl besteht, und das Wichtigste ist die Qualität der Inputs im Verhältnis zum Output. Gute Inputs für Ihren TS zu finden, ist mehr als die halbe Miete... also an....

 
Dr. Trader:

R verfügt über zahlreiche Bibliotheken (Pakete) für viele Zwecke, einschließlich der Auswahl von Prädiktoren (Spalten).
https://cran.r-project.org/web/packages/available_packages_by_name.html sind offiziell unterstützte Bibliotheken, und es gibt hunderte weitere auf githab. Dort können Sie mit Hilfe von Schlüsselwörtern nach dem suchen, was Sie brauchen.

Für die Bestimmung des VI jedes Prädiktors mit Zweck funktioniert gut das Paket vtreat (Funktion designTreatments, suchen Sie nach seinem Namen auf dieser Seite, es wird viele Links zu diesem Thema mit Beispielen geben).
Ich habe kürzlich auch ein Beispiel für die Verwendung des FSelector-Pakets gegeben, um einen guten Satz von Prädiktoren zu finden -https://www.mql5.com/ru/forum/86386/page643#comment_6472393
Es werden mehrere andere Pakete angeboten - FSelectorRcpp, CORElearn, VSURF, VarSelRF, Boruta.

Boruta scheint mir die einfachste Lösung zu sein (aber vielleicht nicht die beste), man muss nur diesen Code ausführen und warten

Der Code gibt"4 Attribute bestätigt wichtig: AD10, Del, Del2, N;", so können Sie nur diese 4 nehmen und versuchen, das Modell mit ihnen zu trainieren.
N (Ordnungszahl) wird ebenfalls als gut angesehen, da die Klasse 1 am Anfang der Datei mit kleinem N konzentriert ist. Im Allgemeinen ist es besser, zunächst solche Spalten aus der Tabelle zu entfernen, die nur Informationen für den Benutzer und nicht für die Modelle enthalten.

Warte, lass es mich noch einmal versuchen. Ich wollte nur nach einem Beispiel für einen Code fragen, den man verwenden kann: ....