Friday 13 October 2017

Forex Prognose Genetischer Algorithmus


Ein Forex Trading System basiert auf einem genetischen Algorithmus Zitieren Sie diesen Artikel als: Mendes, L. Godinho, P. Dias, J. J Heuristics (2012) 18: 627. doi: 10.1007s10732-012-9201-y In diesem Papier, a Genetischer Algorithmus wird beschrieben, der darauf abzielt, einen Satz von Regeln zu optimieren, die ein Handelssystem für den Forex-Markt darstellen. Jeder einzelne in der Bevölkerung repräsentiert eine Reihe von zehn technischen Handelsregeln (fünf, um eine Position und fünf andere zu verlassen). Diese Regeln haben insgesamt 31 Parameter, die den Individuen entsprechen. Die Bevölkerung wird sich in einer gegebenen Umgebung entwickeln, die durch eine Zeitreihe eines bestimmten Währungspaares definiert ist. Die Eignung eines gegebenen Individuums stellt dar, wie gut es sich an die Umgebung anpassen konnte, und es wird berechnet, indem man die entsprechenden Regeln auf die Zeitreihen anwendet und dann das Verhältnis zwischen dem Gewinn und dem maximalen Abzug (das Stirling-Verhältnis) . Es wurden zwei Währungspaare verwendet: EURUSD und GBPUSD. Verschiedene Daten wurden für die Evolution der Bevölkerung und für die Prüfung der besten Individuen verwendet. Die durch das System erzielten Ergebnisse werden diskutiert. Die besten Einzelpersonen sind in der Lage, sehr gute Ergebnisse in der Trainingsreihe zu erzielen. In der Testreihe zeigen die entwickelten Strategien Schwierigkeiten bei der Erzielung positiver Ergebnisse, wenn man Transaktionskosten berücksichtigt. Wenn Sie die Transaktionskosten ignorieren, sind die Ergebnisse meist positiv, was zeigt, dass die besten Personen einige Prognosefähigkeit haben. Genetische Algorithmen Finanzen Technische Handelsregeln Devisenkurse Referenzen Alvarez-Diaz, M. Alvarez, A. Vorhersage von Wechselkursen mit genetischen Algorithmen. Appl. Econ. Lette. 10 (6), 319322 (2003) CrossRef Google Scholar Brabazon, A. ONeill, M. Entwickeln von technischen Handelsregeln für Spot-Devisenmärkte mit grammatikalischer Evolution. Comput. Manag Sci 1 (3), 311327 (2004) MATH CrossRef Google Scholar Davis, L. Handbuch der genetischen Algorithmen. Van Nostrand-Reinhold, New York (1991) Google Scholar Dempster, M. A.H. Jones, C. M. Ein Echtzeit-adaptives Handelssystem mit genetischer Programmierung. Quant. Finanzen 1 (4), 397413 (2001) CrossRef Google Scholar Dunis, C. Harris, A. et al. Optimierung von Trading-Modellen mit genetischen Algorithmen. Neural Netw. Welt 9 (3), 193223 (1999) Google Scholar Eling, M. Schuhmacher, F. Hat die Wahl der Leistungsmaßnahme die Bewertung der Hedgefonds J. Bank. Finanzen 31 (9), 26322647 (2007) CrossRef Google Scholar Fama, E. F. Effiziente Kapitalmärkte: eine Überprüfung der Theorie und der empirischen Arbeit. J. Finance 25 (2), 383417 (1970) CrossRef Google Scholar Goldberg, D. Genetische Algorithmen in der Suche, Optimierung und Maschinelles Lernen. Addison-Wesley, Reading (1989) MATH Google Scholar Grefenstette, J. J. Genetische Algorithmen für wechselnde Umgebungen. In: Parallel Problem Lösung aus der Natur 2, Brüssel (1992) Google Scholar Harding, D. Nakou, G. et al. Die Vor - und Nachteile des Drawdowns als statistisches Maß für das Risiko für Investitionen. AIMA Journal, April 1617 (2003) Google Scholar Hirabayashi, A. Aranha, C. et al. Optimierung der Handelsregel in Devisen mit genetischem Algorithmus. In: Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation GECCO09 (2009) Google Scholar Hryshko, A. Downs, T. System für Devisenhandel mit genetischen Algorithmen und Verstärkung Lernen. Int. J. Syst. Sci 35 (13), 763774 (2004) MATH CrossRef Google Scholar Kaboudan, M. A. Genetische Programmierung Vorhersage der Aktienkurse. Comput. Econ. 16 (3), 207236 (2000) MATH CrossRef Google Scholar LeBaron, B. Technische Handelsregel Rentabilität und Devisen-Intervention. J. Int. Econ. 49 (1), 125143 (1999) CrossRef Google Scholar LeBaron, B. Technische Handelsfähigkeit in Devisenmärkten in den 1990er Jahren (2002) Levich, R. M. Thomas, L. R. Die Bedeutung der technischen Handelsregel profitiert am Devisenmarkt: ein Bootstrap-Ansatz. J. Int. Geldfinanzierung 12 (5), 451474 (1993) CrossRef Google Scholar Menkhoff, L. Taylor, M. P. Die hartnäckige Leidenschaft der Devisenfachleute: Technische Analyse. J. Econ. Lit. 45 (4), 936972 (2007) CrossRef Google Scholar Meyers, T. A. Der Kurs der technischen Analyse. McGraw-Hill, New York (1989) Google Scholar Mitchell, M. Eine Einführung in genetische Algorithmen. MIT Press, Cambridge (1996) Google Scholar Neely, C. Weller, P. Intraday technischer Handel auf dem Devisenmarkt. J. Int. Geldfinanzierung 22 (2), 223237 (2003) CrossRef Google Scholar Neely, C. Weller, P. et al. Ist die technische Analyse im Devisenmarkt profitabel Eine genetische Programmierung Ansatz. J. Financ Quant. Anal. 32 (4), 405426 (1997) CrossRef Google Scholar Neely, C. J. Weller, P. A. Et al. Die Anpassungsmärkte Hypothese: Nachweis aus dem Devisenmarkt. J. Financ Quant. Anal. 44 (02), 467488 (2009) CrossRef Google Scholar Olson, D. Haben Handelsregel Gewinne in den Devisenmärkten sank im Laufe der Zeit J. Bank. Finanzen 28 (1), 85105 (2004) CrossRef Google Scholar Osman, I. H. Kelly, J. P. Meta-Heuristik: Theorieverstärker Anwendungen. Kluwer Academic, Dordrecht (1996) MATH Google Scholar Park, C.-H. Irwin, S. H. Was wissen wir über die Rentabilität der technischen Analyse J. Econ. Surv. 21 (4), 786826 (2007) CrossRef Google Scholar Pictet, O. V. Dacorogna, M. M. Et al. Einsatz von genetischen Algorithmen zur robusten Optimierung in Finanzanwendungen. Neural Netw. Welt 5 (4), 573587 (1995) Google Scholar Reeves, C. R. Mit genetischen Algorithmen mit kleinen Populationen. In: Proceedings der Fünften Internationalen Konferenz über genetische Algorithmen. Morgan Kaufmann, San Mateo (1993) Google Scholar Rothlauf, F. Goldberg, D. Redundante Darstellungen in der evolutionären Berechnung. Illinois Genetic Algorithms Laboratory (IlliGAL) Bericht (2002) Schulmeister, S. Komponenten der Profitabilität des technischen Devisenhandels. Appl. Financ Econ. 18 (11), 917930 (2008) CrossRef Google Scholar Sweeney, R. J. Den Devisenmarkt zu schlagen. J. Finance 41 (1), 163182 (1986) Google Scholar Wilson, G. Banzhaf, W. Interday Devisenhandel mit linear genetischer Programmierung. In: Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation GECCO10 (2010) Google Scholar Copyright Informationen Springer ScienceBusiness Media, LLC 2012 Autoren und Zugehörigkeiten Lus Mendes 1 Pedro Godinho 2 Joana Dias 3 E-Mail Autor 1. Faculdade de Economia Universidade de Coimbra Coimbra Portugal 2. Faculdade de Economia und GEMF Universidade de Coimbra Coimbra Portugal 3. Faculdade de Economia und Inesc-Coimbra Universidade de Coimbra Coimbra Portugal Über diesen Artikel Mit Genetischen Algorithmen Zu Prognose Finanzmärkte Burton schlug in seinem Buch, eine zufällige Walk Down Wall Street, ( 1973), dass ein Augenbinde Affe Wurf Darts auf einer Zeitung finanziellen Seiten könnte ein Portfolio, das genauso gut wie eine sorgfältig von Experten ausgewählt werden würde. Während die Evolution den Menschen nicht mehr intelligent bei der Kommissionierung von Aktien gemacht haben könnte, hat Charles Darwins Theorie sehr effektiv, wenn direkt angewendet. (GAs) sind Problemlösungsmethoden (oder Heuristiken), die den Prozess der natürlichen Evolution nachahmen. Was sind genetische Algorithmen (GAs) sind Problemlösungsmethoden (oder Heuristiken), die den Prozess der natürlichen Evolution nachahmen. Im Gegensatz zu künstlichen neuronalen Netzwerken (ANNs), die so entworfen sind, um wie Neuronen im Gehirn zu funktionieren, nutzen diese Algorithmen die Konzepte der natürlichen Selektion, um die beste Lösung für ein Problem zu bestimmen. Als Ergebnis werden GAs üblicherweise als Optimierer verwendet, die Parameter anpassen, um eine Rückkopplungsmaßnahme zu minimieren oder zu maximieren, die dann unabhängig oder in der Konstruktion eines ANN verwendet werden kann. In den Finanzmärkten. Genetische Algorithmen werden am häufigsten verwendet, um die besten Kombinationswerte von Parametern in einer Handelsregel zu finden, und sie können in ANN-Modelle eingebaut werden, die entworfen sind, um Aktien zu wählen und Trades zu identifizieren. Mehrere Studien haben gezeigt, dass diese Methoden wirksam sein können, einschließlich der genetischen Algorithmen: Genesis of Stock Evaluation (2004) von Rama und The Applications of Genetic Algorithmen in Stock Market Data Mining Optimization (2004) von Lin, Cao, Wang, Zhang. (Um mehr über ANN zu erfahren, siehe Neuronale Netze: Prognosegewinne.) Wie genetische Algorithmen arbeiten Genetische Algorithmen werden mathematisch mit Vektoren erstellt, die Mengen sind, die Richtung und Größe haben. Parameter für jede Handelsregel werden mit einem eindimensionalen Vektor dargestellt, der als Chromosom genetisch betrachtet werden kann. Mittlerweile können die in jedem Parameter verwendeten Werte als Gene betrachtet werden, die dann mit der natürlichen Selektion modifiziert werden. Zum Beispiel kann eine Handelsregel die Verwendung von Parametern wie Moving Average Convergence-Divergence (MACD) beinhalten. Exponential Moving Average (EMA) und Stochastik. Ein genetischer Algorithmus würde dann Werte in diese Parameter mit dem Ziel der Maximierung des Nettogewinns eingeben. Im Laufe der Zeit werden kleine Änderungen eingeführt und diejenigen, die einen wünschenswerten Einfluss haben, werden für die nächste Generation beibehalten. Es gibt drei Arten von genetischen Operationen, die dann durchgeführt werden können: Crossovers repräsentieren die Reproduktion und den biologischen Crossover in der Biologie, wobei ein Kind bestimmte Merkmale seiner Eltern übernimmt. Mutationen repräsentieren biologische Mutationen und werden verwendet, um die genetische Vielfalt von einer Generation einer Population zur nächsten zu halten, indem sie zufällige kleine Veränderungen einführen. Selektionen sind die Bühne, bei der einzelne Genome aus einer Population zur späteren Zucht (Rekombination oder Crossover) ausgewählt werden. Diese drei Operatoren werden dann in einem fünfstufigen Prozess verwendet: Initialisieren Sie eine zufällige Population, wobei jedes Chromosom n-Längen ist, wobei n die Anzahl der Parameter ist. Das heißt, eine zufällige Anzahl von Parametern wird mit jeweils n Elementen hergestellt. Wählen Sie die Chromosomen oder Parameter, die wünschenswerte Ergebnisse erhöhen (vermutlich Nettogewinn). Wenden Sie Mutation oder Crossover-Betreiber auf die ausgewählten Eltern und erzeugen Sie einen Nachkommen. Rekombinante die Nachkommen und die aktuelle Bevölkerung, um eine neue Population mit dem Selektionsoperator zu bilden. Wiederholen Sie die Schritte zwei bis vier. Im Laufe der Zeit wird dieser Prozess zu immer günstigeren Chromosomen (oder, Parametern) zur Verwendung in einer Handelsregel führen. Der Prozess wird dann beendet, wenn ein Stoppkriterium erfüllt ist, der Laufzeit, Fitness, Anzahl Generationen oder andere Kriterien beinhalten kann. (Für mehr auf MACD, lesen Trading The MACD Divergence.) Verwenden von genetischen Algorithmen im Handel Während genetische Algorithmen werden in erster Linie von institutionellen quantitativen Händlern verwendet. Einzelhändler können die Macht der genetischen Algorithmen nutzen - ohne einen Abschluss in fortgeschrittener Mathematik - mit mehreren Softwarepaketen auf dem Markt. Diese Lösungen reichen von eigenständigen Softwarepaketen, die auf die Finanzmärkte ausgerichtet sind, auf Microsoft Excel-Add-ons, die mehr Hands-on-Analyse erleichtern können. Bei der Verwendung dieser Anwendungen können Händler einen Satz von Parametern definieren, die dann mit einem genetischen Algorithmus und einem Satz historischer Daten optimiert werden. Einige Anwendungen können optimieren, welche Parameter verwendet werden und welche Werte für sie sind, während andere in erster Linie darauf ausgerichtet sind, die Werte für einen gegebenen Satz von Parametern einfach zu optimieren. (Um mehr über diese Programm abgeleiteten Strategien zu erfahren, siehe The Power Of Program Trades.) Wichtige Optimierung Tipps und Tricks Curve Anpassung (über Anpassung), die Gestaltung eines Handelssystems um historische Daten anstatt identifizierbare wiederholbare Verhalten, stellt ein mögliches Risiko für Händler mit genetische Algorythmen. Jedes Handelssystem, das GAs verwendet, sollte vor dem Live-Einsatz auf Papier vorwärts getestet werden. Die Auswahl von Parametern ist ein wichtiger Teil des Prozesses, und Händler sollten Parameter suchen, die mit Änderungen des Preises einer bestimmten Sicherheit korrelieren. Zum Beispiel, probieren Sie verschiedene Indikatoren aus und sehen, ob irgendwelche mit großen Marktwindungen zu korrelieren scheinen. Genetische Algorithmen sind einzigartige Wege, um komplexe Probleme zu lösen, indem sie die Kraft der Natur nutzen. Durch die Anwendung dieser Methoden zur Vorhersage der Wertpapierpreise können Händler die Handelsregeln optimieren, indem sie die besten Werte für jeden Parameter für eine bestimmte Sicherheit identifizieren. Allerdings sind diese Algorithmen nicht der Heilige Gral, und Händler sollten vorsichtig sein, um die richtigen Parameter und nicht Kurve passen (über fit) zu wählen. (Um mehr über den Markt zu lesen, schau mal auf den Markt, nicht seine Pundite.) Eine Art von Vergütungsstruktur, die Hedge Fondsmanager in der Regel beschäftigen, in welchem ​​Teil der Entschädigung Leistung basiert ist. Ein Schutz gegen den Einkommensverlust, der sich ergeben würde, wenn der Versicherte verstorben wäre. Der benannte Begünstigte erhält den. Ein Maß für die Beziehung zwischen einer Veränderung der Menge, die von einem bestimmten Gut gefordert wird, und eine Änderung ihres Preises. Preis. Der Gesamtdollarmarktwert aller ausstehenden Aktien der Gesellschaft039s. Die Marktkapitalisierung erfolgt durch Multiplikation. Frexit kurz für quotFrench exitquot ist ein französischer Spinoff des Begriffs Brexit, der entstand, als das Vereinigte Königreich stimmte. Ein Auftrag mit einem Makler, der die Merkmale der Stop-Order mit denen einer Limit-Order kombiniert. Eine Stop-Limit-Reihenfolge wird. SnowCron Genetischer Algorithmus in FOREX Trading Systems mit genetischen Algorithmus, um profitable Forex Trading-Strategie zu schaffen. Genetischer Algorithmus in Cortex Neuronale Netzwerke Software Feedforward Backpropagation Neuronales Netzwerk Anwendung für genetische Berechnungen basierte Forex Trading. Dieses Beispiel verwendet Konzepte und Ideen des vorherigen Artikels, also lesen Sie bitte Neural Network Genetic Algorithm in FOREX Trading Systems zuerst, obwohl es nicht obligatorisch ist. Über diesen Text Bitte lesen Sie zuerst den Haftungsausschluss. Dies ist ein Beispiel für die Verwendung von Cortex Neural Networks Software genetische Algorithmus-Funktionalität, kein Beispiel für die Gewinnung von rentablen Handel. Ich bin nicht dein Guru, auch ich sollte nicht für deine Verluste verantwortlich sein. Cortex Neural Networks Software hat neuronale Netze in ihr, und FFBP, die wir vorher diskutiert haben, ist nur eine Möglichkeit, eine Forex Trading Strategien zu wählen. Es ist eine gute Technik, mächtig und wenn richtig angewendet, sehr versprochen. Allerdings hat es ein Problem - das neuronale Netzwerk zu unterrichten. Wir müssen die gewünschte Ausgabe kennen. Es ist ziemlich einfach zu tun, wenn wir die Näherung funktionieren, wir nehmen einfach den wahren Wert einer Funktion, weil wir wissen, was es sein sollte. Wenn wir neuronale Netzwerkprognosen machen. Wir verwenden die Technik (beschrieben in früheren Artikeln) der Lehre des Neuronalen Netzes auf die Geschichte, wieder, wenn wir voraussagen, sagen wir, einen Wechselkurs, wissen wir (während des Trainings) was die richtige Vorhersage ist. Allerdings, wenn wir ein Handelssystem bauen, haben wir keine Ahnung, was die richtige Handelsentscheidung ist, auch wenn wir den Wechselkurs kennen. In der Tat haben wir viele Devisenhandelsstrategien, die wir zu jedem Zeitpunkt nutzen können Wir müssen ein gutes finden - wie was sollten wir als die gewünschte Ausgabe unseres Neuronalen Netzes füllen Wenn Sie unserem vorherigen Artikel folgten, wissen Sie, dass wir betrogen haben, mit diesem Problem umzugehen. Wir lehrten das Neuronale Netzwerk, um Wechselkurs (oder Wechselkurs basierte Indikator) Vorhersage zu tun, und dann verwendet diese Vorhersage, um den Handel zu tun. Dann, außerhalb des Neuronalen Netzwerks Teil des Programms, haben wir eine Entscheidung getroffen, welche Neuronale Netzwerk ist die beste. Genetische Algorithmen können mit diesem Problem direkt umgehen, sie können das Problem lösen, um die besten Handelssignale zu finden. In diesem Artikel werden wir Cortex Neural Networks Software verwenden, um ein solches Programm zu erstellen. Mit genetischen Algorithmen Genetische Algorithmen sind sehr gut entwickelt und sehr vielfältig. Wenn du alles über sie lernen willst, schlage ich vor, dass du Wikipedia benutzt, da es sich bei diesem Artikel nur darum geht, was Cortex Neural Networks Software machen kann. Mit Cortex Neural Networks Software. Wir können ein Neuronales Netzwerk erstellen, das einige Inputs, sagen wir, Werte eines Indikators, und produziert einige Ausgaben, sagen wir, Handelssignale (kaufen, verkaufen, halten.) Und stoppen Verlust nehmen Gewinnniveaus für Positionen, die geöffnet werden sollen. Natürlich, wenn wir diese Neuronalen Netze säumen zufällig, werden die Handelsergebnisse schrecklich sein. Allerdings sagen wir, dass wir ein Dutzend solcher NNs erstellt haben. Dann können wir die Leistung von jedem von ihnen testen, und wählen Sie die beste, der Gewinner. Dies war die erste Generation von NNs. Um die zweite Generation fortzusetzen, müssen wir unserem Gewinner erlauben zu zeigen, aber um zu vermeiden, dass identische Kopien, können wir zufällige Geräusche zu seinen Abstammungsgewichten hinzufügen. In der zweiten Generation haben wir unsere erste Generation und ihre unvollkommenen (mutierten) Kopien. Lets testen erneut. Wir werden noch einen Gewinner haben, der BESSER ist, dann ein anderes Neuronales Netzwerk in der Generation. Und so weiter. Wir erlauben es einfach, die Gewinner zu züchten und die Verlierer zu beseitigen, genau wie in der Evolution des wirklichen Lebens, und wir werden unser Best-Trading Neural Network bekommen. Ohne vorherige Kenntnisse darüber, was das Handelssystem (genetischer Algorithmus) sein sollte. Neuronales Netzwerk Genetischer Algorithmus: Beispiel 0 Dies ist das erste Beispiel für genetisches Algorithmus. Und eine sehr einfache. Wir werden es Schritt für Schritt durchlaufen, um alle Tricks zu lernen, die folgende Beispiele verwenden werden. Der Code hat Inline-Kommentare, so können wir nur auf wichtige Momente konzentrieren. Zuerst haben wir ein neuronales Netzwerk geschaffen. Es benutzt zufällige Gewichte und wurde noch nicht unterrichtet. Dann, im Zyklus, machen wir 14 Exemplare davon, mit MUTATIONNN Fumktion. Diese Funktion macht eine Kopie einer Quelle Neuronales Netzwerk. Hinzufügen von zufälligen Werten von 0 zu (in unserem Fall) 0,1 zu allen Gewichten. Wir halten Griffe zu den resultierenden 15 NNs in einem Array, wir können es tun, da Handle nur eine ganzzahlige Zahl ist. Der Grund, warum wir 15 NNs verwenden, hat nichts mit dem Handel zu tun: Cortex Neural Networks Software kann bis zu 15 Zeilen auf einem Diagramm gleichzeitig aufstellen. Wir können verschiedene Ansätze für die Prüfung verwenden. Zuerst können wir das Lernset verwenden, alles auf einmal. Zweitens können wir auf 12000 Resonzen (von 100000) testen und durch das Lernset gehen, von Anfang bis Ende. Das macht Lernenden anders, denn wir werden nach Neuronalen Netzwerken suchen, die auf jedem gegebenen Teil der Daten rentabel sind, nicht nur auf dem ganzen Set. Der zweite Ansatz kann uns Probleme geben, wenn Daten vom Anfang bis zum Ende wechseln. Dann wird sich das Netzwerk weiterentwickeln, die Fähigkeit, am Ende des Datensatzes zu handeln, zu gewinnen und die Fähigkeit zu handeln, zu Beginn zu verlieren. Um dieses Problem zu lösen, werden wir zufällig 12000 Datensatzfragmente aus Daten nehmen und es dem Neuronalen Netzwerk zuführen. Ist einfach ein endloser Zyklus, da 100000 Zyklen nie mit unserer Geschwindigkeit erreicht werden. Unten fügen wir ein Kind für jedes Netzwerk mit etwas unterschiedlichen Gewichten hinzu. Beachten Sie, dass 0,1 für Mutation Tange ist nicht die einzige Wahl, da die Tatsache, auch dieser Parameter kann mit Hilfe von genetischen Algorithmus optimiert werden. Neu erzeugte NNs werden nach 15 vorhandenen hinzugefügt. Auf diese Weise haben wir 30 NNs in einem Array, 15 alte und 15 neue. Dann werden wir den nächsten Zyklus des Testens machen und die Verlierer von beiden Generationen töten. Um das Testen durchzuführen, wenden wir Neural Network auf unsere Daten an, um Ausgänge zu erzeugen und dann die Testfunktion aufzurufen, die diese Ausgänge verwendet, um den Handel zu simulieren. Ergebnisse des Handels werden verwendet, um zu beschwören, welche NNs am besten sind. Wir verwenden ein Intervall von nLearn Datensätzen, von nStart zu nStart nLearn, wobei nStart ein zufälliger Punkt innerhalb des Lernsatzes ist. Der untenstehende Code ist ein Trick. Der Grund, warum wir es verwenden, ist, die Tatsache zu veranschaulichen, dass der genetische Algorithmus einen genetischen Algorithmus erzeugen kann. Aber es wird nicht unbedingt das Beste sein, und auch, um vorzuschlagen, dass wir das Ergebnis verbessern können, wenn wir irgendwelche Einschränkungen für den Lernprozess implizieren. Es ist möglich, dass unser Handelssystem sehr gut auf lange Trades arbeitet und sehr schlecht auf kurz oder umgekehrt ist. Wenn ja, lange Trades sind sehr gut, kann dieser genetische Algorithmus auch bei großen Verlusten auf kurzen Trades gewinnen. Um es zu vermeiden, weisen wir den langjährigen Trades in ungeraden und kurzen Trades in gleichmäßigen Zyklen mehr Gewicht zu. Dies ist nur ein Beispiel, es gibt keine Garantie, dass es etwas verbessern wird. Mehr darüber unten, in der Diskussion über Korrekturen. Technisch, man muss es nicht tun, oder kann es anders machen Profit zu einem sortierten Array hinzufügen Es gibt eine Einfügeposition zurück, dann verwenden wir diese Position, um Neural Network Handle hinzuzufügen, Lernen und Testen von Gewinnen an nicht sortierte Arrays. Jetzt haben wir Daten für das aktuelle Neuronale Netzwerk auf dem gleichen Array-Index wie sein Gewinn. Die Idee ist, zu Array von NNs zu kommen, sortiert nach Profitabilität. Als Array ist nach Profit zu sortieren, um 12 von Netzwerken zu entfernen, die weniger rentabel sind, müssen wir nur NNs entfernen 0 bis 14 Handelsentscheidungen basieren auf dem Wert des Neuronalen Netzwerks, von diesem Gesichtspunkt aus ist das Programm identisch mit Beispielen aus Vorheriger Artikel. FOREX Trading-Strategie: Diskussion Beispiel 0 Zunächst einmal werfen wir einen Blick auf Charts. Das erste Diagramm für den Gewinn während der ersten Iteration ist überhaupt nicht gut, wie man erwarten sollte, das Neuronale Netzwerk verliert Geld (Bild evolution00gen0.png kopiert nach dem ersten Iteration aus Bilder Ordner): Das Bild für Profit auf Zyklus 15 ist besser, manchmal , Genetischer Algorithmus kann wirklich schnell lernen: Allerdings bemerke die Sättigung auf einer Gewinnkurve. Es ist auch interessant, auf die Art und Weise zu denken, wie sich einzelne Gewinne ändern, wenn man bedenkt, dass Kurve Zahl, sagen wir, 3 ist nicht immer für das gleiche Neuronale Netzwerk. Wie sie geboren werden und beendet die ganze Zeit: auch beachten Sie, dass aus wenig Forex automatisierte Handelssystem führt schlecht auf kurze Trades, und viel besser auf Longs, die möglicherweise oder nicht in Zusammenhang mit der Tatsache, dass Dollar im Vergleich zu Euro in diesem Zeitraum. Es kann auch etwas mit Parametern unseres Indikators zu tun haben (vielleicht brauchen wir einen anderen Zeitraum für Shorts) oder die Wahl der Indikatoren. Hier ist die Geschichte nach 92 und 248 Zyklen: Zu unserer Überraschung scheiterte der genetische Algorithmus vollständig. Lass uns versuchen, herauszufinden, warum, und wie man die Situation zu helfen. Zuerst einmal ist nicht jede Generation besser als die vorherige Die Antwort ist nein, zumindest nicht innerhalb des Modells, das wir verwendet haben. Wenn wir ENTIRE Lern-Set auf einmal genommen und verwendet es immer wieder, um unsere NNs zu lehren, dann ja, sie werden auf jeder Generation zu verbessern. Aber stattdessen nahmen wir zufällige Fragmente (12000 Datensätze in der Zeit) und benutzten sie. Zwei Fragen: warum das System auf zufällige Fragmente des Lernens gescheitert ist, und warum havent wir das ganze Lernset verwendet haben. Um die zweite Frage zu beantworten, habe ich. NNs haben sich sehr gut entwickelt. Und sie scheiterten auf Test-Set, aus dem gleichen Grund fehlschlägt es, wenn wir FFPB Lernen verwendet. Um es anders auszudrücken, haben unsere NNs überdimensioniert, sie haben gelernt, in der Umgebung zu überleben, die sie gewohnt sind, aber nicht draußen. Das passiert viel in der Natur. Der Ansatz, den wir stattdessen nahmen, sollte das kompensieren, indem wir NNs dazu zwingen, auf jedem zufälligen Fragment des Datensatzes gut zu spielen, so dass sie hoffentlich auch auf einem unbekannten Testset vorgehen konnten. Stattdessen scheiterten sie sowohl beim Testen als auch beim Lernen. Stellen Sie sich vor, Tiere, die in einer Wüste leben. Viel Sonne, kein Schnee. Dies ist ein metafor für Rising-Markt, wie für unsere NNs Daten spielen die Rolle der Umwelt. Tiere lernten in einer Wüste zu leben. Stellen Sie sich vor, Tiere, die in einem kalten Klima leben. Schnee und gar keine Sonne. Nun, sie haben sich angepasst. Doch in unserem Experiment haben wir zufällig unsere NNs in eine Wüste, im Schnee, im Wasser, auf die Bäume gelegt. Indem sie ihnen verschiedene Fragmente von Daten (zufällig steigend, fallend, flach) vorstellen. Tiere starben. Oder anders ausgedrückt, haben wir das beste Neuronale Netzwerk für den zufälligen Datensatz 1 ausgewählt, der für den steigenden Markt gilt. Dann haben wir den Gewinnern und ihren Kindern eine fallende Marktdaten vorgestellt. NNs schlecht durchgeführt, nahmen wir am besten von armen Performern, vielleicht einer der mutierten Kinder, die verlorene Fähigkeit, auf steigenden Markt zu handeln, aber bekam einige Fähigkeit, mit einem zu fallen. Dann machten wir den Tisch wieder, und wieder bekamen wir den besten Darsteller - aber am besten unter den armen Performern. Wir haben unseren NNs keine Chancen gegeben, universell zu werden. Es gibt Techniken, die es dem genetischen Algorithmus ermöglichen, neue Informationen zu erlernen, ohne die Leistung auf alte Informationen zu verlieren (schließlich können Tiere im Sommer und im Winter leben, so dass Evolution in der Lage ist, wiederholte Änderungen zu bewältigen). Wir können diese Techniken später besprechen, obwohl dieser Artikel mehr über die Verwendung von Cortex Neural Networks Software ist. Als über den Aufbau eines erfolgreichen Forex automatisierten Handelssystems. Neuronales Netzwerk Genetischer Algorithmus: Beispiel 1 Jetzt ist es Zeit, über Korrekturen zu sprechen. Ein einfacher genetischer Algorithmus, den wir im vorigen Schritt erstellt haben, hat zwei Hauptfehler. Erstens hat es geschafft, mit Gewinn zu handeln. Es ist ok, wir können versuchen, ein teilweise geschultes System zu benutzen (es war am Anfang rentabel). Der zweite Fehler ist ernster: Wir haben keine Kontrolle über die Dinge, die dieses System tut. Zum Beispiel kann es lernen, rentabel zu sein, aber mit riesigen Drawdowns. Es ist eine bekannte Tatsache, dass im wirklichen Leben die Evolution gleichzeitig mehr als einen Parameter optimieren kann. Zum Beispiel können wir ein Tier bekommen, das schnell laufen kann und kältebeständig ist. Warum nicht zu versuchen, das gleiche in unserem Forex automatisierten Handelssystem zu versuchen. Das ist, wenn wir Korrekturen verwenden, die nichts als die Menge der zusätzlichen Strafen sind. Sagen Sie, unser System handelt mit Drawdown 0,5, während wir es auf 0 - 0,3 Intervall bestätigen wollen. Um dem System zu sagen, dass es einen Fehler gemacht hat, verringern wir seinen Gewinn (einer verwendet, um zu bestimmen, welcher genetische Algorithmus gewonnen hat), das ist proportional zur Größe von DD. Dann kümmert sich der Evolutionsalgorithmus um den Rest. Es gibt noch wenige Faktoren, die wir berücksichtigen wollen: Vielleicht möchten wir mehr oder weniger gleich viele Kauf - und Verkaufsaktivitäten haben, wir wollen mehr von rentablen Operationen haben, dann von Misserfolgen, können wir die Gewinndiagramm haben Linear sein und so weiter. In evolution01.tsc implementieren wir einen einfachen Satz von Korrekturen. Zuerst verwenden wir eine große Anzahl für einen anfänglichen Korrekturwert. Wir multiplizieren sie mit einem kleinen (meist zwischen 0 und 1) Werten, je nach der Bestrafung, die wir anwenden möchten. Dann multiplizieren wir unseren Gewinn mit dieser Korrektur. Als Ergebnis wird der Gewinn korrigiert, um zu reflektieren, wie sehr der genetische Algorithmus unseren anderen Kriterien entspricht. Dann verwenden wir das Ergebnis, um ein Gewinner Neuronales Netzwerk zu finden. FOREX Trading-Strategie: Diskussion Beispiel 1 Beispiel 1 arbeitet viel besser als Beispiel 0. Während der ersten 100 Zyklen hat es viel gelernt, und Profit-Charts sehen beruhigend aus. Allerdings, wie in Beispiel 0, sind lange Trades viel rentabler, was höchstwahrscheinlich bedeutet, dass es ein Problem in unserem Ansatz gibt. Dennoch stellte das System ein Gleichgewicht zwischen zwei widersprüchlichen Anfangsbedingungen dar: Es gibt eine positive Dynamik sowohl beim Lernen als auch, wichtiger in der Testmenge. Wie für weiteres Lernen, im Zyklus 278 können wir sehen, dass unser System überholt wurde. Es bedeutet, wir haben noch Fortschritte beim Lernen gesetzt: Aber Test-Set zeigt Schwäche: Dies ist ein häufiges Problem mit NNs: Wenn wir es lehren, Lern-Set, lernt es, damit umzugehen, und manchmal lernt es auch zu gut Grad, wenn es verliert Leistung auf Prüf-Set. Um dieses Problem zu lösen, wird eine traditionelle Lösung verwendet: Wir suchen auf der Suche nach dem Neuronalen Netzwerk. Das führt am besten auf Test-Set, und speichern Sie es, Überschreiben der vorherigen besten, jedes Mal, wenn neue Spitze erreicht ist. Dies ist der gleiche Ansatz, den wir in der FFBP-Ausbildung verwendet haben, außer, diesmal müssen wir es selbst machen (Hinzufügen von Code, der nach einem besten Neuronalen Netzwerk auf einem Test-Set sucht und SAVENN anruft oder Gewichte des Neuronalen Netzwerks exportiert Datei). Auf diese Weise, wenn du dein Training aufhörst, hast du den besten Performer auf TESTING SET gespeichert und warte auf dich. Beachten Sie auch, dass es nicht die max. Profit sind Sie nach, aber optimale Leistung, also erwägen Sie Korrekturen, bei der Suche nach einem besten Performer auf einem Test-Set. Genetischer Algorithmus für FOREX Technische Analyse: Wo nun Nach dem Sieger Neuronales Netzwerk. Sie können den Schritten folgen, die im vorherigen Artikel beschrieben wurden, um Gewichte dieses Neuronalen Netzes zu exportieren. Und dann, um sie in Ihrer echten Handelsplattform zu verwenden, wie Meta Trader, Trade Station und so weiter. Alternativ können Sie sich auf andere Möglichkeiten der Optimierung des Neuronalen Netzwerks konzentrieren. Im Gegensatz zu FFBP-Algorithmen, hier können Sie sich von der Verwendung von Lern-und Test-Sets, und verschieben sequentielles Lernen. Download Cortex Bestellen Cortex View Price List Sichtbarkeit ist für diese Seite sehr wichtig. Wenn es Ihnen gefällt, bitte Link zu dieser URL

No comments:

Post a Comment