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

 
Mihail Marchukajtes:

Was?

Auch wenn an diesen Worten etwas Wahres dran ist. ....

Sie sollten einfach lesen, was Klassifizierung bedeutet. Jede gute Website über maschinelles Lernen bringt es auf den Punkt.
 
Alexey Burnakov:

Validierungsdaten:https://drive.google.com/file/d/0B_Au3ANgcG7COGpJb24wbkxoaTg/view?usp=sharing

Es gibt 5,5 Jahre für 5 Paare. Die Daten kommen ausschließlich nach dem Trainingssatz. In der Spalte ganz rechts steht die tselevka: Preiserhöhung in 181 Minuten (was durch die Kategorien im Zug kodiert wurde).

Versuchen Sie, eine MO bei der Validierung von mehr als 0,0001 zu erhalten. Ich habe etwa 0,00013 erhalten, was dem durchschnittlichen Spread entspricht. Das heißt, Null.

Gleichzeitig handle ich nicht jede Beobachtung, sondern nur dort, wo das Maschinensignal stark ist (etwa 5-10 % der Beobachtungen).

Danke,

Alexej

Und dies ist ein nützliches Bild für die Erstellung einer Testprobe (Kreuzvalidierung). Wir müssen die Menge in 5 gleiche Teile unterteilen, und das Ende jedes 5.

 
Ich habe es heruntergeladen, alles ist OK, aber ich habe es noch nicht geschafft, es in MQL einzufügen, und aus irgendeinem Grund unterscheiden sich die Optimierungsergebnisse in der gespeicherten Datei von denen, die vom Prädiktor selbst angezeigt werden. Der Prädiktor selbst hat einen Verallgemeinerungsgrad von 90 %, während das extrahierte Modell nur 47 % erreicht - ich verstehe nicht.... Nun, ich habe es noch nicht in MQL laufen lassen können....
 
Mihail Marchukajtes:
Ich habe es heruntergeladen, alles ist in Ordnung, aber ich habe es nicht geschafft, es in MQL einzufügen ... Ich konnte es auch nicht in MQL ausführen, aber ....

Denn die Java-Datei enthält die Funktion Math.signum(), die mql-Datei dagegen nicht.

Mihail Marchukajtes:
Ich weiß nicht, warum die gespeicherte Datei andere Optimierungsergebnisse anzeigt als der Prädiktor. Der Prädiktor selbst hat einen Datenverallgemeinerungsgrad von 90 %, während das Ausgabemodell nur 47 % erreicht. Unklar....

Es ist eine Eigenschaft von Komitees in Algorithmen für maschinelles Lernen, dass Modelle, die in einem Komitee kombiniert werden, bessere Ergebnisse liefern als Modelle, die einzeln betrachtet werden. Wozu gibt es sonst Ausschüsse? Aus diesem Grund haben einzelne binäre Klassifikatoren in jPrediction eine schlechtere Verallgemeinerbarkeit als ternäre Klassifikatoren.

Hier müssen wir auch einen Parameter wie die Verzerrung berücksichtigen. Es ist wünschenswert, dass sie weniger als 50 % beträgt. Noch besser ist es, wenn sie bei Null liegt. Je kleiner sein Wert ist, desto besser ist der ternäre Klassifikator geeignet.

 
Mihail Marchukajtes:
Ich habe es heruntergeladen, alles ist in Ordnung, aber ich habe es noch nicht geschafft, es in MQL einzufügen. Nun, ich konnte es noch nicht in MQL ausführen....

Sie können auch dies tun. Drücken Sie in MetaEditor die Tastenkombination Strg+H und wählen Sie dann "Automatisch ändern":


Fügen Sie dann die Funktion signum() in den Code ein:

double signum(double x) {
   if (x == 0.0) return(0.0);
   if (x > 0.0) return(1.0);
   return(-1.0);
}
 
Yury Reshetov:

Sie können auch dies tun. Drücken Sie in MetaEditor die Tastenkombination Strg+H und wählen Sie dann "Automatisch ändern":


Fügen Sie dann die Funktion signum() in den Code ein:

Nun, ich werde es bald ausprobieren, denn ich habe die Nase voll von der Baustelle zu Hause. Ich handle von Anfang an... Ich kann keine Zeit finden, es zu optimieren, sobald ich es tue, werde ich es unter .... melden.
 
Yury Reshetov:

Sie können auch dies tun. Drücken Sie in MetaEditor die Tastenkombination Strg+H und wählen Sie dann "Automatisch ändern":


Fügen Sie dann die Funktion signum() in den Code ein:

Ich verstehe nicht, was die Variable 1d ist und woher sie kommt?
 
Mihail Marchukajtes:
Ich verstehe das nicht, es wird auf die Variable 1d geschimpft, was für eine Variable ist das und woher kommt sie?
Ich habe es herausgefunden, es auf d1 geändert und alles hat funktioniert. Ich bin nicht in den Code eingedrungen, aber ich weiß, dass es ein Ausschuss ist und auf 5+++ funktioniert. Vielen Dank, Juri, für deine Arbeit. "Jetzt machen wir doppelt so viel Heu für unsere Kuh" (von Matroskin.....)
 
Nun ein wenig über Ausschüsse, zurück im Jahr 2007 hörte ich zum ersten Mal diesen Begriff, und wir bauten einen Ausschuss von drei Netzwerken, So voot Ausschuss klopft das Signal und gleicht das Gleichgewicht nur, wenn 2 der drei Modelle richtig funktionieren, wenn der Ausschuss von 2 von 3 geben ein falsches Signal, dann der Ausschuss scheitert. so etwas wie dieses ....
 
Yury Reshetov:

Sie können auch dies tun. Drücken Sie in MetaEditor die Tastenkombination Strg+H und wählen Sie dann "Automatisch ändern":


Fügen Sie dann die Funktion signum() in den Code ein:

Yuri, ich habe beschlossen, eine Chance auf das Allerheiligste zu nehmen und einen Gral zu machen, aber ich habe eine Inschrift, die vorhergesagten Werte können 10 nicht überschreiten. Ist dies eine absichtliche Einschränkung oder eine Begrenzung des Algorithmus ???? Weil mehr als 10 hochrelevant ist so....