Tuesday 28 November 2017

Fibonacci Trading System Für Amibroker


Wie Fibonacci Retracement verwenden, um einen Forex Trading Geben Sie das erste, was Sie wissen sollten über die Fibonacci-Tool ist, dass es am besten funktioniert, wenn der Forex-Markt ist Trending. Die Idee ist, lange zu gehen (oder zu kaufen) auf einem Retracement auf einer Fibonacci-Support-Ebene, wenn der Markt ist Trends, und zu kurz (oder zu verkaufen) auf einen Retracement bei einem Fibonacci Widerstand Ebene, wenn der Markt ist Trends nach unten. Finden Fibonacci Retracement Levels Um diese Fibonacci Retracement Ebenen zu finden, müssen Sie die jüngsten erheblichen Swing Highs und Swings Lows zu finden. Dann, für Abwärtstränge, klicken Sie auf die Swing High und ziehen Sie den Cursor auf die neuesten Swing Low. Für Aufwärtstränge, mach das Gegenteil. Klicke auf den Swing Low und ziehe den Cursor auf den letzten Swing High. Got that Now, let8217s werfen einen Blick auf einige Beispiele, wie man Fibonacci Retracements Ebenen auf die Devisenmärkte anzuwenden. Dies ist eine Tageskarte von AUDUSD. Hier haben wir die Fibonacci-Retracement-Levels angeklickt, indem wir am 20. April auf die Swing Low bei .6955 klicken und am 3. Juni den Cursor auf die Swing High at .8264 ziehen. Tada Die Software zeigt Ihnen die Retracement-Levels. Wie Sie aus der Tabelle sehen können, waren die Fibonacci Retracement Ebenen .7955 (23.6). 7764 (38,2). 7609 (50,0). 7454 (61,8) und 0,7263 (76,4). Nun, die Erwartung ist, dass, wenn AUDUSD von der jüngsten Höhe zurückverfolgt, wird es Unterstützung bei einem dieser Fibonacci Retracement Ebenen zu finden, weil Händler werden Kauf Bestellungen auf diesen Ebenen, wie der Preis zieht zurück. Jetzt sehen wir, was passiert ist, nachdem der Swing High aufgetreten ist. Der Preis zog sich durch die 23,6-Stufe zurück und fuhr fort, über die nächsten paar Wochen zu schießen. Es hat sogar die 38,2-Ebene getestet, konnte aber nicht unterschreiten. Später, um den 14. Juli, nahm der Markt seinen Aufwärtsbewegungen wieder auf und brach schließlich durch die Schaukel hoch. Klar, der Kauf auf der 38.2 Fibonacci Ebene wäre ein profitabler langfristiger Handel gewesen Nun, let8217s sehen, wie wir das Fibonacci Retracement-Tool während eines Abwärtstrends verwenden würden. Unten ist ein 4-Stunden-Chart von EURUSD. Wie Sie sehen können, fanden wir unsere Swing High bei 1.4195 am 25. Januar und unsere Swing Low bei 1.3854 ein paar Tage später am 1. Februar. Die Retracement-Levels sind 1.3933 (23.6), 1.3983 (38.2), 1.4023 (50.0), 1.4064 ( 61,8) und 1,4114 (76,4). Die Erwartung für einen Abwärtstrend ist, dass, wenn der Preis von diesem Tiefstand zurückverfolgt wird, möglicherweise ein Widerstand auf einem der Fibonacci-Niveaus begegnen würde, weil Händler, die den Abwärtstrend zu besseren Preisen spielen möchten, mit Verkaufsaufträgen dort fertig sein können. Let8217s werfen Sie einen Blick auf, was als nächstes passiert ist. Yowza, isn8217t das ein Ding der Schönheit Der Markt hat versucht zu sammeln, blieb unter dem 38,2 Level für ein bisschen vor dem Testen der 50.0 Level. Wenn Sie irgendwelche Aufträge entweder auf der 38.2 oder 50.0 Niveaus hatten, würden Sie irgendwelche wütenden Pips auf diesem Handel machen. In diesen beiden Beispielen sehen wir, dass der Preis eine vorübergehende Forex-Unterstützung oder einen Widerstand bei Fibonacci-Retracement-Level gefunden hat. Wegen all der Menschen, die das Fibonacci-Tool verwenden, werden diese Levels selbst erfüllende Unterstützung und Widerstandsniveaus. Eine Sache, die Sie beachten sollten, ist, dass der Preis, der von diesen Ebenen immer abhängt. Sie sollten als Interessengebiete betrachtet werden. Oder wie Cyclopip sie gerne nennt, 8220 KILL ZONES 8221 We8217ll lehren Sie mehr darüber später. Für jetzt, da sollte man sich immer daran erinnern, mit dem Fibonacci-Tool und it8217s, dass sie nicht immer einfach zu bedienen Wenn sie so einfach waren, würden Händler immer ihre Aufträge auf Fibonacci Retracement Level und die Märkte würde für immer Trend. In der nächsten Lektion zeigen wir Ihnen, was passieren kann, wenn Fibonacci Retracement Levels ausfallen. Sichern Sie Ihre Fortschritte durch Unterzeichnen und Markieren der Lektion completeHow zur Optimierung des Handelssystems HINWEIS: Dies ist ein ziemlich fortgeschrittenes Thema. Bitte vorherige AFL-Tutorials lesen. Die Idee hinter einer Optimierung ist einfach. Zuerst musst du ein Handelssystem haben, das kann ein einfacher gleitender durchschnittlicher Crossover sein. In fast jedem System gibt es einige Parameter (als Mittelungszeitraum), die entscheiden, wie sich das System verhält (d. h. ist gut geeignet für Langzeit - oder Kurzzeit, wie reagiert es auf hochvolatile Bestände usw.). Die Optimierung ist der Prozess der Suche nach optimalen Werten dieser Parameter (mit dem höchsten Gewinn aus dem System) für ein gegebenes Symbol (oder ein Portfolio von Symbolen). AmiBroker ist eines der wenigen Programme, mit denen Sie Ihr System auf mehreren Symbolen gleichzeitig optimieren können. Zur Optimierung Ihres Systems müssen Sie von einem bis zu zehn zu optimierenden Parametern definieren. Sie entscheiden, was ein minimaler und maximal zulässiger Wert des Parameters ist und in welchen Inkrementen dieser Wert aktualisiert werden soll. AmiBroker führt dann mehrere Backtests durch, die das System mit allen möglichen Kombinationen von Parameterwerten verwenden. Wenn dieser Prozess beendet ist, zeigt AmiBroker die Ergebnisliste nach Gewinn nach. Sie können die Werte der Optimierungsparameter sehen, die das beste Ergebnis liefern. Schreiben von AFL-Formel Die Optimierung im Back-Tester wird über die neue Funktion Optimize unterstützt. Die Syntax dieser Funktion lautet wie folgt: Variable optimieren ("Beschreibung", "Standard", "Min. Max."). - Variable - ist die normale AFL-Variable, die den von der Optimierungsfunktion zurückgegebenen Wert zugewiesen wird. Bei normaler Backtest-, Scanning-, Explorations - und Comentary-Modi gibt die Optimierungsfunktion den Standardwert zurück, so dass der obige Funktionsaufruf äquivalent ist: Variable Default Im Optimierungsmodus optimiert die Funktion die sukzessiven Werte von min bis max (inklusive) mit Step Stepping. Quot Descriptionquot ist ein String, der verwendet wird, um die Optimierungsvariable zu identifizieren und wird als Spaltenname in der Optimierungsergebnisliste angezeigt. Default ist ein Standardwert, der die Funktion in den Explorations-, Indikator-, Kommentar-, Scan - und normalen Back-Test-Modi optimiert. Min ist ein Minimalwert der Variablen, die optimiert wird max ist ein Maximalwert der Variablen, die optimiert wird, ist ein Intervall, Wert von min bis max AmiBroker unterstützt bis zu 64 Anrufe zur Optimierung der Funktion (also bis zu 64 Optimierungsvariablen), beachten Sie, dass bei einer ausführlichen Optimierung dann eine gute Idee ist, die Anzahl der Optimierungsvariablen auf wenige zu beschränken. Jeder Aufruf zur Optimierung generieren (max - min) Schritt Optimierungsschleifen und mehrere Anrufe zur Optimierung multiplizieren die Anzahl der benötigten Läufe. Zum Beispiel benötigen die Optimierung von zwei Parametern mit 10 Schritten 1010 100 Optimierungsschleifen. Anrufoptimierung nur ONCE pro Variable am Anfang deiner Formel, da jeder Aufruf eine neue Optimierungsschleife erzeugt Mehrfachsymboloptimierung wird von AmiBroker voll unterstützt Maximaler Suchraum beträgt 2 64 (10 19 10.000.000.000.000.000.000) Kombinationen 1. Einzelne Variable Optimierung: Sigavg Optimize (Signal-Durchschnitt 9. 2. 20. 1) Buy Cross (MACD (12. 26), Signal (12. 26. Sigavg)) Kreuz verkaufen (Signal (12. 26. Sigavg), MACD (12. 26)) 2. Zwei-Variable-Optimierung (geeignet für 3D-Charting) per Optimize (pro 2. 5. 50. 1) Level Optimize (Level 2. 2. 150. 4) Buy Cross (CCI (per), - Level) Verkaufen Kreuz (Level, CCI (per)) 3. Multiple (3) Variable Optimierung: mfast Optimize (MACD Fast 12. 8. 16. 1) mslow Optimize (MACD Slow. 26. 17. 30. 1) sigavg Optimize (Signal Durchschnittlich 9. 2. 20. 1) Buy Cross (MACD (mfast, mslow) Signal (mfast, mslow, sigavg)) Kreuz verkaufen (Signal (mfast, mslow, sigavg), MACD (mfast, mslow)) Nach dem Eintreten Die Formel klicken Sie einfach auf die Schaltfläche Optimieren im Fenster quotAutomatic Analysisquot. AmiBroker startet alle möglichen Kombinationen von Optimierungsvariablen und meldet die Ergebnisse in der Liste. Nach der Optimierung erfolgt die Ergebnisliste nach dem Nettogewinn. Da Sie die Ergebnisse durch eine beliebige Spalte in der Ergebnisliste sortieren können, ist es einfach, die optimalen Werte der Parameter für den niedrigsten Drawdown, die geringste Anzahl von Trades, den größten Gewinnfaktor, das niedrigste Marktrisiko und die höchste risikoadjustierte Jahresrendite zu erhalten. Die letzten Spalten der Ergebnisliste geben die Werte der Optimierungsvariablen für den gegebenen Test an. Wenn Sie entscheiden, welche Kombination von Parametern Ihren Bedürfnissen entspricht, ist das Beste, was Sie tun müssen, um die Standardwerte bei der Optimierung von Funktionsaufrufen mit den optimalen Werten zu ersetzen. Im laufenden Stadium müssen Sie sie im Handlungsfenster bearbeiten (der zweite Parameter zur Optimierung des Funktionsaufrufs). Anzeigen von 3D-animierten Optimierungsdiagrammen Um das 3D-Optimierungsdiagramm anzuzeigen, müssen Sie zuerst eine Variable mit zwei Variablen ausführen. Zwei variable Optimierung benötigt eine Formel mit 2 Optimize () Funktionsaufrufen. Eine Beispiel-Zwei-Variable-Optimierungsformel sieht so aus: per Optimize (pro 2. 5. 50. 1) Level Optimize (Level 2. 2. 150. 4) Buy Cross (CCI (per), - Level) Sell Cross (Level, CCI (per)) Nach dem Eingeben der Formel müssen Sie auf die Schaltfläche "OK" klicken. Sobald die Optimierung abgeschlossen ist, klicken Sie auf den Dropdown-Pfeil auf die Schaltfläche "Optimieren" und wählen Sie "3D-Optimierungsdiagramm anzeigen". In wenigen Sekunden erscheint ein buntes dreidimensionales Flächenplot in einem 3D-Chart-Viewer-Fenster. Ein Beispiel-3D-Diagramm, das mit der obigen Formel erstellt wurde, ist unten gezeigt. Die 3D-Diagramme zeigen standardmäßig Werte des Nettogewinns gegenüber Optimierungsvariablen an. Sie können jedoch 3D-Oberflächen-Diagramm für jede Spalte in der Optimierung Ergebnis-Tabelle. Klicken Sie einfach auf die Spaltenüberschrift, um sie zu sortieren (blauer Pfeil zeigt an, dass die Optimierungsergebnisse nach der ausgewählten Spalte sortiert werden) und wählen Sie dann erneut 3D-Optimierungsgrafik anzeigen. Durch die Visualisierung, wie sich Ihre Systemparameter auf die Handelsleistung auswirken, können Sie leichter entscheiden, welche Parameterwerte quittilequot produzieren und welche die Performance des Qurobustquot-Systems erbringen. Robuste Einstellungen sind Regionen im 3D-Graphen, die allmähliche und nicht abrupte Änderungen im Flächenplot zeigen. 3D-Optimierungsdiagramme sind ein großartiges Werkzeug, um eine Kurvenanpassung zu verhindern. Kurvenanpassung (oder Überoptimierung) tritt auf, wenn das System komplexer ist, als es sein muss, und all diese Komplexität konzentrierte sich auf Marktbedingungen, die niemals wieder passieren können. Radikale Veränderungen (oder Spikes) in den 3D-Optimierungsdiagrammen zeigen deutlich über optimierte Bereiche. Sie sollten wählen, Parameter-Region, die eine breite und breite Plateau auf 3D-Diagramm für Ihr echtes Leben Handel produziert. Parametersätze, die Gewinnspitzen erzeugen, funktionieren nicht zuverlässig im realen Handel. 3D-Karten-Viewer-Steuerelemente AmiBrokers 3D-Karten-Viewer bietet insgesamt Viewing-Funktionen mit voller Graphenrotation und Animation. Jetzt können Sie Ihre Systemergebnisse aus jeder erdenklichen Perspektive ansehen. Sie können die Position und andere Parameter des Diagramms mit der Maus, der Symbolleiste und den Tastenkombinationen steuern, was auch immer Sie für Sie leichter finden. Unten finden Sie die Liste. - zum Drehen - gedrückt halten LEFT-Maustaste gedrückt und in XY-Richtungen gedrückt - zum Vergrößern, Verkleinern - Halten Sie die RECHTS-Maustaste gedrückt und bewegen Sie sich in XY-Richtungen - zum Verschieben (übersetzen) - halten Sie die linke Maustaste und die STRG-Taste gedrückt Bewegen Sie sich in XY Richtungen - zum Animieren - halten Sie die linke Maustaste gedrückt, ziehen Sie schnell und lassen Sie den Knopf los, während Sie SPACE ziehen - animieren (automatisch drehen) LINKS PFEILTASTE - drehen Sie sich vertikal. Links RECHTS PFEILTASTE - drehen Sie sich vert. Rechts PFEILTASTE - drehen horiz. Up DOWN PFEILTASTE - drehen horiz. NUMPAD 6 - nach rechts bewegen NUMPAD 6 - nach rechts bewegen NUMPAD 8 - nach oben bewegen NUMPAD 2 - nach unten verschieben PAGE UP - Wasserstand nach oben PAGE DOWN - Wasserstand nach unten Intelligente (nicht erschöpfende) Optimierung AmiBroker bietet jetzt eine intelligente (nicht erschöpfende) Optimierung zusätzlich zur regelmäßigen, erschöpfenden Suche. Eine nicht erschöpfende Suche ist sinnvoll, wenn die Anzahl aller Parameterkombinationen des gegebenen Handelssystems einfach zu groß ist, um für eine abschließende Suche möglich zu sein. Die anspruchsvolle Suche ist vollkommen in Ordnung, solange es vernünftig ist, sie zu benutzen. Lass uns sagen, dass du 2 Parameter von 1 bis 100 hast (Schritt 1). Das ist 10000 Kombinationen - perfekt für eine ausführliche Suche. Jetzt mit 3 Parametern hast du 1 Million Kombinationen - es ist immer noch OK für eine abschließende Suche (kann aber auch lang sein). Mit 4 Parametern haben Sie 100 Millionen Kombinationen und mit 5 Parametern (1..100) haben Sie 10 Milliarden Kombinationen. In diesem Fall wäre es zu zeitaufwändig, alle von ihnen zu überprüfen, und dies ist der Bereich, in dem nicht erschöpfende Smart-Search-Methoden das Problem lösen können, das in einer angemessenen Zeit nicht mit einer erschöpfenden Suche lösbar ist. Hier ist absolut die SIMPLEST-Anleitung, wie man einen neuen, nicht erschöpfenden Optimierer (in diesem Fall CMA-ES) einsetzt. 1. Öffnen Sie Ihre Formel im Formel-Editor 2. Fügen Sie diese einzelne Zeile am oberen Rand Ihrer Formel hinzu: OptimizerSetEngine (quotcmaequot) können Sie auch hier quadratisch oder quottribquot verwenden. 3. (Optional) Wählen Sie Ihr Optimierungsziel in Automatische Analyse, Einstellungen, quotWalk - Forwardquot-Registerkarte, Optimierungszielfeld. Wenn du diesen Schritt überspringst, wird es für CARMDD optimieren (zusammengesetzte jährliche Rendite geteilt durch maximales Drawdown). Jetzt, wenn Sie mit dieser Formel optimieren, wird es neue evolutionäre (nicht erschöpfende) CMA-ES-Optimierung verwenden. Wie funktioniert es Die Optimierung ist der Prozess der Suche nach Minimum (oder Maximum) der gegebenen Funktion. Jedes Handelssystem kann als eine Funktion einer bestimmten Anzahl von Argumenten betrachtet werden. Die Eingaben sind Parameter und Zitatdaten. Die Ausgabe ist dein Optimierungsziel (zB CARMDD). Und du suchst nach maximaler Funktion. Einige der intelligenten Optimierungsalgorithmen basieren auf der Natur (Tierverhalten) - PSO-Algorithmus oder biologischem Prozess - genetische Algorithmen und einige basieren auf mathematischen Konzepten, die von Menschen abgeleitet werden - CMA-ES. Diese Algorithmen werden in vielen verschiedenen Bereichen, einschließlich der Finanzierung verwendet. Geben Sie quotPSO financequot oder quotCMA-ES financequot in Google ein und Sie finden viele Informationen. Nicht-erschöpfende (oder quotsmartquot) Methoden finden globales oder lokales Optimum. Das Ziel ist natürlich, globale zu finden, aber wenn es einen einzigen scharfen Peak aus zillions Parameterkombinationen gibt, können nicht-erschöpfende Methoden diesen einzelnen Peak nicht finden, aber es bilden Formulatoren perspektivisch, das Finden eines einzelnen scharfen Peaks ist nutzlos für Handel, weil dieses Ergebnis instabil wäre (zu zerbrechlich) und nicht replizierbar im realen Handel. Im Optimierungsprozess suchen wir nach Plateau-Regionen mit stabilen Parametern und das ist der Bereich, in dem intelligente Methoden leuchten. In Bezug auf den Algorithmus, der von einer nicht erschöpfenden Suche verwendet wird, sieht es wie folgt aus: a) Der Optimierer erzeugt einige (meist zufällige) Startpopulation von Parametersätzen b) Backtest wird von AmiBroker für jeden Parametersatz aus der Population durchgeführt c) die Ergebnisse von Backtests sind Ausgewertet nach der Logik des Algorithmus und neue Population wird auf der Grundlage der Evolution der Ergebnisse generiert, d) wenn neues Bestes gefunden wird - speichern Sie es und gehen Sie zu Schritt b) bis Stop-Kriterien erfüllt sind Beispiel Stop-Kriterien können enthalten: a) Erreichen der angegebenen Maximale Iterationen b) Stoppen, wenn der Bereich der besten objektiven Werte der letzten X-Generationen null ist c) stoppen, wenn das Hinzufügen von 0,1 Standardabweichungsvektor in irgendeiner Hauptachsenrichtung den Wert des objektiven Wertes nicht verändert d) andere Um irgendeine intelligente (nicht - Erschöpfenden) Optimierer in AmiBroker müssen Sie die Optimierer-Engine, die Sie in der AFL-Formel verwenden möchten, mit der OptimizerSetEngine-Funktion angeben. Die Funktion wählt die durch den Namen definierte externe Optimierungsmaschine aus. AmiBroker wird derzeit mit 3 Motoren ausgeliefert: Standard Particle Swarm Optimizer (quotspsoquot), Tribes (quottribquot) und CMA-ES (quotcmaequot) - die Namen in Klammern sollen in OptimizerSetEngine Anrufe verwendet werden. Zusätzlich zur Auswahl der Optimierer-Engine können Sie einige seiner internen Parameter einstellen. Verwenden Sie dazu die OptimizerSetOption-Funktion. OptimizerSetOption (quotnamequot, value) Funktion Die Funktion setzt zusätzliche Parameter für externe Optimierungs-Engine ein. Die Parameter sind motorabhängig. Alle drei mit AmiBroker (SPSO, Trib, CMAE) ausgelieferten Optimierer unterstützen zwei Parameter: quotRunsquot (Anzahl der Läufe) und quotMaxEvalquot (maximale Auswertungen (Tests) pro Einzellauf). Das Verhalten jedes Parameters ist motorabhängig, so dass gleiche Werte und können in der Regel unterschiedliche Ergebnisse mit verschiedenen Motoren verwendet werden. Der Unterschied zwischen Runs und MaxEval ist wie folgt. Auswertung (oder Test) ist ein einzelner Backtest (oder Auswertung des objektiven Funktionswertes). RUN ist ein vollständiger Ablauf des Algorithmus (optimaler Wert) - in der Regel viele Tests (Auswertungen). Jeder läuft einfach den gesamten Optimierungsprozess vom Neubeginn (neue anfängliche zufällige Population). Daher kann jeder Durchlauf dazu führen, dass er verschiedene lokale maxmin findet (wenn er nicht global findet). So Runs Parameter definiert die Anzahl der nachfolgenden Algorithmen läuft. MaxEval ist die maximale Anzahl von Auswertungen (Bactests) in einem Einzellauf. Wenn das Problem relativ einfach ist und 1000 Tests reichen, um globale max zu finden, ist 5x1000 eher ein globales Maximum zu finden, da es weniger Chancen gibt, in lokalem Maximum zu stecken, da nachfolgende Läufe von verschiedenen anfänglichen zufälligen Populationen beginnen werden Sei schwierig Es hängt von dem Problem unter Test, seine Komplexität, etc., etc. Jede stochastische nicht erschöpfende Methode gibt Ihnen keine Garantie für die Suche nach globalen maxmin, unabhängig von der Anzahl der Tests, wenn es kleiner als erschöpfend ist. Die einfachste Antwort ist. Spezifizieren Sie eine so große Anzahl von Tests, wie es für Sie angemessen ist, in Bezug auf die Zeit, die erforderlich ist, um zu vervollständigen. Eine weitere einfache Beratung ist, um die Anzahl der Tests mit dem Hinzufügen neuer Dimension zu multiplizieren. Das kann zu einer Überschätzung der Anzahl der benötigten Tests führen, aber es ist ganz sicher. Die versendeten Motoren sind so konzipiert, dass sie einfach zu bedienen sind, daher werden quasi-fähige Standardautomatische Werte verwendet, so dass die Optimierung in der Regel ohne Angabe von etwas durchgeführt werden kann (Annahme von Vorgaben). Es ist wichtig zu verstehen, dass alle intelligenten Optimierungsmethoden am besten in kontinuierlichen Parameterräumen und relativ reibungslosen Zielfunktionen funktionieren. Wenn der Parameterraum diskrete evolutionäre Algorithmen haben, kann es schwierig sein, einen optimalen Wert zu finden. Es gilt insbesondere für binäre (onoff) Parameter - sie eignen sich nicht für jede Suchmethode, die den Gradienten der objektiven Funktionsänderung verwendet (wie die meisten intelligenten Methoden). Wenn Ihr Trading-System viele Binärparameter enthält, sollten Sie kein Smart Optimizer direkt auf ihnen verwenden. Stattdessen versuchen, nur kontinuierliche Parameter mit Smart-Optimierer zu optimieren und binäre Parameter manuell oder über externes Skript zu wechseln. SPSO - Standard Particle Swarm Optimizer Standard Particle Swarm Optimizer basiert auf SPSO2007 Code, der gute Ergebnisse liefern soll, vorausgesetzt, dass korrekte Parameter (d. h. Runs, MaxEval) für ein bestimmtes Problem bereitgestellt werden. Die Auswahl der richtigen Optionen für den PSO-Optimierer kann schwierig sein, daher können die Ergebnisse von Fall zu Fall erheblich variieren. SPSO. dll kommt mit vollständigen Quellcodes innerhalb von quotADKquot Unterordner. Beispielcode für Standard Particle Swarm Optimizer: (optimalen Wert in 1000 Tests im Suchraum von 10000 Kombinationen finden) OptimizerSetEngine (quotspsoquot) OptimizerSetOption (quotRunsquot, 1) OptimizerSetOption (quotMaxEvalquot, 1000) sl Optimize (quotsquot, 26, 1, 100, 1 (FACS) FREIES VERSCHIFFEN FREIES VERSCHIFFEN FREIES VERSCHIFFEN FREIES VERSCHIFFEN FREIES VERSCHIFFEN FREIES VERSCHIFFEN FREIES VERSCHIFFEN FREIES VERSCHIFFEN FREIES VERSCHIFFEN FREIES VERSCHIFFEN FREIES VERSCHIFFEN FREIES VERSCHIFFEN FREIES VERSCHIFFEN FREIES VERSCHIFFEN FREIES VERSCHIFFEN FREIES VERSCHIFFEN FREIES VERSCHIFFEN FREIES VERSCHIFFEN FREIES VERSCHIFFEN , Parameterlose Version von PSO (Partikel-Schwarm-Optimierung) nicht erschöpfende Optimierung. Für wissenschaftlichen Hintergrund siehe: particlewarm. infoTribes2006Cooren. pdf In der Theorie sollte es besser als normale PSO, denn es kann automatisch die Schwarmgrößen und Algorithmus-Strategie auf das Problem zu lösen. Praxis zeigt, dass seine Leistung ist ganz ähnlich wie PSO. Das Tribes. DLL Plugin implementiert quotTribes-Dquot (d. h. dimensionslose) Variante. Basierend auf clerc. maurice. free. frpsoTribesTRIBES-D. zip von Maurice Clerc. Ursprüngliche Quellcodes, die mit der Erlaubnis des Autors verwendet werden Tribes. DLL kommt mit vollem Quellcode (innerhalb des Zifferncapot-Ordners) Unterstützte Parameter: quotMaxEvalquot - maximale Anzahl von Auswertungen (Backtests) pro Lauf (Standard 1000). Sie sollten die Anzahl der Auswertungen mit zunehmender Anzahl von Dimensionen erhöhen (Anzahl der Optimierungsparams). Die Voreinstellung 1000 ist gut für 2 oder maximal 3 Dimensionen. QuotRunsquot - Anzahl der Läufe (Neustarts). (Voreinstellung 5) Sie können die Anzahl der Läufe auf den Standardwert von 5 verlassen. Standardmäßig ist die Anzahl der Läufe (oder Neustarts) auf 5 gesetzt. Um den Tribes-Optimierer zu verwenden, müssen Sie nur noch eine Zeile zu Ihrem Code hinzufügen: OptimizerSetOption (quotMaxEvalquot , 5000) 5000 Auswertungen max CMA-ES - Kovarianz Matrix Anpassung Evolutionäre Strategie Optimierer CMA-ES (Covarianz Matrix Adaption Evolutionary Strategy) ist fortgeschrittene nicht erschöpfende Optimierer. Für wissenschaftlichen Hintergrund siehe: bionik. tu-berlin. deusernikocmaesintro. html Nach wissenschaftlichen Benchmarks übertrifft neun weitere populäre evolutionäre Strategien (wie PSO, Genetische und Differential Evolution). Bionik. tu-berlin. deusernikocec2005.html Das CMAE. DLL-Plugin implementiert die OptionGlobalquot-Suchvariante mit mehreren Neustarts mit zunehmender Populationsgröße. CMAE. DLL kommt mit vollem Quellcode (im Zitat von ZKK-Ordner) Standardmäßig wird die Anzahl der Läufe (oder Neustarts) gesetzt Bis 5. Es wird empfohlen, die Standardanzahl der Neustarts zu verlassen. Sie können es mit dem OptimizerSetOption (quotRunsquot, N) Aufruf variieren, wobei N im Bereich 1..10 sein sollte. Die Angabe von mehr als 10 Läufen wird nicht empfohlen, wenn auch möglich. Beachten Sie, dass jeder Lauf TWICE die Größe der Population des vorherigen Laufs verwendet, damit er exponentiell wächst. Deshalb mit 10 Läufen am Ende mit der Bevölkerung 210 größer (1024 mal) als der erste Lauf. Es gibt einen anderen Parameter quotMaxEvalquot. Der Standardwert ist ZERO, was bedeutet, dass das Plugin automatisch das erforderliche MaxEval berechnet. Es wird empfohlen, NICHT zu definieren, MaxEval von Ihnen selbst als Standard funktioniert gut. Der Algorithmus ist schlau genug, um die Anzahl der benötigten Auswertungen zu minimieren, und er konvergiert sehr schnell zum Lösungspunkt, so oft findet er Lösungen schneller als andere Strategien. Es ist normal, dass das Plugin einige Auswertungsschritte überspringen wird, wenn es feststellt, dass die Lösung gefunden wurde, deshalb sollten Sie nicht überrascht sein, dass sich der Optimierungsfortschrittsbalken an einigen Punkten sehr schnell bewegen kann. Das Plugin hat auch die Fähigkeit, die Anzahl der Schritte über den ursprünglich geschätzten Wert zu erhöhen, wenn es nötig ist, die Lösung zu finden. Aufgrund seiner anpassungsfähigen Natur ist die zerlegte Zeit leftquot und eine Anzahl von Schritten, die durch den Fortschrittsdialog angezeigt werden, nur zum Zeitpunkt der Zeit und nur während des Optimierungskurses unterschiedlich. Um den CMA-ES-Optimierer zu verwenden, musst du nur noch eine Zeile zu deinem Code hinzufügen: Damit wird die Optimierung mit den Standardeinstellungen ausgeführt, die für die meisten Fälle gut sind. Es ist zu beachten, wie es bei vielen Continuous-Space-Suchalgorithmen der Fall ist, dass der abnehmende Quarterteilparameter in Optimize () funciton-Aufrufe die Optimierungszeiten nicht wesentlich beeinflusst. Das Einzige, worauf es ankommt, ist das Problem, wenn es darum geht, die Anzahl der verschiedenen Parameter (Anzahl der Funktionsanrufe zu optimieren). Die Anzahl der Querstege pro Parameter kann eingestellt werden, ohne die Optimierungszeit zu beeinflussen. Verwenden Sie daher die feinste Auflösung, die gewünscht wird. In der Theorie sollte der Algorithmus in der Lage sein, Lösung in höchstens 900 (N3) (N3) Backtests zu finden, wobei quotNquot die Dimension ist. In der Praxis konvergiert es viel schneller. Zum Beispiel kann die Lösung in 3 (N3) dimensionalen Parameterraum (zB 100100100 1 Million erschöpfende Schritte) in so wenigen wie 500-900 CMA-ES-Schritten gefunden werden. Multi-Threaded Individuelle Optimierung Ab AmiBroker 5.70 zusätzlich zu Multisymbol Multithreading. Sie können eine Multi-Thread-Single-Symbol-Optimierung durchführen. Um auf diese Funktion zuzugreifen, klicken Sie auf den Dropdown-Pfeil neben der Schaltfläche "OKOptimizequot" im Fenster "Neue Analyse" und wählen Sie "Individuelles Optimieren" aus. "InDividual Optimizequot wird alle verfügbaren Prozessorkerne verwenden, um eine Single-Symbol-Optimierung durchzuführen, was es wesentlich schneller macht als die reguläre Optimierung. In quotCurrent symbolquot-Modus wird es eine Optimierung auf einem Symbol durchführen. In quotAll symbolsquot und quotFilterquot Modi verarbeitet es alle Symbole sequentiell, dh erste komplette Optimierung für das erste Symbol, dann Optimierung auf zweites Symbol usw. Einschränkungen: 1. Custom Backtester wird NICHT unterstützt (noch) 2. Smart Optimization Engines werden NICHT unterstützt - Nur EXHAUSTIVE optimierung funktioniert. Irgendwann können wir die Beschränkung loswerden (1) - wenn AmiBroker geändert wird, so benutzerdefinierter Backtester verwendet OLE nicht mehr. Aber (2) ist wahrscheinlich hier für lange bleiben. Fibonacci AFL für amibroker (interne externe Retracements) Bymehedi am 27. April 2015 Fibonacci afl für amibroker 8211 Fibonacci afl für amibroker ist ein Begriff in der technischen Analyse verwendet, die auf Bereiche der Unterstützung ( Preisstopps gehen niedriger) oder Widerstand (Preis stoppt höher). Die Fibonacci Retracement ist die potenzielle Retracement eines finanziellen Vermögens8217s ursprünglichen Umzug im Preis. Fibonacci Retracements verwenden horizontale Linien, um Bereiche der Unterstützung oder Widerstand auf den Schlüssel Fibonacci Ebenen anzuzeigen, bevor es in der ursprünglichen Richtung fortsetzt. Diese Ebenen werden durch Zeichnen einer Trendlinie zwischen zwei Extrempunkten erstellt und dann die vertikale Distanz durch die Schlüssel-Fibonacci-Verhältnisse von 23, 38, 50, 62, 78 und 100 dividiert. Dies ist der Schnappschuss von Fibonacci afl für Amibroker. Viel Glück und glücklicher Handel. Jetzt hier ist die AFL, laden Sie die Fibonacci afl für amibroker Jetzt kopieren Sie die afl-Datei und fügen Sie es in Program FilesAmiBrokerFormulasCustom Jetzt gehen Sie zu Formel Abschnitt von Amibroker und Sie erhalten die afl in Custom Ordner. Fibonacci afl für amibroker - Fibonacci afl für amibroker ist ein Begriff, der in der technischen Analyse verwendet wird, die sich auf Bereiche der Unterstützung bezieht (Preis stoppt niedriger) oder Widerstand (Preis stoppt höher). Die Fibonacci Retracement ist die potenzielle Retracement einer finanziellen Vermögenswerte ursprünglichen Umzug im Preis. Fibonacci Retracements verwenden horizontale Linien, um Bereiche der Unterstützung oder Widerstand auf den Schlüssel Fibonacci Ebenen anzuzeigen, bevor es in der ursprünglichen Richtung fortsetzt. Diese Ebenen werden durch Zeichnen erstellt.

No comments:

Post a Comment