Monday 20 November 2017

Testing A Trading System


Trading Systems Coding Testing, Troubleshooting und Optimierung. Jetzt, dass Sie ein Trading-System entworfen und codiert haben, ist es Zeit zu testen, um sicherzustellen, dass Ihre Codierung frei von logischen und technischen Fehlern ist Wir werden auch auf etwas bekannt als Optimierung - a Feature in einigen Trading-Programme, die Ihnen erlaubt, Feinabstimmung Ihre Trading-Regeln, um die Bestände, die Sie auf Trading planen. Testing Your Trading System Die überwiegende Mehrheit der Trading-Anwendungen, die Programmiersprachen unterstützen unterstützen auch Test-Tools Diese Tools sind in zwei Kategorien unterteilt. 1 Technische technische Test-Tools suchen nach technischen Fehlern in Ihrem Code Wenn Sie beispielsweise vergessen, ein Semikolon nach einer Anweisung hinzuzufügen, wird Ihnen das technische Test-Tool mitgeteilt, dass Ihre Aussage ungültig ist. Der Standort des technischen Test-Tools hängt vom Handel ab Anwendung verwendet MetaTrader zeigt einen Fehler oder fehlerhafte Ergebnisse, wenn Sie versuchen, Ihren Code zu kompilieren, während Trading-Anwendungen wie Tradecision haben ein Code-Check-Dienstprogramm in die Schnittstelle eingebaut, die Sie Ihren Code auf Fehler überprüfen können, bevor Sie es.2 Logical Logical Test-Tools suchen Für logische Fehler in Ihrem Code Zum Beispiel, wenn Sie zufällig ein größeres als Zeichen anstelle von weniger als Zeichen, die nicht ein technischer Fehler ist, wird ein logisches Test-Tool zeigen Ihnen, dass Ihre Ergebnisse don t Sinn machen. Die beliebtesten logischen Test-Tool ist das Backtesting-Tool Dieses Tool ermöglicht es Ihnen, über Daten zu nehmen und wenden Sie Ihr Trading-System auf diese Daten Dies gibt Ihnen eine Vorstellung von der folgenden. Weher Ihr Trading-System ist ein profitables one. Whate Bedingungen erweisen sich als profitabel. Wo irgendwelche Fehler in Ihren Regeln könnten vorhanden sein. Weitere Informationen finden Sie unter Backtesting Interpreting The Past. Troubleshooting Ihr Trading System Wie bei jedem anderen Programmtypen kann die Fehlersuche eine langwierige und schwierige Aufgabe sein. Die Suche nach Fehlern in Ihrem Code erfordert eine systematische Sortierung durch Ihren Code, um syntaktische Fehler zu identifizieren, die zwar oft klein sind , Kann Ihr Programm zum Stillstand bringen. Hier sind einige häufige Fehler zu suchen. Missing Semikolons nach Aussagen - diese müssen nach jeder Anweisung. Undefinierte Variablen - Denken Sie daran, dass Sie müssen sie deklarieren, bevor Sie sie verwenden. Spelling Fehler - Wenn Irgendwelche Namen oder Funktionen werden falsch geschrieben, die Handelsanwendung wird einen Fehler zurückgeben, siehe Beispiel unten. Falsche Verwendung von - Denken Sie daran, dass ein Wert einem anderen Wert zuweist, während Mittel gleich sind. Inkorrekte Verwendung von integrierten Funktionen - Konsultieren Sie Ihre Handelsanwendung s Dokumentation oder Anwendungsprogrammierung Schnittstelle API, um sicherzustellen, dass Sie die richtige Syntax. Some Trading-Anwendungen enthalten eine Funktion, die Sie testen Sie Ihren Code vor der Verwendung oder Kompilierung es Diese Funktion können Sie sehen, was der Fehler ist und auf welcher Zeile es Kann gefunden werden Take Tradecision zum Beispiel. Hier können wir sehen, dass Tradecision gibt uns die Lage Zeile und Spalte des Fehlers, eine Beschreibung des Fehlers und die Art von Fehler in diesem Fall ist es syntaktisch Wenn wir den Ausdruck betrachten, wir Kann das in Spalte 8 sehen xrossBelow ist keine gültige Funktion Wenn wir das x ersetzen, das in Spalte 8 mit ac ist, dann haben wir gültigen Code. Wenn wir bei MetaTrader schauen, können wir sehen, dass die Fehler kommen, wenn wir versuchen Kompilieren Sie das Programm. Hier können wir sehen, dass in der Beschreibung heißt es die BuyNow-Variable war nicht definiert Doppelklick auf diese Fehlermeldung bringt uns an den spezifischen Ort des Fehlers in den Code. Wie Sie sehen können, geben die meisten Trading-Anwendungen Ihnen Eine einfache Möglichkeit, technische Fehler zu lokalisieren und zu beheben Fixierung der Fehler einfach systematisch durch jede Fehlermeldung gehen und dann den Code neu kompilieren und das Trading-System auf Ihre Charts. Optimizing Your Trading System Einige Trading-Anwendungen können Sie auswählen, Variablen optimiert werden Tradecision, zum Beispiel, können Sie leicht wählen Sie eine Variable und ersetzen Sie es mit Code, der Optimierung versuchen wird Optimierung selbst ist einfach ein Prozess, der den optimalen Wert für ein bestimmtes Handelssystem Element auf der Grundlage der vergangenen Ergebnisse und Leistung finden Sie, dass Überoptimierung führt in Handelssysteme, die sich nicht in der Lage sind, sich an die Marktbedingungen anzupassen, ist es wichtig, nur einige wichtige Variablen zu optimieren, nicht jede Variable. Hier ist das, was die Optimierungsfunktion in Tradecision aussieht. Sie können sehen, dass wir zwei neue Variablen deklariert haben und sie setzen Gleich Das bedeutet einfach, dass das Handelsprogramm dies mit der optimalen Anzahl ersetzen wird. Als nächstes können Sie sehen, dass wir die neuen Variablen in unserer Handelsstrategie verwendet haben. Schließlich setzen wir einen Bereich für die Zahlen ein, damit das Programm nicht nach unendlich sucht. Einige andere Handelsprogramme haben Funktionen, die in ähnlicher Weise funktionieren, so dass Sie den numerischen Wert durch a ersetzen und die Handelsanwendung erklären, um sie zu optimieren. Konclusion Inzwischen sollten Sie ein funktionierendes Handelssystem entwickelt haben, in dem Sie Vertrauen haben können Nächster Teil dieser Serie, werden Sie lernen, wie Sie Ihr Trading-System auf Charts anwenden und wie man es verwendet, um Handelsentscheidungen zu treffen. Wie zu Backtest Trading-Systeme und vermeiden Kurvenanpassung. Um zu beurteilen, wie gut ein gegebenes Handelssystem in der Zukunft arbeiten sollte , Wir backtest es auf vergangene Marktdaten Backtesting wendet eine Reihe von Handelsregeln auf historische Daten an, um zu schätzen, wie diese Regeln durchgeführt hätten, wenn wir sie tatsächlich gehandelt hätten Gute hypothetische historische Ergebnisse garantieren nicht, dass eine Reihe von Regeln in Zukunft gut funktionieren wird Allerdings bedeutet schlechtes hypothetisches historisches Ergebnis fast sicher, dass ein System nicht in Echtzeit gehandelt werden sollte. Der wahrgenommene Wert des Backtestings ist in dem Glauben verwurzelt, dass historische Tendenzen wiederholen Trader haben Strategien auf historische Daten für Generationen getestet. Allerdings wurde die Praxis populär mit Das Aufkommen von Personal Computern und zweckgebundenen System-Test-Software wie System Writer, die in TradeStation entwickelt Diese Software und eine Datenbank von historischen Daten erlaubt diejenigen ohne Code-Schreiben Hintergrund zu testen Handelssystem Ideen Das breitere Verständnis und Akzeptanz des Handels Systeme, sowie die Frustration viele begegneten beim Versuch, Handelssysteme auf eigene Faust zu bauen, half dem Markt von Drittanbietersystemen gedeihen während der 1990.Futures Truth ist ein unabhängiges Unternehmen, das kommerziell verfügbare Handelssysteme seit den 1980er Jahren verfolgt hat. Es verfolgt mehr als 500 Systeme Futures Truth testet Handelssysteme in Echtzeit, nicht auf historische Daten Dies verhindert die Änderung von Regeln im Laufe der Zeit und besser simuliert Regelausführung in aktuellen Marktbedingungen, wie z. B. Perioden hoher Volatilität Nach Futures Truth, nur etwa 45 der verfolgten Systeme sind langfristig rentabel, während nur 20 ein gutes Risiko-Belohnungs-Verhältnis aufweisen. Allerdings sind diese Zahlen wahrscheinlich besser als die breiteren Bevölkerung, weil nur die Verkäufer, die in ihrer Logik wirklich zuversichtlich sind, es zu Futures Truth übergeben Für Echtzeit-Analyse und öffentliche Kritik. So viele Systeme scheitern, weil sie eine gültige Prämisse fehlt Stattdessen werden die Ein - und Ausstiegsparameter aus Data Mining abgeleitet Data Mining einfach scannt historische Daten für Regeln, die in der Vergangenheit gearbeitet haben Oft, solche Regeln Sind genau an die Vergangenheit angepasst und haben keine Hoffnung, besser zu arbeiten als zufällig auf unsichtbare Daten Stattdessen sollte die Systementwicklung mit einer Theorie beginnen, die getestet, analysiert und für die Anwendung optimiert werden kann. Dieses Konzept beinhaltet auch eine andere Perspektive auf Systemtests Selbst Das Ziel der Backtesting ist nicht, eine Sammlung von hypothetischen Gewinn - und Verluststatistiken zu produzieren. Es ist, die Gültigkeit der Theorie und die Genauigkeit der Regeln bei der Erfassung der Prämisse zu testen. Die Systemprüfung ist ein vielfältiger Prozess von den Daten bis zur Zeit Skalierung, Auftragsannahme, Vertragespezifikationen und Risikokontrolle Einesfalls kann ein ansonsten gültiger Test ruinieren oder manipulieren können Ergebnisse generieren, die weit überlegen sind als das, was wir in Echtzeit erreichen würden. Sie müssen es richtig machen Sie hoffen, zu validieren oder wenn angemessen, entkräften Sie Ihr System. Tools des Handels. Es gibt zwei Elemente zum Backtesting Die richtige Werkzeuge Software und Daten und eine wissenschaftliche Methode, um Systeme mit diesen Werkzeugen zu entwickeln Lassen Sie s beginnen, indem Sie die Werkzeuge des Handels. Weitere Optionen stehen für die Prüfung Ihrer Ideen zur Verfügung. Sie unterscheiden sich in der Leichtigkeit, Ideen in Code umzuwandeln und wie sie mit den Details umgehen, was einen großen Einfluss auf die Ergebnisse haben kann. Zum Beispiel, wenn ein System auf eine Limit-Reihenfolge eintritt, Zeichnet eine Füllung auf, wenn dieser Preis berührt wird. Allerdings gibt es kaum eine Garantie, dass eine solche Bestellung in echten Handel gefüllt worden wäre, noch gibt es eine Garantie, die es gewonnen hat. Einstieg auf Stopps garantiert einen Eintrag, aber nicht einen Preis. Eine andere Frage ist Aufzeichnung von realen Preisen Während die meisten professionell entwickelten Software nicht mehr dieses Problem hat, ist es immer noch ein Anliegen für diejenigen, die manuell Tests von Systemen in Tabellenkalkulationen wie Microsoft Excel Zum Beispiel, wenn ein System kauft auf einem Stopp gleich dem Ende plus ein Drittel Des durchschnittlichen Bereichs über die letzten drei Perioden, und wenn die durchschnittliche Reichweite 10 ist, dann kauften wir am Ende plus 3 333 Wenn wir den E-Mini SP 500 handeln, handelt es sich um 0 25 Tick-Größen Dies bedeutet den Eintrag Differential muss bis zu 3 50 Ein Anfangshändler kann dies nicht erkennen, wenn manuell knacken Zahlen, und es war nicht zu lange her, dass viele professionelle Programme den gleichen Fehler gemacht Im Laufe der Zeit könnte ein solcher Fehler zu einer beträchtlichen Diskrepanz hinzufügen Großes Bild, aber solche prozeduralen Details sind gering Das große Problem ist data. Related Articles. This Seiten zeigt die richtige Methode, um ein Handelssystem für den besten Gebrauch einzurichten. Der erste Punkt, der in den Sinn der meisten durchschnittlichen Händler kommt, ist, wie viel Arbeit ist daran beteiligt, diese wesentliche Aufgabe richtig zu tun So können Sie sich ein paar Fragen stellen, bevor Sie beginnen. Are Sie dediziert. Do wollen Sie ein hohes Einkommen und eine gute Zukunft ohne Geld Sorgen haben. Kann Sie sich an ein System ohne Zweite zu erraten Die Signale. Are Sie bereit, in 2-6 Monate intensive Forschung, um die gewünschte no2 Ergebnis zu bekommen. Haben Sie die Geduld zu handeln, obwohl Draw-downs, die 20-30 oder mehr werden könnte. Haben Sie die Geduld zu ertragen Lange Unterwasser-Perioden von bis zu einem Jahr. Wenn die Antwort auf alle oben genannten ist ja, dann können Sie lesen on. Step 1 Stellen Sie Ihre Liste der Märkte und frieren Sie den Datensatz über einen statischen Datum range. To zuversichtlich, solide Ergebnisse Sie Müssen Sie Ihr System über eine große Anzahl von Märkten testen. Seien Sie sicher, dass Sie viele Daten mindestens 5 Jahre haben. Stellen Sie sicher, dass Sie die Daten Ihres Tests so festlegen, dass die Ergebnisse fair sind, denn wenn Sie Ihren Datensatz ständig aktualisieren, dann Neuere Tests zeigen unterschiedliche Ergebnisse, wie mehr Datenströme in. Step 2 Beginnen Sie mit einer breiten Palette von groben Tests. Um sicher zu sein, dass Sie alle Einstellungen richtig genagelt haben, beginnen Sie mit den Einstellungen, die Weg zu langsam sind, und laufen Sie den ganzen Weg Bis zu Einstellungen, die viel zu schnell sind. Die langsamste Einstellung zeigt auf der linken Seite produziert nur 2945 Trades auf 123 Aktien in einem zehnjährigen Lauf, und die schnellste Einstellung produziert mehr als 44.000 Trades auf der gleichen Liste. Wenn Ihr System robust ist, Sie werden wahrscheinlich ein schönes Verteilungsmuster beobachten, wie in der Grafik auf der linken Seite gezeigt. Gerade können wir sehen, dass die Precision Stop 2011 in allen gezeigten Einstellungen profitabel ist und der Erfolg im Bereich mehrerer Einstellungen zwischen 0 und 0 erreicht wird. Wenn Sie die groben Tests gemacht haben, können Sie sich dann einen genaueren Blick auf die System-Sweet-Spot, unter besonderer Augenmerk auf die Drawdowns, Getriebe Ebenen und Unterwasser-Werte. Hinweis ist es sehr wichtig, Getriebe Ebenen in jedem Lauf zu standardisieren, es Wird beobachtet, dass höhere Frequenzsysteme höhere Gearing als niedrige F-Modelle produzieren, da das System mehr auf die jüngsten Eigenkapitaländerungen reagiert. Seien Sie sicher, dass Sie Ihre Getriebeergebnisse protokollieren und erneut testen, bis Sie für jeden Test das gleiche Durchschnittsniveau haben Tun dies Ihre Testzeit wird verschwendet werden, da keine realistischen Vergleiche erreicht werden können. Schritt 3 Untersuchen Sie das System Sweet Spot, indem Sie über den gleichen Datensatz mit einem feineren inkrementellen steps. Once Sie haben die feinere Prüfung, die Sie dann beobachten, welche Einstellungen Sind am besten. Die Grafik auf der linken Seite zeigt wieder eine schöne Glocke Kurve Form, die ein sehr robustes System deutlich sichtbar ist 0 5 mehrere hat sich am besten über den Datensatz und ist ein klarer Gewinner. In diesem Punkt können Sie Ihre Drawdowns und Unterwasser-Werte zu ermitteln, ob das Modell ist etwas, was Sie können in tatsächlichen Handel bleiben, als ob Sie nicht in der Lage, das Modell zu halten, dann müssen Sie Anpassungen vornehmen, bis das System passt Ihre Persönlichkeit. Hinweis ist es sehr wichtig, kurze Notizen für jeden zu nehmen Test unter Angabe der Beobachtungen, die Sie gemacht haben. Schritt 4 Studieren Sie die Ergebnisse, die Aufmerksamkeit auf Details. Die Tabelle unten zeigt die Ergebnisse der detaillierten kleineren Inkrement-Tests, die besten Felder in blau gezeigt, schlimmsten in rot. Die Precision Stop 2011 funktionierte am besten bei 0 5 Mehrfache Einstellung in diesen Tests, die eine sehr robuste Verteilung der Resultate zeigen, die in allen eingesetzten Bedingungen rentabel sind. Sie können deutlich sehen, wie das unter Wasser UW durch das Dach geht, wenn das System beschleunigt wird, da Provisionen die Gewinne während der ruhigen Marktperioden verbrennen Bei 4 5 mit einer Toleranz von 0 3 auf die Ergebnisse, 0 4 Test zeigt 4 779 Getriebe, aber es ist nicht wert re-testing als die Unterwasser-Werte sind sehr hoch. Schritt 5 Studie das System auf einem anderen Satz von Daten. Sie können meine Prüfung über einen anderen Datensatz auf der Simulationsvideoseite beobachten. Mit der 0 5 Mehrfacheinstellung und dem durchschnittlichen Gearing von 4 459 Zeit-Eigenkapital waren die Ergebnisse ein Gewinn von 176.755.656 mit einem maximalen Drawdown von 24 29 mit 260 Tagen maximal unter Wasser Die die Ergebnisse in der Tabelle oben vollständig wegblasen. Falls Sie sich fragen, warum so ein großer Unterschied in den Gewinnen, der Punkt, der dies zeigt, ist die Bedeutung der Auswahl der günstigen Märkte zum Handel. Jeder Test, der auf verschiedenen Datensätzen durchgeführt wird, produziert wilde Schwankungen in Ergebnisse, und in der Tat, wenn ich auf kirsche gepflückten Märkten getestet haben, die wissen, um gut mit meinen Systemen arbeiten, die daraus resultierenden Gewinne übertreffen trillions. Step 6 Überprüfen Sie Ihre Ergebnisse sind genau. Der ganze Punkt der System-Test-Simulationen ist, um ein Gefühl für Wie Ihr System in der Gegenwart durchführen wird, indem es es über die Vergangenheit läuft. Je länger die Daten, die Sie testen, desto mehr ist die Chance, Marktbedingungen zu finden, die den heutigen Bedingungen ähnlich sind und die Handelskosten genau festlegen und berücksichtigen Schlupf ist wichtig, bevor Sie irgendeine Art von Glauben in Ihr auserwähltes System stellen können. Wenn Ihre Prüfung vermutet wird, werden Sie es in der Rückseite Ihres Verstandes wissen und dieses wird Sie wahrscheinlich zum Springen auf ein weg vom System führen, zweites erraten, wann es wird Handel und nicht in der Lage, um es für eine lange Zeit. Schritt 7 Vergleichen Sie andere Systeme über die gleichen Datensätze. Even, wenn das System Ihr Test produziert gute Ergebnisse, ist es wichtig, auf der Suche nach etwas Besseres, da es viele helle Seelen gibt Da draußen in der Welt Entwerfen von Systemen, die sehr gut, es ist eine gute Idee, um zu überprüfen, dass Ihr ausgewähltes System ist wirklich das Beste, was Sie finden können. Einige der verwendeten Begriffe kann Ihnen nicht vertraut sein, so niedriger die Seite ist Eine ausführliche Erklärung der Begriffe verwendet. Nachdem Sie das Video sehen Sie sehen mich klicken Sie auf Generieren Excel-Bericht, ist dieser aktuelle Bericht zum Download für Ihre eigene perusal. If Sie haben Schwierigkeiten beim Betrachten aller Zahlen beim Anschauen des Videos, versuchen Sie es anpassen Die Auflösung auf 720 HD, die auf der Video-Toolbar gefunden wird dann das Video wird HD. Shortly werde ich Hinzufügen einige Vergleichsvideos mit dem Donchian 210 Tage Trend-System im Vergleich zu den Precision Stop 2011 Modell Richard Donchian ist vermutlich die erste Person zu sein Entwerfen Sie einen Trend nach dem System, und das sehr einfache Modell, das er verwendet hat, wurde lange gekauft, als ein 210-Tage-High getroffen wurde, und ging kurz verkauft, wenn ein 210-Tage-Tief-Hit getroffen wurde. Das Gegenteil entsprechende 210-Tage-Wert wird als Stopp-Eintrag für den nächsten verwendet Handel. Während das Donchian System ist sehr einfach, es tut in der Tat tendenziell vernünftige Gewinne auf lange Sicht auf Kosten der großen Drawdowns Bevor Händler das Donchian Modell als grob und übermäßig einfach zu entlassen, ist es auch gut daran erinnern, dass seine Arbeit Ist der Eckstein aller Trends nach Systemen, die heute verfügbar sind. Das Donchian System wurde von Ed Seykota auf einem alten Fortran Computer vor vielen Jahren mit Punchkarten getestet, um seine Erstaunen Herr Seykota fand es rentabel, so ging er auf dem Design seine Eigenen exponentiellen gleitenden durchschnittlichen Trend nach Modell, und inspiriert viele andere Händler, ihre eigenen zu entwickeln. Die Precision Stop 2011 ist nur ein Trend nach Modell auf der Grundlage meiner vielen Jahre des Handels, Tests und technische Analyse Erfahrung Einige meiner Inspiration für die Gestaltung dieses Modells ist Ein Ergebnis des Studiums der Arbeit der beiden vorgenannten Herren, suche Verbesserungen, wo ich sie finden konnte Es ist anders als das Seykota-Modell und das Donchian-Modell, der einzige gemeinsame Faktor ist, dass es Trends in präziser Weise folgt. Roger Medcalf 2010. Zusätzliche Klärungsinformationen. Wie der Test verwendet Schließung Preise für offene hohe niedrige schließen, ist es nicht möglich, das Gebot zu extrahieren und fragen Preise Um dies genau zu bekommen gibt es zwei separate Features hinzugefügt, um eine realistische Simulation. Spread Prozent Wenn das System kauft Eine Aktie, die einen Schlusskurs von 100p hat und der gespreizte Prozentsatz auf 1 5 eingestellt ist, bedeutet dies, dass sie die Daten fragen 101 5 und Buchhandelsbasis desselben das gleiche geschieht, wenn die Geschäfte abgeschlossen sind So, wenn der Handel geöffnet und geschlossen wurde Auf der gleichen 100p-Ebene würde es zu einem Preis von 98 5p verkaufen, was insgesamt Kosten von 3 pro Handel Einige Bestände in der Prüfung haben enge Ausbreitung von weniger als 0 25 und andere sind breiter bis zu 5, so dass diese Funktion durchschnittlich gut aussieht. Slippage-Faktor Diese zusätzliche Funktion macht das System noch strenger, da es dann mehr Kosten für die Gleichung EG hinzufügt, wenn der beabsichtigte Eintrittspreis die obigen 101 5 ist und die Tage hoch 105 ist, wird die Simulation diesen Handel bei 101 5 105 buchen 2, die einen Einstieg bei 103 machen 2.Software Bitte beachten Sie die Software, die diese Simulation generiert hat, ist nicht zum Verkauf an die Öffentlichkeit, da es meine eigene proprietäre Software-Design ist. Der Verkaufsposten ist die Precision Stop 2011, die eine Ergänzung für Tradestation ist Alle Versionen und Multicharts alle Versionen, die für die Freigabe im Januar 2011 fällig sind.

No comments:

Post a Comment