0:00 Dies ist ein Reinforcement-Trading-Bot, der mit 20 Jahren an Gold-Daten trainiert wurde und 60%Rendite bei Out-of-Sample-Daten erzielte, die er zuvor noch nie gesehen hatte. Das ist entweder ein echter Vorteil oder einfach nur Glück. Bei diesem gesamten Projekt ging es mir darum, den Unterschied zu erkennen, und ich zeige dir genau wie. Die Kurzfassung für alle Neulinge: Dies ist ein Reinforcement-Learning-Agent. Ich gebe ihm keinerlei Regeln vor. Ich lasse ihn über Jahre hinweg mit historischen Gold-Daten handeln, und er lernt aus Erfahrung, genau wie man ein Spiel durch einfaches Spielen lernt. In einem früheren Video, Teil eins, haben wir das Fundament gelegt. Wir haben uns viele Abkürzungen genommen. Diesmal gehe ich einen Schritt weiter: Ich trainiere mit Gold und teste nur mit Daten, die während des Trainings nie gesehen oder berührt wurden. Wir nennen das auch Out-of-Sample-Daten
0:45 oder Testdaten. Dann unterziehe ich das Ergebnis einem Stresstest, bis ich überzeugt bin, dass es kein Zufall ist , denn das eigentliche Ziel ist, es für den Handel nutzbar zu machen. Falls dich der Programmierteil interessiert: Das gesamte Projekt ist in Python geschrieben und der Link befindet sich in der Videobeschreibung. Es ist kostenlos, du kannst es herunterladen und jedes Experiment selbst nachvollziehen. Bevor wir zum Code und den Ergebnissen kommen, müssen wir uns drei Dinge ansehen, die darüber entscheiden, ob dieser Bot Erfolg hat oder scheitert. Wenn eines davon nicht stimmt, werden die Ergebnisse völlig versagen. Zuerst müssen wir prüfen, was der Bot überhaupt tun kann. Seine Möglichkeiten sind für dieses Video bewusst einfach gehalten: Er kann kaufen, verkaufen oder halten. Wenn er einen Trade eröffnet, setzt er einen Stop-Loss basierend auf dem ATR zum jeweiligen Zeitpunkt. Das Risiko passt
1:32 sich also der aktuellen Gold-Volatilität an und er setzt ein Take-Profit als Vielfaches dieses Risikos. Also ein Gewinn-Risiko-Verhältnis. Das ist alles. Das sind die einzigen Hebel, die er betätigen kann. Aber das sind bereits viele Kombinationen aus Entscheidungen zwischen Markteinstieg oder Abwarten in zwei Richtungen sowie verschiedenen Stop-Loss-und Take-Profit-Abständen. Alles, was der Agent lernt, ist also, den Markt zu lesen und diese wenigen Aktionen so gut wie möglich zu nutzen, um das Konto wachsen zu lassen. Man könnte das deutlich komplexer gestalten, mit mehr Aktionen und Nuancen, aber für dieses Video halte ich das Entscheidungsset klein und übersichtlich, damit wir sehen können, was funktioniert. Zweitens–und hier stellt sich die Frage nach dem Glück wirklich–kommt es darauf an, wie wir die Daten aufteilen. Der klassische Weg ist ein Split in Training, Validierung und Test . Einfach. So habe ich angefangen.
2:21 Genau damit habe ich begonnen. Aber meine Golddaten reichen bis ins Jahr 2003 zurück. Und ein Modell, das hauptsächlich auf 2003 trainiert wurde , lernt nicht unbedingt etwas Nützliches über den heutigen Markt. Es gibt also eine große Lücke, eine zeitliche Lücke zwischen dem Trainingsdatum und der tatsächlichen Nutzung oder dem Test des Modells. Und erinnern Sie sich, dass jede Kurve, die ich erhielt, positiv ausfiel. Genau dann sollten Sie misstrauisch werden. Ein guter Durchlauf beweist gar nichts. Ich muss wissen, ob dies eine wiederholbare Beobachtung ist. Anstatt einer Aufteilung habe ich also ein verankertes Walk-Forward-Verfahren verwendet. Man trainiert auf einem Abschnitt, validiert und testet dann, was als Nächstes kommt. Dann erweitert man das Fenster, um diese neuen Daten einzubeziehen, und wiederholt das Ganze , indem man durch die Historie voranschreitet. Wenn die meisten dieser
3:07 Abschnitte positiv ausfallen, ist das der Fingerabdruck eines echten Vorteils und nicht nur ein glücklicher Zufall in einem Einzelfall. Aber es gibt immer noch einen Haken. In den späteren Abschnitten, den aktuellsten Abschnitten, schleppt das Modell immer noch alle alten 2003 er-Daten in das Training mit, die für den Markt völlig irrelevant sein könnten. Es wird jetzt daran getestet. Die Lösung ist ein gleitendes Fenster mit fester Größe. Training, Validierung und Test bewegen sich zusammen vorwärts, und die ältesten Daten fallen hinten heraus. So lernt das Modell immer aus einem aktuellen, relevanten Ausschnitt. Meiner Meinung nach ist dies das beste Setup für ein solches Handelsmodell, und ich verwende es für dieses Video. Drittens, und das Wichtigste überhaupt , die Belohnungsfunktion. Das ist das Herzstück des Reinforcement Learning.
3:53 Der Agent lernt nur, indem er einer Belohnung nachjagt. Was auch immer Sie in diese Funktion stecken, ist buchstäblich das, wozu sich der Bot entwickelt. Machen Sie es falsch, und er wird fröhlich die falsche Lektion lernen. Unsere ist für das Video etwas einfach, aber für den Handel völlig ausreichend. Vorerst nur drei Begriffe. Der erste Begriff beantwortet die Frage : Hat der Handel Geld eingebracht? Wann immer ein Take-Profit oder ein Stop-Loss erreicht wird, ändert sich Ihr Eigenkapital. Wir teilen diese Änderung durch den Betrag, den Sie riskiert haben. Also zum Beispiel 0,5% Ihres Eigenkapitals. Ein Take-Profit, der genau den Betrag einbringt, den Sie riskiert haben, erzielt also +1 als Punktzahl. Ein Stop-Loss ergibt minus eins. Und ein Balken, bei dem nichts geschlossen wird, ergibt null. Wenn es also einen Gewinn gibt, erhalten Sie eine Belohnung. Wenn es einen Verlust
4:39 gibt, erhalten Sie eine negative Belohnung. Wenn nichts passiert, erhält das Modell oder der Agent null. Zweiter Begriff: Gewinnen Sie gerade? Während ein Handel offen ist, passiert dies, während der Handel geöffnet ist . Er befindet sich also auf dem Markt und es ist noch nichts entschieden. Der Trade ist also nicht abgeschlossen. Wir fügen ein winziges Signal hinzu, das proportional zum nicht realisierten Gewinn oder Verlust ist. Es ist wie ein sanfter Anstoß pro Balken, der dem Agenten mitteilt, ob sich die offene Position zu seinen Gunsten entwickelt. Die Gewichtung ist bewusst winzig gewählt. Wie Sie hier sehen können, sind es 0,01. Sie kann also niemals die eigentliche Belohnung dominieren, das ist der erste Term, Term Nummer eins. Er bricht lediglich die Stille, während der Trade läuft, und bewegt den Agenten dazu, Trades zu eröffnen, die bereits im Gewinn sind, noch bevor
5:25 sie schließen. Er begünstigt also gewissermaßen Trades, die sehr profitabel sind oder eine hohe Chance haben, profitabel zu bleiben, sofern dies im echten Leben oder im echten Handel überhaupt möglich ist. Und der dritte Term sagt dem Agenten, dass er nicht ewig in Trades bleiben soll. Eine winzige Konstante. Es ist minus 0,00002 . Wie Sie sehen können. Dies ist also der rote U-Term in unserer Belohnungsformel, der bei jedem Balken angewendet wird, an dem der Agent eine Position hält. Für sich genommen ist das ein sehr geringer Betrag. Er wird also nicht viel verändern. Aber wenn der Agent Trades über Dutzende oder Hunderte von Balken hält, summiert sich das und macht sich in der Belohnung bemerkbar. Er drängt den
6:14 Agenten also dazu, Trades zu bevorzugen , die schnell abgeschlossen werden, statt Positionen, die zu nichts führen und lange zum Schließen brauchen. Wir wollen keine Trades für zwei oder drei Wochen eröffnen. Wir bevorzugen Trades , die sich innerhalb weniger Stunden auflösen können. Genau das teilen wir dem Agenten mit diesem Term hier mit. Und das ist das Wichtigste, was Sie mitnehmen sollten. Ändern Sie einen dieser Terme, ändern Sie damit, was das Modell lernt und wie die Ergebnisse aussehen werden. Das ist also der spaßige Teil. Wenn Sie den Code herunterladen, fangen Sie an, diese Funktion anzupassen. Das ist der einfachste Teil. Sie können anfangen, diese Funktion zu optimieren, die gesamte Pipeline laufen zu lassen und zu beobachten, wie sich das Verhalten verändert. Ein kleiner Hinweis vorab: Das Training solcher Modelle kann zeitaufwendig sein, besonders wenn Sie mehrere Folds verwenden. Der Ansatz mit dem gleitenden Fenster und mehreren Folds hat in meinem Fall etwa 36
7:00 Stunden Rechenzeit mit vier Threads in Anspruch genommen. Ich verwende diesmal nur einen i5. Es ist ein Intel i5. Aber ich meine, es ist absolut machbar. Dafür braucht man keinen großen Server. Wie wählen wir also unser Champion-Modell aus? Da wir mehrere Folds haben. Werden wir mehrere Modelle innerhalb jedes Folds haben. Wir müssen Overfitting vermeiden, aber gleichzeitig das am besten angepasste Modell auswählen. Innerhalb jedes Folds wird das Modell nicht nur am Ende gespeichert. Während des Trainings speichern wir viele Checkpoints. Jeder Checkpoint muss zwei kleine Bewertungen bestehen. Eine am Ende der Trainingsdaten und die andere anhand der Validierungsdaten. Diese Bewertungen werden durch die blaue Trainings-Belohnungskurve und die rote Validierungs-Belohnungskurve dargestellt, die wir hier auf dieser
7:47 Abbildung sehen können. Die Out-of-Sample-Testdaten haben wir weiterhin als einen Teil, den das Modell nicht gesehen hat. Davon sprechen wir hier also nicht. Dies sind lediglich die Trainings-und Validierungsabschnitte. Übrigens können wir hier sehen, wie das Overfitting nach einigen Schritten oder nach 2 Millionen Trainingsschritten einsetzt. Zunächst haben wir die Trainingsbelohnung, die steigt, wie Sie sehen können, stieg sie weiter an. Das ist die blaue Kurve, während die rote Kurve die Validierung darstellt, die ebenfalls weiter anstieg. Hier lernt das Modell also das Handeln, aber dann begann es zu sinken. Wir haben diese Divergenz zwischen Training und Validierung, und das geschieht in
8:32 diesem Bereich zwischen 1 Million und 2 Millionen Schritten. Wir können also sicher bis zu 2 Millionen Schritte gehen. Die Modelle vor dieser Anzahl an Zeitschritten lernen noch. Aber nach diesem Schritt merkt sich das Modell nur noch die Daten. Das ist nicht das, was wir wollen. Für jeden Test berechnen wir also einen Score. Wie viel kumulative Belohnung das Modell erzielt hat, abzüglich einer Strafe bei einem großen Drawdown. Wir können die Drawdown-Kurven auch als gestrichelte Linien in den Trainings- und Validierungsabschnitten sehen. Es reicht also nicht, nur Geld zu verdienen. Das Modell wird auch bestraft, wenn es dieses Geld auf gefährliche und instabile Weise verdient. Um das Modell auszuwählen, berücksichtigen wir also die Trainingsbelohnung, die Validierungsbelohnung und die Drawdowns in beiden Fällen. Nun kommt der wichtige Trick. Wir behalten nicht den
9:17 Checkpoint mit der besten Durchschnittsbewertung. Wir behalten den Checkpoint oder das Modell, dessen schwächerer Score am stärksten ist. Mit anderen Worten: Wir suchen ein Modell, das sowohl beim Training als auch bei der Validierung gut abschneidet. Und wir lassen die Modelle nur anhand der niedrigsten oder minimalen Belohnung zwischen Training und Validierung gegeneinander antreten. Wir verwenden also die schlechteste Belohnung zwischen diesen beiden Kategorien. Stellen Sie es sich wie einen Studenten vor, der zwei Prüfungen ablegt. Wenn er in einer Prüfung 95 Punkte bekommt, in der anderen aber 20, sagen wir nicht, dass er exzellent ist. Der niedrige Score sagt uns, dass etwas nicht stimmt. Vielleicht hatte er Glück oder hat nur einen Teil verstanden. Dasselbe gilt hier auch. Wenn ein Modell bei der Validierung großartig aussieht, aber am Ende des Trainings schwächelt, traue ich ihm nicht. Und wenn es beim Training gut aussieht, aber bei der Validierung versagt, traue ich ihm
10:03 ebenfalls nicht. Erst nachdem wir diesen besten Checkpoint ausgewählt haben, testen wir ihn ein einziges Mal mit den zurückgehaltenen Testdaten. Daten, die es noch nie gesehen hat und die nicht zur Auswahl des Modells verwendet wurden. Aber wir setzen es trotzdem noch nicht ein. Wir haben immer noch keinen, ähm, Champion. Nachdem alle Folds abgeschlossen sind, wenden wir einen letzten Filter an: das Konsistenz-Gate. Dieses Gate stellt eine einfache Frage. Haben genügend Folds unabhängig voneinander Gewinn erzielt? Denn ein profitabler Fold könnte Glück sein. Zwei profitable Folds könnten immer noch Glück sein. Aber wenn genügend separate Folds über verschiedene Marktperioden hinweg profitabel sind, dann wirkt der Vorteil glaubwürdiger. Wenn das Konsistenz-Gate passiert, befördern wir das Modell aus dem letzten Fold zu unserem Champion. Warum der letzte Fold
10:48 ? Weil er mit den aktuellsten Daten trainiert wurde und diesen Vorteil genießt. Und wenn dieser Filter fehlschlägt, dann haben wir kein Modell, das ausgewählt wurde. Wir müssen zum Feature-Engineering zurückkehren und die Belohnungsfunktion sowie die Hyperparameter des Lernmodells ändern. Was uns zu der einen Frage führt, mit der wir begonnen haben. Funktioniert es wirklich? Werfen wir einen Blick auf die Ergebnisse und finden es heraus. Um dieses Video so kurz und einfach wie möglich zu halten, werde ich jetzt nicht alle Codes, Dateien oder Python-Skripte durchgehen. Ich zeige Ihnen diese Jupyter-Notebook-Datei, in der ich das, ähm, beste Modell teste. Dieses Modell wurde bereits unter Verwendung des Gates und der Auswahlmethode ausgewählt, die wir zuvor erwähnt haben. Aber dieses Notebook dient dem Test auf dem Datensatz-Ausschnitt, der noch nicht gesehen wurde. Er war also komplett
11:35 gesperrt und wird uns die Leistung des Modells zeigen, das darauf ausgewählt wurde. Wir führen also die Analyse durch, haben Training, Validierung usw. Wir haben also unsere Daten für das Modell und laden es dann, um es auf allen drei Splits auszuwerten, um zu sehen, wie es trainiert und validiert wurde, aber auch, wie es mit unbekannten Daten getestet wurde. Nun zum endgültigen Modell: Ich habe hier zwei Modelle, wie Sie sehen können. Ich werde die Größe erhöhen. Vielleicht kann ich es Ihnen so besser zeigen und wir schließen dieses hier. Das endgültige Modell ist nicht das beste Modell. Es ist das Overfitting-Modell, und das können Sie sehen. Wir haben ein Plus von 86%beim Training. Dann fällt die Validierung auf plus 12%und beim Testen haben wir
12:21 nur noch plus 6,9%. Und manchmal erhält man hier etwas Negatives, was nicht überraschend ist, da es sich im Grunde um Overfitting handelt. Der letzte Checkpoint lief die ganze Zeit durch. In den Millionen von Zeitschritten. Ich glaube, ich habe 5 Millionen als Maximum festgelegt, und das ist nicht das, was wir wollen. Wir wollen das letzte Lernmodell, bevor das Overfitting einsetzt. Also haben wir dieses hier, das durch unsere Kriterien ausgewählt wurde. Wieder haben wir plus 87%im Training, in der Validierung ebenso, und beim Testen bekamen wir tatsächlich genau dasselbe wie bei der Validierung. Seien Sie jetzt nicht überrascht, wenn Sie 87%beim Training erhalten. Das ist völlig normal, weil das Trainingsintervall zeitlich breiter ist. Sie haben also mehr Zeit. Das Modell hat ebenfalls mehr Zeit, um mehr
13:07 Rendite zu erzielen. Es handelt sich also nicht um die jährliche Rendite. Wir müssen die jährliche Rendite berechnen, um die Prozentsätze miteinander vergleichen zu können. Aber wir können die Anzahl der Trades vergleichen und vermuten, dass diese Trainingsphase den Großteil der Daten ausmachte und nur ein kleiner Teil für Validierung und Test blieb. Das Gute ist, dass wir bei der Validierung 307 Trades haben, die zu 15%Rendite führen . Übrigens habe ich Provisionen und Handelsgebühren berücksichtigt, alles ist enthalten. Was wir tun, ist, dass wir Daten auf 1-Minuten-Basis haben und diese dann auf H1, also den 1- Stunden-Zeitrahmen, neu berechnen. Der Handel findet also im 1- Stunden-Zeitrahmen statt, aber wir backtesten auf der 1-Minuten-Basis, um diese spezifischen Fälle zu lösen, in
13:54 denen man Take-Profit und Stop-Loss innerhalb derselben H1-Kerze erreicht und nicht weiß, was zuerst ausgelöst wurde. Das Heruntergehen auf 1 Minute löst dies, nur um beim Backtesting präzise zu sein. Ich habe auch ein sehr einfaches Modell mit EMAs zum Vergleich gebaut. Und das nennen wir die Baseline-Bewertung bei der Leistungszusammenfassung des Testens. Wir können also die Baseline, das Testen, die Validierung und das Training, das endgültige Modell sowie das beste Modell sehen, und da wir auch den maximalen Drawdown basierend auf Validierung und Test einbeziehen, sehen wir, dass das Modell 15%auf unbekannten Daten erzielte, bei nur minus 6% maximalem Drawdown. Das ist nicht einmal der durchschnittliche Drawdown.
14:40 Das ist der maximale Drawdown. Und die Rendite pro Jahr liegt bei 38 oder 39%, während sie bei der Validierung 35% beträgt. Ich werde Ihnen die Kurven zeigen. Ich glaube, ich habe hier einige Kurven. Das sind fast 5 Jahre Training. Dann haben wir die Validierung. Das ist wieder das beste Modell. Das beste Modell sieht also das Training und die Validierung irgendwann , weil wir es auf die besten Validierungsergebnisse optimieren. Aber die Testdaten bleiben unberührt, und wir lassen das Modell nur einmal über die Testdaten laufen, und wie Sie sehen , ist es positiv. Wenn wir ein gutes Modell haben, sollte es auf den meisten Folds laufen und dort auch positive Ergebnisse erzielen. Im selben Jupyter-Notebook sehen wir auch die monatlichen Renditen. Ich kann also
15:28 Dezember 2025, Januar 2026 und so weiter sehen. Wir haben also einige Gewinnmonate und einige Verlustmonate. Insgesamt sieht es also in Ordnung aus, und man könnte meinen, dass Gold hauptsächlich gestiegen ist. Es ist also meistens ein Long-Signal. Das Modell könnte also lernen, die meiste Zeit auf den Markt zu setzen. Aber das ist tatsächlich nicht der Fall. Wie Sie sehen, haben wir viele Long-Trades, Long-Einstiegspositionen, aber wir haben auch viele Short-Positionen. Und so ist der Grund für den Ausstieg bei Long-und Short-Positionen aufgeschlüsselt. Wir haben Stop-Loss in Rot, Take-Profit in Grün und die Umkehrschließung, wenn wir ein entgegengesetztes Signal haben. Das Modell erkennt ein entgegengesetztes Signal, und es gibt auch einen manuellen Abschluss, wahrscheinlich
16:13 wenn der Trade zu lange dauert. Es wird also manuell geschlossen, da wir dies auch in die Belohnungsfunktion aufgenommen haben. Wir können auch das Verhalten des Agenten überprüfen. Wie oft hat er zum Beispiel die Anzahl der Trades mit einem Take-Profit in doppelter Stop-Loss-Distanz gehandelt? Wie oft war der Stop-Loss das 1,5-fache , das 2-fache oder das 1-fache des ATR und so weiter? Meistens war es dieser eine Teil. Wir haben also 811 Trades, bei denen der Stop-Loss dem 1,5-fachen des ATR entspricht und der Take-Profit der doppelten Stop-Loss-Distanz. Also ein 2: 1 Chance-Risiko-Verhältnis, und wir können auch überprüfen, wann die Einstiegszeitpunkte und die Ausstiege
16:59 tatsächlich stattfanden. Ob es montags , dienstags oder an anderen Tagen war. Und man kann auch die Uhrzeit des Tages sehen. Meistens war es in diesem Bereich. Wir können sehen, dass wir hier eine hohe Konzentration haben. Es könnte zum Beispiel eine Überschneidung zwischen der Londoner und der New Yorker Sitzung sein. Ich habe auch die gleitende Sharpe-Ratio geplottet, nur um zu prüfen, wie sich das Eigenkapital verhält, aber meistens plotte ich auch gerne das Diagramm mit den Trades. Lassen Sie mich das hier neu plotten. Wie Sie sehen können, können wir das Diagramm mit den Trades und den Einstiegspositionen visualisieren. Das sind die Dreiecke. Rote Dreiecke sind Short-Signale. Grüne Dreiecke sind Long-Signale. Und dann haben Sie für jedes Signal diese gestrichelten Linien , wobei die rote Linie das
17:45 Stop-Loss-Niveau ist. Die grüne Linie ist das Take-Profit-Niveau, und dann haben wir diese gestrichelten Linien, die den Ein-und Ausstieg zeigen. Dies ist also ein Trade, der hier beendet wurde, indem er den Take-Profit erreicht hat. Wenn Sie einen grauen Punkt haben, ist das ein manueller Ausstieg, was bedeutet, dass der Agent nicht gewartet hat, bis Take-Profit oder Stop-Loss erreicht wurden. Es dauerte zu lange, bis der Trade geschlossen wurde. Wahrscheinlich wurde er also irgendwann manuell geschlossen. Dies ist also der graue manuelle Ausstieg genau hier. Und ja, man kann also jeden beliebigen Zeitabschnitt visualisieren. Sehen Sie, wie der Agent handelt. Ich werde nicht viel Zeit mit den Notebooks verbringen. Sie können sie sich selbst ansehen. Aber wenn Sie nach der Belohnungsfunktion suchen und
18:31 die Pipeline neu ausführen möchten, finden Sie sie in der Environment-Datei . Python-Zeilen 297 bis 300, das ist unsere Belohnungsfunktion. Hier würde ich anfangen zu experimentieren und Spaß zu haben. Eine sehr wichtige Sache, die ich eigentlich zu Beginn des Videos hätte erwähnen sollen. Das sind die Merkmale. Was nimmt das Modell als Eingabemerkmale auf? Nichts ist ein absoluter Wert. Ich gebe nicht die Eröffnungs-, Schluss-, Höchst-und Tiefstkurse ein. Das ist bedeutungslos für Reinforcement Learning, eigentlich für jedes maschinelle Lernen und neuronale Netze. Sie müssen etwas eingeben, das relativ ist. Also einen relativen Wert. Der ATR kann also bereitgestellt werden. Der RSI ebenfalls, da er zwischen, sagen wir, minus 50 oder plus 50 oder zwischen 0
19:17 und 100 schwankt. Es ist also kein absoluter Wert. Es ist ein Prozentsatz. Es ist ein relativer Wert. Dann haben wir die Zeit, den Sinus und den Kosinus der Zeit. Die exponentiellen gleitenden Durchschnitte füge ich nicht so hinzu, wie sie sind. Wir berechnen sie zwar hier, aber sie werden nicht in das Modell eingespeist. Wir prüfen zum Beispiel den Schlusskurs minus den EMA 20, geteilt durch den ATR. Es ist also nicht wirklich der ATR für sich genommen. Es ist nicht der EMA, absolut nicht der EMA für sich genommen. Es ist die Differenz zwischen dem gleitenden Durchschnitt des Schlusskurses, geteilt oder normalisiert durch die ATR, oder auch Kerzenformen. Zum Beispiel die Spanne der Kerze geteilt durch die ATR. Also das Hoch minus das Tief, geteilt durch die ATR und so weiter. Am wichtigsten
20:04 ist, verwenden Sie keine einfachen oder absoluten Werte, absolute Schluss-, Hoch-oder Tiefstkurse, das ist bedeutungslos. Wenn ich Ihnen sage, Gold steht jetzt bei, keine Ahnung, 4.100 $, bedeutet das gar nichts. Aber wenn ich Ihnen sage, die Spanne beträgt, ich würde sagen, keine Ahnung, 10 $ pro Stunde, würde das zum Beispiel etwas über die Volatilität aussagen. Und ja, danke für Ihre Geduld und dass Sie so lange dabei geblieben sind. Das war es für dieses Mal. Ich denke an ein drittes Video, in dem wir tiefer in die Details eintauchen und versuchen, das Ganze noch weiter zu verbessern. Ich denke, wir kommen an einen Punkt, an dem es so aussieht, als würde es funktionieren. Ich hoffe, wir machen nirgendwo einen Fehler. Ich habe nach jeglicher Art von Datenleck oder Informationsleck gesucht . Ich konnte keines finden. Alles wurde korrigiert. Wenn Sie mir also bei der
20:50 Validierung dieses Codes helfen könnten, wäre das wirklich großartig . Hinterlassen Sie jederzeit einen Kommentar im Kommentarbereich, wenn Sie eine Idee haben. Wir können das meiner Meinung nach sogar noch weiter vorantreiben, vielleicht mit LSTM, dem Long Short-Term Memory, mit Reinforcement-Learning-Modellen. Vielleicht sollten wir einen zeitlichen Schnappschuss der Daten in Betracht ziehen, anstatt eines Einzelpunktindikators, wie wir es hier im Video tun. Aber zuerst warte ich auf Ihre Bewertungen und Kommentare. Vielleicht bekomme ich noch bessere Ideen von Ihnen, die wir in das Video aufnehmen können. Bis zum nächsten Mal, traden Sie sicher und bis bald.