Friday, October 14, 2016

Wie Backtest Ein Handelssystem In Excel

Mit Excel-Back-Test Trading-Strategien Wie Back-Test mit Excel Ive getan eine angemessene Menge an Trading-Strategie Back-Tests. Ive verwendet anspruchsvolle Programmiersprachen und Algorithmen und Ive auch getan es mit Bleistift und Papier. Sie brauchen nicht, ein Raketenwissenschaftler oder ein Programmierer zu sein, zum der vielen Handelsstrategien zurück zu prüfen. Wenn Sie ein Tabellenkalkulationsprogramm wie Excel betreiben können, dann können Sie testen viele Strategien. Ziel Das Ziel dieses Artikels ist es, Ihnen zu zeigen, wie Sie eine Trading-Strategie mithilfe von Excel und einer öffentlich zugänglichen Datenquelle testen können. Dies sollte nicht kostet Sie mehr als die Zeit es braucht, um den Test zu tun. Daten Bevor Sie eine Strategie testen, benötigen Sie einen Datensatz. Mindestens dies ist eine Reihe von Datum / Zeiten und Preise. Realistisch brauchen Sie das Datum / Uhrzeit, offen, hoch, niedrig, enge Preise. Sie benötigen normalerweise nur die Zeitkomponente der Datenreihe, wenn Sie Intraday-Trading-Strategien testen. Wenn Sie zusammenarbeiten und lernen, wie Sie zurück mit Excel testen, während Sie dies lesen, dann folgen Sie den Schritten, die ich in jedem Abschnitt skizzieren. Wir müssen einige Daten für das Symbol, dass wir gehen zurück zu erhalten. Gehen Sie zu: Yahoo Finance Geben Sie im Feld Enter Symbol (s) Folgendes ein: IBM und klicken Sie auf GO Unter Quotes auf der linken Seite klicken Sie auf Historische Kurse und geben Sie die gewünschten Datumsbereiche ein. I Ausgewählt aus 1 Jan 2004 bis 31 Dez 2004 Scrollen Sie bis zum Ende der Seite und klicken Sie auf Download To Spreadsheet Speichern Sie die Datei mit einem Namen (wie ibm. csv) und einem Ort, den Sie später finden können. Vorbereiten der Daten Öffnen Sie die Datei (die Sie oben heruntergeladen haben) mit Excel. Aufgrund der dynamischen Natur des Internets können sich die Anweisungen, die Sie oben gelesen haben, und die Datei, die Sie öffnen, durch die Zeit, die Sie lesen, geändert haben. Wenn ich diese Datei heruntergeladen, die oberen paar Zeilen sah so aus: Sie können jetzt löschen Sie die Spalten, die Sie nicht verwenden werden. Für den Test, dass Im zu tun, werde ich nur das Datum verwenden, öffnen und schließen Werte, so habe ich gelöscht die High, Low, Volume und Adj. Schließen. Ich auch die Daten sortiert, so dass das älteste Datum war zuerst und das späteste Datum war am unteren Rand. Verwenden Sie dazu die Menüoptionen Data - gt Sort. Strategie Anstatt eine Strategie an sich zu testen, werde ich versuchen, den Tag der Woche zu finden, die die beste Rendite lieferte, wenn man einem Kauf die offene und die enge Strategie folgte. Denken Sie daran, dass dieser Artikel hier ist, um Ihnen vorzustellen, wie zu verwenden, um Excel-Teststrategien zurück. Darauf können wir bauen. Hier ist die Datei ibm. zip, die die Tabelle mit den Daten und Formeln für diesen Test enthält. Meine Daten befinden sich nun in den Spalten A bis C (Datum, Öffnen, Schließen). In den Spalten D bis H habe ich Platzformeln, um die Rendite an einem bestimmten Tag zu bestimmen. Eingabe der Formeln Der schwierige Teil (außer youre ein Excel-Experte) ist die Ausarbeitung der Formeln zu verwenden. Dies ist nur eine Frage der Praxis und je mehr Sie üben die mehr Formeln youll entdecken und die mehr Flexibilität youll haben mit Ihrer Prüfung. Wenn Sie die Tabelle heruntergeladen haben, dann werfen Sie einen Blick auf die Formel in Zelle D2. Es sieht so aus: Diese Formel wird auf alle anderen Zellen in den Spalten D bis H (mit Ausnahme der ersten Zeile) kopiert und braucht nicht angepasst zu werden, sobald sie kopiert wurde. Ill erklären kurz die Formel. Die IF-Formel hat eine Bedingung, einen wahren und einen falschen Teil. Die Bedingung ist: Wenn der Wochentag (umgerechnet auf eine Zahl von 1 bis 5, die Montag bis Freitag entspricht) mit dem Wochentag in der ersten Zeile dieser Spalte (D1) identisch ist. Der wahre Teil der Anweisung (C2-B2) gibt uns einfach den Wert von Close-Open. Dies zeigt, dass wir die Open gekauft und verkauft die Close und das ist unser Gewinn / Verlust. Der falsche Teil der Anweisung ist ein Paar von doppelten Anführungszeichen (), die nichts in die Zelle setzen, wenn der Tag der Woche nicht übereinstimmt. Die Zeichen links von dem Spaltenbuchstaben oder der Zeilennummer sperren die Spalte oder Zeile, so dass, wenn sein kopierter Teil der Zellreferenz nicht ändert. Wenn also die Formel in das Beispiel kopiert wird, ändert die Referenz auf die Datumszelle A2 die Zeilennummer, wenn sie in eine neue Zeile kopiert wird, aber die Spalte in Spalte A bleibt. Sie können die Formeln verschachteln und außergewöhnlich leistungsfähige Regeln bilden Und Ausdrücke. Die Ergebnisse Am unteren Rand der Wochentagsspalten habe ich einige Zusammenfassungsfunktionen platziert. Bemerkenswert sind die Durchschnitts - und Summenfunktionen. Diese zeigen uns, dass im Jahr 2004 der profitabelste Tag, um diese Strategie umzusetzen war an einem Dienstag und dies wurde von einem Mittwoch dicht gefolgt. Als ich die Expiry Freitags - Bullish oder Bearish-Strategie getestet und schrieb, dass Artikel, den ich einen sehr ähnlichen Ansatz mit einer Kalkulationstabelle und Formeln wie diese. Das Ziel dieses Tests war, zu sehen, wenn Expiry freitags allgemein bullish oder bearish waren. Was jetzt versuchen Sie es aus. Laden Sie einige Daten von Yahoo Finanzen. Laden Sie es in Excel und probieren Sie die Formeln und sehen, was Sie kommen können. Stellen Sie Ihre Fragen im Forum. Viel Glück und profitable Strategie hunting06 / 17/2013 Neueste Version von TraderCode (v5.6) umfasst neue Indikatoren für technische Analyse, Point-and-Figure Charting und Strategie Backtesting. 06/17/2013 Neueste Version von NeuralCode (v1.3) für Neural Networks Trading. 06/17/2013 ConnectCode Barcode Font Pack - ermöglicht Barcodes in Office-Anwendungen und enthält ein Add-In für Excel, das die Massenerzeugung von Barcodes unterstützt. 06/17/2013 InvestmentCode, eine umfassende Palette von Finanzrechnern und Modellen für Excel ist ab sofort verfügbar. 09/01/2009 Einführung von Free Investment und Financial Calculator für Excel. 02/1/2008 Freigabe von SparkCode Professional - Add-In zur Erstellung von Dashboards in Excel mit Sparklines 12/15/2007 Ankündigung von ConnectCode Duplicate Remover - ein leistungsfähiges Add-In zum Finden und Entfernen von doppelten Einträgen in Excel 09/08/2007 Launch of TinyGraphs - Open Source Add-In zur Erstellung von Sparklines und kleinen Diagrammen in Excel. Strategie Backtesting in Excel-Strategie Backtesting-Experten Überblick Der Backtesting-Experte ist ein Tabellenkalkulationsmodell, mit dem Sie Strategien mit Hilfe der technischen Indikatoren erstellen und die Strategien durch historische Daten ausführen können. Die Performance der Strategien kann dann schnell und einfach gemessen und analysiert werden. Während des Backtesting-Prozesses durchläuft der Backtesting Expert die historischen Daten zeilenweise von oben nach unten. Jede angegebene Strategie wird bewertet, um zu ermitteln, ob die Einreisebedingungen erfüllt sind. Wenn die Bedingungen erfüllt sind, wird ein Handel eingegeben. Wenn andererseits die Austrittsbedingungen erfüllt sind, wird eine Position, die zuvor eingegeben wurde, verlassen. Verschiedene Variationen von technischen Indikatoren können generiert und kombiniert werden, um eine Handelsstrategie zu bilden. Das macht den Backtesting Expert zu einem äußerst leistungsstarken und flexiblen Werkzeug. Backtesting Expert Der Backtesting Expert ist ein Tabellenkalkulationsmodell, das Ihnen erlaubt, Trading-Strategien unter Verwendung der technischen Indikatoren zu erstellen und die Strategien durch historische Daten laufen zu lassen. Die Performance der Strategien kann dann schnell und einfach gemessen und analysiert werden. Das Modell kann eingerichtet werden, um in Long - oder Short-Positionen einzutreten, wenn bestimmte Bedingungen auftreten und die Positionen verlassen, wenn ein anderer Satz von Bedingungen erfüllt ist. Durch den automatischen Handel auf historische Daten kann das Modell die Rentabilität einer Handelsstrategie bestimmen. Backtesting Expert Schritt für Schritt Tutorial 1. Starten des Backtesting Expert Der Backtesting Expert kann über die Windows Startmenüs - TraderCode - Backtesting Expert gestartet werden. Dies startet ein Tabellenkalkulationsmodell mit mehreren Arbeitsblättern für Sie, um technische Analyseindikatoren zu generieren und Tests für die verschiedenen Strategien auszuführen. Sie werden bemerken, dass der Backtesting-Experte viele vertraute Arbeitsblätter wie DownloadedData, AnalysisInput, AnalysisOutput, ChartInput und ChartOutput aus dem Technical Analysis Expert-Modell enthält. Dadurch können Sie alle Ihre Back-Tests schnell und einfach aus einer vertrauten Arbeitsblattumgebung ausführen. 2. Wählen Sie zuerst das DownloadedData-Arbeitsblatt aus. Sie können Daten aus allen Tabellenkalkulationen oder kommagetrennten Werten (csv) - Dateien in dieses Arbeitsblatt für die technische Analyse kopieren. Das Format der Daten ist wie im Diagramm dargestellt. Alternativ können Sie sich auf das Dokument zum Herunterladen von Aktienhandelsdaten beziehen, um Daten aus namhaften Datenquellen wie Yahoo Finance, Google Finance oder Forex zum Gebrauch im Backtesting Expert herunterzuladen. 3. Nachdem Sie die Daten kopiert haben, gehen Sie zum AnalysisInput-Arbeitsblatt und klicken Sie auf die Schaltfläche Analysieren und Zurücktasten. Dies wird die verschiedenen technischen Indikatoren in das AnalysisOutput-Arbeitsblatt generieren und Backtesting auf die Strategien durchführen, die im StrategyBackTestingInput-Arbeitsblatt angegeben werden. 4. Klicken Sie auf das StrategyBackTestingInput-Arbeitsblatt. In diesem Tutorial müssen Sie nur wissen, dass wir sowohl eine lange und kurze Strategien mit gleitenden Durchschnitt Crossovers angegeben haben. Im nächsten Abschnitt dieses Dokuments werden wir detaillierte Strategien erläutern. Das folgende Diagramm zeigt die beiden Strategien. 5. Sobald die Back-Tests abgeschlossen sind, wird die Ausgabe in den Arbeitsbereichen AnalysisOutput, TradeLogOutput und TradeSummaryOutput platziert. Das AnalysisOutput-Arbeitsblatt enthält die vollen historischen Kurse und die technischen Indikatoren der Aktie. Während der Back-Tests werden, wenn die Voraussetzungen für eine Strategie erfüllt sind, Informationen wie Kaufpreis, Verkaufspreis, Provision und Gewinn / Verlust in diesem Arbeitsblatt für eine einfache Referenz aufgezeichnet. Diese Informationen sind nützlich, wenn Sie durch die Strategien verfolgen möchten, um zu sehen, wie die Aktienpositionen eingegeben und beendet werden. Das TradeLogOutput-Arbeitsblatt enthält eine Zusammenfassung der vom Backtesting Expert durchgeführten Trades. Die Daten können einfach gefiltert werden, um nur Daten für eine bestimmte Strategie anzuzeigen. Dieses Arbeitsblatt ist nützlich, um den Gesamtgewinn oder - verlust einer Strategie zu unterschiedlichen Zeitrahmen zu bestimmen. Die wichtigste Ausgabe der Back-Tests wird im TradeSummaryOutput-Arbeitsblatt platziert. Dieses Arbeitsblatt enthält den Gesamtgewinn der durchgeführten Strategien. Wie in der folgenden Grafik dargestellt, erzielten die Strategien einen Gesamtgewinn von 2.548,20, in dem insgesamt 10 Trades erzielt wurden. Von diesen Trades sind 5 Long Positionen und 5 Short Positionen. Der Ratio-Gewinn / Verlust von mehr als 1 gibt eine rentable Strategie an. Erläuterung der verschiedenen Arbeitsblätter Dieser Abschnitt enthält die detaillierte Erläuterung der verschiedenen Arbeitsblätter im Backtesting Expert-Modell. Die Arbeitsschritte DownloadedData, AnalysisInput, AnalysOutput, ChartInput und ChartOutput entsprechen denen des Technical Analysis Expert-Modells. Daher werden sie in diesem Abschnitt nicht beschrieben. Eine vollständige Beschreibung dieser Arbeitsblätter finden Sie im Abschnitt Technical Analysis Expert. StrategyBackTestingInput Arbeitsblatt Alle Eingaben für Backtesting einschließlich der Strategien werden mit diesem Arbeitsblatt eingegeben. Eine Strategie ist im Grunde eine Reihe von Bedingungen oder Regeln, die Sie in einer Aktie kaufen oder verkaufen eine Aktie. Zum Beispiel möchten Sie vielleicht eine Strategie ausführen, um Long (Kauf Aktien) gehen, wenn die 12 Tage gleitenden Durchschnitt des Preises kreuzt über dem 24 Tage gleitenden Durchschnitt. Dieses Arbeitsblatt arbeitet zusammen mit den technischen Indikatoren und Preisdaten im AnalysisOutput-Arbeitsblatt. Daher müssen die gleitenden durchschnittlichen technischen Indikatoren generiert werden, um eine Handelsstrategie basierend auf dem gleitenden Durchschnitt zu haben. Die erste Eingabe, die in diesem Arbeitsblatt erforderlich ist (wie in der folgenden Abbildung gezeigt), gibt an, ob alle Trades am Ende der Back-Testing-Sitzung beendet werden sollen. Stellen Sie sich das Szenario vor, in dem Bedingungen für den Erwerb einer Aktie aufgetreten sind und der Backtesting Expert hat einen Long (oder Short) Trade eingegeben. Allerdings ist der Zeitrahmen zu kurz und beendet, bevor der Handel die Austrittsbedingungen erfüllen kann, was dazu führt, dass einige Trades nicht beendet werden, wenn die Backtesting-Sitzung endet. Sie können dies auf Y setzen, um zu erzwingen, dass alle Trades am Ende der Backtesting-Sitzung verlassen werden. Sonst werden die Trades geöffnet, wenn die Backtesting-Sitzung endet. Strategien In einem einzigen Backtest können maximal 10 Strategien unterstützt werden. Das folgende Diagramm zeigt die für die Angabe einer Strategie erforderlichen Eingaben. Strategy Initials - Diese Eingabe akzeptiert maximal zwei Alphabete oder Zahlen. Die Strategy Initials werden in den AnalysisOutput - und TradeLog-Arbeitsblättern zur Ermittlung der Strategien verwendet. Long (L) / Short (S) - Hier wird angegeben, ob eine Long - oder Short-Position eingegeben werden soll, wenn die Einstiegsbedingungen der Strategie erfüllt sind. Einreisebedingungen Ein Long - oder Short-Trade wird bei Erfüllung der Entry Bedingungen eingegeben. Die Eingabebedingungen können als Formelausdruck ausgedrückt werden. Der Formelausdruck wird zwischen Groß - und Kleinschreibung unterschieden und kann wie nachfolgend beschrieben Funktionen, Operatoren und Spalten verwenden. Crossabove (X, Y) - Gibt True zurück, wenn Spalte X die Spalte Y überschreitet. Diese Funktion überprüft die vorherigen Perioden, um sicherzustellen, dass tatsächlich ein Crossover aufgetreten ist. Crossbelow (X, Y) - Gibt True zurück, wenn Spalte X die Spalte Y überschreitet. Diese Funktion prüft die vorherigen Perioden, um sicherzustellen, dass tatsächlich ein Crossover aufgetreten ist. Und (logicalexpr,) - Boolean Und. Gibt True zurück, wenn alle logischen Ausdrücke True sind. Oder (logicalexpr,) - Boolean Or. Gibt True zurück, wenn einer der logischen Ausdrücke True ist. Daysago (X, 10) - Liefert den Wert (in Spalte X) von 10 Tagen. Previoushigh (X, 10) - Liefert den höchsten Wert (in Spalte X) der letzten 10 Tage einschließlich heute. Previouslow (X, 10) - Liefert den niedrigsten Wert (in der Spalte X) der letzten 10 Tage einschließlich heute. Operatoren Größer als gleich Nicht gleich Größer als oder gleich Addition - Subtraktion Multiplikation / Division Spalten (aus AnalysisOutput) A - Spalte AB - Spalte BC .. .. YY - Spalte YY ZZ - Spalte ZZ Dies ist der interessanteste und flexibelste Teil der Einreisebestimmungen. Es können Spalten aus dem AnalysisOutput-Arbeitsblatt angegeben werden. Wenn die Rücktests durchgeführt werden, wird jede Zeile aus der Spalte für die Auswertung verwendet. Beispielsweise bedeutet A 50, dass jede der Zeilen in Spalte A des AnalysisOutput-Arbeitsblatts bestimmt wird, ob sie größer als 50 ist. AB In diesem Beispiel , Wenn der Wert in Spalte A im AnalysisOutput-Arbeitsblatt größer oder gleich dem Wert von Spalte B ist, wird die Eingabebedingung erfüllt. Und (A B, CD) Wenn in diesem Beispiel der Wert in Spalte A im AnalysisOutput-Arbeitsblatt größer als der Wert von Spalte B ist und der Wert von Spalte C größer als Spalte D ist, wird die Eingangsbedingung erfüllt. Crossabove (A, B) Wenn in diesem Beispiel der Wert der Spalte A im AnalysisOutput-Arbeitsblatt den Wert von B überschreitet, wird die Eingabebedingung erfüllt. Crossabove bedeutet, dass A ursprünglich einen Wert hat, der kleiner oder gleich B ist und der Wert von A anschließend größer als B wird. Exitbedingungen Die Exitbedingungen können Funktionen, Operatoren und Spalten verwenden, wie in den Eingabebedingungen definiert. Darüber hinaus können sie auch Variablen wie folgt verwenden: Variablen für Exit Bedingungen Profit Dies ist definiert als der Verkaufspreis abzüglich des Kaufpreises. Der Verkaufspreis muss größer sein als der Kaufpreis für einen Gewinn zu machen. Andernfalls wird der Gewinn null sein. Verlust Dies ist definiert als der Verkaufspreis abzüglich des Kaufpreises, wenn der Verkaufspreis unter dem Kaufpreis liegt. Profit (Verkaufspreis - Kaufpreis) / Kaufpreis Hinweis. Muss der Verkaufspreis größer oder gleich Kaufpreis sein. Ansonsten ist die Gewinnspanne Null. Losspct (Verkaufspreis - Kaufpreis) / Kaufpreis Hinweis. Muss der Verkaufspreis unter dem Kaufpreis liegen. Andernfalls ist losspct Null. Beispiele profitpct 0.2 Wenn in diesem Beispiel der Gewinn prozentual größer als 20 ist, werden die Exit-Bedingungen erfüllt. Kommission - Kommission in Bezug auf einen Prozentsatz des Börsenkurses. Wenn der Börsenkurs 10 ist und die Kommission 0,1 ist, dann wird die Provision 1 sein. Die prozentuale Provision und Provision in Dollar wird zusammengefasst, um die Gesamtprovision zu berechnen. Kommission - Kommission in Dollar. Die prozentuale Provision und Provision in Dollar wird zusammengefasst, um die Gesamtprovision zu berechnen. Anzahl der Anteile - Anzahl der zu erwerbenden oder zu veräußernden Aktien, wenn die Bedingungen für die Einreise / Ausreise erfüllt sind. TradeSummaryOutput Arbeitsblatt Dies ist ein Arbeitsblatt, das eine Zusammenfassung aller Trades enthält, die während der Backtests ausgeführt werden. Die Ergebnisse sind in Long und Short Trades kategorisiert. Eine Beschreibung aller Felder finden Sie weiter unten. Gesamtgewinn / - verlust - Gesamtergebnis nach Provision. Dieser Wert wird durch Summierung aller Gewinne und Verluste aller im Rücktest simulierten Trades berechnet. Gesamtgewinn / - verlust vor Kommission - Gesamtergebnis vor Provision. Wenn Provision auf Null gesetzt ist, hat dieses Feld den gleichen Wert wie Total Profit / Loss. Gesamtprovision - Gesamtprovision für alle Trades, die während des Backtests simuliert werden. Gesamtzahl der Trades - Gesamtzahl der Trades, die während des simulierten Backtests durchgeführt wurden. Anzahl der Gewinner Trades - Anzahl der Trades, die einen Gewinn erzielen. Anzahl der verlierenden Trades - Anzahl der Trades, die einen Verlust machen. Prozentsatz gewinnende Trades - Anzahl der Gewinntrades dividiert durch Gesamtzahl der Trades. Prozentsatz verlieren Trades - Anzahl der verlorenen Trades geteilt durch die Gesamtzahl der Trades. Durchschnittlicher gewinnender Handel - Der durchschnittliche Wert der Gewinne des Gewinns. Durchschnittlicher Verlust des Handels - Der Durchschnittswert der Verluste der verlierenden Trades. Durchschnittlicher Handel - Der Durchschnittswert (Gewinn oder Verlust) eines Einzelhandels des simulierten Rücktests. Größter gewinnender Handel - Der Gewinn des größten Gewinnhandels. Größter Verlusthandel - Der Verlust des größten Verlusthandels. Ratio durchschnittlicher Gewinn / durchschnittlicher Verlust - Durchschnittlicher gewinnender Handel geteilt durch den durchschnittlichen Verlusthandel. Ratio Gewinn / Verlust - Summe aller Gewinne im Siegertausch geteilt durch die Summe aller Verluste in den verlierenden Trades. Ein Verhältnis von größer 1 gibt eine rentable Strategie an. TradeLogOutput Arbeitsblatt Dieses Arbeitsblatt enthält alle Trades, die vom Backtesting Expert nach dem Datum sortiert werden. Es erlaubt Ihnen, zu einem bestimmten Handel oder Zeitrahmen zu vergrößern, um die Rentabilität einer Strategie schnell und einfach zu bestimmen. Datum - Das Datum, an dem eine Long - oder Short-Position eingegeben oder verlassen wird. Strategie - Die Strategie, die für die Durchführung dieses Handels verwendet wird. Position - Die Position des Handels, ob lang oder kurz. Handel - Gibt an, ob dieser Handel Kauf oder Verkauf von Aktien ist. Aktien - Anzahl der gehandelten Aktien. Preis - Der Preis, zu dem die Aktien gekauft oder verkauft werden. Comm. - Gesamtprovision für diesen Handel. PL (B4 Comm.) - Gewinn oder Verlust vor Provision. PL (Achternkomm.) - Profit oder Verlust nach Auftrag. Cum PL (Aft Comm.) - Kumuliertes Ergebnis nach Provisionen. Dieser wird als kumulierter Gesamtgewinn / - verlust ab dem ersten Handelstag berechnet. PL (auf Schlussposition) - Gewinn oder Verlust, wenn die Position geschlossen (beendet) ist. Sowohl die Eintrittsprovision als auch die Exit-Provision werden in diesem PL berücksichtigt. Zum Beispiel, wenn wir eine Long-Position haben, in der der PL (B4 Comm.) 100 ist. Wenn eine Position eingegeben wird, wird eine 10 Provision erhoben, und wenn die Position verlassen wird, wird eine weitere Provision von 10 berechnet. Der PL (an der Schließposition) ist 100- 10 - 10 80. Beide Provisionen beim Betreten der Position und Verlassen der Position werden bei Positionsnahen berücksichtigt. Zurück zu TraderCode Technische Analyse-Software und technische IndikatorenHow to Backtest Ihre Trading-Strategie richtig Viele erfolgreiche Trader teilen eine Gewohnheit 8211 sie Backtest ihre Trading-Strategien. Backtesting Ihre Trading-Strategie wird nicht allein garantieren, dass Sie profitabel werden, aber es ist ein riesiger Schritt in die richtige Richtung. In diesem Artikel untersuchen wir einige potenzielle Verzerrungen, die in Ihr Backtesting kriechen können, und wir werden untersuchen, wie die Auswirkungen dieser Vorurteile zu minimieren. Es gibt viele Probleme, die auftreten können, wenn Sie Ihr Trading System Backtest, aber die meisten Probleme fallen in eine von drei Kategorien: postdictive Fehler, zu viele Variablen, oder nicht zu erwarten, drastische Veränderungen auf dem Markt. Jeder dieser Fehler wird erläutert, zusammen mit Methoden der Vermeidung von Fehlern. Klicken Sie hier, um zu erlernen, wie man Bollinger Bänder mit einem quantifizierten, strukturierten Ansatz benutzt, um Ihre Handelsränder zu erhöhen und größere Gewinne mit dem Handel mit Bollinger Bands 8211 A Quantified Guide zu sichern. 1. Postdictive Error Die postdictive Fehler ist nur eine ausgefallene Art zu sagen, dass Sie Informationen nur zur Verfügung gestellt haben 8220 nach der fact8221, um Ihr System zu testen. Ob Sie es glauben oder nicht, das ist ein sehr häufiger Fehler beim Testen von Handelssystemen. Dieser Fehler ist leicht zu machen. Manche Software erlaubt Ihnen, die Daten von heute8217s beim Testen eines Handelssystems zu verwenden, das immer ein postdictiver Fehler ist (wir wissen nicht, ob die Daten heute noch nützlich sind, um die Zukunft vorherzusagen, aber wir wissen sicher, ob es nützlich ist, die Vergangenheit vorherzusagen ). Möchten Sie in der Lage, den Schlusskurs der GBP / USD verwenden, um vorherzusagen, was der Markt heute tun wird Natürlich würden Sie, würde ich bestimmt, aber leider sind diese Informationen nicht verfügbar, bis der Tag vorbei ist. Zum Beispiel können Sie ein System, das den Schlusskurs enthält, haben, dann bedeutet dies natürlich, dass der Handel kann nicht initiiert werden, bis der Tag vorbei ist. Sonst ist dies ein postdictive Fehler. Ein anderes Beispiel kann helfen, den postdictive Fehler zu veranschaulichen, wenn Sie eine Regel in Ihrem Handelssystem über höchste Preise haben, dann haben Sie einen postdictive Fehler. Dies liegt daran, dass die höchsten Preise oft durch Daten, die später, in der Zukunft. Der Weg, um den postdictive Fehler zu vermeiden ist, um sicherzustellen, dass beim Backtest ein System, das nur Informationen, die in der Vergangenheit zu diesem Zeitpunkt verfügbar ist, in Backtesting verwendet wird. Mit manueller Backtesting oder Backtesting mit Forex Tester können Sie dies ganz einfach zu erreichen, aber mit automatisierten Backtesting der postdictive Fehler kann in Ihr Trading System schleichen. 2. Zu viele Variablen Dies ist auch bekannt als die 8220Degrees von Freedom8221 Bias. Das bedeutet einfach, dass Sie zu viele Variablen oder Handelsindikatoren in Ihrem Handelssystem haben. Es ist sehr möglich, kommen mit einem Handelssystem, das frühere Preisverhalten eines Währungspaares erklären kann. In der Tat, je mehr Indikatoren Sie hinzufügen, desto einfacher wird es oft. Das Problem tritt auf, wenn Sie dieses System auf die Zukunft anwenden möchten. Oft wenn ein Handelssystem zu viele Indikatoren hat, kann es das Verhalten des Marktes während einer Zeitspanne extrem gut vorherzusagen. Aber, dass8217s alle System ist gut für, weil in Zukunft das System auseinander fällt. Die obige Aussage ist oft schwierig für Händler, um in den Griff zu kommen, aber es ist wahr. Überlegen Sie, was William Eckhardt von den New Market Wizards über Trading-Systeme zu sagen hat. Im Allgemeinen haben die empfindlichen Tests, die Statistiker verwenden, um Signifikanz aus marginalen Daten zu drücken, keinen Platz im Handel. Wir brauchen stumpfe statistische Instrumente, robuste Techniken. Offensichtlich warnt er gegen die Freiheitsgrade Fehler und darauf hindeutet, dass einfache Handelssysteme sind eher zu prüfen Test der Zeit. Das ist absolut richtig. Einige der leistungsstärksten Handelssysteme sind äußerst einfach. Denken Sie daran, wie Sie handeln, und wie Sie versuchen, ein profitables Handelssystem zu finden. Die meisten Händler werden feststellen, dass sie mit der Erfahrung, dass sie eher die Ansicht, dass ein einfacher Handel ist bevorzugt über einen komplexen Ansatz zu umarmen. 3. Drastische Veränderungen im Markt Viele Händler vergessen, unvorhergesehene Ereignisse, die in der Zukunft auftreten werden, zu antizipieren. Es doesn8217t wirklich wichtig, dass Sie wissen, was wird in der Zukunft 8211 passieren, weil Sie dies wissen: es wird Zeiten in der Zukunft, wenn die Märkte werden sich unregelmäßig verhalten. Wenn dies geschieht, sollten Sie Ihr Handelssystem entworfen haben, um in diesen Zeiten funktionieren zu bleiben. Vielleicht können einige Beispiele dazu beitragen: Als Saddam Hussein (über das Wochenende) gefunden wurde, reagierten die Devisenmärkte sehr drastisch, als am Montag 18217 eröffnet wurde. Als die globale Finanzkrise im September 2008 einsetzte, handelten die meisten Währungspaare viel volatiler als jahrelang gesehen. Die Tatsache ist, dass es unerwartete Ereignisse in der Zukunft, und diese Ereignisse werden die Märkte beeinflussen, so dass das Beste, was Sie tun können, ist vorbereitet werden. Wie bereiten Sie sich auf das Unerwartete Betrachten Sie diese einfachen Lösungen: 1) Übertreiben Sie Ihre erwarteten Verluste. Wenn Ihr Backtesting zeigt einen maximalen Verlust von 5000, nehmen Sie einen maximalen Verlust von 10.000. Sind Ihre Handelssysteme noch profitabel unter diesen Bedingungen 2) Entscheiden Sie sich für ein angemessenes Maß an Risiko für jeden Handel. Denken Sie daran, dass auch diese Gefahr ist wahrscheinlich überschritten werden. Wenn Sie sich entschlossen haben, auf jedem Handel 1 zu riskieren, sollten Sie davon ausgehen, dass irgendwann in der Zukunft Sie in einem Handel sind und ein unerwartetes Ereignis auftreten wird und Ihr Handel nicht 1 verlieren wird, sondern statt dessen 5 verloren gehen. 3) Sie sollten einen Notfallplan eingerichtet haben. Das heißt, wie Sie einen Handel beenden, wenn etwas Schlimmes passiert und Sie können nicht auf Ihr Konto zugreifen Zum Beispiel, was passiert, wenn Ihre Handelsplattform ist unzugänglich und Sie verzweifelt wollen aus einem Handel Die meisten Broker bieten eine Telefonleitung für Händler für diese Instanzen. Haben Sie die Telefonnummer 4) Haben Sie ein maximales Risiko Level Set Dies wäre anwendbar, wenn Sie mehrere Trades gleichzeitig geöffnet haben. Wenn Sie sich entscheiden, 1 pro Handel zu riskieren und Sie haben 7 Trades gleichzeitig geöffnet, bedeutet dies, dass Sie 7 von Ihrem Konto riskieren werden oder haben Sie sich für ein maximales Risiko Ebene von sagen, 3 Im Hinterkopf behalten, dass das Unerwartete auftreten wird, Sollten Sie wahrscheinlich ein maximales Risiko für die Zeiten, wenn Sie mehrere offene Trades haben. 5) Was ist die maximale Drawdown (Höhe des Geldes Ihr Trading System verliert über einen längeren Zeitraum) Sie sind bereit zu tolerieren Keeping im Verstand, dass Sie (und Sie sind nicht allein) sind eher zu überschätzen die Schwere der Drawdowns, die Sie Widerstehen kann, ist es wichtig, realistisch zu sein. Wenn Sie 30 von Ihrem Konto verlieren Sie stoppen Handel Was über wenn Sie 50 verlieren Oder wenn Sie 70 von Ihrem Konto sehen verschwinden Wieder ist der beste Weg, für Drawdowns zu planen, umfangreiche Backtesting zu tun, um herauszufinden, welche Art von historischen Drawdowns Ihr Trading System-Erfahrungen und dann Plan für noch schlimmer Drawdowns in der Zukunft. Im Vorgriff auf drastische Veränderungen in den Märkten ist die einzige beste Weg, um das Eigenkapital in Ihrem Konto zu erhalten. So wissen Sie, dass erfolgreiche Händler diese Gewohnheit teilen 8211 sie Backtest ihre Handelsstrategien. Sie wissen, dass Backtesting trennt die reichen Händler von denen, die Geld verlieren. Sie kennen auch mehrere Möglichkeiten, Backtesting in Ihr Trading-Regime zu integrieren. Und Sie wissen, der Fallstricke 8211, was auf 8211, wenn Sie Backtesting sind, so dass Sie das Beste aus dem Prozess erhalten können. Aber was genau, erhalten Sie von Backtesting Ihr Trading System Im nächsten Artikel werde ich die Nebenwirkungen des Backtests zu erkunden. Walter Peters, PhD ist ein professioneller Devisenhändler und Money Manager für einen privaten Forex-Fonds. Darüber hinaus ist Walter der Mitbegründer von Fxjake. Eine Ressource für Forex-Händler. Walter liebt es, von anderen Händlern zu hören, kann er per E-Mail bei walterfxjake erreicht werden. How to Backtest ein Trading-Modell in Excel 3. September 2014 Es gibt mehrere Möglichkeiten, um Backtest ein Excel-Handelsmodell. Sie können es visuell durch die Aufnahme der Kauf, Verkauf und out Signale, die von Ihrem Modell in einer Excel-Tabelle, einschließlich der Datum, Zeit und theoretischen Handel Preise. Das ist sehr langsam und umständlich. Weiterhin gibt Ihnen Backtesting manuell nur eine rudimentäre Vorstellung von der Leistung Ihres model8217s. Alternativ können Sie Ihr Modell mit dedizierter Software kodieren. Dies erfordert einige vorne Investitionen. Darüber hinaus müssen Sie Ihre Excel model8217s Logik in die Logik der Software zu übersetzen. Wir werden diese Option überspringen, da dieser Artikel dem Backtesting in Excel gewidmet ist. Die beste Methode zum Backtesting Ihres Excel-Handelsmodells ist die Verwendung von Excel zur Implementierung eines Backtesting-Systems. Excel ist ideal für diese Aufgabe, da es eine virtuelle 8220Swiss Army Knife ist.8221 Was Sie tun möchten, ist die Kauf / Verkauf-Logik Ihres Handelsmodells zu replizieren und es zu betreiben über einen langen historischen Zeitraum zu generieren, eine Reihe von Kauf / Verkaufen / out-Signale, berechnen pro Handel und kumulative Gewinne und Verluste und liefern eine Vielzahl von Rendite-Risiko-Statistiken. Vielleicht möchten Sie das Backtesting-Modell mit Monte-Carlo-Simulation weiter verbessern. Sie können die Möglichkeit hinzufügen, Backtests eines gesamten Portfolios oder einer Liste von Wertpapieren gleichzeitig durchzuführen. VERWANDTE POSTEN Copyright-Kopie 2007-2014 ExcelTradingModels und Alpha Squared Management. Alle Rechte vorbehalten. Excel ist ein Markenzeichen von Microsoft Corporation. Backtesting Ein Basic ETF Rotation System in Excel 8211 Free Download Einige Hintergrund: Lets face it, Technologie hat es möglich gemacht, eine breite Palette von Tools für die Entwicklung, Backtesting und Optimierung von Systemen zugreifen. Jedoch ist ein einfaches (aber leistungsfähiges) Werkzeug wie excel eine große Weise, ein Handelssystem zu validieren. In diesem Beispiel sollten die Dinge wirklich einfach zu halten und Backtesting ein monatliches ETF-Rotationssystem mit 5 Symbolen, die deutlich übertreffen Kauf und halten. Alles was Sie brauchen ist Excel und eine Internetverbindung. Wenn Sie dieses Lesen lesen, Im, dass Sie die Internetverbindung erraten haben. Dieser Beitrag geht davon aus, Sie haben ein grundlegendes Verständnis von Excel, aber Sie don8217t müssen ein Experte sein. Sie können die Excel-Datei selbst erstellen, indem Sie die folgenden Schritte ausführen oder hier herunterladen. Fühlen Sie sich frei, die Datei zu verteilen, aber stellen Sie bitte einen Link zurück zu diesem Pfosten, wenn Sie tun. Sobald you8217re getan mit den Schritten unten, you8217ll in der Lage sein Diagramm Ihre Ergebnisse und erhalten ein Bild, wie das System wirklich führt. Die folgende Tabelle ist ein Beispiel für ein 5 ETF-Rotationssystem, das jeden Monat die obere ETF einnimmt und kauft. Diese Leistung wird mit dem Kauf und dem Halten aller ETF8217s gleichermaßen (ohne Rebalancing) und dem Halten des SampP 500 (SPY) verglichen. You8217ll finden die genaue Berechnung in Excel, aber für die 9-Jahres-Zeitraum getestet das ETF Rotation System generiert eine jährliche Rendite von 11,88 vs 7,75 für SPY und 7,18 für alle gleichmäßig gehalten. It8217s beachtenswert, dass die Art und Weise die Excel-Datei konstruiert ist, eignet sich nicht gut für die Skalierung. Allerdings, wenn Sie einige Visual Basic-Fähigkeiten und ein wenig Kreativität haben, sollten Sie in der Lage, kommen mit einer Möglichkeit, es zu skalieren. Schritt 1: Wählen Sie Märkte Die Auswahl von Märkten ist eine kritische Entscheidung für alle Systeme. Da ich eine starke Vorliebe für Trend nach dem Trading haben, würden wir eine diversifizierte Gruppe von Märkten zu verwenden. Davon abgesehen, könnten Sie auch über die Verwendung von Börsensektoren (Technologie, Healthcare, etc.), verschiedene Rohstoffe, oder etwas ganz anderes. Ich wollte relativ unkorrelierte Märkte mit rund 10 Jahren historischer Daten verwenden, also werde ich die folgenden ETF8217 verwenden: SPY 8211 SampP 500 GLD 8211 Gold IEF 8211 10 Jahre Treasury IYR 8211 US Immobilien EEM 8211 Emerging Markets Das Bild unten zeigt die Einzelne ETF-Renditen über den Testzeitraum: Schritt 2: Daten sammeln und konsolidieren Nachdem Sie sich für die Märkte entschieden haben, müssen Sie Excel auslösen und eine Quelle für historische Daten finden. Im Interesse der Sparsamkeit, können wir nutzen kostenlose Daten von Yahoo Finance. Nur eine Erinnerung, dass die Konstruktion dieser Kalkulationstabelle nicht sehr gut skaliert, so dass weniger Symbole leichter ausgeführt werden können. Davon abgesehen, mit etwas Kreativität und Fähigkeiten in Visual Basic können Sie den Test dynamischer. Wenn Sie Kopf zu Yahoo Finance, können Sie eines der Symbole eingeben, die Sie gewählt haben und erhalten ein Angebot. Klicken Sie auf der Anführungsseite auf den Link auf der linken Seite für Historische Daten. Wählen Sie auf der Seite Historische Daten monatliche Daten aus, und senden Sie sie ab. Wenn Sie zum unteren Rand der monatlichen Daten blättern, gibt es einen Link, um die Daten in eine Tabelle herunterzuladen. Laden Sie monatliche historische Daten für alle Symbole in Ihrem System herunter. Sobald Sie die Daten heruntergeladen haben, müssen Sie alles in einem Arbeitsblatt konsolidieren. Die Daten sind wahrscheinlich in. CSV-Format so youll wollen ein. Xlsx Buch gehen. Setzen Sie die Daten für jedes Symbol auf einem separaten Blatt und erstellen Sie dann ein neues leeres Blatt für Berechnungen. Schritt 3: Berechnung der Monatsrendite mit Hilfe des angepassten Schritts In diesem Schritt müssen wir jedes Blatt durchlaufen und für jeden ETF die Monats - (oder eine Perioden-) Rendite berechnen. Id empfehlen, zu jedem Blatt zu gehen und die eine Periodenrückkehr in der Spalte direkt auf der rechten Seite der angepassten nahen Daten zu berechnen. Eine Periode Rendite (vorheriger Preis aktueller Preis) / vorheriger Preis In Excel sprechen, wird dies etwa so aussehen (B3-B4) / B4, wobei B4 Daten aus dem vorherigen Monat und B3 ist der aktuelle Monat. Nachdem Sie durch jedes Blatt gegangen und die eine Periodenrückkehr berechnet haben, müssen wir diese Daten auf dem leeren Blatt für Berechnungen konsolidieren. Wenn Sie kopieren und fügen Sie die justierte schließen Spalte und die Spalte mit einem Monat zurück. Beachten Sie, dass you8217ll auch eine Datumsspalte in Spalte A Ihres Berechnungsbogens kopieren und einfügen soll. Schritt 4: Berechnen Sie die prozentuale Änderung für das Ranking der ETFs An dieser Stelle sollten Sie eine Excel-Arbeitsmappe mit 5 Blättern für Rohdaten und ein Blatt mit zwei Spalten von Daten für jede ETF. I8217d empfiehlt die Verwendung der Spalte A für das Datum, B für die Einstellung ETF1, C für eine Periodenprozentänderung, D für die eingestellte Naht ETF2 usw. Wenn Sie dieses Format haben, können Sie fortfahren. Der nächste Schritt besteht darin, die Änderungsrate für jede ETF zu berechnen. In diesem Beispiel, we8217re mit einem 5 Monat Monat Veränderungsrate. Ich benutzte 5 Spalten rechts von den vorhandenen Daten auf dem Kalkulationsblatt. In jeder Spalte müssen wir die 5-Monats-Rendite für eine ETF berechnen. Die Rendite ist der in Schritt 3 oben berechneten Periodenrendite sehr ähnlich, muss aber für 5 Monate stattfinden. In Excel sollte die Berechnung so etwas wie (B3-B8) / B8, wo die Daten in Zelle B8 aus einer früheren Periode. You8217ll müssen die gleiche Berechnung für jede ETF zu tun. Schritt 5: Rang der ETF8217s Sobald Sie die 5 Monate Veränderungsrate kennen, wollen wir die ETF8217s Rang. Ich benutzte weitere 5 Spalten rechts von der 5 Monate ändern Spalte, um jede ETF. Die Idee ist, dass jede ETF eine Spalte hat und diese Spalte die Rangliste für die ETF zeigt. Beispielsweise zeigt die Spalte SPY eine 1 an, wenn SPY für die Periode die leistungsstärkste ETF ist. Die Excel-Formel, die wir benötigen, um die Daten zu ordnen, ist RANK (Änderungszelle, Bereich der Änderungszellen) Wenn die prozentualen Änderungsdaten für den Zeitraum in den Zellen L9 bis P9 gehalten wurden, wäre dies RANK (L9, L9: P9) (M9, L9: P9), weil wir die prozentuale Änderung in Spalte M in derselben Datengruppe (L9 bis P9) einordnen. Schritt 6: Bestimmen der angemessenen Periodenrendite Nachdem wir die ETF8217 auf der Grundlage der 5-Monatsrendite eingestuft haben, müssen wir die entsprechende Periodenrendite auswählen. Um dies zu tun, erstellte ich eine Spalte für die eine Periodenrückkehr und verwendete eine einfache IF-Anweisung, um die korrekte Rückkehr zu wählen. Im Wesentlichen, was wir versuchen, zu sagen, ist so etwas, wenn SPY auf Platz 1 ist, dann ist die Rückkehr die Zahl in der Spalte einer Spalte für SPY. In Excel sieht die Anweisung etwas wie IF aus (Q101, C9) Die Excel-Logik für eine IF-Anweisung ist IF (Bedingung, Ergebnis wenn True, Ergebnis wenn False) Da wir jedoch 5 ETF8217s durchlaufen haben, endet die Formel Etwas hässlich mit mehreren verschachtelten IF-Anweisungen. Für ein Beispiel der verschachtelten IF-Anweisungen ist es am besten, auf die Tabellenkalkulationsdaten zu verweisen. Schritt 7: Konto-Equity simulieren Nachdem wir eine Spalte mit IF-Anweisungen erstellt haben, die in die entsprechende Periodenrendite ziehen, ist es ziemlich einfach, das Eigenkapital zu simulieren. Wir gehen einfach zu den ältesten Daten auf dem Blatt und geben einen Startbetrag ein. In dieser Tabelle habe ich 10.000 als ursprüngliches Eigenkapital verwendet. Mit dem 10.000 anfänglichen Eigenkapital verdoppeln Sie das vorherige Eigenkapital um 1 den aktuellen Zeitraum. Zum Beispiel, let8217s sagen, wir setzen 10.000 in Zelle Z117 und die eine Periode Rücklauf Daten lebt in Spalte V. Die Konto-Equity-Berechnung für Zelle Z118 wäre (Z117 (1V116)) You8217ll müssen diese Formel kopieren oder füllen Sie die ganze Form der Konto-Equity-Spalte und dann you8217ll haben eine Spalte, die den Wert Ihres Kontos zeigt, wenn Sie die Top Performing ETF jeden Monat kaufen. An diesem Punkt you8217re effektiv mit den grundlegenden Berechnungen getan und Sie können zurück gehen und ändern Werte oder testen verschiedene Equity-Ergebnisse. In der bereitgestellten Arbeitsmappe gibt es auch Spalten für eine 10.000 Investition in SPY und eine Berechnung für den Kauf aller ETF8217s gleichermaßen. Schritt 8: Analysieren der Daten Wenn Sie es so weit gemacht haben, sollten Sie eine Kalkulationstabelle haben, die eine Anzahl von Zahlen berechnet. Der nächste Schritt in dem Prozess ist die Auswertung der Zahlen, machen ziemlich Charts, und die Bildung von Meinungen und Schlussfolgerungen über die Daten. I8217m nicht in die Details der Charting in Excel zu vertiefen, aber es gibt zwei einfache Diagramme sitzen in der Tabelle, damit Sie mit spielen und zu manipulieren. Recap: Phew, thats it Wenn das war mehr als Sie behandeln können, können Sie eine Beispielkopie der Excel-Arbeitsmappe oben herunterladen und gehen Sie durch die Schritte mit der Arbeitsmappe als Leitfaden. Das Verständnis, wie die Excel-Datei funktioniert, ist wesentlich für das Erstellen von Erweiterungen und das Testen verschiedener Ideen. Das System, das wir oben getestet haben, ist sehr einfach, sollte aber ein grundlegendes Verständnis dafür bieten, wie ein ETF-Rotationssystem in Excel getestet werden kann. Bitte geben Sie einen Kommentar unten, wenn Sie irgendwelche Fragen über den Prozess oder Gedanken über die Tabelle haben. So modifizierte ich Ihre S / S für einen Rückblick auf reale Sektorumdrehung und verwendete SPDR Sektoren, die bis 1999 zurückgehen. Ich addierte auch eine Spalte für das Verwenden der Spitzen2 etf8217s pro Periode anstelle gerade der Oberseite und im 8220All Equal8221 nahm ich heraus Die SPY und hatte nur die Sektoren drin. Here8217s, was es kam mit für annualisierte Prozentzahlen. Annualisierte Rendite Top 1 12,45 SPY 8,35 All Equal 11,00 Top 2 18 Denken Sie, dass dies richtig aussieht Die Zahlen, die Sie oben scheinen vernünftig, aber ohne Optimierung der Tabelle selbst ich can8217t sie für die Genauigkeit zu überprüfen. I8217ll Follow-up mit Ihnen per E-Mail. Folgen Sie ThetaTrend Holen Sie sich Updates Willst du ein besserer Trader werden (keine Trick-Frage) Lernen Sie von meinen Fehlern und laden Sie meine 20 Page Credit Spread Trading System-Dokument Klicken Sie auf das Bild oben, um es jetzt herunterzuladen. Archivsuche


No comments:

Post a Comment