Suche nach einer Reihe von Indikatoren, die in die Eingänge des neuronalen Netzes eingespeist werden. Diskussion. Ein Instrument zur Bewertung der Ergebnisse. - Seite 3

 
ivandurak >> :

Auch ich bin sehr daran interessiert, ein Minimum an Indikatoren zu finden und die Ergebnisse zu bewerten, allerdings für meine eigenen Zwecke.

Nur anstelle des Schlusskurses ist das Ergebnis des Handels zu verwenden.

Cgm ... Sie vergessen, dass für eine maximale Lerneffizienz die Eingänge des Netzes statistisch unabhängig sein müssen, d. h. es darf keine Korrelation zwischen den Daten bestehen, die den einzelnen Eingängen zugeführt werden. Alle Maschinen sind miteinander korrigiert, das können Sie überprüfen. Es gibt eine recht praktische und einfache Software - AtteStat, ein Zusatzprogramm zu Exel, das aber sehr praktisch ist.
 
rip >> :

Das ist genau das, was ich meine...


Wie bilden Sie einen Vektor, den Sie dann an JGap übergeben, ist es nur ein Vektor von W-Werten oder sind sie kodiert W-Werte.

Was ist eine Zielfunktion? Ich kann Ihnen ein Beispiel geben - wenn wir als Ziel eine f-Funktion E[i](t) = D[i](t) - Y[i](t) nehmen, wobei E der Fehler ist, D der am Ausgang erwartete Wert, Y der Wert, der durch die Eingabe des Trainingsmusters X erhalten wird, i die Neuronennorm, t die Epochennummer. Nimmt man E[i](t) = Sign(D[i](t) - Y[i](t))*(D[i](t) - Y[i](t))^2 für eine Reihe von Aufgaben, ist das Ergebnis wesentlich besser. Wenn wir z.B. eine Reihe von Attraktoren klassischer dynamischer Systeme (Lorenz, Henon, Rössler, ...) bilden, können wir das Netz sogar darauf trainieren, solche Daten zu approximieren, zwar nicht tief, aber immerhin.


Ich habe es nicht mit Serien versucht, die aus Währungskursen gebildet wurden :), weil ich nicht glaube, dass es funktioniert :)

Nein. Ich übergebe nur den Wert der Zielfunktion an den genetischen Algorithmus, und der genetische Algorithmus gibt einen Vektor von Werten für jedes Gen aus, den ich in eine Matrix von Gewichten des neuronalen Netzes umwandle.

 
IlyaA >> :
Mit einem solchen Design können Sie eine nahezu vertikale Eviti ohne Verrutschen erreichen. Werden Sie die Frage der Umschulung auf neuronaler Ebene ansprechen?

Das Thema Umschulung ist erst einmal auf Eis gelegt... Ich nehme 2 Monate M5 (das sind 12*24*22*2=12.000+ Werte) und benutze sie, um ein neuronales Netz zu trainieren, das 150 -300 Skalen hat... Von einer Umschulung ist man hier wohl weit entfernt.

 
rip >> :

Und eine Umschulung findet vielleicht nicht statt ... Wenn der Autor eine Fehlerkurve für ein Testmuster angibt, können Sie auf einen Blick erkennen, was bei Übertraining passiert.

Von welchem Fehler ist die Rede? Die Zielfunktion ist größer - also ist das Gen besser geeignet...

 
IlyaA >> :


Ich stimme zu. Er arbeitet mit einer Blackbox. Übertraining ist sehr wahrscheinlich. Lieber iliarr, können Sie das Trainingsdiagramm veröffentlichen?

Ich protokolliere die Thread-Nummer, die Generationsnummer (bis auf 10), den Wert der Zielfunktion... Ich glaube nicht, dass diese Informationen etwas über eine Umschulung aussagen können... Ich glaube nicht, dass es eine Umschulung gibt, weil die Trainingsstichprobe viel größer ist als die Anzahl der Gewichte im neuronalen Netz.

 
joo >> :

Sie sollten die winkenden Arme nicht benutzen. Oder besser gesagt, Sie sollten nicht nur gleitende Durchschnitte verwenden. Versuchen Sie, mit verschiedenen Arten von Indikatoren zu experimentieren, wobei sich der Algorithmus eines jeden Indikators möglichst radikal von dem der anderen unterscheiden sollte. Dann erhalten Sie weitere Informationen über das Netz.

Ein weiterer Punkt.

Sie verwenden ein umgekehrtes Handelssystem, das auf NN-Signalen basiert. Dies ist genau dasselbe wie bei dem Standard-Experten muvingaverage. Weder besser noch schlechter.

Suchen Sie nach einer Möglichkeit, die Größe von SL und TP mit NN zu bestimmen, und nach Möglichkeiten, offene Positionen zu begleiten. Sie können auch nach dem Zufallsprinzip öffnen.


GA ist nur ein Optimierungswerkzeug (Schraubenzieher für die Maschine). Mit minimalen Unterschieden können Sie ihn oder jeden anderen Optimierungsalgorithmus (Schraubenzieher) verwenden.

Dies war die Hauptfrage, für die ich das Thema erstellt habe... Ich weiß nicht genug über Indikatoren, um eine gute Wahl treffen zu können, und ich habe nicht genug Ressourcen, um eine dumme Suche durchzuführen... Wenn Sie einen vollständigen Satz von Indikatoren haben, wäre ich Ihnen dankbar.

Wenn ich die Echtzeitinformationen habe, weiß ich nicht, was ich habe, und ich weiß nicht, wie ich es machen soll.

 
iliarr >> :

Ich protokolliere die Thread-Nummer, die Generationsnummer (bis auf 10 genau), den Wert der Zielfunktion... Ich glaube nicht, dass diese Informationen etwas über Umschulung aussagen können... Ich glaube nicht, dass es eine Umschulung gibt, da die Trainingsstichprobe die Anzahl der Gewichte im neuronalen Netz bei weitem übersteigt.


Die Öffentlichkeit muss eine grafische Darstellung der Abhängigkeit des Lernfehlers von der Zeit (Anzahl der Epochen) sehen.
 
12000 Werte :-D bei so vielen Gewichten ist das eine Menge.
 
ivandurak >> :
Wie wäre es, wenn wir es nach dem Prinzip des glücklichen Affen machen. Nehmen wir zum Beispiel den CCI und überprüfen wir ihn anhand der gesamten verfügbaren Historie, so wählen wir profitable Sektoren, die nicht ständig verlieren. Dann nehmen wir Momentum, Bollinger, Muvings und wählen profitable Bereiche. Der Handel erfolgt virtuell, und ein System, das so gut ist wie die erste Auswahl, wird zum echten Handel zugelassen. Wenn sich die Geschichte wiederholt, sollte es funktionieren. Der Vorteil dieses Ansatzes ist auch eine ungefähre Schätzung der Dauer einer guten Situation. Was sind Ihre Kriterien für die Auswahl profitabler Bereiche, wie z.B. die Anzahl der Trades, die durchschnittliche Transaktion, der maximale Drawdown, die Dauer eines profitablen Bereichs, ich habe eine kleine Idee, die ich Ihnen später mitteilen werde.

Haben Sie es ernst gemeint? Oder brauchen Sie vielleicht einige Änderungen?

a[0]=iCCI(Symbol(),0,12,PRICE_TYPICAL,0)
a[1]=iMomentum(NULL,0,12,PRICE_CLOSE,0)
a[2]=iBands(NULL,0,20,2,0,PRICE_LOW,MODE_LOWER,0)
a[3]=iMA(NULL,0,13,8,MODE_SMMA,PRICE_MEDIAN, i)
 
iliarr >>

Dies war die Hauptfrage, für die ich das Thema erstellt habe... Ich weiß nicht genug über Indikatoren, um eine gute Wahl treffen zu können, und ich habe nicht genug Ressourcen, um eine dumme Suche durchzuführen... Wenn Sie einen vollständigen Satz von Indikatoren haben, wäre ich Ihnen dankbar.

Wenn Sie sich mit dem Detektor gut auskennen, keine Sorge, ich werde ihn sofort besorgen.

Ich kenne mich bereits gut mit den Indikatoren aus, ich werde ihnen ein gutes Ergebnis liefern.

und in 2 Tagen werden Sie Ihre eigene Meinung haben.