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

 
Mihail Marchukajtes:
Y Jetzt verstehe ich. Mit anderen Worten: Trainieren wir zunächst ein Netz ohne Lehrer. Dann schreiben wir die erhaltenen Werte in die Gewichte des Klassifizierers, und der Klassifizierer wird dann mit einem Lehrer weiter trainiert. Angenommen, wir haben die Gewichte der neuronengesteuerten Feinabstimmung erhalten, werden die Gewichte weiterhin optimiert????? Mit anderen Worten: Durch Vorlernen ohne Lehrer setzen wir Anfangsgewichte für den Klassifikator, die ihn zum globalen Minimum bringen. Funktioniert das so?

"Tiefes" Lernen ist wegen der Abschwächung (Sigmoid) bzw. des explosiven Wachstums (Hypertangens) der Ableitungen während der Rückwärtspropagation sinnvoll, wenn die Anzahl der Schichten deutlich über 4-5 liegt. Dieses Problem wird durch eine "Krücke" des schichtweisen Vorlernens durch Auto-Encoder oder RBM umgangen, die im Wesentlichen eine hierarchische, nicht-lineare Merkmalsauswahl durchführen (wie PCA nur nicht-linear und mehrfach), die dann leicht von höheren Schichten verarbeitet werden kann, um dann durch das übliche Backprop eine schnelle Feinabstimmung des gesamten Systems nach Zielvorgaben (mit einem Lehrer) vorzunehmen.

Siehe: https://www.youtube.com/watch?v=iowsPfk7uUY

Natürlich gibt es eine Menge "Experten", die Artikel über ZZ geschrieben und ihre Hunde gegessen haben, die auswendig wissen, welches Paket in R in allen Fällen verwendet werden sollte, also werde ich in die Luft sagen, dass mir sowieso niemand glauben wird, tiefe neuronale Netze wie CNN, wenn man versteht, wie sie funktionieren, kann man sie nicht für Marktprognosen verwenden, weil eine so große Hierarchie von Merkmalen nur für Bilder, Videos und NLP benötigt wird, weil es eine große Hierarchie gibt, unsere Welt so aufgebaut ist, Objekte aus Objekten bestehen, usw. Dasselbe gilt für NLP, denn Sprache ist hierarchisch. So etwas gibt es auf dem Markt nicht, man handelt mit einer Art Zeitrahmen, und was auf den kleineren Zeitrahmen passiert, ist ein Geräusch für einen. Die Anleger treffen ihre Entscheidung in einem bestimmten Zeitrahmen, sie sind nicht davon abhängig, was Scalper und HFTs, geschweige denn Hedger, Arbitrageure usw. beschlossen haben. Und die Hierarchie im tiefen Netzwerk impliziert Kohärenz, das Kleine definiert das Große, eine Lawine besteht aus Schneeflocken.

11. Data mining. Глубокие нейронные сети
11. Data mining. Глубокие нейронные сети
  • 2015.11.24
  • www.youtube.com
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Методы обработки больших объемов данных" (осень 2015) Лекция №11 - "Глубокие нейронные сети" Лектор ...
 
Gianni:

Es sieht cool aus, ist aber ein bisschen teuer.

1 Ich möchte etwas Kostenloses ausprobieren und sehen, wie es in Echtzeit und ohne Verzögerung funktioniert, und es gibt eine Demo mit einem riesigen Lag.

2 Können Sie kurz beschreiben, wie ein solches Signal im Handel und bei MO verwendet wird? Wenn es kein Geheimnis ist, wenn wichtige Nachrichten veröffentlicht werden, haben Sie dann Zeit zu handeln, oder kommt jemand eine Sekunde, eine halbe Sekunde früher auf den Markt und schnappt den Köder?

1 Paar mit Websites.

2 Besser kaufen als erwartet, schlechter verkaufen als erwartet.

 
Die:

"Tiefes" Lernen ist wegen der Abschwächung (Sigmoid) bzw. des explosiven Wachstums (Hypertangens) der Ableitungen während der Backpropagation sinnvoll, wenn die Anzahl der Schichten deutlich über 4-5 liegt. Dieses Problem wurde durch die "Krücke" des schichtweisen Vortrainings durch Auto-Encoder oder RBM umgangen, die im Wesentlichen eine hierarchische, nicht-lineare Merkmalsauswahl durchführen (wie PCA nur nicht-linear und mehrfach), die dann leicht von höheren Schichten verarbeitet werden kann, um dann durch das übliche Backprop eine schnelle Feinabstimmung des gesamten Systems nach Zielvorgaben (mit einem Lehrer) vorzunehmen.

Siehe: https://www.youtube.com/watch?v=iowsPfk7uUY

Natürlich gibt es eine Menge "Experten", die Artikel über ZZ geschrieben und ihre Hunde gegessen haben, die auswendig wissen, welches Paket in R in allen Fällen verwendet werden sollte, also werde ich in die Luft sagen, dass mir sowieso niemand glauben wird, tiefe neuronale Netze wie CNN, wenn man versteht, wie sie funktionieren, kann man sie nicht für Marktprognosen verwenden, weil eine so große Hierarchie von Merkmalen nur für Bilder, Videos und NLP benötigt wird, weil es eine große Hierarchie gibt, unsere Welt so aufgebaut ist, Objekte aus Objekten bestehen, usw. Dasselbe gilt für NLP, denn Sprache ist hierarchisch. So etwas gibt es auf dem Markt nicht, man handelt mit einer Art Zeitrahmen, und was auf den kleineren Zeitrahmen passiert, ist ein Geräusch für einen. Die Anleger treffen ihre Entscheidung in einem bestimmten Zeitrahmen, sie sind nicht davon abhängig, was Scalper und HFTs, geschweige denn Hedger, Arbitrageure usw. beschlossen haben. Und die Hierarchie im tiefen Netz impliziert Kohärenz, dass das Kleine das Große definiert, die Schneeflocken die Lawine bilden.

Danke, ich werde mir das Video auf jeden Fall ansehen. Aber der Ansatz von Reshetov hat mir besser gefallen. Ich bin auf seinen Artikel gestoßen, in dem er detailliert erklärt, wie sein Prädiktor aufgebaut ist, also. Ich freue mich darauf, den Code für den Artikel neu zu schreiben. Das wird von einem Moderator erledigt. Ich begrüße die Diskussion, denn ich habe meine eigene Meinung zur Datenaufbereitung und Ausbildung auf der Website .....
 
Die:

"Tiefes" Lernen ist wegen der Abschwächung (Sigmoid) bzw. des explosiven Wachstums (Hypertangens) der Ableitungen während der Backpropagation sinnvoll, wenn die Anzahl der Schichten deutlich über 4-5 liegt. Dieses Problem wurde durch die "Krücke" des schichtweisen Vortrainings durch Auto-Encoder oder RBM umgangen, die im Wesentlichen eine hierarchische, nicht-lineare Merkmalsauswahl durchführen (wie PCA nur nicht-linear und mehrfach), die dann leicht von höheren Schichten verarbeitet werden kann, um dann durch das übliche Backprop eine schnelle Feinabstimmung des gesamten Systems nach Zielvorgaben (mit einem Lehrer) vorzunehmen.

Siehe: https://www.youtube.com/watch?v=iowsPfk7uUY

Natürlich gibt es eine Menge "Experten", die Artikel über ZZ geschrieben und ihre Hunde gegessen haben, die auswendig wissen, welches Paket in R in allen Fällen verwendet werden sollte, also werde ich in die Luft sagen, dass mir sowieso niemand glauben wird, tiefe neuronale Netze wie CNN, wenn man versteht, wie sie funktionieren, kann man sie nicht für Marktprognosen verwenden, weil eine so große Hierarchie von Merkmalen nur für Bilder, Videos und NLP benötigt wird, weil es eine große Hierarchie gibt, unsere Welt so aufgebaut ist, Objekte aus Objekten bestehen, usw. Dasselbe gilt für NLP, denn Sprache ist hierarchisch. So etwas gibt es auf dem Markt nicht, man handelt mit einer Art Zeitrahmen, und was auf den kleineren Zeitrahmen passiert, ist ein Geräusch für einen. Die Anleger treffen ihre Entscheidung in einem bestimmten Zeitrahmen, sie sind nicht davon abhängig, was Scalper und HFTs, geschweige denn Hedger, Arbitrageure usw. beschlossen haben. Und die Hierarchie im tiefen Netzwerk impliziert Kohärenz, dass das Kleine das Große bestimmt, die Schneeflocken eine Lawine bilden.

Aus irgendeinem Grund gleitet das Gespräch immer wieder in eine Diskussion über die Vorzüge und Nachteile des einen oder anderen Modells ab.

Auch wenn meine Erfahrung nicht so umfangreich ist, ist der Beitrag der Modelle selbst zum erfolgreichen Handel sehr gering.

Es ist die Definition des Ziels und seiner Prädiktoren, die es definiert.

Am Beispiel von ZZ habe ich mehrfach versucht zu zeigen, dass selbst eine so offensichtliche, anschauliche und schöne Zielvariable wie ZZ nicht dasselbe ist und bei näherer Betrachtung unüberwindliche Hindernisse aufweist.

Wenn wir über Prädiktoren sprechen, ist es für mich als jemand, der sich sein ganzes Leben lang mit Wirtschaft beschäftigt hat, ziemlich offensichtlich, dass:

  • ein Prädiktor muss für die Zielvariable relevant sein - Vorhersagefähigkeit für die Zielvariable
  • der Prädiktor muss vor der Zielvariablen liegen

Wenn man sich ausschließlich auf die Lösung dieser beiden Grundlagen für die Wirtschafts- und Devisenprognose konzentriert, dann wird sich der Erfolg nur aus diesen beiden Parametern ergeben. Und die Auswahl des am besten auf das Ziel und seine Prädiktoren passenden Modells kann die Leistung nur geringfügig verbessern, kann aber einige stichhaltige Überlegungen zur Lebensdauer des Modells ohne erneutes Training liefern.


Ich plädiere erneut dafür, sich auf die Zielvariable und die Rechtfertigung der Prädiktoren für diese spezielle Zielvariable zu konzentrieren.

PS.

Die Wechselbeziehungen zwischen den Währungspaaren. Die Ergebnisse waren für mich überraschend. Im Besonderen:

  • Die Währungspaare EURUSD und GBPUSD sind nicht miteinander verbunden. Und dies trotz der weithin veröffentlichten Korrelation. Die Erstellung von VAR-Modellen für diese Paare ist hoffnungslos.
  • Der AUDUSD hat nichts mit den großen Währungspaaren zu tun.

 
SanSanych Fomenko:

Die Wechselbeziehungen zwischen den Währungspaaren. Die Ergebnisse sind für mich überraschend. Im Besonderen:

  • Die Währungspaare EURUSD und GBPUSD sind nicht miteinander verbunden. Und dies trotz der weithin veröffentlichten Korrelation. Die Erstellung von VAR-Modellen für diese Paare ist hoffnungslos.
  • Der AUDUSD hat nichts mit den großen Währungspaaren zu tun.

es wäre wahrscheinlich richtig, den Grund für solche Schlussfolgerungen zu nennen
 
SanSanych Fomenko:

Aus irgendeinem Grund driftet das Gespräch immer wieder in eine Diskussion über die Vorzüge und Nachteile bestimmter Modelle ab.

Auch wenn ich aus meiner Erfahrung weiß, dass der Beitrag zum erfolgreichen Handel sehr gering ist.

Es ist die Definition des Ziels und seiner Prädiktoren, die es definiert.

Am Beispiel von ZZ habe ich mehrfach versucht zu zeigen, dass selbst eine so offensichtliche, anschauliche und schöne Zielvariable wie ZZ nicht dasselbe ist und bei näherer Betrachtung unüberwindliche Hindernisse aufweist.

Wenn wir über Prädiktoren sprechen, ist es für mich als jemand, der sich sein ganzes Leben lang mit Wirtschaft beschäftigt hat, ziemlich offensichtlich, dass:

  • ein Prädiktor muss für die Zielvariable relevant sein - Vorhersagefähigkeit für die Zielvariable
  • der Prädiktor muss vor der Zielvariablen liegen

Wenn man sich ausschließlich auf die Lösung dieser beiden Grundlagen für die Wirtschafts- und Devisenprognose konzentriert, dann wird sich der Erfolg nur aus diesen beiden Parametern ergeben. Und die Auswahl des am besten auf das Ziel und seine Prädiktoren passenden Modells kann die Leistung nur geringfügig verbessern, kann aber einige stichhaltige Überlegungen zur Lebensdauer des Modells ohne erneutes Training liefern.


Ich plädiere erneut dafür, sich auf die Zielvariable und die Rechtfertigung der Prädiktoren für diese spezielle Zielvariable zu konzentrieren.

PS.

Die Wechselbeziehungen zwischen den Währungspaaren. Die Ergebnisse sind für mich überraschend. Im Besonderen:

  • Die Währungspaare EURUSD und GBPUSD sind nicht miteinander verbunden. Und dies trotz der weithin veröffentlichten Korrelation. Die Erstellung von VAR-Modellen für diese Paare ist hoffnungslos.
  • Der AUDUSD hat nichts mit den großen Währungspaaren zu tun.

Ich stimme Ihnen hier zu, möchte aber eine Korrektur vornehmen. Klärung vor allem des ersten Punktes. Nicht in Bezug auf das Ziel, sondern auf den Grund dafür. Das heißt, der Prädiktor hat sich geändert, das Ziel hat sich geändert, nicht umgekehrt. Und dann fällt der zweite Punkt einfach weg. Es ist keine Vorfreude erforderlich. Es genügt, dass der Input die Ursache für den Output ist. Und wieder vergessen alle, wo Sie arbeiten. Das Wichtigste an der Börse ist der Preis. Finden Sie die Inputs, die die Ursache für Preisänderungen sind, und jeder TS, ich versichere Ihnen, absolut jeder TS wird so funktionieren, wie er sollte. Aber das ist ein Geheimnis!!!!! Sagen Sie es nicht weiter.... Ihr solltet meinen Artikel trotzdem lesen. Denken Sie nicht, dass ich keine Werbung mache oder so. Natürlich mache ich mir Sorgen, dass ich der Einzige bin, der sie liest :-) nur ein Scherz. Nach der Lektüre werden also viele Fragen wegfallen. Hier müssen Sie neben der KI selbst (nehmen wir an, Sie haben ein Raster) die Datenerfassung richtig organisieren, auf die Indikatoren achten, damit sie nicht übersehen werden, usw. Ich denke, dieser Artikel zeigt einen der Ansätze für den Markt. Ich fühlte mich früher so sehr von den Gittern angezogen, dass der Handel schließlich zur zweiten Natur wurde. Ich denke, dass es jetzt solche Spezialisten gibt, für die der Handel nur eine Frage des Experimentierens ist.....
 
Was die Anwendung von Deep Neural Networks im Handel anbelangt, so gibt es zwar eine Begründung, aber die Zahl der durchzuführenden Manipulationen ist recht groß, wenn man davon ausgeht, dass das Netzwerk nach der Uhr arbeitet, aber Analysen ab Minuten, Minuten verallgemeinert, dann fünf Minuten verallgemeinert, usw. IMHO
 

Mihail Marchukajtes:
Ich stimme Ihnen hier zu, möchte aber eine Korrektur vornehmen. Zunächst einmal möchte ich den ersten Punkt klarstellen. Nicht, um sich auf das Ziel zu beziehen, sondern um der Grund für das Ziel zu sein. Das heißt, der Prädiktor hat sich geändert, das Ziel hat sich geändert, nicht umgekehrt. Und dann fällt der zweite Punkt einfach weg. Es ist keine Vorfreude erforderlich. Es genügt, dass der Input die Ursache für den Output ist. Und wieder vergessen alle, wo Sie arbeiten. Das Wichtigste an der Börse ist der Preis. Finden Sie die Inputs, die die Ursache für Preisänderungen sind, und jeder TS, ich versichere Ihnen, absolut jeder TS wird so funktionieren, wie er sollte.

=================================================================================

Das ist genau der richtige Punkt. Ich würde es nur anders formulieren: Das Ziel sollte durch den/die Prädiktor(en) erzeugt werden.

 
mytarmailS:
Trotzdem haben Sie keine Antwort auf die Frage, wie man das mit R umsetzen kann, wenn ich das richtig verstanden habe.

Die Antwort ist nicht so einfach. Hier ist eine Möglichkeit, zum Beispiel mit einem Neuron, aber Sie müssen verstehen, wie ein Neuron funktioniert, welche Formeln es hat, usw.

Nehmen wir an, es gibt ein einfaches Neuron mit vier Eingängen, drei Perceptrons in einer versteckten Schicht und einem Ausgang. In der mathematischen Sprache würde ein solches Neuron folgendermaßen funktionieren:

#include <math.h>
double sigmoid(double x)
{
     return 1.0 / (1.0 + exp(-x));
}

double NeuralNetwork(double* input, double* bias, double* weight){
    double perc_output[3]; //временный массив для хранения промежуточных результатов каждого перцептрона

    double perc_output[0] = sigmoid(bias[0] + input[0] * weight[0] + input[1] * weight[1] + input[2] * weight[2]  + input[3] * weight[3]);
    double perc_output[1] = sigmoid(bias[1] + input[0] * weight[4] + input[1] * weight[5] + input[2] * weight[6]  + input[3] * weight[7]);
    double perc_output[2] = sigmoid(bias[2] + input[0] * weight[8] + input[1] * weight[9] + input[2] * weight[10] + input[3] * weight[11]);
    double result         = sigmoid(bias[3] + perc_output[0] * weight[12] + perc_output[1] * weight[13] + perc_output[2] * weight[14]);
    return result;
}


Jetzt können Sie eine Tabelle mit Trainingsbeispielen nehmen und das Ergebnis für jedes Beispiel ermitteln

double nn_input[4]; //массив со входными значениями

double nn_bias[4]; //массив сдвигов, на текущем этапе тут будут рандомные значения
double nn_weight[15]; //массив весов, на текущем этапе тут будут рандомные значения

//для всех обучающих примеров находим по очереди результат нейронки. При этом массивы nn_bias и nn_weight не должны меняться
double results[trainSampleCount];
// trainSampleCount = число обучающих примеров
for(int i=0; i<trainSampleCount; i++){
  nn_input = trainSamples[i]; //синтаксис реально не такой, нужно из обучающей таблицы взять i-тую строку и запихнуть в этот массив nn_input
  results[i] = NeuralNetwork(nn_input, nn_bias, nn_weight);
}

Als Nächstes wird zum Beispiel der Gewinn aus den Vorhersagen in das Ergebnisfeld eingetragen und ausgewertet.

Der obige Code kann in den Optimierer geschoben werden. Der Optimierer sollte geeignete Werte für Gewichte und Verschiebungen in den Arrays nn_bias und nn_weight finden:
1) die Werte von nn_bias und nn_weight entsprechend ihren Algorithmen vertauschen
2) Ergebnisse für alle Trainingsbeispiele finden
3) Zeichnen Sie das Handelsdiagramm
4) Schätzung des Handelsdiagramms, Verwendung dieser Schätzung als Fitnesswert für nachfolgende Optimierungsschritte
5) Wiederholen Sie die Schritte 1-4 des Optimierungsalgorithmus, bis das Gewinndiagramm akzeptabel wird.

Die Optimierer, die ich ausprobiert habe, können nicht mit Gewichten umgehen, sondern finden nur ein lokales Minimum, wenn alle Ergebnisse gleich 0,5 sind, um den durchschnittlichen Fehler zu minimieren, und bleiben dann an diesem Minimum hängen. Sie müssen hier einen Trick anwenden, weiter bin ich noch nicht gekommen.
Je komplexer die Struktur der Neuronen ist, desto mehr Gewichte gibt es, und desto schwieriger ist es für den Optimierungsalgorithmus, sie auszuwählen; bei großen Neuronen bleiben sie einfach stehen und verbessern das ursprüngliche Ergebnis kaum.

 
Dr.Trader:

Hier muss man eine Art Trick anwenden.

Der Trick ist eigentlich bekannt, ich habe nur noch keine Software gesehen, die ihn umsetzt. Derivate.

Neuronalisierung, Gleichgewichtsdarstellung, grafische Auswertung sind alles Formeln. Auf diese Weise können Sie Ableitungen von nn_bias und nn_weight in Bezug auf die endgültige Schätzung finden.
In einem Schulungsvideo über MO sprach der Dozent über neue Programmiersprachen der Zukunft, z. B. versucht jemand, eine Sprache zu entwickeln, die die automatische Berechnung von Ableitungen für eine beliebige Variable in einer komplexen Formel ermöglicht (nicht durch Neuberechnung mit einer kleinen Verschiebung des Werts, sondern analytisch). Dies ist die Art von Dingen, die helfen würden.

D.h. man nimmt in der Regel ein Übungsbeispiel und bestimmt für jedes Gewicht analytisch, wie stark es das Ergebnis verbessert, und das Gewicht wird entsprechend leicht erhöht oder verringert. Wir müssen dasselbe tun, aber nicht ein Beispiel nach dem anderen, sondern für alle, und die Ableitung wird nicht für die Trainingsergebnisse einzeln gesucht, sondern sofort für die endgültige Bewertung des Graphen.


Und ein kleiner Nachteil - all dies in dieser Form wird nicht in den Handel zu helfen. Wir werden einfach die Gewichte für das ideale Diagramm anpassen, wir werden 100% Übertraining und Absturz auf den neuen Daten erhalten. Um einen wirklichen Nutzen zu erzielen, wird man mit der Struktur der Neuronen herumspielen müssen, am Ende wird es wahrscheinlich so etwas wie ein Faltungsnetz sein.