Sunday 19 February 2017

Backtesting Trading Strategien Buch

Was ist der beste Weg, um eine Aktienhandel Strategie Backtest Stattdessen Sie das beste Werkzeug oder Prozess zu sagen, dass Sie für das Backtesting verwenden können, lassen Sie mich auf den größten Fehler, konzentrieren sich stattdessen, dass Sie, um zu vermeiden, benötigen eine zuverlässige Backtest zu tun. Dies sind die wichtigsten Faktoren, die Sie im Auge behalten müssen, wenn Backtesting Aktienhandel Strategien - Data Overfitting: Dies ist bei weitem der größte Fehler, den die meisten Menschen in der Ausübung der Schaffung einer Strategie, die spektakuläre backtted Ergebnisse gibt. Beim Erstellen der Strategie, wenn Sie die Optimierung Ihrer Parameter in einer Weise, die Renditen maximiert starten, dann wird diese Strategie höchstwahrscheinlich scheitern krank in Live-Bedingungen. Es gibt zwei Möglichkeiten, um diese - out-of-Sample-Tests und die Schaffung von Strategien auf der Grundlage von Logik statt durch die Optimierung der Eingabeparameter zu überwinden. Vorwärts-Bias: Dies geschieht, wenn Sie Daten verwenden, um Signale zu erzeugen, die sonst zu diesem Zeitpunkt in der Vergangenheit nicht verfügbar gewesen wären. Zum Beispiel, wenn ein Unternehmen Geschäftsjahresende März ist und Sie ihre Einkommen Daten für das Vorjahr am 1. April verwenden, ist es sehr wahrscheinlich, dass das Unternehmen nicht angekündigt, dass Daten vor Mai oder Juni. Das würde zu einer vorausschauenden Bias führen. Überlebenschance. Dies ist einer von denen schwer zu bemerken, Fehler. Nehmen wir an, Sie haben eine Strategie, die aus einer Liste von 500 Small-Cap-Aktien auf der Grundlage einiger technischer Indikatoren handelt. Die Chancen sind, dass, wenn Sie versuchen, 10-jährige historische Preisdaten für diese 500 Aktien für Ihr Backtesting erhalten, werden Sie nicht enthalten die Daten für alle jene Aktien, die in diesem 10-Jahres-Zeitraum delisted wurden. Wenn Sie Ihre Strategie testen, würden Sie nicht für mögliche Trades, die auf irgendwelche dieser schlechten Aktien generiert worden wäre, Rechnung tragen, wenn Sie diese Strategie während dieser Zeitspanne tatsächlich ausgeführt hätten. Rein konzentriert auf Erträge. Es gibt eine Reihe von Parametern, die Sie für die Beurteilung der Qualität einer Strategie berücksichtigen müssen. Rein konzentriert sich auf die Rendite kann zu großen Problemen kommen. Wenn beispielsweise Strategie A 10 Renditen über einen bestimmten Zeitraum mit einem maximalen Drawdown von -2 liefert und Strategie B 12 Renditen mit einem Drawdown von -10 ergibt, dann ist B offensichtlich keine überlegene Strategie für A. Es gibt andere wichtige Parameter Wie Drawdown, Erfolgsrate, Sharpe Ratio, etc. Markt Auswirkungen, Transaktionskosten. Bei der Betrachtung der Durchführbarkeit einer Strategie ist es sehr wichtig, die möglichen Marktauswirkungen des Handels und auch die anfallenden Transaktionsgebühren zu berücksichtigen. Sie könnten versucht sein, eine Strategie, die große Mengen von einigen niedrigen Liquidität Aktien, die dazu tendieren, außergewöhnliche Renditen zu kaufen. Aber wenn Sie in den Markt gehen, um diese Strategie auszuführen, wird ein großer Auftrag auf eine illiquide Aktie den Preis verschieben, die Sie nicht in Ihrer Prüfung berücksichtigt haben würde. Auch können die Transaktionskosten auch die Renditen wesentlich ändern, so dass Sie immer auf Nettogewinne schauen sollten. Data Mining. Dies ist ziemlich ähnlich dem Problem der Datenüberschneidung. Wenn Sie die Daten lang genug quälen, wird es etwas gestehen. Dieses ist ein allgemeiner Witz unter Datenwissenschaftlern, die glauben, dass, wenn Sie genug Zeit verbringen, Sie ein Muster in fast jedem möglichem Satz von Daten finden können Das bedeutet nicht notwendigerweise, dass dieses Muster in der Zukunft gültig sein wird. Die Grundlagen ändern sich. Es könnte sehr gut passieren, dass Sie eine Strategie finden, die außergewöhnlich gut auf vergangene Daten ausführt. Aber eine grundlegende Änderung der Marktdynamik könnte die gleiche Strategie in der Zukunft versagen. Es ist bekannt, dass fast jede gute Strategie mit sich verändernden Marktbedingungen weiterentwickelt werden muss. Kleiner Zeitrahmen. Es ist entscheidend, die Strategie über einen ausreichend langen Zeitraum und in veränderten Marktbedingungen zu testen. Dies gilt insbesondere für Aktienhandel Strategien, die außergewöhnlich gut in einem Bullenmarkt ausführen können, würde aber Ihr Bankkonto in einer seitlichen oder Bärenmarkt wischen. Es gibt viele andere Dinge zu prüfen, wenn Backtesting. Aber letztlich ist der einzige Weg, um sicherzustellen, dass eine Strategie funktioniert in Live-Bedingungen ist es zu testen, in Live-Bedingungen. Tauro Wealth ist ein Finanz-Technologie-Unternehmen (Tauro Reichtum), die auf der Suche nach der Probleme zu lösen ist Einzelhandelsanleger in Indien. Wir hoffen, umfassende langfristige Investitionslösungen zu einem Bruchteil der traditionellen Kosten zur Verfügung zu stellen. Mccabe Hurley. Trader amp Derivate Erzieher Leben in NYC. Es gibt ziemlich viele Broker, die Backtesting für Kunden als Teil ihrer Client-Software-Suite zur Verfügung stellen. Allerdings, mehr als oft nicht, sind diese Black Box in dem Sinne, dass Sie nicht wissen, wie die Berechnungen durchgeführt werden. Als nächstes gibt es kostenlose Rücktransfer online. Aber IMO bekommt man was man bezahlt. Standalone-Software kann erforscht werden unter: Backtesting-Software Die Liste enthält Backtesting-Software in einem Brokerfirma Tools enthalten, aber es hat auch Standalone-Software. Wenn youre Handel für ein Leben (Ihr eigenes Geld oder jemand elses) seine meine Präferenz zu Stand-alone-Software verwenden. Hope thats hilfreich. Zerodha Pi Trading Software hat eingebaute Option auf Code, Backtest und nehmen Sie eine Strategie live in indischen Aktienmärkten. Wählen Sie den Bestand für Backtesting - hier haben wir Nifty Index Zukunft für Backtesting ausgewählt. Codierung und Backtesting Jetzt können Sie die Handelsbedingungen für Kauf, Verkauf, Kauf Position Ausgang und Verkauf Position Ausgang kodieren. Zum Beispiel hier haben wir codiert exponentielle gleitende durchschnittliche Strategie: Kaufen Zustand: ClosegtEMA (schließen, 50) was bedeutet, wenn der Aktienkurs Schluss über 50 Tage exponentiell gleitenden Durchschnitt ist. Verkauf Zustand: CloseltEMA (schließen, 50), die zu verkaufen, wenn der Aktienkurs Schluss unter 50 Tage exponentiell gleitenden Durchschnitt bedeutet. Jetzt Eingabe Zeitrahmen, keine Tage zurück getestet werden und klicken Sie dann auf Back Test Now zurück Testbericht wird als Show in unten Bild generiert. Bericht zeigt Anzahl der Trades, nein von gewinnbringenden Geschäften, Nettogewinn, maximale Drawdown, Risiko-Rendite-Verhältnis und etc. pi-Software ist bei Null-Kosten für Zerodha Kunden zur Verfügung. Öffnen Sie ein Konto mit ihnen und erhalten Zugang zu erweiterten Handelsplattform. Back Test-Demo-VideoBack-Prüfung Ihrer 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 gemäß 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 Wert ö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 Schließen So können Sie die folgenden zu simulieren echte Stop-Aufträge zu schreiben: 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 des Back-Tests überprüft AmiBroker, ob die Werte, die Sie kaufen, Preis, Verkaufspreis, Shortprice, Deckung Preis in High-Low-Bereich der gegebenen Bar platziert. 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. Position Dimensionierung im Backtester wird durch neue reservierte 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 ergibt 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 führen - gt niedrigen Werten der RSI wird in 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. (Ausgewählter 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, z. B.: 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 preisgünstigen Preisen 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 Broker. 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 (Standardeinstellung), arbeitet der Backtester wie in früheren Versionen und schließt bereits offene Position, wenn 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 definierten 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 Kaufpreis oder shortprice Array, wenn es gleich zu öffnen 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. Ausführliche Erklärung, wie QuickAFL funktioniert und wie es zu kontrollieren, wird in diesem Knowledge Base-Artikel zur Verfügung gestellt: amibrokerkb20080703quickafl Beachten Sie, dass diese Option nicht nur in der Backtester funktioniert, aber auch in Optimierungen, Erkundungen und scans. How Ihre Trading-Strategie richtig Viele erfolgreiche Backtest Händler teilen eine Gewohnheit 8211 sie backtest ihre Handelsstrategien. 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. Einige Software ermöglicht es Ihnen today8217s Daten bei der Prüfung eines Handelssystems zu verwenden, das ist immer ein postdictive Fehler ist (wir wissen nicht, ob today8217s Daten nützlich ist, noch für die Zukunft vorherzusagen, aber wir sicherlich nicht wissen, ob es bei der Vorhersage der Vergangenheit nützlich ist ). Wouldn8217t Sie lieben zu können den Schlusskurs des GBPUSD zu verwenden, um vorherzusagen, was der Markt heute Natürlich tun würden Sie, ich würde auf jeden Fall, aber leider ist diese Information für uns nicht zur Verfügung, 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, der New Market Wizards hat über Handelssysteme zu sagen: Im Allgemeinen sind die empfindlichen Tests, die Statistiker verwenden, um Squeeze Bedeutung von Randdaten haben keinen Platz in den 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 seit Jahren. 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 ist, wie werden Sie einen Handel verlassen, 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 Fälle. 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. Vorwegnehmen drastische Veränderungen in den Märkten ist die einzige beste Weg, um das Eigenkapital in Ihrem Konto zu bewahren. 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 Ihre 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, er kann per E-Mail bei walterfxjake erreicht werden.


No comments:

Post a Comment