Thursday 2 November 2017

Wie Backtest Ihr Handelssystem


Back-testing Ihre Trading-Ideen Eines der nützlichsten Dinge, die Sie im Analyse-Fenster tun können, ist, Ihre Trading-Strategie auf historische Daten zu testen. Dies kann Ihnen wertvolle Einblicke in Stärken und Schwachstellen Ihres Systems, bevor Sie investieren echtes Geld. Diese einzelne AmiBroker-Funktion kann viel Geld für Sie sparen. Schreiben Sie Ihre Handelsregeln Zunächst müssen Sie objektive (oder mechanische) Regeln für die Eingabe und den Ausstieg aus dem Markt haben. Dieser Schritt ist die Basis Ihrer Strategie und Sie müssen darüber nachdenken, sich selbst, da das System muss Ihre Risikobereitschaft, Portfolio-Größe, Geld-Management-Techniken und viele andere individuelle Faktoren entsprechen. Sobald Sie Ihre eigenen Regeln für den Handel haben, sollten Sie sie als Kauf-und Verkaufsregeln in AmiBroker Formula Lanugage schreiben (plus kurz und Deckung, wenn Sie auch kurze Handel testen möchten). In diesem Kapitel werden wir betrachten sehr grundlegende gleitende Durchschnitt Cross-over-System. Das System würde Stockscontracts kaufen, wenn der enge Preis über dem 45-Tage-exponentiellen gleitenden Durchschnitt steigt und Aktiencontracts verkaufen wird, wenn der Schlusskurs unter den 45-Tage-exponentiellen gleitenden Durchschnitt fällt. Der exponentielle gleitende Durchschnitt kann in AFL mit seiner eingebauten Funktion EMA berechnet werden. Alles, was Sie tun müssen, ist die Eingabe-Array und Mittelungszeitraum zu spezifizieren, so kann die 45-Tage-exponentiellen gleitenden Durchschnitt der Schlusskurse durch die folgende Anweisung erhalten werden: Die close-Kennung bezieht sich auf integrierte Array halten Schlusskurse des aktuell analysierten Symbols . Um zu testen, ob der Schlusskurs über dem exponentiellen gleitenden Durchschnitt liegt, verwenden wir die integrierte Cross-Funktion: buy cross (close, ema (close, 45)) Die obige Anweisung definiert eine Kaufhandelsregel. Es gibt quot1quot oder quottruequot, wenn nahe Preiskreuze über ema (schließen, 45). Dann können wir die Verkaufsregel schreiben, die bei einer gegensätzlichen Situation eine Quotierung der Quotierung ergeben würde - enge Preiskreuze unterhalb von ema (schließen, 45): cross (ema (close, 45), close) Bitte beachten Sie, dass wir die gleiche Crossfunktion verwenden Die umgekehrte Reihenfolge der Argumente. Die vollständige Formel für lange Trades sieht so aus: buy cross (schließen, ema (schließen, 45)) sell cross (ema (close, 45), close) HINWEIS: Um eine neue Formel zu erstellen, öffnen Sie bitte den Formula Editor mit dem Analysis-gtFormula Editor Menü, geben Sie die Formel ein und wählen Sie im Formula-Editor Tools-gtSend to Analysis-Menü. Um das System zu testen, klicken Sie einfach auf die Schaltfläche Zurück Test im Fenster Automatische Analyse. Stellen Sie sicher, dass Sie die Formel eingegeben haben, die mindestens Kauf - und Verkaufsregeln enthält (wie oben gezeigt). Wenn die Formel richtig ist, beginnt AmiBroker mit der Analyse Ihrer Symbole nach Ihren Handelsregeln und generiert eine Liste simulierter Trades. Der gesamte Prozess ist sehr schnell - Sie können tausende von Symbolen in wenigen Minuten testen. Das Fortschrittsfenster zeigt Ihnen die geschätzte Beendigungszeit an. Wenn Sie den Vorgang abbrechen möchten, klicken Sie im Fortschrittsfenster auf Abbrechen. Wenn der Vorgang abgeschlossen ist, wird die Liste der simulierten Trades im unteren Teil des Fensters Automatische Analyse angezeigt. (Das Ergebnisfenster). Sie können untersuchen, wann die Kauf - und Verkaufssignale aufgetreten sind, indem Sie einfach auf den Handel im Ergebnisbereich doppelklicken. Dies gibt Ihnen rohe oder ungefilterte Signale für jede Bar, wenn Kauf und Verkauf Bedingungen erfüllt sind. Wenn Sie nur einzelne Handelspfeile sehen möchten (Öffnen und Schließen des aktuell ausgewählten Handels), sollten Sie auf die Linie doppelklicken, während die Umschalttaste gedrückt gehalten wird. Alternativ können Sie die Art der Anzeige wählen, indem Sie im Kontextmenü die entsprechende Option auswählen, die erscheint, wenn Sie auf das Ergebnisfenster mit der rechten Maustaste klicken. Zusätzlich zur Ergebnisliste können Sie sehr detaillierte Statistiken über die Performance Ihres Systems erhalten, indem Sie auf die Schaltfläche Bericht klicken. Um mehr über Reportstatistiken herauszufinden, schauen Sie bitte Reportbeschreibung des Fensters. Ändern Ihrer Back-Test-Einstellungen Back-Test-Engine in AmiBroker verwendet einige vordefinierte Werte für die Durchführung ihrer Aufgabe, einschließlich der Portfolio-Größe, Periodizität (täglich wöchentlich monatlich), Höhe der Provision, Zinssatz, maximaler Verlust und Gewinn Zielstopps, Art der Geschäfte, Preisfelder und so auf. Alle diese Einstellungen können vom Benutzer über das Einstellungsfenster geändert werden. Nachdem Sie die Einstellungen geändert haben, denken Sie bitte daran, Ihre Backtests erneut auszuführen, wenn Sie möchten, dass die Ergebnisse mit den Einstellungen synchronisiert werden. Um zum Beispiel den Test auf wöchentliche Balken statt täglich zu wiederholen, klicken Sie einfach auf die Schaltfläche Einstellungen, wählen Sie Wöchentlich aus dem Kombinationsfeld Periodizität aus, und klicken Sie auf OK. Dann führen Sie Ihre Analyse, indem Sie auf Zurück-Test. Reservierte Variablennamen Die folgende Tabelle zeigt die Namen der reservierten Variablen, die von Automatic Analyzer verwendet werden. Die Bedeutung und Anwendungsbeispiele zu diesem Thema finden Sie weiter unten in diesem Kapitel. Automatische Analyse (neu in 3.9) Bisher wurde ein relativ einfacher Gebrauch des Rücktestgeräts diskutiert. AmiBroker, unterstützt jedoch viel mehr anspruchsvolle Methoden und Konzepte, die später in diesem Kapitel behandelt werden. Bitte beachten Sie, dass der Anfänger zunächst ein wenig mit den oben beschriebenen einfachen Themen spielen sollte, bevor Sie fortfahren. Also, wenn Sie bereit sind, werfen Sie einen Blick auf die folgenden kürzlich eingeführten Funktionen der Back-Tester: a) AFL-Skripting-Host für erweiterte Formel-Schreiber b) verbesserte Unterstützung für kurze Trades c) die Art und Weise zu kontrollieren Order Execution Preis von der Skript d) verschiedene Arten von Stopps im Rücken Tester e) Position Sizing f) runde Losgröße und Tick Größe g) Margin-Konto h) Backtesting Futures AFL Scripting-Host ist ein fortgeschrittenes Thema, das in einem separaten Dokument zur Verfügung steht hier und ich werde nicht diskutieren Es in diesem Dokument. Verbleibende Funktionen sind viel einfacher zu verstehen. In den früheren Versionen von AmiBroker konnten Sie, wenn Sie das System sowohl mit langen als auch mit kurzen Trades testen möchten, nur eine Stop-and-Reverse-Strategie simulieren. Als die Long-Position geschlossen wurde, wurde sofort eine neue Short-Position eröffnet. Es war, weil Kauf und Verkauf vorbehalten Variablen für beide Arten von Trades verwendet wurden. Jetzt (mit Version 3.59 oder höher) gibt es getrennte reservierte Variablen zum Öffnen und Schließen von Long - und Short - Trades: buy - quottruequot oder 1 Value öffnet Long Trade - Quottruequot oder 1 Wert schließt Long Trade Short - Quottruequot oder 1 Wert öffnet Short Trade Cover - quottruequot oder 1 Wert schließt Short-Trade Som, um Back-Test kurze Trades müssen Sie kurze und Cover-Variablen zuweisen. Wenn Sie Stop-and-Reverse-System (immer auf dem Markt) einfach zuordnen, verkaufen zu kurz und kaufen, um Short-Selling-Cover zu decken Dies simuliert die Art und Weise Pre-3.59-Versionen. Aber jetzt erlaubt Ihnen AmiBroker, getrennte Handelsregeln zu haben, um lang zu gehen und kurz zu gehen, wie es in diesem einfachen Beispiel gezeigt wird: Long Trades Ein - und Ausstiegsregeln: buy cross (cci (), 100) sell cross (100, cci ()) short (-100, cci ()) Deckelkreuz (cci (), -100) Beachten Sie, dass in diesem Beispiel, wenn CCI zwischen -100 und 100 ist, Sie aus dem Markt sind. Handelspreis kontrollieren AmiBroker bietet nun vier neue reservierte Variablen zur Festlegung des Preises an, zu dem Kauf-, Verkaufs-, Kurz - und Deckungsaufträge ausgeführt werden. Diese Arrays haben die folgenden Namen: buyprice, sellprice, shortprice und coverprice. Die Hauptanwendung dieser Variablen ist die Kontrolle des Börsenkurses: BuyPrice IIF (dayofweek () 1, HIGH, CLOSE) am Montag Kauf auf Hoch, sonst kaufen auf Close So können Sie die folgenden zu simulieren echte Stop-Bestellungen: BuyStop. Die Formel für Kauf Stop-Level SellStop. Die Formel für Verkauf Stop-Ebene, wenn zu jeder Tageszeit die Preise steigen über buystop Ebene (highgtbuystop) die Kaufaufträge stattfindet (bei Kaufstopp oder niedrig, was höher ist) Kaufen Cross (High, BuyStop), wenn zu jeder Tageszeit die Preise unter dem Verkaufspreis fallen (SellPrice, Low) stellen Sie sicher, dass Kaufpreis nicht weniger als Low SellPrice min (SellStop, High) sicherstellen Verkaufspreis nicht höher als hoch Beachten Sie bitte, dass AmiBroker Preispreis-, Verkaufspreis-, Shortprice - und Coverprice-Arrayvariablen mit den im Systemtest-Einstellungsfenster definierten Werten (siehe unten) festlegt, so dass Sie diese aber nicht in Ihrer Formel definieren müssen. Wenn du sie nicht definierst, arbeitet AmiBroker wie in den alten Versionen. Während der Backtests prüft AmiBroker, ob die Werte, die Sie dem Kaufpreis, dem Verkaufspreis, dem Shortprice, dem Deckungspreis zugewiesen haben, in den High-Low-Bereich des angegebenen Strichs passen. Wenn nicht, wird AmiBroker es auf hohen Preis anpassen (wenn Preisarray Wert höher als hoch ist) oder auf den niedrigen Preis (wenn Preis Array Wert niedriger als niedrig ist) Profit Ziel stoppt Wie Sie in der Abbildung oben sehen können, neue Einstellungen für Profit-Zielstopps sind im Systemtest-Einstellungsfenster verfügbar. Profit-Zielstopps werden ausgeführt, wenn der hohe Kurs für einen bestimmten Tag das Stop-Niveau übersteigt, das als Prozentsatz oder Punktsteigerung vom Kaufpreis angegeben werden kann. Standardmäßig werden die Stops zu einem Preis ausgeführt, den Sie als Sale-Preis-Array (für Long Trades) oder Cover-Tarife (für Short Trades) definieren. Dieses Verhalten kann durch die Verwendung von quotExit am Stopp-Feature geändert werden. QuotExit bei Stopquot-Feature Wenn Sie markieren quotExit am Stop-Quot-Box in den Einstellungen werden die Stops auf exakte Stop-Ebene ausgeführt werden, dh wenn Sie definieren, Gewinn Ziel Stop bei 10 Ihr Stop und der Kaufpreis wurde 50 Stopp-Order wird bei 55 ausgeführt werden, auch wenn Ihr Verkaufspreisarray enthält unterschiedlichen Wert (zB Schlusskurs von 56). Maximale Verlust stoppt Arbeit in ähnlicher Weise - sie werden ausgeführt, wenn der niedrige Preis für einen bestimmten Tag unter die Stop-Ebene, die als Prozentsatz oder Punkt Erhöhung aus dem Kaufpreis gegeben werden kann fällt Diese Art von Halt wird verwendet, um Gewinne zu schützen, wie es Verfolgt Ihren Handel, so dass jedes Mal, wenn ein Positionswert eine neue Höhe erreicht, der hintere Stopp auf einer höheren Ebene platziert wird. Wenn der Profit unter die nachlaufende Stopphöhe sinkt, wird die Position geschlossen. Dieser Mechanismus ist in der folgenden Abbildung dargestellt (10 hintere Stopps dargestellt): eine Beispiel-Low-Level-Implementierung des Profit-Target-Stopps in AFL: Buy Cross (MACD (), Signal ()) für (i 0 i lt BarCount i) Wenn (priceatbuy 0 Kaufen i) priceatbuy KaufenPreis i wenn (priceatbuy gt 0 SellPrice i gt 1.1 priceatbuy) Verkaufen i 1 SellPrice i 1.1 preiswertkaufen preiswertes 0 sonstiges Verkaufen i 0 Dies ist ein neues Feature in Version 3.9. Positionsleimung im Backtester wird mittels neuer reservierter Variable implementiert PositionSize ltsize arraygt Jetzt können Sie den Dollarbetrag oder den Prozentsatz des Portfolios steuern, der in den Trade-Positiv-Zahlenwert (Dollar) investiert wird, der in den Handel investiert wird, zum Beispiel: PositionSize 1000 invest 1000 in jedem Handel negativen Zahlen -100 ..- 1 definieren Prozentsatz: -100 gibt 100 der aktuellen Portfolio-Größe, -33 gibt 33 der verfügbaren Eigenkapital zum Beispiel: PositionSize -50 investieren immer nur die Hälfte des aktuellen Equity-Dynamic Sizing Beispiel: PositionSize - 100 RSI () als RSI variiert von 0..100 wird dies in Position abhängig von RSI-Werte - gt niedrige Werte von RSI führen zu höheren Prozentsatz investiert Wenn weniger als 100 der verfügbaren Bargeld investiert wird, dann der verbleibende Betrag verdient Zinssatz Wie in den Einstellungen definiert. Es gibt auch ein neues Kontrollkästchen im AA-Einstellungsfenster: "Allow position size shrinkingquot - das steuert, wie der Backtester die Situation behandelt, wenn die angeforderte Positionsgröße (über die Positionsize-Variable) die verfügbare Bar überschreitet: Wenn diese Markierung markiert ist, wird die Position eingegeben Vorhandenes Bargeld, wenn es unchecked ist, wird die Position nicht eingegeben. Um die tatsächlichen Positionsgrößen zu sehen, verwenden Sie einen neuen Berichtsmodus im Fenster AA-Einstellungen: quotTrade Liste mit Preisen und Pos. Sizequot Für das Ende, hier ist ein Beispiel von Tharps ATR-basierte Position Sizing-Technik codiert in AFL: Kaufen ltyour kaufen Formel hiergt Verkaufen 0 verkaufen nur durch Stop TrailStopAmount 2 ATR (20) Capital 100000 WICHTIG: Legen Sie es auch in den Einstellungen: Initial Eigenkapitalrisiko 0.01Kapital PositionSize (RiskTrailStopAmount) BuyPrice ApplyStop (2, 2, TrailStopAmount, 1) Die Technik lässt sich wie folgt zusammenfassen: Das Gesamt-Eigenkapital pro Symbol beträgt 100.000, wir setzen das Risiko auf 1 des gesamten Eigenkapitals. Die Risikostufe wird wie folgt definiert: Liegt ein nachlaufender Stopp bei 50 Aktien bei etwa 45 (der Wert von zwei ATRs gegen die Position), wird der 5 Verlust in das 1000 Risiko eingeteilt, um 200 Aktien zu kaufen. So ist das Verlustrisiko 1000, aber das Allokationsrisiko ist 200 Aktien x 50share oder 10.000. So vergeben wir 10 Stück des Eigenkapitals dem Kauf, aber nur 1000 Stück. (Bearbeiteter Auszug aus der AmiBroker-Mailingliste) Runder Losgröße und Zeckengröße Verschiedene Instrumente werden mit verschiedenen Quotierungseinheiten quotengerecht gehandelt. Zum Beispiel können Sie kaufen fractional Anzahl von Einheiten der Investmentfonds, aber Sie können nicht kaufen, fractional Anzahl der Aktien. Manchmal müssen Sie in 10s oder 100s Lose zu kaufen. Mit AmiBroker können Sie nun die Blockgröße auf globaler und auf Symbolebene angeben. Sie können pro Symbol runde Losgröße auf der Seite Symbol-gtInformation (Bild 3) definieren. Der Wert Null bedeutet, dass das Symbol keine spezielle runde Losgröße hat und auf der Seite Automatische Analyseneinstellungen (Bild 1) die Option "Round-size size quot" (globale Einstellung) verwenden wird. Wenn die Standardgröße auf Null gesetzt ist, bedeutet dies, dass eine Bruchzahl der Aktienverträge erlaubt ist. Sie können auch runde Losgröße direkt aus Ihrer AFL-Formel mit RoundLotSize reservierte Variable steuern, zum Beispiel: Diese Einstellung steuert die minimale Preisbewegung eines gegebenen Symbols. Sie können es auf globaler und auf Symbolebene definieren. Wie bei der runden Losgröße können Sie in der Symbol-gtInformation-Seite (Bild 3) je Symbol-Tick-Größe definieren. Der Wert von null weist AmiBroker an, das auf der Seite "Einstellungen" (Seite 1) des Fenster "Automatische Analyse" definierte Standard-Tick Sizequot zu verwenden. Wenn Standard-Tick-Größe ist auch auf Null gesetzt bedeutet es, dass es keine minimale Preis bewegen. Sie können die Tickgröße auch aus der AFL-Formel mit der TickSize-reservierten Variable einstellen und abrufen, zum Beispiel: Beachten Sie, dass die Tick-Size-Einstellung NUR Trades betrifft, die durch eingebaute Stopps und ApplyStop () beendet werden. Der Backtester geht davon aus, dass die Preisdaten den Tickgrößenanforderungen folgen und die vom Benutzer gelieferten Preisfelder nicht verändert. Das Angeben der Tickgröße ist daher nur dann sinnvoll, wenn Sie integrierte Stops verwenden, sodass Ausstiegspunkte anstatt der berechneten Preise an preiswerten Preisniveaus generiert werden. Zum Beispiel in Japan - Sie können nicht fraktionale Teile von Yen, so dass Sie globale Ticksize auf 1 definieren sollte, so eingebaut stoppt Exit-Trades auf Integer-Ebenen. Konto Margin-Einstellung definiert Prozentsatz Margin-Anforderung für gesamte Konto. Der Standardwert für die Konto-Margin ist 100. Dies bedeutet, dass Sie 100 Fonds für den Handel eingeben müssen, und das ist die Art und Weise, wie Backtester in früheren Versionen gearbeitet. Aber jetzt können Sie ein Margin-Konto zu simulieren. Wenn Sie auf Margin kaufen Sie sind einfach leihen Geld von Ihrem Broker, Aktien zu kaufen. Mit aktuellen Vorschriften können Sie bis 50 des Kaufpreises der Aktie, die Sie kaufen möchten und leihen die andere Hälfte von Ihrem Makler. Um dies zu simulieren, geben Sie einfach 50 im Feld Account margin (siehe Bild 1) ein. Wenn Ihre intial equity auf 10000 ist Ihre Kaufkraft wird dann 20000 und Sie werden in der Lage, größere Positionen eingeben. Bitte beachten Sie, dass diese Einstellung die Marge für das gesamte Konto festlegt und nicht mit dem Futures-Handel zusammenhängt. Mit anderen Worten, Sie können Aktien auf Margin-Konto handeln. Reverse Eingangssignal drückt das Kontrollkästchen exitquot auf die Backtester-Einstellungen. Wenn es eingeschaltet ist (die Standardeinstellung), arbeitet der Backtester wie in früheren Versionen und schließt bereits offene Position, wenn ein neues Eingangssignal in umgekehrter Richtung angetroffen wird. Wenn dieser Schalter ausgeschaltet ist - auch wenn das Rückwärtssignal auftritt, hält der Rückwärtszähler den gegenwärtig offenen Handel aufrecht und schließt nicht die Position, bis ein reguläres Ausgangssignal (Verkauf oder Abdeckungssignal) erzeugt wird. Mit anderen Worten, wenn dieser Schalter ausgeschaltet ist, ignoriert der BackTester Kurzsignale während langer Trades und ignoriert Signale in kurzen Trades. "Gleiche Barausfahrt zulassen (Single-Bar-Handel) Option zu den Einstellungen Wenn es auf ON (die Standardeinstellungen) ist - Eintritt und Ausstieg an der selben Bar ist erlaubt (wie in früheren Versionen), wenn es ausgeschaltet ist (Nur bei regulären Signalen gibt es eine separate Einstellung für ApplyStop-generierte Exits). Wenn Sie es auf OFF schalten, können Sie das Verhalten von MS Backtester wiedergeben, das nicht in der Lage ist, dieselben Exits zu bearbeiten. QuotActivate stoppt sofortquotDiese Einstellung löst das Problem der Testsysteme, die Trades auf dem Markt öffnen. In Versionen vor 4.09 Backtester wurde davon ausgegangen, dass Sie Trades auf dem Markt zu schließen, so dass eingebaute Stopps wurden von den nächsten Tag aktiviert. Das Problem war, wenn Sie in der Tat definiert offenen Preis als Markteintrittspreis - dann am selben Tag Preisschwankungen nicht die Stationen auslösen. Es gab einige veröffentlichte Workarounds auf AFL-Code basiert, aber jetzt müssen Sie nicht verwenden. Einfach, wenn Sie auf open handeln, sollten Sie markierenActivate stoppt sofortquot (Bild 1). Sie können fragen, warum nicht einfach den Buyprice oder shortprice Array, wenn es gleich offenen Preis ist. Leider funktioniert das nicht. Warum einfach, weil es doji Tage, wenn offene Preis gleich schließen und dann Backtester wird nie wissen, ob der Handel am Markt geöffnet oder nah eingegeben wurde. Wir brauchen also eine eigene Einstellung. "QuickAFLquotQuickAFL (tm) ist eine Funktion, die eine schnellere AFL-Berechnung unter bestimmten Bedingungen ermöglicht. Anfangs (seit 2003) war es nur für Indikatoren verfügbar, ab Version 5.14 ist es auch in der automatischen Analyse verfügbar. Zunächst war die Idee, schnellere Chart neu zeichnen durch Berechnung der AFL-Formel nur für den Teil, der auf der Karte sichtbar ist zu ermöglichen. In ähnlicher Weise kann das automatische Analysefenster Untermenge von verfügbaren Zitaten verwenden, um AFL zu berechnen, wenn der Parameter 8220range8221 ausgewählt ist, kleiner als 8220All quotationsquot. Detaillierte Erläuterungen darüber, wie QuickAFL funktioniert und wie es zu steuern ist, finden Sie in diesem Knowledge Base-Artikel: amibrokerkb20080703quickafl Beachten Sie, dass diese Option nicht nur im Backtester funktioniert, sondern auch in Optimierungen, Explorationen und Scans. Backtesting: Interpretieren der Vergangenheit Backtesting ist ein Schlüssel Bestandteil einer effektiven Entwicklung des Handelssystems. Es wird erreicht, indem mit historischen Daten, die in der Vergangenheit aufgetreten sind, durch Regeln, die durch eine gegebene Strategie definiert wurden, rekonstruiert wird. Das Ergebnis bietet Statistiken, die verwendet werden können, um die Wirksamkeit der Strategie zu messen. Mit diesen Daten können Händler ihre Strategien optimieren und optimieren, technische oder theoretische Mängel finden und Vertrauen in ihre Strategie gewinnen, bevor sie auf die realen Märkte angewendet werden. Die zugrundeliegende Theorie ist, dass jede Strategie, die gut in der Vergangenheit funktionierte, wahrscheinlich in der Zukunft gut funktionieren wird und umgekehrt jede Strategie, die schlecht in der Vergangenheit durchgeführt wird, wahrscheinlich in der Zukunft schlecht funktionieren wird. In diesem Artikel wird untersucht, welche Anwendungen für Backtests verwendet werden, welche Art von Daten erhalten werden und wie sie verwendet werden können. Die Daten und die Tools Backtesting können viel wertvolles statistisches Feedback über ein gegebenes System bereitstellen. Einige allgemeine Backtesting-Statistiken umfassen: Nettogewinn oder - verlust - Nettogewinn oder - verlust. Zeitrahmen - Vergangene Termine, in denen ein Test durchgeführt wurde. Universe - Aktien, die im Backtest enthalten waren. Volatilitätsmaßnahmen - Maximaler Prozentsatz nach oben und unten. Durchschnittswerte - Prozentsatz durchschnittlicher Gewinn und durchschnittlicher Verlust, durchschnittliche Bars gehalten. Exposure - Prozentsatz des investierten Kapitals (oder dem Markt ausgesetzt). Ratios - Gewinn-Verlust-Verhältnis. Annualisierte Rendite - Prozentuale Rendite über ein Jahr. Risiko-adjustierte Rendite - Prozentuale Rendite in Abhängigkeit vom Risiko. Typischerweise wird Backtesting-Software haben zwei Bildschirme, die wichtig sind. Der erste erlaubt dem Händler, die Einstellungen für Backtesting anzupassen. Diese Anpassungen umfassen alles von der Zeit bis zur Provision. Hier ist ein Beispiel für einen solchen Bildschirm in AmiBroker: Der zweite Bildschirm ist der eigentliche Backtesting-Bericht. Hier finden Sie alle oben genannten Statistiken. Auch hier ist ein Beispiel für diesen Bildschirm in AmiBroker: Im Allgemeinen enthält die meisten Trading-Software ähnliche Elemente. Einige High-End-Software-Programme enthalten auch zusätzliche Funktionalität, um automatische Positionsbestimmung, Optimierung und andere erweiterte Funktionen durchzuführen. Die 10 Gebote Es gibt viele Faktoren, die Händler darauf achten, wenn sie Backtesting Handelsstrategien sind. Hier ist eine Liste der 10 wichtigsten Dinge zu erinnern, während Backtesting: Berücksichtigen Sie die breite Markttrends in den Zeitrahmen, in dem eine bestimmte Strategie getestet wurde. Zum Beispiel, wenn eine Strategie nur von 1999-2000 zurückgetestet wurde, kann es nicht gut in einem Bärenmarkt. Es ist oft eine gute Idee, Backtest über einen langen Zeitrahmen, der mehrere verschiedene Arten von Marktbedingungen umfasst. Berücksichtigen Sie das Universum, in dem Backtesting aufgetreten ist. Zum Beispiel, wenn ein breites Marktsystem mit einem Universum aus Tech-Aktien getestet wird, kann es nicht gut in verschiedenen Sektoren zu tun. Als allgemeine Regel, wenn eine Strategie auf eine bestimmte Gattung der Bestände ausgerichtet ist, das Universum auf dieses Genre beschränken, aber in allen anderen Fällen ein großes Universum für Testzwecke beibehalten. Volatilitätsmaßnahmen sind bei der Entwicklung eines Handelssystems äußerst wichtig. Dies gilt insbesondere für Leveraged Accounts, die Margin Calls unterliegen, wenn ihr Eigenkapital unter einen bestimmten Punkt sinkt. Die Händler sollten versuchen, die Volatilität niedrig zu halten, um das Risiko zu senken und einen leichteren Übergang in und aus einer bestimmten Aktie zu ermöglichen. Die durchschnittliche Anzahl der gehaltenen Bars ist auch sehr wichtig zu beobachten, wenn die Entwicklung eines Handelssystems. Obwohl die meisten Backtesting-Software Provisionskosten in den abschließenden Berechnungen einschließt, bedeutet das nicht, dass Sie diese Statistik ignorieren sollten. Wenn möglich, kann die Erhöhung der durchschnittlichen Anzahl der gehaltenen Bars die Provisionskosten senken und die Gesamtrendite verbessern. Exposition ist ein zweischneidiges Schwert. Eine erhöhte Exposition kann zu höheren Gewinnen oder höheren Verlusten führen, während eine verminderte Exposition niedrigere Gewinne oder geringere Verluste bedeutet. Allerdings ist es im Allgemeinen sinnvoll, die Exposition unter 70 zu halten, um das Risiko zu reduzieren und einen leichteren Übergang in und aus einem bestimmten Bestand zu ermöglichen. Die durchschnittliche Gewinnverlust-Statistik, kombiniert mit dem Gewinn-Verlust-Verhältnis, kann für die Bestimmung der optimalen Positionsbestimmung und des Geldmanagements mit Techniken wie dem Kelly Criterion nützlich sein. (Siehe Money Management mit dem Kelly-Kriterium.) Händler können größere Positionen einnehmen und die Provisionskosten senken, indem sie ihre durchschnittlichen Gewinne erhöhen und ihr Gewinn-Verlust-Verhältnis erhöhen. Die jährliche Rendite ist wichtig, da sie als Instrument zur Benchmarking einer Systemrendite gegenüber anderen Anlageorten genutzt wird. Es ist wichtig, nicht nur die Gesamtjahresrendite zu betrachten, sondern auch das erhöhte oder verminderte Risiko zu berücksichtigen. Dies kann durch Betrachtung der risikoadjustierten Rendite erfolgen, die verschiedene Risikofaktoren berücksichtigt. Bevor ein Handelssystem angenommen wird, muss es alle anderen Anlageorte bei gleichem oder geringerem Risiko übertreffen. Backtesting Anpassung ist äußerst wichtig. Viele Backtesting-Anwendungen haben Input für Provisionsbeträge, runde (oder gebrochene) Losgrößen, Tickgrößen, Margin-Anforderungen, Zinssätze, Rutschannahmen, Positionsgrößenregeln, gleiche Barausgangsregeln, (schleppende) Stopp-Einstellungen und vieles mehr. Um die genauesten Backtesting-Ergebnisse zu erhalten, ist es wichtig, diese Einstellungen zu optimieren, um den Broker nachzuahmen, der verwendet wird, wenn das System in Betrieb geht. Backtesting kann manchmal zu einer so genannten Über-Optimierung führen. Dies ist eine Bedingung, in der Leistungsergebnisse so stark auf die Vergangenheit abgestimmt sind, dass sie in Zukunft nicht mehr so ​​genau sind. Es ist allgemein eine gute Idee, Regeln zu implementieren, die für alle Bestände oder einen ausgewählten Satz von zielgerichteten Beständen gelten und nicht in dem Maße optimiert werden, wie die Regeln vom Schöpfer nicht mehr verständlich sind. Backtesting ist nicht immer der genaueste Weg, um die Wirksamkeit eines bestimmten Handelssystems zu messen. Manchmal sind Strategien, die in der Vergangenheit gut funktionierten, in der Gegenwart nicht gut. Die Wertentwicklung in der Vergangenheit ist kein Hinweis auf zukünftige Ergebnisse. Achten Sie darauf, Papier-Handel ein System, das erfolgreich zurückgetestet wurde, bevor Sie leben, um sicherzustellen, dass die Strategie noch in der Praxis gilt. Fazit Backtesting ist einer der wichtigsten Aspekte der Entwicklung eines Handelssystems. Wenn sie ordnungsgemäß erstellt und interpretiert wird, kann sie Tradern helfen, ihre Strategien zu optimieren und zu verbessern, technische oder theoretische Fehler zu finden, Vertrauen in ihre Strategie zu gewinnen, bevor sie sie auf die realen Märkte anwendet. Ressourcen Tradecision (Tradecision) - High-End-Trading-System-Entwicklung AmiBroker (Amibroker) - Budget Trading System Development. How, um ein besserer Trader werden 8211 Backtest Ihre eigenen Trading-Systeme Möchten Sie ein besserer Trader werden Was wäre, wenn Sie ein besserer Trader werden könnte Und profitabler sein Sie könnten mehr über Ihr System und die Märkte, die Sie handeln zu lernen. Sind Sie derzeit Backtesting Ihre Trading-Strategien Haben Sie eine zuverlässige Art und Weise der Prüfung Ihrer Trading-Ideen. Wollen Sie unabhängig zu sein und nicht auf eine andere Person verlassen oder ein 8216black box8217 Stück Software YouTube Videos Ich habe eine Reihe von YouTube-Videos online gestellt. In diesen Videos habe ich behandelt, wie man Daten importiert, wie man technische Indikatoren zu berechnen und wie man ein einfaches Backtest-Modell zu bauen. Ich zeige auch, wie Sie die Ergebnisse analysieren und dann Ihre Handelsstrategien optimieren können. Diese Videos sind nützlich, da sie eine Schritt-für-Schritt-Methode zeigen. Ich empfehle, sie zu beobachten, wenn Sie an Backtesting mit Excel interessiert sind. Allerdings, wenn Sie mehr darüber erfahren möchten, wie Sie Ihre eigenen Modelle zu bauen gibt es eine andere Option. Excel Course 8211 8220How to Backtest eine Trading-Strategie mit Excel8221 Als Reaktion auf die Rückmeldung habe ich aus den Videos, die ich einen Kurs erstellt haben. Der Kurs ist in Form eines Amazon Kindle ebook. Wenn Sie diesen Kurs befolgen, werden Sie: Verbessern Sie Ihre Excel-Fähigkeiten Erstellen Sie eine Long-Only Backtest-Modell Erstellen Sie eine erweiterte Long-Short Backtest-Modell Erfahren Sie, wie Sie Ihre Trading-Strategie Optimieren Tipps für die Verbesserung Ihrer Backtesting-Fähigkeiten Die Backtest-Modelle in diesem Kurs angewendet werden können Zu jedem Markt. Amazon Kindle Store Das Kursbuch ist in der Amazon Kindle Store. Es ist weltweit verfügbar. Im Folgenden habe ich Links zu den USA und Großbritannien Amazon speichert, aber Sie können es finden, indem Sie in Ihrem lokalen Kindle Store. Das Buch ist im Kindle Store erhältlich. Kindle Bücher können auf Smartphones, Tablets und Computern gelesen werden. IPhone, iPad, Android und Blackberry-Nutzer können Sie die kostenlose App. PC - und Mac-Benutzer können sie durch Herunterladen der kostenlosen Software lesen. Viel Glück in Ihrem Trading

No comments:

Post a Comment