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

 
mytarmailS:

Können Sie mir sagen, wie Ihr obiger Code mit diesem funktioniert? :)

Mit diesem Befehl im Paket ist etwas nicht in Ordnung -

indexTZ(EURUSD) <- "UTC",

stellt er die falsche Zeitzone ein. Ich habe in den Kommentaren der Datei geschrieben, wie man das überprüfen kann.

Das endgültige Diagramm ist dasselbe. Ich habe nie versucht, das zu überprüfen.

Dateien:
tweets2.txt  4 kb
 
SanSanych Fomenko:


Nun, es ist jedem in der Welt klar, dass der Wechselkurs nicht bei 35 Rubel bleiben konnte, weil die Ölpreise fielen und die Devisenzuflüsse (das Devisenangebot verringerte sich) an der MICEX zurückgingen und als Folge der bekannten Ereignisse die Kapitalabflüsse aus Russland zunahmen (die Devisennachfrage stieg), aber Sie können weiter so denken!
 
Dr. Trader:

Mit diesem Befehl im Paket ist etwas nicht in Ordnung -

indexTZ(EURUSD) <- "UTC",

stellt er die falsche Zeitzone ein. Ich habe in den Kommentaren zu der Datei geschrieben, wie man das überprüfen kann.

Ja, da stimmt etwas nicht, ich bekomme immer Verwerfungen :( aber es scheint so zu funktionieren, wie es sollte...

Vielleicht ist das Problem mit "UTC" ist, dass rusquant Streams die Anführungszeichen gehen "as is" und der letzte Balken nicht geschlossen ist, vielleicht, weil es die Probleme mit "UTC +1", aber ich habe nicht versucht, zum Absturz bringen...

Dr. Trader:

Das endgültige Diagramm bleibt unverändert. Meine Intuition sagt, dass ich wahrscheinlich Indikatoren zu chart_Series(EURUSD) hinzufügen kann, aber ich habe es nicht verstanden.

Natürlich können Sie das)) rusquant ist ein quanmod, aber mit der Möglichkeit, "unsere" Anführungszeichen zu laden, die Funktionen sind dieselben, und das Paket ist im Wesentlichen dasselbe....

Aber um ehrlich zu sein, weiß ich selbst nicht, wie ich das alles zeichnen soll, denn bisher gehen alle Bemühungen dahin, "was zu visualisieren" und nicht "wie man es gut visualisiert".

p.s. Danke für die Hilfe, ich werde Sie über die Forschungsergebnisse auf dem Laufenden halten

 
Dmitry:
Nun, es ist jedem in der Welt klar, dass der Wechselkurs nicht bei 35 Rubel bleiben konnte, da die Ölpreise gesunken sind und die Devisenzuflüsse (das Devisenangebot ist gesunken) an der MICEX gesunken sind und infolge der bekannten Ereignisse die Kapitalabflüsse aus der RF zugenommen haben (die Devisennachfrage ist gestiegen), aber Sie können weiter so denken!

Ich versuche, mich vor der totalen Propaganda zu schützen, die mit der Realität des Rubelkurses überhaupt nichts zu tun hat. Alle Argumente, die Sie anführen, sind zu fast 100 % Propaganda und wurden verwendet, um globale Veränderungen in der RF-Wirtschaft vorzunehmen. Dies geschah, um die äußerst negativen sozialen Folgen der Rubelschwäche für die Bevölkerung zu vertuschen.

Der Reihe nach.

1. Die Abhängigkeit des Rubelkurses von den Ölpreisen wird stark übertrieben. Was die Abhängigkeit der Haushalte von den Energiepreisen angeht, rangiert Russland unter den erdölproduzierenden Ländern entweder an erster oder zweiter Stelle der Top Ten. Russland ist das einzige Land unter den großen Energieexporteuren, in dem sich der Wechselkurs der Landeswährung halbiert hat.

2. Nach der Verhängung von Finanzsanktionen im August 2014 kam es zu verbalen Interventionen hochrangiger russischer Beamter, um den Rubel zu schwächen, einschließlich der Ankündigung, dass die Zentralbank es ablehnt, den Wechselkurs zu stützen. In einem solchen Umfeld blieben natürlich auch Spekulanten nicht aus, die die Worte der Regierungsspitze als Frühindikator nutzten.

3. 2011 sprach sich Glazyev für einen schwächeren Rubel aus.

Infolgedessen haben wir jetzt eine andere makroökonomische Situation in Russland: die Betonung der Exporte und die Unterdrückung der Importe. Die Preise im Land selbst haben sich strukturell verändert: So ist beispielsweise der Benzinpreis in ausländischer Währung um die Hälfte gesunken, die Immobilienpreise sind um die Hälfte niedriger...

Der Wechselkurs der Landeswährung ist immer politisch. Und wie man die für die Bevölkerung schmerzhaften Veränderungen des Wechselkurses darstellt, ist eine andere Sache. In RF taten sie es heimlich...

 
SanSanych Fomenko:


Ja...

Es gibt eine Kategorie von Menschen, denen es leichter fällt, an Reptiloide, Freimaurer, eine Regierung hinter den Kulissen, das Monster von Loch Ness, den Planeten Nibiru oder die Anunnaki zu glauben, als ein Lehrbuch über Wirtschaft oder die Evolutionstheorie zu lesen.

 

Hallo, es ist lebendig, es ist Frühling!)

Hilfe bei einer Frage, bitte!

Ich habe eine unterschiedliche Anzahl von Ereignissen (Paterns) zu jedem Zeitpunkt (auf jedem Balken)

Jedes Ereignis enthält (zum Beispiel) 4 Parameter.

Die Aufgabe besteht darin, die Logik der Eingänge aufzubauen, um das Netz zu trainieren.

Mögliche Lösungen:

Zu einem Zeitpunkt eine bestimmte Anzahl von Ereignissen, zu einem anderen eine andere.

- Folglich müssen Sie für die Eingabe in das Netz die bereits bereitstehende Anzahl der zugewiesenen Eingänge verwenden; wenn es sich nicht um einen Eingang handelt, setzen Sie Nullen ein.

Das Problem ist die Redundanz der Eingaben, denn jedes Ereignis hat seinen eigenen Zeitraum, und es kann Tausende von Zeiträumen geben. Da für jede Periode Platz vorgesehen ist, können die Eingabedaten in Millionenhöhe liegen (wenn das Ereignis natürlich Tausende von Parametern hat).

Der Preis der aktuellen Kerze Zeitraum m0-H/L Ereignis % Ausführung
Daten auf dem ersten Balken 1.25600 1 0 0
1.25600 2 0 0
1.25600 3 0.02000 40
1.25600 ... 0 0
1.25600 1000 0.03000 20

Es ist auch möglich, die zugewiesene Anzahl von Eingängen in Bezug auf gültige Ereignisse zu verwenden, es können z. B. 5 sein.

Preis der aktuellen Kerze Zeitraum m0-H/L % der Ereignisausführung
Daten auf dem ersten Balken 1.25600 10 0.00400 60
1.25600 60 0.00600 50
1.25600 300 0.02000 40
0 0 0 0
0 0 0 0


Das Problem besteht darin, dass die Gewichte an ein bestimmtes Ereignis angepasst werden, und wenn das Netz auf ein Ereignis mit der Periode 10 iteriert, wird die Zelle beim nächsten Mal (beim nächsten Balken) ein Ereignis mit der Periode 60 enthalten. Und der Unterschied zwischen den Ereignissen liegt zumindest in der Häufigkeit. Wenn ich es richtig verstanden habe, sollte die Eingabe auf eine Periode eingestellt werden, wenn sie auf diese Periode eingestellt ist. Oder die Hauptsache ist, um den Datentyp, wenn der Zeitraum, ist es egal, welche Periode wird gefüttert werden.

Eine alternative Lösung:

Wenn wir ein Netz mit Langzeitgedächtnis (LSTM) verwenden

Wenn Sie vier Eingänge zuweisen und die Anzahl der im Moment aktiven Ereignisse (aktueller Balken) in einer Schleife erfassen, können Sie die große Topologie ohne Kostenaufwand umgehen, nicht wahr?

 
Top2n:

Hallo, es ist lebendig, es ist Frühling!)

Hilfe bei einer Frage, bitte!

Ich habe eine unterschiedliche Anzahl von Ereignissen (Paterns) zu jedem Zeitpunkt (auf jedem Balken)

Jedes Ereignis enthält (zum Beispiel) 4 Parameter.

Die Aufgabe besteht darin, die Logik der Eingänge aufzubauen, um das Netz zu trainieren.

Mögliche Lösungen:

Zu einem Zeitpunkt eine bestimmte Anzahl von Ereignissen, zu einem anderen Zeitpunkt eine andere Anzahl von Ereignissen.

- Folglich ist für die Eingänge zum Netz die bereits fertige Anzahl der zugewiesenen Eingänge zu verwenden; wenn es sich nicht um einen Eingang handelt, sind Nullen einzusetzen.

Das Problem ist die Redundanz der Eingaben, denn jedes Ereignis hat seinen eigenen Zeitraum, und es kann Tausende von Zeiträumen geben. Da für jede Periode Platz vorgesehen ist, können die Eingabedaten in Millionenhöhe liegen (wenn das Ereignis natürlich Tausende von Parametern hat).

Der Preis der aktuellen Kerze Zeitraum m0-H/L Ereignis % Ausführung
Daten auf dem ersten Balken 1.25600 1 0 0
1.25600 2 0 0
1.25600 3 0.02000 40
1.25600 ... 0 0
1.25600 1000 0.03000 20

Es ist auch möglich, eine bestimmte Anzahl von Eingängen in Bezug auf gültige Ereignisse zu verwenden, z. B. 5.

Preis der aktuellen Kerze Zeitraum m0-H/L % der Ereignisausführung
Daten auf dem ersten Balken 1.25600 10 0.00400 60
1.25600 60 0.00600 50
1.25600 300 0.02000 40
0 0 0 0
0 0 0 0


Dann besteht das Problem darin, dass die Gewichte auf ein bestimmtes Ereignis eingestellt werden, und wenn das Netz auf ein Ereignis mit der Periode 10 iteriert, dann wird die Zelle im nächsten Moment (beim nächsten Balken) ein Ereignis mit der Periode 60 enthalten. Und der Unterschied zwischen den Ereignissen liegt zumindest in der Häufigkeit. Wenn ich es richtig verstanden habe, sollte die Eingabe auf eine Periode eingestellt werden, wenn sie auf diese Periode eingestellt ist. Oder die Hauptsache ist, um die Daten-Typ, wenn der Zeitraum, es spielt keine Rolle, welche Periode wird gefüttert werden.

Eine alternative Lösung:

Wenn wir ein Netz mit Langzeitgedächtnis (LSTM) verwenden

Wenn Sie vier Eingänge zuweisen und die Anzahl der im Moment aktiven Ereignisse (aktueller Balken) in einer Schleife erfassen, können Sie die große Topologie ohne Kostenaufwand umgehen, nicht wahr?


Es gibt auch einen Begriff wie die Datennormalisierung. Ansonsten halte ich Sie für dumm. Seriös......!!!!!
 
Mihail Marchukajtes:
Es gibt einen solchen Begriff wie Daten-Normalisierung. Ich glaube, Sie haben es mit einem solchen Unsinn zu tun. Seriös......!!!!!

Normalisierung ist etwas, das ich kenne.

Vielleicht, aber bis ich ein Gefühl dafür bekomme, werde ich tun, was ich verstehe!

Warum glauben Sie das? Ist der Ansatz an sich nicht korrekt, oder verwirrt Sie die Tatsache, dass ich im Prinzip die erwarteten Umkehrpunkte erhalten möchte?
 

Ich habe einen Fehler mit den Vögeln gemacht und einige erstaunliche Diagramme erhalten, deren Bedeutung ich nicht interpretieren kann.

Sie sind Histogramme. Sie wurden wie folgt ermittelt.

Das CHFJPY-Inkrement wird genommen und in -1 und +1 umgewandelt. Sie ist um einen Balken nach links verschoben.

Dann nehmen wir einen Vektor des Preises eines bestimmten Währungspaares und teilen ihn in zwei Teile auf: ein Vektor bezieht sich auf +1 und der zweite auf -1

Dann zeichnen wir die Histogramme auf.

Ich war von der Aussicht beeindruckt. Früher schien es mir, dass es Variationen des normalen oder nahezu normalen Gesetzes geben sollte.

Siehe

Was gibt es da nicht zu sehen!

Hat jemand eine Interpretation dazu?

Oder eine praktische Schlussfolgerung:

  • Der TS für EURUSD und AUDUSD ist derselbe, ebenso wie der TS für GBPJPY und EURJPY, da die Histogramme ähnlich sind.
  • Wir sollten jedoch nicht versuchen, einen TS für AUDUSD und EURJPY zu bilden.

 
SanSanych Fomenko:

Hat jemand eine Interpretation dazu?

Da die Histogramme +1 und -1 zu 100 % übereinstimmen, ist dieser Vorgang nutzlos. Das Ergebnis ist dasselbe, als wenn Sie nur eine Preisverteilung zeichnen, ohne jegliche Preisziele.

Das Ergebnis ist ähnlich wie bei den Unterstützungs- und Widerstandscharts. Zum Beispiel war der Kurs des AUDUSD in diesem Zeitrahmen am stärksten um 0,76 und der des EURCAD um 1,46 verzerrt.


SanSanych Fomenko:

Die Aussicht hat mich beeindruckt. Ich war immer der Meinung, dass es Variationen des normalen oder nahezu normalen Rechts geben sollte.

Zieht man nicht die Preise, sondern deren Inkremente, so erhält man eine Verteilung, die einer Normalverteilung ähnelt.