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

 
Mihail Marchukajtes:

Ich habe eine schmutzige Datei mit 7700 Spalten, in der ich 24 Ligen anführe, also gehen Sie nicht weiter, sondern schauen Sie lieber hier. Hier ist Ihre Datei.

Und hier ist meine.

Was ist der Unterschied???? Ich will Sie nicht länger auf die Folter spannen. Bei der Hauptkomponentenanalyse, bei der jede Spalte ein eigenes Koordinatensystem darstellt, ist es wichtig, dass sie geclustert werden können, damit Punkte aus verschiedenen Spalten auf demselben Koordinatensystem aufgetragen werden können. Das Dolmetschen ist einfach. Je mehr vertikale und horizontale Vektoren, desto kühler ist es. Es handelt sich um einen stumpfen, einheitlichen Fleck.

Wenn Sie Informationen komprimieren wollen, prüfen Sie zuerst auf Autokorrelation, und Sie können getrost nur 1 Eingang belassen, aber das Netz wird nicht funktionieren, weil kein Speicher vorhanden ist.

 
Rorschach:

Wenn Sie die Informationen komprimieren wollen, dann prüfen Sie zuerst auf Autokorrelation, und Sie können getrost nur 1 Eingang lassen, nur das Netzwerk wird nicht funktionieren, weil es keinen Speicher hat.

Der Arbeitsspeicher ist nicht das Wichtigste für ein Netzwerk - er wird durch die Verzögerungen bereitgestellt -, aber die Qualität der Klassenaufteilung (wenn wir von Klassifizierung sprechen) ist sehr wichtig. Es ist notwendig, einen Datensatz zu erhalten, der keine Inkonsistenzen aufweist und in dem die Klassen gebündelt sind. All dies führt zu einer qualitativen Trennung. Ich habe Ihre Datei in Rattle (grafische Shell in P) ausgeführt. Es gibt eine Methode der Referenzvektoren und das Ergebnis war 65% Redundanz. Das heißt, wenn der Datensatz ein einfaches G ist, dann gibt es keine Fische darin. Diese Methoden erfordern jedoch keine großen Datensätze. Vielleicht verwenden Sie eine solche KI-Konfiguration, dass Sie mit dem gesamten Satz einen hohen Lernwert erzielen können, aber das ist in der Regel etwas weit hergeholt, mehr nicht.
 
Mihail Marchukajtes:

Na ja, und außerdem schätzt das Modell.

Die Prädiktoren geben die Anzahl der Spalten in der Datei an

258 Gesamtzahl der Vektoren. Ich habe die Klasse 0 entfernt und die Klasse 2 auf Null umbenannt, da sie zahlenmäßig mit der Klasse 1 ausgeglichen war, 19,60 ist der quadratische Fehler, oder vielmehr die Differenz zwischen dem linearen und dem quadratischen Fehler, die gegen Null tendieren sollte, 79,141 ist die allgemeine Verallgemeinerungsfähigkeit, wenn man auf 100 kommt, nimmt die Differenz zwischen den Fehlern ab, 69,767 ist die Spickung. Die Gesamtkontrollfläche beträgt 75 mit einer Generalisierbarkeit von 70. Die Antwort NICHT WISSEN erhielten wir bei 77 Vektoren der Gesamtstichprobe, während die Kontrollfläche 17 Vektoren enthielt.

Tatsächlich habe ich im Training schlechtere Ergebnisse erzielt, aber viel bessere in der Kontrollfläche. Außerdem handelte es sich nicht um eine Testseite wie Ihre, sondern um eine Kontrollseite, die das Netz überhaupt nicht gesehen hatte. Die Testphase ist die Phase, in der das Netz auf der Trainingsebene trainiert wird, so dass es auf der Testebene gut funktioniert, d. h. das Netz sieht während des Trainings möglicherweise den Testabschnitt. Bei dem Test ist das nicht der Fall. Fragen????

Adabust gab mir 79 auf 79

 
Maxim Dmitrievsky:

Adabust gab mir 79 für 79

Können Sie mein Modell gegen OOS tauschen?
 
Mihail Marchukajtes:
Vielleicht verwenden Sie eine KI-Konfiguration, die mit der gesamten Menge eine hohe Lernleistung erzielen kann

Das ist genau das, was es ist. Lassen Sie mich versuchen, es anders zu erklären. Angenommen, wir haben ein klassisches System auf Ma(100) und Preis. Kreuzung nach oben kaufen, Kreuzung nach unten verkaufen. Normalerweise geben wir den Ma und den Preis in den Input und die Systemsignale in den Output. Dies führt zu einer Einsparung von Betriebsmitteln, da ma im Voraus berechnet und dem Netz in fertiger Form zugeführt wird. Alternativ ist es möglich, das Netz nicht mit ma, sondern mit 100 verzögerten Preisen (damit das Netz sich selbst berechnen kann) am Eingang und mit den Systemsignalen am Ausgang zu speisen. In dieser Form können die Netze nicht mit weniger als 100 Preisverzögerungen gespeist werden.

 
Rorschach:

Das ist es. Lassen Sie mich versuchen, es anders zu erklären. Nehmen wir an, es gibt ein klassisches System auf ma(100) und Preis. Nach oben kreuzen kaufen, nach unten kreuzen verkaufen. Normalerweise geben wir den Ma und den Preis in den Input und die Systemsignale in den Output. Dies führt zu einer Einsparung von Betriebsmitteln, da ma im Voraus berechnet und dem Netz in fertiger Form zugeführt wird. Alternativ ist es möglich, das Netz nicht mit ma, sondern mit 100 verzögerten Preisen (damit das Netz sich selbst berechnen kann) am Eingang und mit den Systemsignalen am Ausgang zu speisen. In dieser Form kann das Netz nicht mit weniger als 100 Preisverzögerungen gespeist werden.

Primitive Gedanken, und je eher Sie sich von ihnen befreien, desto eher werden Sie aus der Grube Ihrer Wahnvorstellungen herausspringen. Sie verstoßen damit gegen eine der wichtigsten Regeln der Modellvorbereitung. Denken Sie daran, wir sind hier einmal mit Alexey Vyazemsky war aktiv an den Olympischen Spielen, so dass als ein Zeichen der Dankbarkeit Ich podkalkal ihn über Lags und die Wirkung, dass ich überrascht war. Ich bin ein Praktiker und dann ein Theoretiker. Erlauben Sie mir, einen Teil meiner Korrespondenz zu zitieren, in dem das Wesen der Verzögerung deutlich wird

Zitat:

Ähem, ähem... lustig. Nun, ich will Sie nicht langweilen, Sie waren gut zu mir, also erzähle ich es Ihnen. Ich bin Praktiker und stolpere oft über verschiedene Phänomene, die ich später versuche, theoretisch zu erklären oder die von mir entdeckten Wirkungen im Detail auszuarbeiten. Aber am interessantesten ist es, Antworten auf meine Fragen zu bekommen. Wir hatten also eine Frage. Wie kann der Klassifikator beim Training mit historischen Daten statt mit aktuellen Daten ausgestattet werden? Bei der Erstellung eines auf Regression basierenden Vorhersagemodells ist die Reihenfolge der Daten sehr wichtig, d. h. wenn eine Trainingsdatei aus der Historie gebildet wurde, sollten sie auf keinen Fall vertauscht oder vermischt werden. Es ist die Abfolge der Daten (in strikter Reihenfolge), die es den Vorhersagemodellen ermöglicht, den gesamten Verlauf der Trainingsstichprobe zu sehen, und wie gesagt, die allerersten Daten in der Trainingsstichprobe beeinflussen die letzten Daten aufgrund der Reihenfolge. Das ist von der Vergangenheit bis in die Zukunft, und sie sollten niemals verwechselt werden. Ich erinnere mich, dass Max es einmal versucht hat, aber das Ergebnis war enttäuschend. Denn das Mischen ist nicht auf die Regression anwendbar. Die Klassifizierung ist eine andere Sache, bei der die Methode der zufälligen Mischung der Trainingsmenge notwendig ist, um ein Übertraining zu vermeiden. Mit anderen Worten: Wir erhalten eine echte Schätzung der Qualität der Ausbildung und nicht eine aufgeblasene, weil die Daten erfolgreich gemischt wurden. Wir rotieren durch 10 Epochen, mischen die Menge, rotieren sie erneut, mischen sie erneut. In diesem Fall gibt es keine Verbindungen zwischen den Trainingsvektoren, und jeder Vektor ist im Wesentlichen für sich allein.
2020.07.02 22:47
Deshalb habe ich mich gefragt, wie man den NS nicht nur mit den Werten der Indikatoren für das aktuelle Signal, sondern auch mit der Historie versorgen kann. Endlich habe ich eine Idee. Es ist ganz einfach. Wir speichern die Indikatoren zum Zeitpunkt des Signals, nehmen dann die Werte des vorherigen Indikators für das aktuelle Signal, dann einen weiteren für das vorherige Signal usw. So werden für das aktuelle Signal nicht nur dessen Indikatoren, sondern auch die Indikatoren der vorherigen Signale gespeichert. Im Moment nehme ich eine Verzögerung von 24 Signalen in Kauf. Das heißt, für das aktuelle Signal speichere ich die Werte der Indikatoren für 24 Signale vor. Ich erinnere mich, im Forum gesagt zu haben, dass die Trainingsdatei 7500 Spalten für 50 Zeilen enthält, aber niemand konnte herausfinden, woher das kommt. Problem des MO-Gebiets, wir sind hier alle zu schlau :-)
2020.07.02 22:52
Kommen wir nun zur Sache:
Wie Sie vielleicht bemerkt haben, speichere ich die Daten von 15 Instrumenten und verwende diese Daten, um verschiedene Indikatoren zu erstellen. Ich nehme die stochastische Funktion. Ich nehme die kumulierte Standardabweichung und das war's. Infolgedessen habe ich 307 eindeutige Eingabebalken, die primär für das aktuelle Signal sind. Als Ergebnis nehme ich diese 307 Balken für das aktuelle Signal und addiere dazu (das Signal) 307 Balken aus den 24 vorherigen Signalen. Die Bedeutung dieses Erlasses liegt darin, bei Erscheinen des Signals die Daten für die letzten 24 Signale unverzüglich an die NS zu übermitteln. Dies ist die Transformation, die es der Klassifizierung ermöglicht, tief in die Geschichte des aktuellen Signals einzutauchen. Es handelt sich im Wesentlichen um eine Verzögerung bis zu einer Tiefe von 24
2020.07.02 22:59
ABER den interessantesten Teil habe ich für den letzten Absatz aufgehoben: Sie kennen sicher das vtreat-Addon für P. Dieses Ungetüm führt also eine Datenvorverarbeitung durch, indem es sinnvolle Spalten für die Ausgabevariable identifiziert. In der Regel sind nach der Verarbeitung 130-180 wirklich aussagekräftige Spalten vorhanden. Das Paradoxe ist jedoch, dass die aktuellen Werte der Indikatoren für das aktuelle Signal sehr selten in diese Stichprobe fallen. Sehr selten. Die gleiche Verzögerung von 24 Stunden ist in der nachbearbeiteten Datei kein seltener Gast. Mit anderen Worten: Die Werte der Indikatoren, die vor 24 Lags verfügbar waren, sind für die Zielfunktion entscheidend. Im Grunde ist die Idee so einfach wie ein 5-Kopeken-Stück. Speichern Sie eine ausreichend große Stichprobe, multiplizieren Sie dann die Spalten mit einer Excel-Zelle und verarbeiten Sie sie nach. Das ist der Gewinn!


Das Zitat ist vollständig:

Das Netz wird nicht in der Lage sein, von sich aus etwas zu tun. Was Sie ihm als Input geben, ist das, was Sie als Ergebnis erhalten. Nicht alle Lags sind gut, wie die Praxis zeigt, und in Ihrem Set gibt es keine einzige Spalte, die NS helfen würde, irgendwie ein angemessenes Modell zu bekommen..... Viel Glück!!!!!

Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Типы объектов
Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Типы объектов
  • www.mql5.com
При создании графического объекта функцией ObjectCreate() необходимо указать тип создаваемого объекта, который может принимать одно из значений перечисления ENUM_OBJECT. Дальнейшие уточнения свойств созданного объекта возможно с помощью функций по работе с графическими объектами.
 

Und wenn es richtig gemacht wird, funktioniert das Modell wie folgt.....


 
Valeriy Yastremskiy:

Ja, falsch) Offenbar handelt es sich um Störungen beim Parsen oder bei den gelesenen Daten.

Eine Normalisierung ist wahrscheinlich nicht sinnvoll. Das Gute daran ist, dass wir Archivnachrichten im Terminal brauchen, eine regelmäßige Möglichkeit, sie herunterzuladen und einen Dienst, der mit ihnen arbeitet. Ich glaube nicht, dass es keine Archive gibt). Aber wenn man sich die Position der Entwickler ansieht, wird es nicht losgehen, solange die Nutzer nicht sagen, was sie wollen, und wenn es losgeht, dann vor allem in einer kostenpflichtigen Version).

Nun, ja, der kostenlose und gute Kalender ist kaum möglich)

 
Aleksey Nikolayev:

Ja, nun, ein kostenloser und guter Kalender ist kaum möglich)

Ja, Sie können einen schlechten Kalender, lange und genau) in das Archiv) es ist eine Münze Service) über jetzt selbst zu analysieren)
 
Mihail Marchukajtes:

Danke, das ist interessant, ich wäre nicht auf die Idee gekommen, die vorherigen Signale zu verwenden. Das wirft die Frage auf, ob das Netz überhaupt eine unnötige Verbindung ist?

Das ist es, was ein Netzwerk für mich interessant macht, damit es mir nicht die Zeichen nimmt. Ansonsten wäre es einfacher, ein klassisches System zu entwickeln.

Ich werde noch einige Experimente machen müssen, ich werde eine sehr große Anzahl von Beispielen auf dem Machka-System nehmen, so dass es beim Training keine einzige Wiederholung gibt und ich in eine Epoche passen kann.