Diskussion zum Artikel "Programmierung eines Tiefen Neuronalen Netzes von Grund auf mit der Sprache MQL" - Seite 5
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
Ich habe die Eingabe "bodyPer" geändert. Anstatt einfach die relative Länge des Körpers zu laden, berechne ich diesen Wert: bodyPer=0.5+((close-open)/p100)/2;
Damit erfasst die Variable nicht nur die relative Länge, sondern auch die Richtung der Kerze. Dadurch wird ein Platz für eine 4. Variable frei, denke ich.
int error=CandlePatterns(rates[0].high,rates[0].low,rates[0].open,rates[0].close,rates[0].close-rates[0].open,_xValues);
Hier übergeben wir die Daten einer Kerze, die sich noch nicht gebildet hat. In Wirklichkeit werden alle Parameter gleich sein, wenn die Kerze geöffnet wird. Alle werden = rates[0].open sein
int error=CandlePatterns(rates[0].high,rates[0].low,rates[0].open,rates[0].close,rates[0].close-rates[0].open,_xValues);
Hier übergeben wir die Daten einer Kerze, die sich noch nicht gebildet hat. In Wirklichkeit werden alle Parameter gleich sein, wenn die Kerze geöffnet wird. Alle werden = rates[0].open sein
Falsch!
Hier wird nicht vom Null-Balken kopiert, sondern vom ersten, also hier:
CandlePatterns(rates[0].high,rates[0].low,rates[0].open,rates[0].close,rates[0].close-rates[0].open,_xValues);
werden die Werte des letzten Balkens sein...
Ich glaube nicht, dass es notwendig ist, 5 Balken zu kopieren, es reicht, 1 vergangenen Balken so zu kopieren:
Hallo Anddy, großartige Arbeit, die du geleistet hast!!!
Ich analysiere gerade deinen Code, um ihn an meine Strategie anzupassen, und bis jetzt kann ich sagen, dass dein DNN erstaunlich ist! Danke fürs Teilen.
Ich habe nur eine Frage: Ich erkenne die Verwendung von "yValues[2]>0.6" in keiner Situation. Nach mehreren Versuchen mit verschiedenen Vermögenswerten wurde kein Handel aufgrund dieser Bedingung geschlossen. Ist dies korrekt?
Ich danke Ihnen!
Beste Grüße,
Alexandre
In diesem Forum kommentieren Sie bitte auf Portugiesisch. Verwenden Sie das automatische Übersetzungstool oder kommentieren Sie in einem der Foren in einer anderen Sprache.
Es gibt einen Logikfehler im Code!
Seltsames Verhalten, wenn die Trendvariable geändert wird, sind die Trainingsergebnisse immer anders, warum?
Es gibt einen Logikfehler im Code!
Spezifität der Aktivierungsfunktion.
Und je mehr Werte den Schwellenwert erreichen oder überschreiten, desto mehr Positionen oder Gelegenheiten gibt es, das Preisdiagramm an das neuronale Netz anzupassen (sich den Pfad einzuprägen).Je mehr Schichten, desto mehr Abschwächung - die Werte liegen näher bei 0.
Offset behebt dieses Problem ein wenig.
Wenn der Schwellenwert also auf 0,6 gesetzt wird, werden die meisten der möglichen Sätze verworfen. Und wenn man eine große Zahl oder mehrere große Zahlen in die Eingabe einspeist, dann bringt selbst ein direkter Durchlauf mehr mögliche Werte an das Ende des neuronalen Netzes.
Spezifität der Aktivierungsfunktion.
Und je mehr Werte den Schwellenwert erreichen oder überschreiten, desto mehr Positionen oder Möglichkeiten gibt es, das Preisdiagramm an das neuronale Netz anzupassen (denken Sie an den Pfad).Je mehr Schichten, desto mehr Abschwächung - die Werte liegen näher bei 0.
Der Offset behebt dieses Problem ein wenig.
Wenn der Schwellenwert also auf 0,6 gesetzt wird, werden die meisten der möglichen Sätze verworfen. Und wenn man eine große Zahl oder mehrere große Zahlen in die Eingabe einspeist, dann bringt selbst ein direkter Durchlauf mehr mögliche Werte an das Ende des neuronalen Netzes.
Wie auch immer, die Ergebnisse des Trainings sind bei jeder Art von Optimierung immer sehr variabel, was gewisse Zweifel an der Anwendbarkeit auf den realen Handel aufkommen lässt - es wird immer bessere Parameter für die Gewichte in neu sortierten Kombinationen geben. Was ist die Erklärung für diese Besonderheit dieses NS?
Wie auch immer, die Ergebnisse des Trainings sind bei jeder Art von Optimierung immer sehr variabel, was gewisse Zweifel an der Anwendbarkeit für den realen Handel aufkommen lässt - es wird immer bessere Parameter für die Gewichte bei der Neusortierung der Kombinationen geben. Was ist die Erklärung für diese Besonderheit dieses NS?
Sie messen diesem NS eine große Bedeutung bei, eigentlich allen NSs und allem, was mit MO zu tun hat, im Allgemeinen - überall dort, wo es Multiplikationen von Zahlen mit Zahlen und einen Addierer in der Aktivierungsfunktion gibt - wird es eine Anpassung an das Diagramm sein. Ein völlig instabiles System.
Es ist interessant, sich damit zu befassen, Architekturen zu bauen, Neuronen und Schichten hinzuzufügen. Aber es ist absolut nutzlos, nicht besser als das Kreuzen von Mashka.Außerdem ist die Preisbildung ein nicht-stationärer Prozess. Jedes Mal, wenn es neue Daten gibt, und wenn Sie das Diagramm in Muster unterteilen, werden sie dazu neigen, 50/50 auf der Geschichte zu arbeiten.
NS ist für stationäre Systeme, repetitiv.
Aber in Forex und so weiter brauchen Sie fortgeschrittenere, intelligente Systeme. So etwas wie mehrere NS, die irgendwie miteinander verbunden sind und sich auf magische Weise an die Veränderung der Musterstatistiken anpassen usw.
NS selbst ist eine Speicherung des Kursverlaufs oder eine Mittelwertbildung der Ergebnisse, wenn die Menge der neuen Daten größer ist als die möglichen Zahlenkombinationen, die man durch Multiplikation erhält (oder einfach gesagt - die einfachste NS-Architektur mit zwei oder drei Eingängen).
Sie messen diesem NS eine große Bedeutung bei, eigentlich allen NS und allem, was mit MO zu tun hat - überall dort, wo es Multiplikationen von Zahlen mit Zahlen und einen Addierer in der Aktivierungsfunktion gibt - wird alles in den Graphen passen. Ein völlig instabiles System.
Es ist interessant, sich damit zu befassen, Architekturen zu bauen, Neuronen und Schichten hinzuzufügen. Aber es ist völlig nutzlos, nicht besser als das Kreuzen der Mashka.Außerdem ist die Preisbildung ein nichtstationärer Prozess. Jedes Mal, wenn es neue Daten gibt, und wenn man das Diagramm in Muster unterteilt, tendieren diese dazu, sich 50/50 auf die Geschichte auszuwirken.
NS ist für stationäre Systeme, die sich wiederholen.
Aber im Forex und so weiter braucht man fortgeschrittenere, intelligente Systeme. So etwas wie mehrere NS, die irgendwie miteinander verbunden sind und sich auf magische Weise an die Veränderung der Musterstatistiken anpassen usw.
NS selbst ist eine Speicherung des Kursverlaufs oder eine Mittelwertbildung der Ergebnisse, wenn die Menge der neuen Daten größer ist als die möglichen Zahlenkombinationen, die man durch Multiplikation erhält (oder einfach gesagt - die einfachste NS-Architektur mit zwei oder drei Eingängen).
Ivan, ich danke dir für die Klarstellung. Jede Statistik hat die Tendenz, sich zu wiederholen. Wenn ein integraler Indikator bei der Optimierung (Training) des NS verwendet wird, können wir im Prinzip anhand der Punkte sehen, wie und wann der Übergang von Unwissenheit zu Wissen erfolgt - wie man besser damit umgehen kann. Die Suche nach einer signifikanten Variable ist ein separates Thema. Ist es Ihnen gelungen, das Problem mit der Skalierung der Eingaben um mehr als das Vierfache zu lösen?